import type { NumberStringToNumber } from "@sushiswap/types";
export declare const uniswapV2FactoryExports: {
    readonly "1": {
        readonly address: "0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "3": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "4": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "5": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "40": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "42": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "56": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "65": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "66": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "97": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "100": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "122": {
        readonly address: "0x43eA90e2b786728520e4f930d2A71a477BF2737C";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "128": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "137": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "250": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "256": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "288": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "1284": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "1285": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "42161": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "42170": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "42220": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "43113": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "43114": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "43288": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "56288": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "80001": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "1666600000": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "1666700000": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
    readonly "11297108109": {
        readonly address: "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly anonymous: false;
            readonly inputs: readonly [{
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token0";
                readonly type: "address";
            }, {
                readonly indexed: true;
                readonly internalType: "address";
                readonly name: "token1";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }, {
                readonly indexed: false;
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "PairCreated";
            readonly type: "event";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly name: "allPairs";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "allPairsLength";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }];
            readonly name: "createPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "pair";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeTo";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "feeToSetter";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly name: "getPair";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "migrator";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "pairCodeHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeTo";
                readonly type: "address";
            }];
            readonly name: "setFeeTo";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_feeToSetter";
                readonly type: "address";
            }];
            readonly name: "setFeeToSetter";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_migrator";
                readonly type: "address";
            }];
            readonly name: "setMigrator";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
};
export type UniswapV2FactoryExports = typeof uniswapV2FactoryExports;
export type UniswapV2FactoryChainId = NumberStringToNumber<keyof UniswapV2FactoryExports>;
export declare const isUniswapV2FactoryChainId: (chainId: number) => chainId is UniswapV2FactoryChainId;
export declare const uniswapV2FactoryAddress: {
    readonly "1": "0xC0AEe478e3658e2610c5F7A4A2E1777cE9e4f2Ac";
    readonly "3": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "4": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "5": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "40": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "42": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "56": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "65": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "66": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "97": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "100": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "122": "0x43eA90e2b786728520e4f930d2A71a477BF2737C";
    readonly "128": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "137": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "250": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "256": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "288": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "1284": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "1285": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "42161": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "42170": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "42220": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "43113": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "43114": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "43288": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "56288": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "80001": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "1666600000": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "1666700000": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
    readonly "11297108109": "0xc35DADB65012eC5796536bD9864eD8773aBc74C4";
};
export declare const uniswapV2FactoryAbi: {
    readonly "1": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "3": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "4": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "5": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "40": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "42": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "56": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "65": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "66": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "97": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "100": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "122": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "128": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "137": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "250": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "256": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "1284": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "1285": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "42161": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "42170": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "42220": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "43113": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "43114": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "43288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "56288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "80001": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "1666600000": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "1666700000": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
    readonly "11297108109": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly anonymous: false;
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token0";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly internalType: "address";
            readonly name: "token1";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "PairCreated";
        readonly type: "event";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly name: "allPairs";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "allPairsLength";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }];
        readonly name: "createPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "pair";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeTo";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "feeToSetter";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly name: "getPair";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "migrator";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "pairCodeHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeTo";
            readonly type: "address";
        }];
        readonly name: "setFeeTo";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_feeToSetter";
            readonly type: "address";
        }];
        readonly name: "setFeeToSetter";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_migrator";
            readonly type: "address";
        }];
        readonly name: "setMigrator";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
};
export declare const uniswapV2FactoryChainIds: UniswapV2FactoryChainId[];
export declare const uniswapV2Router02Exports: {
    readonly "1": {
        readonly address: "0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "3": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "4": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "5": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "40": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "42": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "56": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "65": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "66": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "97": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "100": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "122": {
        readonly address: "0xF4d73326C13a4Fc5FD7A064217e12780e9Bd62c3";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "128": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "137": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "250": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "256": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "288": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "1284": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "1285": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "42161": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "42170": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "42220": {
        readonly address: "0x1421bDe4B10e8dd459b3BCb598810B1337D56842";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "43113": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "43114": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "43288": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "56288": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "80001": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "1666600000": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "1666700000": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
    readonly "11297108109": {
        readonly address: "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "_factory";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "_WETH";
                readonly type: "address";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "constructor";
        }, {
            readonly inputs: readonly [];
            readonly name: "WETH";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountADesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenDesired";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "addLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "factory";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveOut";
                readonly type: "uint256";
            }];
            readonly name: "getAmountOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsIn";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }];
            readonly name: "getAmountsOut";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "reserveB";
                readonly type: "uint256";
            }];
            readonly name: "quote";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "pure";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidity";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountToken";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "token";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountTokenMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountETHMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountETH";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "tokenA";
                readonly type: "address";
            }, {
                readonly internalType: "address";
                readonly name: "tokenB";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "liquidity";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountAMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountBMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }, {
                readonly internalType: "bool";
                readonly name: "approveMax";
                readonly type: "bool";
            }, {
                readonly internalType: "uint8";
                readonly name: "v";
                readonly type: "uint8";
            }, {
                readonly internalType: "bytes32";
                readonly name: "r";
                readonly type: "bytes32";
            }, {
                readonly internalType: "bytes32";
                readonly name: "s";
                readonly type: "bytes32";
            }];
            readonly name: "removeLiquidityWithPermit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountA";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountB";
                readonly type: "uint256";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapETHForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "payable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountIn";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountOutMin";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
            readonly outputs: readonly [];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactETH";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "amountOut";
                readonly type: "uint256";
            }, {
                readonly internalType: "uint256";
                readonly name: "amountInMax";
                readonly type: "uint256";
            }, {
                readonly internalType: "address[]";
                readonly name: "path";
                readonly type: "address[]";
            }, {
                readonly internalType: "address";
                readonly name: "to";
                readonly type: "address";
            }, {
                readonly internalType: "uint256";
                readonly name: "deadline";
                readonly type: "uint256";
            }];
            readonly name: "swapTokensForExactTokens";
            readonly outputs: readonly [{
                readonly internalType: "uint256[]";
                readonly name: "amounts";
                readonly type: "uint256[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly stateMutability: "payable";
            readonly type: "receive";
        }];
    };
};
export type UniswapV2Router02Exports = typeof uniswapV2Router02Exports;
export type UniswapV2Router02ChainId = NumberStringToNumber<keyof UniswapV2Router02Exports>;
export declare const isUniswapV2Router02ChainId: (chainId: number) => chainId is UniswapV2Router02ChainId;
export declare const uniswapV2Router02Address: {
    readonly "1": "0xd9e1cE17f2641f24aE83637ab66a2cca9C378B9F";
    readonly "3": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "4": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "5": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "40": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "42": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "56": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "65": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "66": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "97": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "100": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "122": "0xF4d73326C13a4Fc5FD7A064217e12780e9Bd62c3";
    readonly "128": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "137": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "250": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "256": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "288": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "1284": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "1285": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "42161": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "42170": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "42220": "0x1421bDe4B10e8dd459b3BCb598810B1337D56842";
    readonly "43113": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "43114": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "43288": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "56288": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "80001": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "1666600000": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "1666700000": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
    readonly "11297108109": "0x1b02dA8Cb0d097eB8D57A175b88c7D8b47997506";
};
export declare const uniswapV2Router02Abi: {
    readonly "1": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "3": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "4": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "5": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "40": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "42": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "56": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "65": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "66": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "97": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "100": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "122": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "128": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "137": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "250": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "256": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "1284": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "1285": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "42161": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "42170": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "42220": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "43113": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "43114": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "43288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "56288": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "80001": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "1666600000": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "1666700000": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
    readonly "11297108109": readonly [{
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "_factory";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "_WETH";
            readonly type: "address";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "constructor";
    }, {
        readonly inputs: readonly [];
        readonly name: "WETH";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountADesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenDesired";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "addLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "factory";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveOut";
            readonly type: "uint256";
        }];
        readonly name: "getAmountOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsIn";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }];
        readonly name: "getAmountsOut";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "reserveB";
            readonly type: "uint256";
        }];
        readonly name: "quote";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "pure";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidity";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "removeLiquidityETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountToken";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "token";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountTokenMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountETHMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityETHWithPermitSupportingFeeOnTransferTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountETH";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "tokenA";
            readonly type: "address";
        }, {
            readonly internalType: "address";
            readonly name: "tokenB";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "liquidity";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountAMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountBMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }, {
            readonly internalType: "bool";
            readonly name: "approveMax";
            readonly type: "bool";
        }, {
            readonly internalType: "uint8";
            readonly name: "v";
            readonly type: "uint8";
        }, {
            readonly internalType: "bytes32";
            readonly name: "r";
            readonly type: "bytes32";
        }, {
            readonly internalType: "bytes32";
            readonly name: "s";
            readonly type: "bytes32";
        }];
        readonly name: "removeLiquidityWithPermit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountA";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountB";
            readonly type: "uint256";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapETHForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactETHForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForETHSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountIn";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountOutMin";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapExactTokensForTokensSupportingFeeOnTransferTokens";
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactETH";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "amountOut";
            readonly type: "uint256";
        }, {
            readonly internalType: "uint256";
            readonly name: "amountInMax";
            readonly type: "uint256";
        }, {
            readonly internalType: "address[]";
            readonly name: "path";
            readonly type: "address[]";
        }, {
            readonly internalType: "address";
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly internalType: "uint256";
            readonly name: "deadline";
            readonly type: "uint256";
        }];
        readonly name: "swapTokensForExactTokens";
        readonly outputs: readonly [{
            readonly internalType: "uint256[]";
            readonly name: "amounts";
            readonly type: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly stateMutability: "payable";
        readonly type: "receive";
    }];
};
export declare const uniswapV2Router02ChainIds: UniswapV2Router02ChainId[];
export declare const multicall2Exports: {
    readonly "11297108109": {
        readonly address: "0x0769fd68dFb93167989C6f7254cd0D766Fb2841F";
        readonly abi: readonly [{
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "target";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "callData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Call[]";
                readonly name: "calls";
                readonly type: "tuple[]";
            }];
            readonly name: "aggregate";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }, {
                readonly internalType: "bytes[]";
                readonly name: "returnData";
                readonly type: "bytes[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "target";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "callData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Call[]";
                readonly name: "calls";
                readonly type: "tuple[]";
            }];
            readonly name: "blockAndAggregate";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }, {
                readonly internalType: "bytes32";
                readonly name: "blockHash";
                readonly type: "bytes32";
            }, {
                readonly components: readonly [{
                    readonly internalType: "bool";
                    readonly name: "success";
                    readonly type: "bool";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "returnData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Result[]";
                readonly name: "returnData";
                readonly type: "tuple[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }];
            readonly name: "getBlockHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "blockHash";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getBlockNumber";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getCurrentBlockCoinbase";
            readonly outputs: readonly [{
                readonly internalType: "address";
                readonly name: "coinbase";
                readonly type: "address";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getCurrentBlockDifficulty";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "difficulty";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getCurrentBlockGasLimit";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "gaslimit";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getCurrentBlockTimestamp";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "timestamp";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "address";
                readonly name: "addr";
                readonly type: "address";
            }];
            readonly name: "getEthBalance";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "balance";
                readonly type: "uint256";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [];
            readonly name: "getLastBlockHash";
            readonly outputs: readonly [{
                readonly internalType: "bytes32";
                readonly name: "blockHash";
                readonly type: "bytes32";
            }];
            readonly stateMutability: "view";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "bool";
                readonly name: "requireSuccess";
                readonly type: "bool";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "target";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "callData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Call[]";
                readonly name: "calls";
                readonly type: "tuple[]";
            }];
            readonly name: "tryAggregate";
            readonly outputs: readonly [{
                readonly components: readonly [{
                    readonly internalType: "bool";
                    readonly name: "success";
                    readonly type: "bool";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "returnData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Result[]";
                readonly name: "returnData";
                readonly type: "tuple[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }, {
            readonly inputs: readonly [{
                readonly internalType: "bool";
                readonly name: "requireSuccess";
                readonly type: "bool";
            }, {
                readonly components: readonly [{
                    readonly internalType: "address";
                    readonly name: "target";
                    readonly type: "address";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "callData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Call[]";
                readonly name: "calls";
                readonly type: "tuple[]";
            }];
            readonly name: "tryBlockAndAggregate";
            readonly outputs: readonly [{
                readonly internalType: "uint256";
                readonly name: "blockNumber";
                readonly type: "uint256";
            }, {
                readonly internalType: "bytes32";
                readonly name: "blockHash";
                readonly type: "bytes32";
            }, {
                readonly components: readonly [{
                    readonly internalType: "bool";
                    readonly name: "success";
                    readonly type: "bool";
                }, {
                    readonly internalType: "bytes";
                    readonly name: "returnData";
                    readonly type: "bytes";
                }];
                readonly internalType: "struct Multicall2.Result[]";
                readonly name: "returnData";
                readonly type: "tuple[]";
            }];
            readonly stateMutability: "nonpayable";
            readonly type: "function";
        }];
    };
};
export type Multicall2Exports = typeof multicall2Exports;
export type Multicall2ChainId = NumberStringToNumber<keyof Multicall2Exports>;
export declare const isMulticall2ChainId: (chainId: number) => chainId is 11297108109;
export declare const multicall2Address: {
    readonly "11297108109": "0x0769fd68dFb93167989C6f7254cd0D766Fb2841F";
};
export declare const multicall2Abi: {
    readonly "11297108109": readonly [{
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "target";
                readonly type: "address";
            }, {
                readonly internalType: "bytes";
                readonly name: "callData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Call[]";
            readonly name: "calls";
            readonly type: "tuple[]";
        }];
        readonly name: "aggregate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "blockNumber";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes[]";
            readonly name: "returnData";
            readonly type: "bytes[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "target";
                readonly type: "address";
            }, {
                readonly internalType: "bytes";
                readonly name: "callData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Call[]";
            readonly name: "calls";
            readonly type: "tuple[]";
        }];
        readonly name: "blockAndAggregate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "blockNumber";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "blockHash";
            readonly type: "bytes32";
        }, {
            readonly components: readonly [{
                readonly internalType: "bool";
                readonly name: "success";
                readonly type: "bool";
            }, {
                readonly internalType: "bytes";
                readonly name: "returnData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Result[]";
            readonly name: "returnData";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "blockNumber";
            readonly type: "uint256";
        }];
        readonly name: "getBlockHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "blockHash";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getBlockNumber";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "blockNumber";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getCurrentBlockCoinbase";
        readonly outputs: readonly [{
            readonly internalType: "address";
            readonly name: "coinbase";
            readonly type: "address";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getCurrentBlockDifficulty";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "difficulty";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getCurrentBlockGasLimit";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "gaslimit";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getCurrentBlockTimestamp";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "timestamp";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "address";
            readonly name: "addr";
            readonly type: "address";
        }];
        readonly name: "getEthBalance";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "balance";
            readonly type: "uint256";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [];
        readonly name: "getLastBlockHash";
        readonly outputs: readonly [{
            readonly internalType: "bytes32";
            readonly name: "blockHash";
            readonly type: "bytes32";
        }];
        readonly stateMutability: "view";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bool";
            readonly name: "requireSuccess";
            readonly type: "bool";
        }, {
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "target";
                readonly type: "address";
            }, {
                readonly internalType: "bytes";
                readonly name: "callData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Call[]";
            readonly name: "calls";
            readonly type: "tuple[]";
        }];
        readonly name: "tryAggregate";
        readonly outputs: readonly [{
            readonly components: readonly [{
                readonly internalType: "bool";
                readonly name: "success";
                readonly type: "bool";
            }, {
                readonly internalType: "bytes";
                readonly name: "returnData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Result[]";
            readonly name: "returnData";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }, {
        readonly inputs: readonly [{
            readonly internalType: "bool";
            readonly name: "requireSuccess";
            readonly type: "bool";
        }, {
            readonly components: readonly [{
                readonly internalType: "address";
                readonly name: "target";
                readonly type: "address";
            }, {
                readonly internalType: "bytes";
                readonly name: "callData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Call[]";
            readonly name: "calls";
            readonly type: "tuple[]";
        }];
        readonly name: "tryBlockAndAggregate";
        readonly outputs: readonly [{
            readonly internalType: "uint256";
            readonly name: "blockNumber";
            readonly type: "uint256";
        }, {
            readonly internalType: "bytes32";
            readonly name: "blockHash";
            readonly type: "bytes32";
        }, {
            readonly components: readonly [{
                readonly internalType: "bool";
                readonly name: "success";
                readonly type: "bool";
            }, {
                readonly internalType: "bytes";
                readonly name: "returnData";
                readonly type: "bytes";
            }];
            readonly internalType: "struct Multicall2.Result[]";
            readonly name: "returnData";
            readonly type: "tuple[]";
        }];
        readonly stateMutability: "nonpayable";
        readonly type: "function";
    }];
};
export declare const multicall2ChainIds: 11297108109[];
