bfun-contract-configs 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/index.js.map ADDED
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../package/index.ts","../package/wagmiGenerated.ts","../package/chainConfigs.ts"],"sourcesContent":["// the below files are auto-generated and will be\n// built at build time. They are not checked in to git.\n// The can be generated by running `yarn prepack` in the root\nexport * from './wagmiGenerated';\nimport { chainConfigs } from './chainConfigs';\n\nexport { chainConfigs as chainConfigs };","//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunFactory\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x718Fa87734Cc6fCe3e7374663a0DAfa334aa4876)\n */\nexport const bFunFactoryABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [{ name: '_logic', internalType: 'address', type: 'address' }],\n },\n { stateMutability: 'payable', type: 'fallback' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'FailedCall' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x718Fa87734Cc6fCe3e7374663a0DAfa334aa4876)\n */\nexport const bFunFactoryAddress = {\n 56: '0x718Fa87734Cc6fCe3e7374663a0DAfa334aa4876',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x718Fa87734Cc6fCe3e7374663a0DAfa334aa4876)\n */\nexport const bFunFactoryConfig = {\n address: bFunFactoryAddress,\n abi: bFunFactoryABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunFactoryImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xE7F46dafF4dA41E51A7b96ef85243e8fbfd96765)\n */\nexport const bFunFactoryImplABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: 'createModule', internalType: 'address', type: 'address' },\n { name: 'configModule', internalType: 'address', type: 'address' },\n { name: 'tradeModule', internalType: 'address', type: 'address' },\n { name: 'migrationModule', internalType: 'address', type: 'address' },\n ],\n },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'bondingCurveImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyBackAndBurnFromTaxProcessor',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyExactIn',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'address', type: 'address' },\n ],\n name: 'buyExactInTo',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyExactInWithCollateral',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'address', type: 'address' },\n ],\n name: 'buyExactInWithCollateralTo',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyExactOut',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'address', type: 'address' },\n ],\n name: 'buyExactOutTo',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'collateralEnabled',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.CreateParams',\n type: 'tuple',\n components: [\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'tokenURI', internalType: 'string', type: 'string' },\n { name: 'nonce', internalType: 'uint256', type: 'uint256' },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n { name: 'tokenSalt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'payoutRecipient', internalType: 'address', type: 'address' },\n {\n name: 'marketPayoutRecipient',\n internalType: 'address',\n type: 'address',\n },\n {\n name: 'marketVaultFactory',\n internalType: 'address',\n type: 'address',\n },\n { name: 'marketVaultData', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'targetRaise', internalType: 'uint256', type: 'uint256' },\n { name: 'lockBps', internalType: 'uint16', type: 'uint16' },\n { name: 'lockupDuration', internalType: 'uint64', type: 'uint64' },\n { name: 'vestingDuration', internalType: 'uint64', type: 'uint64' },\n { name: 'lockAdmin', internalType: 'address', type: 'address' },\n { name: 'taxRateBps', internalType: 'uint16', type: 'uint16' },\n { name: 'taxDuration', internalType: 'uint64', type: 'uint64' },\n {\n name: 'antiFarmerDuration',\n internalType: 'uint64',\n type: 'uint64',\n },\n {\n name: 'processorMarketBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n {\n name: 'processorDeflationBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n { name: 'processorLpBps', internalType: 'uint16', type: 'uint16' },\n {\n name: 'processorDividendBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n {\n name: 'minimumShareBalance',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n ],\n name: 'createBFunToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.CreateParams',\n type: 'tuple',\n components: [\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'tokenURI', internalType: 'string', type: 'string' },\n { name: 'nonce', internalType: 'uint256', type: 'uint256' },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n { name: 'tokenSalt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'payoutRecipient', internalType: 'address', type: 'address' },\n {\n name: 'marketPayoutRecipient',\n internalType: 'address',\n type: 'address',\n },\n {\n name: 'marketVaultFactory',\n internalType: 'address',\n type: 'address',\n },\n { name: 'marketVaultData', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'targetRaise', internalType: 'uint256', type: 'uint256' },\n { name: 'lockBps', internalType: 'uint16', type: 'uint16' },\n { name: 'lockupDuration', internalType: 'uint64', type: 'uint64' },\n { name: 'vestingDuration', internalType: 'uint64', type: 'uint64' },\n { name: 'lockAdmin', internalType: 'address', type: 'address' },\n { name: 'taxRateBps', internalType: 'uint16', type: 'uint16' },\n { name: 'taxDuration', internalType: 'uint64', type: 'uint64' },\n {\n name: 'antiFarmerDuration',\n internalType: 'uint64',\n type: 'uint64',\n },\n {\n name: 'processorMarketBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n {\n name: 'processorDeflationBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n { name: 'processorLpBps', internalType: 'uint16', type: 'uint16' },\n {\n name: 'processorDividendBps',\n internalType: 'uint16',\n type: 'uint16',\n },\n {\n name: 'minimumShareBalance',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.BuyParams',\n type: 'tuple',\n components: [\n {\n name: 'collateralAmountIn',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tokenAmountMin', internalType: 'uint256', type: 'uint256' },\n ],\n },\n ],\n name: 'createBFunTokenAndBuy',\n outputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.BasicCreateParams',\n type: 'tuple',\n components: [\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'tokenURI', internalType: 'string', type: 'string' },\n { name: 'nonce', internalType: 'uint256', type: 'uint256' },\n { name: 'signature', internalType: 'bytes', type: 'bytes' },\n { name: 'tokenSalt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'payoutRecipient', internalType: 'address', type: 'address' },\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n },\n ],\n name: 'createBFunTokenBasic',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'defaultLockVault',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factoryTradeHelper',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'getDynamicCreateCollateralConfig',\n outputs: [\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.DynamicCreateCollateralConfig',\n type: 'tuple',\n components: [\n {\n name: 'defaultTargetRaise',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'initialTokenSupply',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'firstBuyFee', internalType: 'uint256', type: 'uint256' },\n { name: 'tradeFeeBps', internalType: 'uint16', type: 'uint16' },\n { name: 'migrationFeeBps', internalType: 'uint16', type: 'uint16' },\n { name: 'defaultSellBps', internalType: 'uint16', type: 'uint16' },\n { name: 'minBuyBackQuote', internalType: 'uint256', type: 'uint256' },\n ],\n },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'factoryOwner', internalType: 'address', type: 'address' },\n { name: 'signer_', internalType: 'address', type: 'address' },\n {\n name: 'bondingCurveImplementation_',\n internalType: 'address',\n type: 'address',\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'data', internalType: 'bytes', type: 'bytes' }],\n name: 'inspect',\n outputs: [{ name: 'result', internalType: 'bytes', type: 'bytes' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'isSignatureEnabled',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'isTrustedCaller',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'marketVaultFactoryEnabled',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'migrate',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'multiDexRouter',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'nonces',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'preferredDexId',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'preferredV3FeeProfile',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'processorFeeRateCurve',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'processorFeeRateDex',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'readyForMigration',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellExactIn',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellExactInFrom',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellExactOut',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n { name: '', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellExactOutFrom',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setBondingCurveImplementation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'bool', type: 'bool' },\n ],\n name: 'setCollateralEnabled',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setDefaultLockVault',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setDividendImplementation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n {\n name: '',\n internalType: 'struct IBFunFactoryImpl.DynamicCreateCollateralConfig',\n type: 'tuple',\n components: [\n {\n name: 'defaultTargetRaise',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'initialTokenSupply',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'firstBuyFee', internalType: 'uint256', type: 'uint256' },\n { name: 'tradeFeeBps', internalType: 'uint16', type: 'uint16' },\n { name: 'migrationFeeBps', internalType: 'uint16', type: 'uint16' },\n { name: 'defaultSellBps', internalType: 'uint16', type: 'uint16' },\n { name: 'minBuyBackQuote', internalType: 'uint256', type: 'uint256' },\n ],\n },\n ],\n name: 'setDynamicCreateCollateralConfig',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setFactoryTradeHelper',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n name: 'setIsSignatureEnabled',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'bool', type: 'bool' },\n ],\n name: 'setMarketVaultFactoryEnabled',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setMultiDexRouter',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n name: 'setPreferredDexId',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n name: 'setPreferredV3FeeProfile',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'uint16', type: 'uint16' },\n { name: '', internalType: 'uint16', type: 'uint16' },\n ],\n name: 'setProcessorFeeRates',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setSigner',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setTaxProcessorImplementation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setTaxTokenImplementation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setTokenImplementation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '', internalType: 'address', type: 'address' },\n { name: '', internalType: 'bool', type: 'bool' },\n ],\n name: 'setTrustedCaller',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'setV2SwapRouter',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'signer',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxProcessorImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxTokenImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tokenImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'tokenToBondingCurve',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'tokenToCollateralToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'v2SwapRouter',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n { type: 'error', inputs: [], name: 'CallReverted' },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'FailedCall' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'ModuleNotSet' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n { type: 'error', inputs: [], name: 'UnsupportedSelector' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xE7F46dafF4dA41E51A7b96ef85243e8fbfd96765)\n */\nexport const bFunFactoryImplAddress = {\n 56: '0xE7F46dafF4dA41E51A7b96ef85243e8fbfd96765',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xE7F46dafF4dA41E51A7b96ef85243e8fbfd96765)\n */\nexport const bFunFactoryImplConfig = {\n address: bFunFactoryImplAddress,\n abi: bFunFactoryImplABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunFactoryTradeHelper\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x08725AA92F32077bAf30fDE0c057E2b365dc5ad3)\n */\nexport const bFunFactoryTradeHelperABI = [\n { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'funds', internalType: 'uint256', type: 'uint256' },\n { name: 'minTokenOut', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyWithEth',\n outputs: [\n { name: 'tokenOut', internalType: 'uint256', type: 'uint256' },\n { name: 'refundOut', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'funds', internalType: 'uint256', type: 'uint256' },\n { name: 'minTokenOut', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'dexBuyWithEth',\n outputs: [{ name: 'tokenOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'tokenAmountIn', internalType: 'uint256', type: 'uint256' },\n { name: 'minEthOut', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'dexSellForEth',\n outputs: [{ name: 'ethOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [\n { name: '', internalType: 'contract IBFunFactoryImpl', type: 'address' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'owner_', internalType: 'address', type: 'address' },\n { name: 'factory_', internalType: 'address', type: 'address' },\n { name: 'tokenSwap_', internalType: 'address', type: 'address' },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'collateralIn', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'quoteCollateralToEthForToken',\n outputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'ethOut', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'tokenIn', internalType: 'address', type: 'address' },\n { name: 'tokenOut', internalType: 'address', type: 'address' },\n { name: 'amountIn', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'quoteDexExactInput',\n outputs: [\n {\n name: 'amountOutReceivedExpected',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'ethIn', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'quoteEthToCollateralForToken',\n outputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'collateralOut', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'tokenAmountIn', internalType: 'uint256', type: 'uint256' },\n { name: 'minEthOut', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellForEth',\n outputs: [{ name: 'ethOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'tokenSwap_', internalType: 'address', type: 'address' }],\n name: 'setTokenSwap',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tokenSwap',\n outputs: [\n { name: '', internalType: 'contract IBFunTokenSwap', type: 'address' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'fundsIn',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'minTokenOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'tokenOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'refundOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'BuyWithEth',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'caller',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'from',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'tokenIn',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'minEthOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'collateralOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'ethOut',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'SellForEth',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n { type: 'error', inputs: [], name: 'DexSlippageCheckFailed' },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'FailedCall' },\n {\n type: 'error',\n inputs: [\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'InvalidFunds' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidQuotePair' },\n { type: 'error', inputs: [], name: 'NotDexStage' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n { type: 'error', inputs: [], name: 'V2SwapRouterNotSet' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x08725AA92F32077bAf30fDE0c057E2b365dc5ad3)\n */\nexport const bFunFactoryTradeHelperAddress = {\n 56: '0x08725AA92F32077bAf30fDE0c057E2b365dc5ad3',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x08725AA92F32077bAf30fDE0c057E2b365dc5ad3)\n */\nexport const bFunFactoryTradeHelperConfig = {\n address: bFunFactoryTradeHelperAddress,\n abi: bFunFactoryTradeHelperABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunLockVault\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xA5F841F4C7AFb374571f7246f19A9738b5AbD101)\n */\nexport const bFunLockVaultABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [{ name: 'factory_', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'allocation',\n outputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'amountTotal', internalType: 'uint256', type: 'uint256' },\n { name: 'amountClaimed', internalType: 'uint256', type: 'uint256' },\n { name: 'lockupDuration', internalType: 'uint256', type: 'uint256' },\n { name: 'vestingDuration', internalType: 'uint256', type: 'uint256' },\n { name: 'startTime', internalType: 'uint256', type: 'uint256' },\n { name: 'admin', internalType: 'address', type: 'address' },\n { name: 'lockBps', internalType: 'uint16', type: 'uint16' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'amountAvailableToClaim',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'claim',\n outputs: [],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'admin', internalType: 'address', type: 'address' },\n { name: 'amountTotal', internalType: 'uint256', type: 'uint256' },\n { name: 'lockupDuration', internalType: 'uint256', type: 'uint256' },\n { name: 'vestingDuration', internalType: 'uint256', type: 'uint256' },\n { name: 'lockBps', internalType: 'uint16', type: 'uint16' },\n ],\n name: 'createAllocation',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'newAdmin', internalType: 'address', type: 'address' },\n ],\n name: 'editAllocationAdmin',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'start',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'oldAdmin',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newAdmin',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'AllocationAdminUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'admin',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'remainingAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'AllocationClaimed',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'admin',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amountTotal',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'lockupDuration',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'vestingDuration',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'lockBps',\n internalType: 'uint16',\n type: 'uint16',\n indexed: false,\n },\n ],\n name: 'AllocationCreated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'startTime',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'lockupEndTime',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'vestingEndTime',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'AllocationStarted',\n },\n { type: 'error', inputs: [], name: 'AllocationAlreadyExists' },\n { type: 'error', inputs: [], name: 'AllocationAlreadyStarted' },\n { type: 'error', inputs: [], name: 'AllocationNotFound' },\n { type: 'error', inputs: [], name: 'AllocationNotStarted' },\n { type: 'error', inputs: [], name: 'AllocationNotUnlocked' },\n { type: 'error', inputs: [], name: 'InvalidAdmin' },\n { type: 'error', inputs: [], name: 'InvalidAmount' },\n { type: 'error', inputs: [], name: 'InvalidDuration' },\n { type: 'error', inputs: [], name: 'InvalidToken' },\n { type: 'error', inputs: [], name: 'NoBalanceToClaim' },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'Unauthorized' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xA5F841F4C7AFb374571f7246f19A9738b5AbD101)\n */\nexport const bFunLockVaultAddress = {\n 56: '0xA5F841F4C7AFb374571f7246f19A9738b5AbD101',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xA5F841F4C7AFb374571f7246f19A9738b5AbD101)\n */\nexport const bFunLockVaultConfig = {\n address: bFunLockVaultAddress,\n abi: bFunLockVaultABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunMultiDexRouter\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x6e7efcB289dDA3aB72fF7f3CECffcF869b4Fa6C9)\n */\nexport const bFunMultiDexRouterABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n {\n name: 'params',\n internalType: 'struct IBFunMultiDexRouter.ConstructorParams',\n type: 'tuple',\n components: [\n { name: 'weth', internalType: 'address', type: 'address' },\n {\n name: 'dexConfigs',\n internalType: 'struct IBFunMultiDexRouter.DEXConfig[3]',\n type: 'tuple[3]',\n components: [\n { name: 'v2Factory', internalType: 'address', type: 'address' },\n {\n name: 'v2InitCodeHash',\n internalType: 'bytes32',\n type: 'bytes32',\n },\n { name: 'v3Factory', internalType: 'address', type: 'address' },\n { name: 'v3Deployer', internalType: 'address', type: 'address' },\n {\n name: 'v3InitCodeHash',\n internalType: 'bytes32',\n type: 'bytes32',\n },\n { name: 'isPancake', internalType: 'bool', type: 'bool' },\n { name: 'v4Vault', internalType: 'address', type: 'address' },\n {\n name: 'feeTiers',\n internalType: 'struct IBFunMultiDexRouter.FeeTierConfig',\n type: 'tuple',\n components: [\n { name: 'enabled', internalType: 'uint8', type: 'uint8' },\n { name: 'v2FeeTier', internalType: 'uint24', type: 'uint24' },\n {\n name: 'v3FeeTiers',\n internalType: 'uint24[3]',\n type: 'uint24[3]',\n },\n ],\n },\n ],\n },\n ],\n },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'preferredDexId', internalType: 'uint8', type: 'uint8' },\n {\n name: 'preferredV3FeeTier',\n internalType: 'enum IBFunMultiDexRouter.V3LPFeeProfile',\n type: 'uint8',\n },\n { name: 'baseToken', internalType: 'address', type: 'address' },\n { name: 'quoteToken', internalType: 'address', type: 'address' },\n ],\n name: 'getMajorPools',\n outputs: [\n { name: 'pools', internalType: 'address[]', type: 'address[]' },\n { name: 'mainPool', internalType: 'address', type: 'address' },\n ],\n },\n { type: 'error', inputs: [], name: 'InvalidDexId' },\n { type: 'error', inputs: [], name: 'InvalidPreferredDexId' },\n { type: 'error', inputs: [], name: 'PreferredDexNotAvailable' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x6e7efcB289dDA3aB72fF7f3CECffcF869b4Fa6C9)\n */\nexport const bFunMultiDexRouterAddress = {\n 56: '0x6e7efcB289dDA3aB72fF7f3CECffcF869b4Fa6C9',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x6e7efcB289dDA3aB72fF7f3CECffcF869b4Fa6C9)\n */\nexport const bFunMultiDexRouterConfig = {\n address: bFunMultiDexRouterAddress,\n abi: bFunMultiDexRouterABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunTaxToken\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x91589835927D2133b8B18f71537A9bF06d7629AD)\n */\nexport const bFunTaxTokenABI = [\n { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'MIN_LIQ_THRESHOLD',\n outputs: [{ name: '', internalType: 'uint96', type: 'uint96' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'START_LIQ_THRESHOLD',\n outputs: [{ name: '', internalType: 'uint96', type: 'uint96' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'antiFarmerDuration',\n outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'antiFarmerExpirationTime',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'value', internalType: 'uint256', type: 'uint256' }],\n name: 'burn',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'burnFrom',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'contractURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'decimals',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendContract',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'finalizeMigration',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'getPoolStateData',\n outputs: [\n {\n name: 'currentState',\n internalType: 'enum IBFunTaxToken.PoolState',\n type: 'uint8',\n },\n { name: 'currentTaxRate', internalType: 'uint16', type: 'uint16' },\n {\n name: 'currentLiquidationThreshold',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'currentTaxExpirationTime',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'currentAntiFarmerExpirationTime',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'params',\n internalType: 'struct IBFunToken.ConstructorParams',\n type: 'tuple',\n components: [\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'tokenURI', internalType: 'string', type: 'string' },\n { name: 'factory', internalType: 'address', type: 'address' },\n { name: 'bondingCurve', internalType: 'address', type: 'address' },\n {\n name: 'initialTokenSupply',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n {\n name: 'taxParams',\n internalType: 'struct BFunTaxToken.TaxInitParams',\n type: 'tuple',\n components: [\n { name: 'taxProcessor', internalType: 'address', type: 'address' },\n {\n name: 'dividendContract',\n internalType: 'address',\n type: 'address',\n },\n { name: 'mainPool', internalType: 'address', type: 'address' },\n { name: 'pools', internalType: 'address[]', type: 'address[]' },\n { name: 'taxRateBps', internalType: 'uint16', type: 'uint16' },\n { name: 'taxDuration', internalType: 'uint64', type: 'uint64' },\n {\n name: 'antiFarmerDuration',\n internalType: 'uint64',\n type: 'uint64',\n },\n ],\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'liquidationThreshold',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'mainPool',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'name',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'pools',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'mode',\n internalType: 'enum IBFunToken.TransferMode',\n type: 'uint8',\n },\n ],\n name: 'setTransferMode',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'startMigration',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'state',\n outputs: [\n { name: '', internalType: 'enum IBFunTaxToken.PoolState', type: 'uint8' },\n ],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'symbol',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxDuration',\n outputs: [{ name: '', internalType: 'uint64', type: 'uint64' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxExpirationTime',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxProcessor',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxRate',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tokenURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'from', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'transferMode',\n outputs: [\n { name: '', internalType: 'enum IBFunToken.TransferMode', type: 'uint8' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'owner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'spender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Approval',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'ContractURIUpdated' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'oldState',\n internalType: 'uint8',\n type: 'uint8',\n indexed: false,\n },\n {\n name: 'newState',\n internalType: 'uint8',\n type: 'uint8',\n indexed: false,\n },\n ],\n name: 'PoolStateChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'reason', internalType: 'bytes', type: 'bytes', indexed: false },\n ],\n name: 'TaxLiquidationError',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'senderBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'recipientBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TokensTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Transfer',\n },\n {\n type: 'error',\n inputs: [\n { name: 'user', internalType: 'address', type: 'address' },\n { name: 'reason', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'DividendShareUpdateFailed',\n },\n {\n type: 'error',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'allowance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientAllowance',\n },\n {\n type: 'error',\n inputs: [\n { name: 'sender', internalType: 'address', type: 'address' },\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientBalance',\n },\n {\n type: 'error',\n inputs: [{ name: 'approver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidApprover',\n },\n {\n type: 'error',\n inputs: [{ name: 'receiver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidReceiver',\n },\n {\n type: 'error',\n inputs: [{ name: 'sender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSender',\n },\n {\n type: 'error',\n inputs: [{ name: 'spender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSpender',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidMainPool' },\n { type: 'error', inputs: [], name: 'InvalidState' },\n { type: 'error', inputs: [], name: 'InvalidTaxConfig' },\n { type: 'error', inputs: [], name: 'InvalidTaxProcessor' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'OnlyTaxTokenOwner' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'TransfersControlled' },\n { type: 'error', inputs: [], name: 'TransfersRestricted' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x91589835927D2133b8B18f71537A9bF06d7629AD)\n */\nexport const bFunTaxTokenAddress = {\n 56: '0x91589835927D2133b8B18f71537A9bF06d7629AD',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x91589835927D2133b8B18f71537A9bF06d7629AD)\n */\nexport const bFunTaxTokenConfig = {\n address: bFunTaxTokenAddress,\n abi: bFunTaxTokenABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunToken\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x84882b87929Eb8c62CD05658327B688cba789E31)\n */\nexport const bFunTokenABI = [\n { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'owner', internalType: 'address', type: 'address' },\n { name: 'spender', internalType: 'address', type: 'address' },\n ],\n name: 'allowance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'approve',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'value', internalType: 'uint256', type: 'uint256' }],\n name: 'burn',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'account', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'burnFrom',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'contractURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'decimals',\n outputs: [{ name: '', internalType: 'uint8', type: 'uint8' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: '_params',\n internalType: 'struct IBFunToken.ConstructorParams',\n type: 'tuple',\n components: [\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'symbol', internalType: 'string', type: 'string' },\n { name: 'tokenURI', internalType: 'string', type: 'string' },\n { name: 'factory', internalType: 'address', type: 'address' },\n { name: 'bondingCurve', internalType: 'address', type: 'address' },\n {\n name: 'initialTokenSupply',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'name',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'mode',\n internalType: 'enum IBFunToken.TransferMode',\n type: 'uint8',\n },\n ],\n name: 'setTransferMode',\n outputs: [],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],\n name: 'supportsInterface',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'symbol',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tokenURI',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transfer',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'from', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'value', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'transferFrom',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'transferMode',\n outputs: [\n { name: '', internalType: 'enum IBFunToken.TransferMode', type: 'uint8' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'owner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'spender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Approval',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'ContractURIUpdated' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'sender',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'recipient',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'senderBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'recipientBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TokensTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'value',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Transfer',\n },\n {\n type: 'error',\n inputs: [\n { name: 'spender', internalType: 'address', type: 'address' },\n { name: 'allowance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientAllowance',\n },\n {\n type: 'error',\n inputs: [\n { name: 'sender', internalType: 'address', type: 'address' },\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'ERC20InsufficientBalance',\n },\n {\n type: 'error',\n inputs: [{ name: 'approver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidApprover',\n },\n {\n type: 'error',\n inputs: [{ name: 'receiver', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidReceiver',\n },\n {\n type: 'error',\n inputs: [{ name: 'sender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSender',\n },\n {\n type: 'error',\n inputs: [{ name: 'spender', internalType: 'address', type: 'address' }],\n name: 'ERC20InvalidSpender',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'TransfersControlled' },\n { type: 'error', inputs: [], name: 'TransfersRestricted' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x84882b87929Eb8c62CD05658327B688cba789E31)\n */\nexport const bFunTokenAddress = {\n 56: '0x84882b87929Eb8c62CD05658327B688cba789E31',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x84882b87929Eb8c62CD05658327B688cba789E31)\n */\nexport const bFunTokenConfig = {\n address: bFunTokenAddress,\n abi: bFunTokenABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunTokenSwap\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x3F5c4476D94537b8Fbbe62A084eC90EC2684D270)\n */\nexport const bFunTokenSwapABI = [\n { stateMutability: 'nonpayable', type: 'constructor', inputs: [] },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'UPGRADE_INTERFACE_VERSION',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n name: 'getCollateralDex',\n outputs: [\n { name: 'dexId', internalType: 'uint8', type: 'uint8' },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n name: 'getCollateralV2Paths',\n outputs: [\n { name: 'wethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToWeth', internalType: 'bytes', type: 'bytes' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n name: 'getCollateralV3Paths',\n outputs: [\n { name: 'wethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToWeth', internalType: 'bytes', type: 'bytes' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'dexId', internalType: 'uint8', type: 'uint8' }],\n name: 'getDexConfig',\n outputs: [\n {\n name: 'dexType',\n internalType: 'enum IBFunTokenSwap.DexType',\n type: 'uint8',\n },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n { name: 'router', internalType: 'address', type: 'address' },\n { name: 'quoter', internalType: 'address', type: 'address' },\n { name: 'quoterKind', internalType: 'uint8', type: 'uint8' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n name: 'getRouteDexType',\n outputs: [\n { name: '', internalType: 'enum IBFunTokenSwap.DexType', type: 'uint8' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'owner_', internalType: 'address', type: 'address' },\n { name: 'weth_', internalType: 'address', type: 'address' },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'proxiableUUID',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'amountInCollateral', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'quoteCollateralToEth',\n outputs: [{ name: 'amountOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'amountInEth', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'quoteEthToCollateral',\n outputs: [{ name: 'amountOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'dexId', internalType: 'uint8', type: 'uint8' },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n { name: 'v2PathWethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'v2PathCollateralToWeth', internalType: 'bytes', type: 'bytes' },\n { name: 'v3PathWethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'v3PathCollateralToWeth', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'setCollateralConfig',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'dexId', internalType: 'uint8', type: 'uint8' },\n ],\n name: 'setCollateralDex',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n ],\n name: 'setCollateralEnabled',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'wethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToWeth', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'setCollateralV2Paths',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'wethToCollateral', internalType: 'bytes', type: 'bytes' },\n { name: 'collateralToWeth', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'setCollateralV3Paths',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'dexId', internalType: 'uint8', type: 'uint8' },\n { name: 'router', internalType: 'address', type: 'address' },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n ],\n name: 'setDexConfigV2',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'dexId', internalType: 'uint8', type: 'uint8' },\n { name: 'swapRouter', internalType: 'address', type: 'address' },\n { name: 'quoter', internalType: 'address', type: 'address' },\n { name: 'enabled', internalType: 'bool', type: 'bool' },\n { name: 'quoterKind', internalType: 'uint8', type: 'uint8' },\n ],\n name: 'setDexConfigV3',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'amountIn', internalType: 'uint256', type: 'uint256' },\n { name: 'amountOutMin', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'recipient', internalType: 'address', type: 'address' },\n ],\n name: 'swapExactCollateralToEth',\n outputs: [{ name: 'amountOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n { name: 'amountOutMin', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'swapExactEthToCollateral',\n outputs: [{ name: 'amountOut', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'newImplementation', internalType: 'address', type: 'address' },\n { name: 'data', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'upgradeToAndCall',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'weth',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'dexId', internalType: 'uint8', type: 'uint8', indexed: true },\n ],\n name: 'CollateralDexSet',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'enabled', internalType: 'bool', type: 'bool', indexed: false },\n ],\n name: 'CollateralEnabled',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'CollateralV2PathsSet',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'collateralToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'CollateralV3PathsSet',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'dexId', internalType: 'uint8', type: 'uint8', indexed: true },\n {\n name: 'dexType',\n internalType: 'enum IBFunTokenSwap.DexType',\n type: 'uint8',\n indexed: false,\n },\n ],\n name: 'DexConfigured',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'dexId', internalType: 'uint8', type: 'uint8', indexed: true },\n { name: 'enabled', internalType: 'bool', type: 'bool', indexed: false },\n ],\n name: 'DexEnabled',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'implementation',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'Upgraded',\n },\n {\n type: 'error',\n inputs: [{ name: 'target', internalType: 'address', type: 'address' }],\n name: 'AddressEmptyCode',\n },\n { type: 'error', inputs: [], name: 'CollateralMustBeDisabled' },\n { type: 'error', inputs: [], name: 'DeadlineExpired' },\n { type: 'error', inputs: [], name: 'DexDisabled' },\n { type: 'error', inputs: [], name: 'DexNotConfigured' },\n { type: 'error', inputs: [], name: 'DexTypeImmutable' },\n {\n type: 'error',\n inputs: [\n { name: 'implementation', internalType: 'address', type: 'address' },\n ],\n name: 'ERC1967InvalidImplementation',\n },\n { type: 'error', inputs: [], name: 'ERC1967NonPayable' },\n { type: 'error', inputs: [], name: 'EthAmountMismatch' },\n { type: 'error', inputs: [], name: 'FailedCall' },\n {\n type: 'error',\n inputs: [\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'InvalidDexId' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidPath' },\n { type: 'error', inputs: [], name: 'InvalidRecipient' },\n { type: 'error', inputs: [], name: 'InvalidRouteConfig' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n { type: 'error', inputs: [], name: 'RouteDisabled' },\n { type: 'error', inputs: [], name: 'RouteNotConfigured' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'UUPSUnauthorizedCallContext' },\n {\n type: 'error',\n inputs: [{ name: 'slot', internalType: 'bytes32', type: 'bytes32' }],\n name: 'UUPSUnsupportedProxiableUUID',\n },\n { type: 'error', inputs: [], name: 'UnsupportedDexType' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x3F5c4476D94537b8Fbbe62A084eC90EC2684D270)\n */\nexport const bFunTokenSwapAddress = {\n 56: '0x3F5c4476D94537b8Fbbe62A084eC90EC2684D270',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x3F5c4476D94537b8Fbbe62A084eC90EC2684D270)\n */\nexport const bFunTokenSwapConfig = {\n address: bFunTokenSwapAddress,\n abi: bFunTokenSwapABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BondingCurve\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xBe95C003f086Bf2DE9f0b85C5c67598b3B8434d3)\n */\nexport const bondingCurveABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n {\n name: '_protocolRewardRecipient',\n internalType: 'address',\n type: 'address',\n },\n { name: '_weth', internalType: 'address', type: 'address' },\n { name: '_v2Factory', internalType: 'address', type: 'address' },\n ],\n },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'LIQUIDITY_PLATFORM_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'LIQUIDITY_PROTOCOL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'LIQUIDITY_TOKEN_CREATOR_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'LIQUIDITY_TRADE_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'MAX_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'MAX_LP_FEE',\n outputs: [{ name: '', internalType: 'uint24', type: 'uint24' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'TRADE_PLATFORM_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'TRADE_PROTOCOL_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'TRADE_REFERRER_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'TRADE_TOKEN_CREATOR_FEE_BPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'vault', internalType: 'address', type: 'address' },\n { name: 'amount', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'allocateLockedTokens',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'allowTransfer',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '_amountOutMin', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyExactIn',\n outputs: [\n {\n name: 'collateralToPayWithFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tradeFee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '_collateralAmountIn', internalType: 'uint256', type: 'uint256' },\n { name: '_amountOutMin', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'buyExactInWithAmount',\n outputs: [\n {\n name: 'collateralToPayWithFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tradeFee', internalType: 'uint256', type: 'uint256' },\n { name: 'firstFee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: '_tokenAmount', internalType: 'uint256', type: 'uint256' },\n {\n name: '_maxCollateralAmount',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'buyExactOut',\n outputs: [\n {\n name: 'collateralToPayWithFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tradeFee', internalType: 'uint256', type: 'uint256' },\n { name: 'firstFee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'collateralToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [],\n name: 'contractVersion',\n outputs: [{ name: '', internalType: 'string', type: 'string' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address payable', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'feeBPS',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'firstBuyCompleted',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'firstBuyFee',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'fixedMigrationFee',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: '_amountOut', internalType: 'uint256', type: 'uint256' },\n { name: '_reserveIn', internalType: 'uint256', type: 'uint256' },\n { name: '_reserveOut', internalType: 'uint256', type: 'uint256' },\n { name: '_paymentTokenIsOut', internalType: 'bool', type: 'bool' },\n ],\n name: 'getAmountInAndFee',\n outputs: [\n { name: 'amountIn', internalType: 'uint256', type: 'uint256' },\n { name: 'fee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [\n { name: '_amountIn', internalType: 'uint256', type: 'uint256' },\n { name: '_reserveIn', internalType: 'uint256', type: 'uint256' },\n { name: '_reserveOut', internalType: 'uint256', type: 'uint256' },\n { name: '_paymentTokenIsIn', internalType: 'bool', type: 'bool' },\n ],\n name: 'getAmountOutAndFee',\n outputs: [\n { name: 'amountOut', internalType: 'uint256', type: 'uint256' },\n { name: 'fee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'getCurveProgressBps',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'getMarketCap',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'initialTokenSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '_payoutRecipient', internalType: 'address', type: 'address' },\n { name: '_token', internalType: 'address', type: 'address' },\n {\n name: '_params',\n internalType: 'struct IBondingCurve.CurveParams',\n type: 'tuple',\n components: [\n {\n name: 'initialTokenSupply',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'virtualCollateralReservesInitial',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'virtualTokenReservesInitial',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'feeBPS', internalType: 'uint256', type: 'uint256' },\n { name: 'mcLowerLimit', internalType: 'uint256', type: 'uint256' },\n { name: 'mcUpperLimit', internalType: 'uint256', type: 'uint256' },\n {\n name: 'tokensMigrationThreshold',\n internalType: 'uint256',\n type: 'uint256',\n },\n {\n name: 'fixedMigrationFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'firstBuyFee', internalType: 'uint256', type: 'uint256' },\n {\n name: 'targetCollectionAmount',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'collateralToken', internalType: 'address', type: 'address' },\n ],\n },\n { name: '_isTaxToken', internalType: 'bool', type: 'bool' },\n { name: '_taxBps', internalType: 'uint16', type: 'uint16' },\n { name: '_taxProcessor', internalType: 'address', type: 'address' },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'isTaxToken',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'lockVault',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'lockedTokenAmount',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'mcLowerLimit',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'mcUpperLimit',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'migrate',\n outputs: [\n { name: 'pair', internalType: 'address', type: 'address' },\n { name: 'pairedToken', internalType: 'address', type: 'address' },\n { name: 'tokenIn', internalType: 'uint256', type: 'uint256' },\n { name: 'pairedIn', internalType: 'uint256', type: 'uint256' },\n { name: 'tokenDust', internalType: 'uint256', type: 'uint256' },\n { name: 'pairedDust', internalType: 'uint256', type: 'uint256' },\n { name: 'liquidity', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'payoutRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'protocolRewardRecipient',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceTokenOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'restrictTransfer',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '_tokenAmount', internalType: 'uint256', type: 'uint256' },\n {\n name: '_amountCollateralMin',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'sellExactIn',\n outputs: [\n {\n name: 'collateralToReceiveMinusFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tradeFee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: '_tokenAmountMax', internalType: 'uint256', type: 'uint256' },\n { name: '_amountCollateral', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'sellExactOut',\n outputs: [\n {\n name: 'collateralToReceiveMinusFee',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'tokensOut', internalType: 'uint256', type: 'uint256' },\n { name: 'tradeFee', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'sendingToPairForbidden',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'targetCollectionAmount',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxBps',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxProcessor',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'token',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tokensMigrationThreshold',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'tradingStopped',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'v2Factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'virtualCollateralReserves',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'virtualCollateralReservesInitial',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'virtualCollateralReservesTarget',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'virtualTokenReserves',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'virtualTokenReservesInitial',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'wethAddress',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'token',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'lockVault',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'LockVaultBound',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n { type: 'error', inputs: [], name: 'AlreadyMigrated' },\n { type: 'error', inputs: [], name: 'AmountInZero' },\n { type: 'error', inputs: [], name: 'AmountOutZero' },\n {\n type: 'error',\n inputs: [\n { name: 'recommendedTokenOut', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'CollectionTargetExceeded',\n },\n { type: 'error', inputs: [], name: 'ETHNotAllowedForERC20Market' },\n { type: 'error', inputs: [], name: 'FailedCall' },\n { type: 'error', inputs: [], name: 'FailedToSendETH' },\n { type: 'error', inputs: [], name: 'InitialTokenSupplyNotSet' },\n {\n type: 'error',\n inputs: [\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'InsufficientCollateral' },\n { type: 'error', inputs: [], name: 'InsufficientLiquidity' },\n { type: 'error', inputs: [], name: 'InsufficientTokenReserves' },\n { type: 'error', inputs: [], name: 'InvalidGraduationPrice' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'InvalidLiquidity' },\n { type: 'error', inputs: [], name: 'InvalidLockAllocation' },\n { type: 'error', inputs: [], name: 'InvalidLockVault' },\n { type: 'error', inputs: [], name: 'InvalidPairedToken' },\n { type: 'error', inputs: [], name: 'InvalidTaxProcessor' },\n { type: 'error', inputs: [], name: 'LegacyMigrationDisabled' },\n { type: 'error', inputs: [], name: 'LockedTokensAlreadyAllocated' },\n { type: 'error', inputs: [], name: 'MarketCapNotAvailableAfterMigration' },\n {\n type: 'error',\n inputs: [\n { name: 'currentMarketCap', internalType: 'uint256', type: 'uint256' },\n { name: 'mcLowerLimit', internalType: 'uint256', type: 'uint256' },\n { name: 'mcUpperLimit', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'MarketcapThresholdReached',\n },\n { type: 'error', inputs: [], name: 'McLowerLimitNotSet' },\n { type: 'error', inputs: [], name: 'McUpperLimitNotSet' },\n { type: 'error', inputs: [], name: 'NotEnoughETHReserves' },\n { type: 'error', inputs: [], name: 'NotEnoughForFirstBuyFee' },\n { type: 'error', inputs: [], name: 'NotEnoughtETHToBuyTokens' },\n { type: 'error', inputs: [], name: 'NotGraduated' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'OnlyFactory' },\n { type: 'error', inputs: [], name: 'OnlyWeth' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'PairAlreadyInitialized' },\n { type: 'error', inputs: [], name: 'PairedTokenConversionRequired' },\n { type: 'error', inputs: [], name: 'PoolAlreadyCreated' },\n { type: 'error', inputs: [], name: 'PoolNotCreated' },\n { type: 'error', inputs: [], name: 'PoolNotDeployed' },\n { type: 'error', inputs: [], name: 'PoolNotPreCreated' },\n { type: 'error', inputs: [], name: 'ReentrancyGuardReentrantCall' },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n { type: 'error', inputs: [], name: 'SlippageCheckFailed' },\n { type: 'error', inputs: [], name: 'TaxBpsOutOfRange' },\n { type: 'error', inputs: [], name: 'TokenNotInitialized' },\n { type: 'error', inputs: [], name: 'TradingStopped' },\n { type: 'error', inputs: [], name: 'TransfersRestricted' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xBe95C003f086Bf2DE9f0b85C5c67598b3B8434d3)\n */\nexport const bondingCurveAddress = {\n 56: '0xBe95C003f086Bf2DE9f0b85C5c67598b3B8434d3',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xBe95C003f086Bf2DE9f0b85C5c67598b3B8434d3)\n */\nexport const bondingCurveConfig = {\n address: bondingCurveAddress,\n abi: bondingCurveABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Dividend\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xf641fc81612dED92DB1966BfeCe41c35a8672987)\n */\nexport const dividendABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: 'weth_', internalType: 'address', type: 'address' },\n { name: 'blackHole_', internalType: 'address', type: 'address' },\n { name: 'factory_', internalType: 'address', type: 'address' },\n ],\n },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'user', internalType: 'address', type: 'address' }],\n name: 'accumulativeDividendOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'blackHole',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'amount', internalType: 'uint256', type: 'uint256' }],\n name: 'deposit',\n outputs: [{ name: 'success', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'users', internalType: 'address[]', type: 'address[]' }],\n name: 'distributeDividend',\n outputs: [\n { name: 'successCount', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'amount', internalType: 'uint256', type: 'uint256' },\n { name: 'to', internalType: 'address', type: 'address' },\n ],\n name: 'emergencyWithdraw',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'addr', internalType: 'address', type: 'address' }],\n name: 'excludeAddress',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'excludedFromDividends',\n outputs: [{ name: '', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factoryImmutable',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'dividendToken_', internalType: 'address', type: 'address' },\n { name: 'taxToken_', internalType: 'address', type: 'address' },\n {\n name: 'minimumShareBalance_',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'minimumShareBalance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'newMinimumShareBalance',\n internalType: 'uint256',\n type: 'uint256',\n },\n ],\n name: 'setMinimumShareBalance',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'user', internalType: 'address', type: 'address' },\n { name: 'share', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'setShare',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalDividendsDistributed',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalShares',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'userInfo',\n outputs: [\n { name: 'share', internalType: 'uint256', type: 'uint256' },\n { name: 'rewardDebt', internalType: 'uint256', type: 'uint256' },\n { name: 'pendingBalance', internalType: 'uint256', type: 'uint256' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'weth',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'withdrawDividends',\n outputs: [{ name: 'success', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'user', internalType: 'address', type: 'address' },\n { name: 'unwrapWETH', internalType: 'bool', type: 'bool' },\n ],\n name: 'withdrawDividendsFor',\n outputs: [{ name: 'success', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'user', internalType: 'address', type: 'address' }],\n name: 'withdrawDividendsFor',\n outputs: [{ name: 'success', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'user', internalType: 'address', type: 'address' }],\n name: 'withdrawableDividendOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: 'user', internalType: 'address', type: 'address' }],\n name: 'withdrawableDividends',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'withdrawnDividends',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'addr', internalType: 'address', type: 'address', indexed: true },\n ],\n name: 'DividendAddressExcluded',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'magnifiedDividendPerShare',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendDeposited',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'user', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendDistributed',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'user', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'pendingBalance',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendPendingBalanceChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'user', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'rewardDebt',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendRewardDebtChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'user', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'newShare',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'totalShares',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendShareChanged',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'user', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'DividendWithdrawalFailed',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xf641fc81612dED92DB1966BfeCe41c35a8672987)\n */\nexport const dividendAddress = {\n 56: '0xf641fc81612dED92DB1966BfeCe41c35a8672987',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xf641fc81612dED92DB1966BfeCe41c35a8672987)\n */\nexport const dividendConfig = {\n address: dividendAddress,\n abi: dividendABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// ProtocolRewards\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x0000000000000000000000000000000000000000)\n */\nexport const protocolRewardsABI = [\n { stateMutability: 'payable', type: 'constructor', inputs: [] },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'WITHDRAW_TYPEHASH',\n outputs: [{ name: '', internalType: 'bytes32', type: 'bytes32' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'balanceOf',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'reason', internalType: 'bytes4', type: 'bytes4' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'deposit',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'recipients', internalType: 'address[]', type: 'address[]' },\n { name: 'amounts', internalType: 'uint256[]', type: 'uint256[]' },\n { name: 'reasons', internalType: 'bytes4[]', type: 'bytes4[]' },\n { name: 'comment', internalType: 'string', type: 'string' },\n ],\n name: 'depositBatch',\n outputs: [],\n },\n {\n stateMutability: 'payable',\n type: 'function',\n inputs: [\n { name: 'creator', internalType: 'address', type: 'address' },\n { name: 'creatorReward', internalType: 'uint256', type: 'uint256' },\n { name: 'createReferral', internalType: 'address', type: 'address' },\n {\n name: 'createReferralReward',\n internalType: 'uint256',\n type: 'uint256',\n },\n { name: 'mintReferral', internalType: 'address', type: 'address' },\n { name: 'mintReferralReward', internalType: 'uint256', type: 'uint256' },\n { name: 'firstMinter', internalType: 'address', type: 'address' },\n { name: 'firstMinterReward', internalType: 'uint256', type: 'uint256' },\n { name: 'bfun', internalType: 'address', type: 'address' },\n { name: 'bfunReward', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'depositRewards',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'eip712Domain',\n outputs: [\n { name: 'fields', internalType: 'bytes1', type: 'bytes1' },\n { name: 'name', internalType: 'string', type: 'string' },\n { name: 'version', internalType: 'string', type: 'string' },\n { name: 'chainId', internalType: 'uint256', type: 'uint256' },\n { name: 'verifyingContract', internalType: 'address', type: 'address' },\n { name: 'salt', internalType: 'bytes32', type: 'bytes32' },\n { name: 'extensions', internalType: 'uint256[]', type: 'uint256[]' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [{ name: '', internalType: 'address', type: 'address' }],\n name: 'nonces',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalSupply',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'amount', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'withdraw',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'amount', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'withdrawFor',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'from', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n { name: 'amount', internalType: 'uint256', type: 'uint256' },\n { name: 'deadline', internalType: 'uint256', type: 'uint256' },\n { name: 'v', internalType: 'uint8', type: 'uint8' },\n { name: 'r', internalType: 'bytes32', type: 'bytes32' },\n { name: 's', internalType: 'bytes32', type: 'bytes32' },\n ],\n name: 'withdrawWithSig',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n { name: 'reason', internalType: 'bytes4', type: 'bytes4', indexed: true },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'comment',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'Deposit',\n },\n { type: 'event', anonymous: false, inputs: [], name: 'EIP712DomainChanged' },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'creator',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'createReferral',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'mintReferral',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'firstMinter',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'bfun',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'from',\n internalType: 'address',\n type: 'address',\n indexed: false,\n },\n {\n name: 'creatorReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'createReferralReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'mintReferralReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'firstMinterReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'bfunReward',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'RewardsDeposit',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n { name: 'from', internalType: 'address', type: 'address', indexed: true },\n { name: 'to', internalType: 'address', type: 'address', indexed: true },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'Withdraw',\n },\n { type: 'error', inputs: [], name: 'ADDRESS_ZERO' },\n { type: 'error', inputs: [], name: 'ARRAY_LENGTH_MISMATCH' },\n { type: 'error', inputs: [], name: 'INVALID_DEPOSIT' },\n { type: 'error', inputs: [], name: 'INVALID_SIGNATURE' },\n { type: 'error', inputs: [], name: 'INVALID_WITHDRAW' },\n { type: 'error', inputs: [], name: 'InvalidShortString' },\n { type: 'error', inputs: [], name: 'SIGNATURE_DEADLINE_EXPIRED' },\n {\n type: 'error',\n inputs: [{ name: 'str', internalType: 'string', type: 'string' }],\n name: 'StringTooLong',\n },\n { type: 'error', inputs: [], name: 'TRANSFER_FAILED' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x0000000000000000000000000000000000000000)\n */\nexport const protocolRewardsAddress = {\n 56: '0x0000000000000000000000000000000000000000',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x0000000000000000000000000000000000000000)\n */\nexport const protocolRewardsConfig = {\n address: protocolRewardsAddress,\n abi: protocolRewardsABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// SplitVaultFactory\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xB2935b344417e6240C380235262FA65e15746375)\n */\nexport const splitVaultFactoryABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: 'factory_', internalType: 'address', type: 'address' },\n {\n name: 'vaultImplementation_',\n internalType: 'address',\n type: 'address',\n },\n { name: 'owner_', internalType: 'address', type: 'address' },\n ],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'pure',\n type: 'function',\n inputs: [{ name: 'quoteToken', internalType: 'address', type: 'address' }],\n name: 'isQuoteTokenSupported',\n outputs: [{ name: 'supported', internalType: 'bool', type: 'bool' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'maxGasLimitPerUser',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'taxToken', internalType: 'address', type: 'address' },\n { name: 'quoteToken', internalType: 'address', type: 'address' },\n { name: '', internalType: 'address', type: 'address' },\n { name: 'vaultData', internalType: 'bytes', type: 'bytes' },\n ],\n name: 'newVault',\n outputs: [{ name: 'vault', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newLimit', internalType: 'uint256', type: 'uint256' }],\n name: 'setMaxGasLimitPerUser',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'vaultImplementation',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'oldLimit',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'newLimit',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'SplitVaultMaxGasLimitPerUserUpdated',\n },\n { type: 'error', inputs: [], name: 'FailedDeployment' },\n {\n type: 'error',\n inputs: [\n { name: 'balance', internalType: 'uint256', type: 'uint256' },\n { name: 'needed', internalType: 'uint256', type: 'uint256' },\n ],\n name: 'InsufficientBalance',\n },\n { type: 'error', inputs: [], name: 'InvalidGasLimit' },\n { type: 'error', inputs: [], name: 'InvalidQuoteToken' },\n { type: 'error', inputs: [], name: 'OnlyVaultPortal' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n { type: 'error', inputs: [], name: 'ZeroAddress' },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xB2935b344417e6240C380235262FA65e15746375)\n */\nexport const splitVaultFactoryAddress = {\n 56: '0xB2935b344417e6240C380235262FA65e15746375',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0xB2935b344417e6240C380235262FA65e15746375)\n */\nexport const splitVaultFactoryConfig = {\n address: splitVaultFactoryAddress,\n abi: splitVaultFactoryABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// TaxProcessor\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x7D11A8F570f08936E01C9f2AEe3E52A4c30B9e9A)\n */\nexport const taxProcessorABI = [\n {\n stateMutability: 'nonpayable',\n type: 'constructor',\n inputs: [\n { name: 'weth_', internalType: 'address', type: 'address' },\n { name: 'factory_', internalType: 'address', type: 'address' },\n ],\n },\n { stateMutability: 'payable', type: 'receive' },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'deflationBps',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'dispatch',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendAddress',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendBps',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'dividendQuoteBalance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factory',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'factoryImmutable',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'feeQuoteBalance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'feeRateCurve',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'feeRateDex',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'feeReceiver',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n {\n name: 'params',\n internalType: 'struct TaxProcessor.InitParams',\n type: 'tuple',\n components: [\n { name: 'factory', internalType: 'address', type: 'address' },\n { name: 'v2Router', internalType: 'address', type: 'address' },\n { name: 'taxToken', internalType: 'address', type: 'address' },\n { name: 'quoteToken', internalType: 'address', type: 'address' },\n { name: 'feeReceiver', internalType: 'address', type: 'address' },\n { name: 'marketAddress', internalType: 'address', type: 'address' },\n { name: 'dividendAddress', internalType: 'address', type: 'address' },\n { name: 'feeRateCurve', internalType: 'uint16', type: 'uint16' },\n { name: 'feeRateDex', internalType: 'uint16', type: 'uint16' },\n { name: 'marketBps', internalType: 'uint16', type: 'uint16' },\n { name: 'deflationBps', internalType: 'uint16', type: 'uint16' },\n { name: 'lpBps', internalType: 'uint16', type: 'uint16' },\n { name: 'dividendBps', internalType: 'uint16', type: 'uint16' },\n { name: 'minBuyBackQuote', internalType: 'uint256', type: 'uint256' },\n ],\n },\n ],\n name: 'initialize',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'lpBps',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'lpQuoteBalance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'marketAddress',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'marketBps',\n outputs: [{ name: '', internalType: 'uint16', type: 'uint16' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'marketQuoteBalance',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'maxBuyBackGasLimit',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'minBuyBackQuote',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'owner',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'preBondBurnFunds',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'quoteAmount', internalType: 'uint256', type: 'uint256' }],\n name: 'processBondingCurveTax',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'taxAmount', internalType: 'uint256', type: 'uint256' }],\n name: 'processTaxTokens',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'quoteToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [],\n name: 'renounceOwnership',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newLimit', internalType: 'uint256', type: 'uint256' }],\n name: 'setMaxBuyBackGasLimit',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newAmount', internalType: 'uint256', type: 'uint256' }],\n name: 'setMinBuyBackQuote',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'feeReceiver_', internalType: 'address', type: 'address' },\n { name: 'marketAddress_', internalType: 'address', type: 'address' },\n { name: 'dividendAddress_', internalType: 'address', type: 'address' },\n ],\n name: 'setReceivers',\n outputs: [],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'feeRateCurve_', internalType: 'uint16', type: 'uint16' },\n { name: 'feeRateDex_', internalType: 'uint16', type: 'uint16' },\n { name: 'marketBps_', internalType: 'uint16', type: 'uint16' },\n { name: 'deflationBps_', internalType: 'uint16', type: 'uint16' },\n { name: 'lpBps_', internalType: 'uint16', type: 'uint16' },\n { name: 'dividendBps_', internalType: 'uint16', type: 'uint16' },\n ],\n name: 'setTaxConfig',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'taxToken',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalQuoteAddedToLiquidity',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalQuoteSentToDividend',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalQuoteSentToMarketing',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'totalTokenAddedToLiquidity',\n outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [{ name: 'newOwner', internalType: 'address', type: 'address' }],\n name: 'transferOwnership',\n outputs: [],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'v2Router',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'view',\n type: 'function',\n inputs: [],\n name: 'weth',\n outputs: [{ name: '', internalType: 'address', type: 'address' }],\n },\n {\n stateMutability: 'nonpayable',\n type: 'function',\n inputs: [\n { name: 'token', internalType: 'address', type: 'address' },\n { name: 'to', internalType: 'address', type: 'address' },\n ],\n name: 'withdrawAll',\n outputs: [],\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'version',\n internalType: 'uint64',\n type: 'uint64',\n indexed: false,\n },\n ],\n name: 'Initialized',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'previousOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'newOwner',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n ],\n name: 'OwnershipTransferred',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'quoteAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorBondingCurveTax',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'quoteIn',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'tokensBurned',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorBurnExecuted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'quoteAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'gasLeft',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'reason',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'TaxProcessorBuyBackSkipped',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n { name: 'fee', internalType: 'uint256', type: 'uint256', indexed: false },\n {\n name: 'market',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'dividend',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorDispatchExecuted',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'amount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'reason',\n internalType: 'string',\n type: 'string',\n indexed: false,\n },\n ],\n name: 'TaxProcessorDividendDepositSkipped',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'tokenAdded',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'quoteAdded',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'liquidityMinted',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorLiquidityAdded',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'oldLimit',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'newLimit',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorMaxBuyBackGasLimitUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'oldAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n {\n name: 'newAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorMinBuyBackQuoteUpdated',\n },\n {\n type: 'event',\n anonymous: false,\n inputs: [\n {\n name: 'taxToken',\n internalType: 'address',\n type: 'address',\n indexed: true,\n },\n {\n name: 'taxAmount',\n internalType: 'uint256',\n type: 'uint256',\n indexed: false,\n },\n ],\n name: 'TaxProcessorProcessTaxTokens',\n },\n { type: 'error', inputs: [], name: 'DistributionBpsInvalid' },\n { type: 'error', inputs: [], name: 'InvalidInitParams' },\n { type: 'error', inputs: [], name: 'InvalidInitialization' },\n { type: 'error', inputs: [], name: 'NotInitializing' },\n { type: 'error', inputs: [], name: 'OnlyTaxToken' },\n {\n type: 'error',\n inputs: [{ name: 'owner', internalType: 'address', type: 'address' }],\n name: 'OwnableInvalidOwner',\n },\n {\n type: 'error',\n inputs: [{ name: 'account', internalType: 'address', type: 'address' }],\n name: 'OwnableUnauthorizedAccount',\n },\n {\n type: 'error',\n inputs: [{ name: 'token', internalType: 'address', type: 'address' }],\n name: 'SafeERC20FailedOperation',\n },\n] as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x7D11A8F570f08936E01C9f2AEe3E52A4c30B9e9A)\n */\nexport const taxProcessorAddress = {\n 56: '0x7D11A8F570f08936E01C9f2AEe3E52A4c30B9e9A',\n} as const\n\n/**\n * [__View Contract on Bnb Smart Chain Bsc Scan__](https://bscscan.com/address/0x7D11A8F570f08936E01C9f2AEe3E52A4c30B9e9A)\n */\nexport const taxProcessorConfig = {\n address: taxProcessorAddress,\n abi: taxProcessorABI,\n} as const\n","export const chainConfigs = {\n [56]: {\n current: {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"PROCESSOR_FEE_RATE_CURVE\": \"1000\",\n \"PROCESSOR_FEE_RATE_DEX\": \"1000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"8000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x4ca3faF856cE6e1860E53E6223Fb64D1D53aE42F\",\n \"FACTORY_OWNER\": \"0x3D59533BE6fedA0631bE3F85960284E0603e71E2\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3D59533BE6fedA0631bE3F85960284E0603e71E2\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x46A15B0b27311cedF172AB29E4f4766fbE7F4364\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V3\",\n \"TYPE\": \"V3\",\n \"ROUTER\": \"0x1b81D678ffb9C0263b24A97847620C99d213eB14\",\n \"QUOTER\": \"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x10ED43C718714eb63d5aA57B78B54704E256024E\",\n \"V2_FACTORY\": \"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73\",\n \"V2_INIT_CODE_HASH\": \"0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5\",\n \"WETH\": \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\",\n \"V3_FACTORY\": \"0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865\",\n \"V3_DEPLOYER\": \"0x41ff9AA7e16B8B1a8a8dc4f0eFacd93D02d071c9\",\n \"V3_INIT_CODE_HASH\": \"0x6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2\",\n \"V4_VAULT\": \"0x238a358808379702088667322f80aC48bAd5e6c4\",\n \"IS_PANCAKE\": true,\n \"MIN_TAX_DURATION_GUARDRAIL\": \"86400\",\n \"MIN_ANTI_FARMER_DURATION_GUARDRAIL\": \"86400\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"11.1.0\",\n \"V4_POOL_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"V4_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V4\": \"0x0000000000000000000000000000000000000000\",\n \"PERMIT2\": \"0x0000000000000000000000000000000000000000\",\n \"UNIVERSAL_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"V4_LIQUIDITY_PROFILES\": {},\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"BNB\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"8000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"12000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"0\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"12000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"CAKE\": {\n \"ID\": \"CAKE_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82\",\n \"SYMBOL\": \"Cake\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"4000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"6250000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"6250000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"6250000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USDT\": {\n \"ID\": \"USDT_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x55d398326f99059fF775485246999027B3197955\",\n \"SYMBOL\": \"USDT\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 100\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USD1\": {\n \"ID\": \"USD1_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d\",\n \"SYMBOL\": \"USD1\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"ASTER\": {\n \"ID\": \"ASTER_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x000Ae314E2A2172a039B26378814C252734f556A\",\n \"SYMBOL\": \"ASTER\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 2500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"7000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"100000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"12000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"12000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"U\": {\n \"ID\": \"U_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0xcE24439F2D9C6a2289F741120FE202248B666666\",\n \"SYMBOL\": \"U\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 100\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"0\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n }\n }\n},\n \"11.1.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"PROCESSOR_FEE_RATE_CURVE\": \"1000\",\n \"PROCESSOR_FEE_RATE_DEX\": \"1000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"8000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x4ca3faF856cE6e1860E53E6223Fb64D1D53aE42F\",\n \"FACTORY_OWNER\": \"0x3D59533BE6fedA0631bE3F85960284E0603e71E2\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3D59533BE6fedA0631bE3F85960284E0603e71E2\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x46A15B0b27311cedF172AB29E4f4766fbE7F4364\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V3\",\n \"TYPE\": \"V3\",\n \"ROUTER\": \"0x1b81D678ffb9C0263b24A97847620C99d213eB14\",\n \"QUOTER\": \"0xB048Bbc1Ee6b733FFfCFb9e9CeF7375518e25997\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x10ED43C718714eb63d5aA57B78B54704E256024E\",\n \"V2_FACTORY\": \"0xcA143Ce32Fe78f1f7019d7d551a6402fC5350c73\",\n \"V2_INIT_CODE_HASH\": \"0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5\",\n \"WETH\": \"0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c\",\n \"V3_FACTORY\": \"0x0BFbCF9fa4f9C56B0F40a671Ad40E0805A091865\",\n \"V3_DEPLOYER\": \"0x41ff9AA7e16B8B1a8a8dc4f0eFacd93D02d071c9\",\n \"V3_INIT_CODE_HASH\": \"0x6ce8eb472fa82df5469c6ab6d485f17c3ad13c8cd7af59b3d4a8026c5ce0f7e2\",\n \"V4_VAULT\": \"0x238a358808379702088667322f80aC48bAd5e6c4\",\n \"IS_PANCAKE\": true,\n \"MIN_TAX_DURATION_GUARDRAIL\": \"86400\",\n \"MIN_ANTI_FARMER_DURATION_GUARDRAIL\": \"86400\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"11.1.0\",\n \"V4_POOL_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"V4_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V4\": \"0x0000000000000000000000000000000000000000\",\n \"PERMIT2\": \"0x0000000000000000000000000000000000000000\",\n \"UNIVERSAL_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"V4_LIQUIDITY_PROFILES\": {},\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"BNB\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"8000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"12000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"0\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"12000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"CAKE\": {\n \"ID\": \"CAKE_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0E09FaBB73Bd3Ade0a17ECC321fD13a19e81cE82\",\n \"SYMBOL\": \"Cake\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"4000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"6250000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"6250000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"6250000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USDT\": {\n \"ID\": \"USDT_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x55d398326f99059fF775485246999027B3197955\",\n \"SYMBOL\": \"USDT\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 100\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USD1\": {\n \"ID\": \"USD1_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x8d0D000Ee44948FC98c9B98A4FA4921476f08B0d\",\n \"SYMBOL\": \"USD1\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"ASTER\": {\n \"ID\": \"ASTER_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x000Ae314E2A2172a039B26378814C252734f556A\",\n \"SYMBOL\": \"ASTER\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 2500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"7000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"100000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"12000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"12000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"12000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"U\": {\n \"ID\": \"U_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0xcE24439F2D9C6a2289F741120FE202248B666666\",\n \"SYMBOL\": \"U\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V3\",\n \"V3_FEE\": 100\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"0\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"0\",\n \"FEE_BASIS_POINTS\": \"100\",\n \"FIXED_MIGRATION_FEE\": \"0\",\n \"POOL_CREATION_FEE\": \"0\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"50000000000000000000\",\n \"MC_UPPER_LIMIT\": \"0\",\n \"MC_LOWER_LIMIT\": \"0\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"0\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"V4_LIQUIDITY_CONFIG\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000\n }\n }\n}\n }\n };"],"mappings":"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","names":[]}