bfun-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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x3d383203B361A85a2786D3c2E29218Cdcc3D00bC)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x3d383203B361A85a2786D3c2E29218Cdcc3D00bC)\n */\nexport const bFunFactoryAddress = {\n 97: '0x3d383203B361A85a2786D3c2E29218Cdcc3D00bC',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x3d383203B361A85a2786D3c2E29218Cdcc3D00bC)\n */\nexport const bFunFactoryConfig = {\n address: bFunFactoryAddress,\n abi: bFunFactoryABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunFactoryImpl\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x02A099B3c52B617ea138C486E2607bB0A3607534)\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 { 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 { name: 'processorFeeRate', internalType: 'uint16', type: 'uint16' },\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 { 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 { name: 'processorFeeRate', internalType: 'uint16', type: 'uint16' },\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: '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: '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: [{ 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: [{ 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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x02A099B3c52B617ea138C486E2607bB0A3607534)\n */\nexport const bFunFactoryImplAddress = {\n 97: '0x02A099B3c52B617ea138C486E2607bB0A3607534',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x02A099B3c52B617ea138C486E2607bB0A3607534)\n */\nexport const bFunFactoryImplConfig = {\n address: bFunFactoryImplAddress,\n abi: bFunFactoryImplABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunFactoryTradeHelper\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x31F3af5Ac3Fb40F51301d97b35A7623929e8A62f)\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: '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: '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 {\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: '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] as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x31F3af5Ac3Fb40F51301d97b35A7623929e8A62f)\n */\nexport const bFunFactoryTradeHelperAddress = {\n 97: '0x31F3af5Ac3Fb40F51301d97b35A7623929e8A62f',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x31F3af5Ac3Fb40F51301d97b35A7623929e8A62f)\n */\nexport const bFunFactoryTradeHelperConfig = {\n address: bFunFactoryTradeHelperAddress,\n abi: bFunFactoryTradeHelperABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunLockVault\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0xAdC87C365A2d2eDb24514BD570624f49AE363043)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0xAdC87C365A2d2eDb24514BD570624f49AE363043)\n */\nexport const bFunLockVaultAddress = {\n 97: '0xAdC87C365A2d2eDb24514BD570624f49AE363043',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0xAdC87C365A2d2eDb24514BD570624f49AE363043)\n */\nexport const bFunLockVaultConfig = {\n address: bFunLockVaultAddress,\n abi: bFunLockVaultABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunMultiDexRouter\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x5FE2C8f612E17AC33682741f92EfFFa1AeFCE98C)\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] as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x5FE2C8f612E17AC33682741f92EfFFa1AeFCE98C)\n */\nexport const bFunMultiDexRouterAddress = {\n 97: '0x5FE2C8f612E17AC33682741f92EfFFa1AeFCE98C',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x5FE2C8f612E17AC33682741f92EfFFa1AeFCE98C)\n */\nexport const bFunMultiDexRouterConfig = {\n address: bFunMultiDexRouterAddress,\n abi: bFunMultiDexRouterABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunTaxToken\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x246da83c8B59A12F13010D8d555Ae186DFd04654)\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: '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: '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: '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: '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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x246da83c8B59A12F13010D8d555Ae186DFd04654)\n */\nexport const bFunTaxTokenAddress = {\n 97: '0x246da83c8B59A12F13010D8d555Ae186DFd04654',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x246da83c8B59A12F13010D8d555Ae186DFd04654)\n */\nexport const bFunTaxTokenConfig = {\n address: bFunTaxTokenAddress,\n abi: bFunTaxTokenABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunToken\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x1179df67f3352707cbe81383060f81Aad30E1Cca)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x1179df67f3352707cbe81383060f81Aad30E1Cca)\n */\nexport const bFunTokenAddress = {\n 97: '0x1179df67f3352707cbe81383060f81Aad30E1Cca',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x1179df67f3352707cbe81383060f81Aad30E1Cca)\n */\nexport const bFunTokenConfig = {\n address: bFunTokenAddress,\n abi: bFunTokenABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BFunTokenSwap\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x4722a82CfAFdA217a19aaEEbeEe7f04ce772C036)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x4722a82CfAFdA217a19aaEEbeEe7f04ce772C036)\n */\nexport const bFunTokenSwapAddress = {\n 97: '0x4722a82CfAFdA217a19aaEEbeEe7f04ce772C036',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x4722a82CfAFdA217a19aaEEbeEe7f04ce772C036)\n */\nexport const bFunTokenSwapConfig = {\n address: bFunTokenSwapAddress,\n abi: bFunTokenSwapABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// BondingCurve\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x75e081e245DeDCdeed245A376105806B7C80BC86)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x75e081e245DeDCdeed245A376105806B7C80BC86)\n */\nexport const bondingCurveAddress = {\n 97: '0x75e081e245DeDCdeed245A376105806B7C80BC86',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x75e081e245DeDCdeed245A376105806B7C80BC86)\n */\nexport const bondingCurveConfig = {\n address: bondingCurveAddress,\n abi: bondingCurveABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// Dividend\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x91C9Ece389445AA900545fF7071557de7e4a9927)\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: [],\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x91C9Ece389445AA900545fF7071557de7e4a9927)\n */\nexport const dividendAddress = {\n 97: '0x91C9Ece389445AA900545fF7071557de7e4a9927',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x91C9Ece389445AA900545fF7071557de7e4a9927)\n */\nexport const dividendConfig = {\n address: dividendAddress,\n abi: dividendABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// ProtocolRewards\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x7a165F47Ab868D08Fc29139F72c6E5f69a43c345)\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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x7a165F47Ab868D08Fc29139F72c6E5f69a43c345)\n */\nexport const protocolRewardsAddress = {\n 97: '0x7a165F47Ab868D08Fc29139F72c6E5f69a43c345',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x7a165F47Ab868D08Fc29139F72c6E5f69a43c345)\n */\nexport const protocolRewardsConfig = {\n address: protocolRewardsAddress,\n abi: protocolRewardsABI,\n} as const\n\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n// TaxProcessor\n//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x68b8a8FCa903fe05B70aEdE3C88B1450F130D39c)\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: 'feeRate',\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: 'feeRate', 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: '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: 'view',\n type: 'function',\n inputs: [],\n name: 'taxToken',\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: '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 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: '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 { 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 Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x68b8a8FCa903fe05B70aEdE3C88B1450F130D39c)\n */\nexport const taxProcessorAddress = {\n 97: '0x68b8a8FCa903fe05B70aEdE3C88B1450F130D39c',\n} as const\n\n/**\n * [__View Contract on Binance Smart Chain Testnet Bsc Scan__](https://testnet.bscscan.com/address/0x68b8a8FCa903fe05B70aEdE3C88B1450F130D39c)\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\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V2\",\n \"TYPE\": \"V2\",\n \"ROUTER\": \"0x10ED43C718714eb63d5aA57B78B54704E256024E\",\n \"QUOTER\": \"0x0000000000000000000000000000000000000000\",\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 \"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\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\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_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"ENABLED\": false,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MIN_BUY_BACK_QUOTE\": \"1000000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\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\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V2\",\n \"TYPE\": \"V2\",\n \"ROUTER\": \"0x10ED43C718714eb63d5aA57B78B54704E256024E\",\n \"QUOTER\": \"0x0000000000000000000000000000000000000000\",\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 \"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\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\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_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"ENABLED\": false,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MIN_BUY_BACK_QUOTE\": \"1000000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n }\n }\n}\n }, [97]: {\n current: {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"FACTORY_OWNER\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V2\",\n \"TYPE\": \"V2\",\n \"ROUTER\": \"0x9ac64cc6e4415144c455bd8e4837fea55603e5c3\",\n \"QUOTER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x9ac64cc6e4415144c455bd8e4837fea55603e5c3\",\n \"V2_FACTORY\": \"0x6725F303b657a9451d8BA641348b6761A6CC7a17\",\n \"V2_INIT_CODE_HASH\": \"0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5\",\n \"WETH\": \"0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd\",\n \"V3_FACTORY\": \"0x0000000000000000000000000000000000000000\",\n \"V3_DEPLOYER\": \"0x0000000000000000000000000000000000000000\",\n \"V3_INIT_CODE_HASH\": \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n \"V4_VAULT\": \"0x0000000000000000000000000000000000000000\",\n \"IS_PANCAKE\": true,\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\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0xf69C38a3884914e78291FacdfFcC70AE6f17CC7E\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"CAKE\": {\n \"ID\": \"CAKE_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x1Bf6F95f737667B1D7DfE7Fd5f7b5d4a2E373a5F\",\n \"SYMBOL\": \"CAKE\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\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\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"FACTORY_OWNER\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x1173b9c72191195647401cc1a4e398cacfb93a98\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"SWAP_ROUTER_V2\": \"0x0000000000000000000000000000000000000000\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"PANCAKE_V2\",\n \"TYPE\": \"V2\",\n \"ROUTER\": \"0x9ac64cc6e4415144c455bd8e4837fea55603e5c3\",\n \"QUOTER\": \"0x0000000000000000000000000000000000000000\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x9ac64cc6e4415144c455bd8e4837fea55603e5c3\",\n \"V2_FACTORY\": \"0x6725F303b657a9451d8BA641348b6761A6CC7a17\",\n \"V2_INIT_CODE_HASH\": \"0x00fb7f630766e6a796048ea87d01acd3068e8ff67d078148a3fa3f4a84f69bd5\",\n \"WETH\": \"0xae13d989daC2f0dEbFf460aC112a837C89BAa7cd\",\n \"V3_FACTORY\": \"0x0000000000000000000000000000000000000000\",\n \"V3_DEPLOYER\": \"0x0000000000000000000000000000000000000000\",\n \"V3_INIT_CODE_HASH\": \"0x0000000000000000000000000000000000000000000000000000000000000000\",\n \"V4_VAULT\": \"0x0000000000000000000000000000000000000000\",\n \"IS_PANCAKE\": true,\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\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0xf69C38a3884914e78291FacdfFcC70AE6f17CC7E\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n },\n \"CAKE\": {\n \"ID\": \"CAKE_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x1Bf6F95f737667B1D7DfE7Fd5f7b5d4a2E373a5F\",\n \"SYMBOL\": \"CAKE\",\n \"DECIMALS\": 18,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"PANCAKE_V2\",\n \"V3_FEE\": 0\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000000000000000\",\n \"POOL_CREATION_FEE\": \"200000000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000000000000000\",\n \"MIN_BUY_BACK_QUOTE\": \"10000000000000000000\",\n \"MC_UPPER_LIMIT\": \"37560000000000000000000\",\n \"MC_LOWER_LIMIT\": \"37500000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000000000000000\",\n \"V4_LP_FEE\": \"0\",\n \"DEFAULT_PROFILE_ID\": \"0x0\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x0\"\n }\n }\n}\n }, [8453]: {\n current: {},\n \"1.0.12\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1080700000000000000000000000\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"878387280000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"50000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"12064000000000000000\",\n \"MC_LOWER_LIMIT\": \"12024000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799722780172704663715426611\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500082811203397937\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"1.0.12\"\n}, \"1.0.13\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"1.0.13\"\n}, \"1.0.8\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1060000000000000000000000000\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"1600000000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"27000000000000000000\",\n \"MC_LOWER_LIMIT\": \"25000000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799538870462404697804703491\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"4911528238439880951\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x30d197dd771d8f75378aad9428ed9d5e24bdbbbb\",\n \"FACTORY_OWNER\": \"0x2730B29aCbBCD34A59B720338e8d06619Fd71ACa\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x2730B29aCbBCD34A59B720338e8d06619Fd71ACa\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"1.0.8\"\n}, \"2.0.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.0.0\",\n \"V4_POOL_MANAGER\": \"0x498581fF718922c3f8e6A244956aF099B2652b2b\",\n \"V4_POSITION_MANAGER\": \"0x7C5f5A4bBd8fD63184577525326123B519429bDc\",\n \"QUOTER_V4\": \"0x0d5e0F971ED27FBfF6c2837bf31316121532048D\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x6fF5693b99212Da76ad316178A184AB56D299b43\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n}, \"2.1.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"UNISWAP_V3\",\n \"TYPE\": \"V3\",\n \"ROUTER\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"QUOTER\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.1.0\",\n \"V4_POOL_MANAGER\": \"0x498581fF718922c3f8e6A244956aF099B2652b2b\",\n \"V4_POSITION_MANAGER\": \"0x7C5f5A4bBd8fD63184577525326123B519429bDc\",\n \"QUOTER_V4\": \"0x0d5e0F971ED27FBfF6c2837bf31316121532048D\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x6fF5693b99212Da76ad316178A184AB56D299b43\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\",\n \"V4_LIQUIDITY_PROFILES\": {\n \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\": {\n \"NAME\": \"U10_SINGLE_SIDED_OVERLAP_V1_SP200\",\n \"VERSION\": 1,\n \"ENCODED_PROFILE\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000027060000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000005b68000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000149b000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000011300000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000197d000000000000000000000000000000000000000000000000000000000000197d0000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f4\",\n \"TICK_SPACING\": 200,\n \"TOKEN_ONLY_TICK_LOWER_DELTA\": [\n 0,\n 11000,\n 23400,\n 70400,\n 84400\n ],\n \"TOKEN_ONLY_TICK_UPPER_DELTA\": [\n 11000,\n 70400,\n 70400,\n 104400,\n 104400\n ],\n \"TOKEN_ONLY_POSITION_TOKEN_BPS\": [\n 1000,\n 5000,\n 1500,\n 2000,\n 500\n ],\n \"PAIRED_POSITION_BPS\": {\n \"deep\": 10,\n \"main\": 9990\n },\n \"LABELS\": [\n \"lowerAbove→130k\",\n \"130k→50m\",\n \"450k→50m\",\n \"50m→1p5b\",\n \"200m→1p5b\"\n ]\n }\n },\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"ETH\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"2500759732077910169\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x311935Cd80B76769bF2ecC9D8Ab7635b2139cf82\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"TOKEN_SWAP\": {\n \"ENABLED\": false,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n }\n }\n}, \"2.2.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x34527950b5dDe5039139Fd4fE8944dD392941F1f\",\n \"FACTORY_OWNER\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x3851F305EcC728c3e78c2F6Ff0BAC9B9fF1BF0ff\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x03a520b32C04BF3bEEf7BEb72E919cf822Ed34f1\",\n \"QUOTER_V2\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"SWAP_ROUTER_V2\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"UNISWAP_V3\",\n \"TYPE\": \"V3\",\n \"ROUTER\": \"0x2626664c2603336E57B271c5C0b26F421741e481\",\n \"QUOTER\": \"0x3d4e44Eb1374240CE5F1B871ab261CD16335B76a\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x4752ba5dbc23f44d87826276bf6fd6b1c372ad24\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.2.0\",\n \"V4_POOL_MANAGER\": \"0x498581fF718922c3f8e6A244956aF099B2652b2b\",\n \"V4_POSITION_MANAGER\": \"0x7C5f5A4bBd8fD63184577525326123B519429bDc\",\n \"QUOTER_V4\": \"0x0d5e0F971ED27FBfF6c2837bf31316121532048D\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x6fF5693b99212Da76ad316178A184AB56D299b43\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\",\n \"V4_LIQUIDITY_PROFILES\": {\n \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\": {\n \"NAME\": \"U10_SINGLE_SIDED_OVERLAP_V1_SP200\",\n \"VERSION\": 1,\n \"ENCODED_PROFILE\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000027060000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000005b68000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000149b000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000011300000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000197d000000000000000000000000000000000000000000000000000000000000197d0000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f4\",\n \"TICK_SPACING\": 200,\n \"TOKEN_ONLY_TICK_LOWER_DELTA\": [\n 0,\n 11000,\n 23400,\n 70400,\n 84400\n ],\n \"TOKEN_ONLY_TICK_UPPER_DELTA\": [\n 11000,\n 70400,\n 70400,\n 104400,\n 104400\n ],\n \"TOKEN_ONLY_POSITION_TOKEN_BPS\": [\n 1000,\n 5000,\n 1500,\n 2000,\n 500\n ],\n \"PAIRED_POSITION_BPS\": {\n \"deep\": 10,\n \"main\": 9990\n },\n \"LABELS\": [\n \"lowerAbove→130k\",\n \"130k→50m\",\n \"450k→50m\",\n \"50m→1p5b\",\n \"200m→1p5b\"\n ]\n }\n },\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"ETH\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x311935Cd80B76769bF2ecC9D8Ab7635b2139cf82\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"TOKEN_SWAP\": {\n \"ENABLED\": false,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n }\n }\n}\n }, [84532]: {\n current: {},\n \"1.0.12\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1060000000000000000000000000\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"3250000000000000\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000\",\n \"POOL_CREATION_FEE\": \"100000000000000\",\n \"FIRST_BUY_FEE\": \"100000000000000\",\n \"MC_UPPER_LIMIT\": \"50961538461538464\",\n \"MC_LOWER_LIMIT\": \"45865384615384616\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"793245628457859931534326380\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"9320053699169239\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x9575B2D4EEb082F777Af9DaE93702aEa6d2769d3\",\n \"FACTORY_OWNER\": \"0x9575B2D4EEb082F777Af9DaE93702aEa6d2769d3\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x9575B2D4EEb082F777Af9DaE93702aEa6d2769d3\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x27F971cb582BF9E50F397e4d29a5C7A34f11faA2\",\n \"QUOTER_V2\": \"0xC5290058841028F1614F3A6F0F5816cAd0df5E27\",\n \"SWAP_ROUTER_V2\": \"0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4\",\n \"UNISWAP_V2_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"1.0.12\"\n}, \"2.0.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"FACTORY_OWNER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x27F971cb582BF9E50F397e4d29a5C7A34f11faA2\",\n \"QUOTER_V2\": \"0xC5290058841028F1614F3A6F0F5816cAd0df5E27\",\n \"SWAP_ROUTER_V2\": \"0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4\",\n \"UNISWAP_V2_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.0.0\",\n \"V4_POOL_MANAGER\": \"0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408\",\n \"V4_POSITION_MANAGER\": \"0x4B2C77d209D3405F41a037Ec6c77F7F5b8e2ca80\",\n \"QUOTER_V4\": \"0x4A6513c898fe1B2d0E78d3b0e0A4a151589B1cBa\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x492E6456D9528771018DeB9E87ef7750EF184104\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n}, \"2.1.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"FACTORY_OWNER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x27F971cb582BF9E50F397e4d29a5C7A34f11faA2\",\n \"QUOTER_V2\": \"0xC5290058841028F1614F3A6F0F5816cAd0df5E27\",\n \"SWAP_ROUTER_V2\": \"0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4\",\n \"UNISWAP_V2_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.1.0\",\n \"V4_POOL_MANAGER\": \"0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408\",\n \"V4_POSITION_MANAGER\": \"0x4B2C77d209D3405F41a037Ec6c77F7F5b8e2ca80\",\n \"QUOTER_V4\": \"0x4A6513c898fe1B2d0E78d3b0e0A4a151589B1cBa\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x492E6456D9528771018DeB9E87ef7750EF184104\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\",\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"ETH\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500759732077910169\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"COLLATERAL_TOKEN\": \"0x108219E8D6A004A5B15D922FE1A42fd282601DcC\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"COLLATERAL_TOKEN\": \"0x62458b06DdD0E886dc26837dcd8C386ADD548317\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"MUSDC\": {\n \"ID\": \"MUSDC_DEFAULT\",\n \"COLLATERAL_TOKEN\": \"0x4967BC4b61B3259856D1A925900263AB2B64F6de\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"MSOL\": {\n \"ID\": \"MSOL_DEFAULT\",\n \"COLLATERAL_TOKEN\": \"0x887847e42F068df9D9C248B355ad84DbC7527070\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n }\n }\n}, \"2.2.0\": {\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"DEX_FEE_BASIS_POINTS\": \"5000\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"SIGNER\": \"0x0000000000000000000000000000000000000000\",\n \"DEPLOYER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"FACTORY_OWNER\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"PROTOCOL_REWARD_RECIPIENT\": \"0x9575b2d4eeb082f777af9dae93702aea6d2769d3\",\n \"UNISWAP_V3_NONFUNGIBLE_POSITION_MANAGER\": \"0x27F971cb582BF9E50F397e4d29a5C7A34f11faA2\",\n \"QUOTER_V2\": \"0xC5290058841028F1614F3A6F0F5816cAd0df5E27\",\n \"SWAP_ROUTER_V2\": \"0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4\",\n \"TOKEN_SWAP_DEXES\": [\n {\n \"KEY\": \"UNISWAP_V3\",\n \"TYPE\": \"V3\",\n \"ROUTER\": \"0x94cC0AaC535CCDB3C01d6787D6413C739ae12bc4\",\n \"QUOTER\": \"0xC5290058841028F1614F3A6F0F5816cAd0df5E27\",\n \"QUOTER_KIND\": 0,\n \"ENABLED\": true\n }\n ],\n \"UNISWAP_V2_ROUTER\": \"0x0000000000000000000000000000000000000000\",\n \"WETH\": \"0x4200000000000000000000000000000000000006\",\n \"V3_POOL_FEE\": \"10000\",\n \"TRADE_REFERRER_FEE_BPS\": \"1000\",\n \"CONTRACT_VERSION\": \"2.2.0\",\n \"V4_POOL_MANAGER\": \"0x05E73354cFDd6745C338b50BcFDfA3Aa6fA03408\",\n \"V4_POSITION_MANAGER\": \"0x4B2C77d209D3405F41a037Ec6c77F7F5b8e2ca80\",\n \"QUOTER_V4\": \"0x4A6513c898fe1B2d0E78d3b0e0A4a151589B1cBa\",\n \"PERMIT2\": \"0x000000000022D473030F116dDEE9F6B43aC78BA3\",\n \"UNIVERSAL_ROUTER\": \"0x492E6456D9528771018DeB9E87ef7750EF184104\",\n \"V4_LP_FEE\": \"20000\",\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\",\n \"V4_LIQUIDITY_PROFILES\": {\n \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\": {\n \"NAME\": \"U10_SINGLE_SIDED_OVERLAP_V1_SP200\",\n \"VERSION\": 1,\n \"ENCODED_PROFILE\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000e000000000000000000000000000000000000000000000000000000000000001a00000000000000000000000000000000000000000000000000000000000000260000000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000027060000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000005b68000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000149b000000000000000000000000000000000000000000000000000000000000000050000000000000000000000000000000000000000000000000000000000002af80000000000000000000000000000000000000000000000000000000000011300000000000000000000000000000000000000000000000000000000000001130000000000000000000000000000000000000000000000000000000000000197d000000000000000000000000000000000000000000000000000000000000197d0000000000000000000000000000000000000000000000000000000000000000500000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f4\",\n \"TICK_SPACING\": 200,\n \"TOKEN_ONLY_TICK_LOWER_DELTA\": [\n 0,\n 11000,\n 23400,\n 70400,\n 84400\n ],\n \"TOKEN_ONLY_TICK_UPPER_DELTA\": [\n 11000,\n 70400,\n 70400,\n 104400,\n 104400\n ],\n \"TOKEN_ONLY_POSITION_TOKEN_BPS\": [\n 1000,\n 5000,\n 1500,\n 2000,\n 500\n ],\n \"PAIRED_POSITION_BPS\": {\n \"deep\": 10,\n \"main\": 9990\n },\n \"LABELS\": [\n \"lowerAbove→130k\",\n \"130k→50m\",\n \"450k→50m\",\n \"50m→1p5b\",\n \"200m→1p5b\"\n ]\n }\n },\n \"COLLATERAL_TEMPLATES\": {\n \"ETH\": {\n \"ID\": \"ETH_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x0000000000000000000000000000000000000000\",\n \"SYMBOL\": \"ETH\",\n \"DECIMALS\": 18,\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1088264899999999783900020736\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"902103736559999872\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"100000000000000000\",\n \"POOL_CREATION_FEE\": \"50000000000000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"1500000000000000\",\n \"MC_UPPER_LIMIT\": \"11835000000000000000\",\n \"MC_LOWER_LIMIT\": \"11795000000000000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"799764393968807750154100378\",\n \"TARGET_ETH_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"2500000000000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"2500000000000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd3780fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd92e8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe81300000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcced0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd36b8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd6278fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe4a80fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffecf5000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"USDC\": {\n \"ID\": \"USDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x108219E8D6A004A5B15D922FE1A42fd282601DcC\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"SOL\": {\n \"ID\": \"SOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x62458b06DdD0E886dc26837dcd8C386ADD548317\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX_KEY\": \"UNISWAP_V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"MUSDC\": {\n \"ID\": \"MUSDC_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x4967BC4b61B3259856D1A925900263AB2B64F6de\",\n \"SYMBOL\": \"USDC\",\n \"DECIMALS\": 6,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX\": \"V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022918\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"2909090909\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"300000000\",\n \"POOL_CREATION_FEE\": \"200000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"5000000\",\n \"MC_UPPER_LIMIT\": \"37560000000\",\n \"MC_LOWER_LIMIT\": \"37500000000\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_USDC_COLLECTION_AMOUNT\": \"8000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"8000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"8000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa3aa8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa9b88fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb89080000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff9d2c0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa39e0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a50fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb5320fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f0fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbd7f000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n },\n \"MSOL\": {\n \"ID\": \"MSOL_DEFAULT\",\n \"MODE\": \"DYNAMIC_ONLY\",\n \"COLLATERAL_TOKEN\": \"0x887847e42F068df9D9C248B355ad84DbC7527070\",\n \"SYMBOL\": \"SOL\",\n \"DECIMALS\": 9,\n \"TOKEN_SWAP\": {\n \"ENABLED\": true,\n \"DEX\": \"V3\",\n \"V3_FEE\": 500\n },\n \"ENABLED\": true,\n \"TOTAL_SUPPLY\": \"1000000000000000000000000000\",\n \"VIRTUAL_TOKEN_RESERVES\": \"1090909090905000000000022917\",\n \"VIRTUAL_COLLATERAL_RESERVES\": \"23272727272\",\n \"FEE_BASIS_POINTS\": \"200\",\n \"FIXED_MIGRATION_FEE\": \"2400000000\",\n \"POOL_CREATION_FEE\": \"1600000000\",\n \"MIGRATION_FEE_BPS\": 600,\n \"FIRST_BUY_FEE\": \"40000000\",\n \"MC_UPPER_LIMIT\": \"300480000003\",\n \"MC_LOWER_LIMIT\": \"300000000003\",\n \"TOKENS_MIGRATION_THRESHOLD\": \"800000000000000000000000000\",\n \"TARGET_COLLECTION_AMOUNT\": \"64000000000\",\n \"V4_LP_FEE\": \"20000\",\n \"DEFAULT_PROFILE_ID\": \"0x56cc40852adcac48f8a9dd4a79fcfb3699ec8841c3a94fa5accc4a7d804b7814\",\n \"DEFAULT_TARGET_RAISE\": \"64000000000\",\n \"DEFAULT_SELL_BPS\": 8000,\n \"V4_LIQUIDITY_CONFIG\": \"0x00000000000000000000000000000000000000000000000000000000000000c800000000000000000000000000000000000000000000000000000000000000c000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000002c000000000000000000000000000000000000000000000000000000000000003c000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffff27660fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8be8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaecc8fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbda480000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa2400fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa8b20fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffabb90fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffba460fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc2930fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc293000000000000000000000000000000000000000000000000000000000000000070000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000003e8000000000000000000000000000000000000000000000000000000000000138800000000000000000000000000000000000000000000000000000000000005dc00000000000000000000000000000000000000000000000000000000000007d000000000000000000000000000000000000000000000000000000000000001f40000000000000000000000000000000000000000000000000000000000000007000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000270600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"\n }\n }\n}\n }\n };"],"mappings":"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","names":[]}