Bifurcación Uniswap: eliminar el error de liquidez

Estoy tratando de bifurcar uniswap. Y tengo un problema cuando se quita la liquidez. Problema en UniswapERC20 . No se lo que está mal.

Paso a paso (repetidamente para Rinkeby y Ropsten):

  1. Copie Uniswap Factory y Router de etherscan

  2. Ir a Remezcla

  3. Agregue esta cadena para testnet en el contrato de fábrica:

    bytes32 public constant INIT_CODE_HASH = keccak256(abi.encodePacked(type(UniswapV2Pair).creationCode));

  4. Compilar. Establezca la dirección feeToSetter e implemente (guarde el hash del código de inicio y la dirección de fábrica)

  5. Establecer tarifaA la dirección

  6. Reemplace el hash del código de inicio en el contrato del enrutador

  7. Compilar. Establecer direcciones de fábrica y WETH e implementar (guardar direcciones)

  8. Reemplace las direcciones en la interfaz e inicie el servidor local

  9. Prueba de trabajo:

  • Crear pareja: ok
  • Intercambios: ok:
  • Agregar liquidez: ok
  • Eliminar parte o toda la liquidez: error (error -> UniswapV2: INVALID_SIGNATURE )

Más información:

  • Transacción de seguimiento de máquina virtual Geth de Etherscan:{ "type": "CALL", "from": "0x57d49704f453cdd2b995280d9d7f557e42847d82", "to": "0x0b024ab7886e87dde36103d6f4a53e35456d5341", "value": "0x0", "gas": "0x2d6978", "gasUsed": "0x7460", "input": "0xded9382a000000000000000000000000d9ba894e0097f8cc2bbc9d24d308b98e36dc6d02000000000000000000000000000000000000000000000000000470de4df81f060000000000000000000000000000000000000000000000000016452ae3c6431a0000000000000000000000000000000000000000000000000000e07255bdf06900000000000000000000000057d49704f453cdd2b995280d9d7f557e42847d82000000000000000000000000000000000000000000000000000000005ffd5ee00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001c9f3cd9721b08bacde6ec671f9186f0e621990760d1b73009516a8db5f2403e5773b73eb0cddc9d288a1b2d5cef84d1c8f4475d5d90a33dc9615e81f982499281", "output": "0x08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001c556e697377617056323a20494e56414c49445f5349474e415455524500000000", "error": "execution reverted", "time": "11.0239ms", "calls": [ { "type": "CALL", "from": "0x0b024ab7886e87dde36103d6f4a53e35456d5341", "to": "0xa5baae8372d14ee9394dace03cb53222db293aee", "value": "0x0", "gas": "0x2ca8bc", "gasUsed": "0x68ea", "input": "0xd505accf00000000000000000000000057d49704f453cdd2b995280d9d7f557e42847d820000000000000000000000000b024ab7886e87dde36103d6f4a53e35456d5341000000000000000000000000000000000000000000000000000470de4df81f06000000000000000000000000000000000000000000000000000000005ffd5ee0000000000000000000000000000000000000000000000000000000000000001c9f3cd9721b08bacde6ec671f9186f0e621990760d1b73009516a8db5f2403e5773b73eb0cddc9d288a1b2d5cef84d1c8f4475d5d90a33dc9615e81f982499281", "error": "execution reverted" } ] }
  • Transacción
Recibo el error "ds-math-sub-underflow" al eliminar la liquidez. ¿Me podrían ayudar con este problema?
¿Alguna vez resolviste este @Prachi? Tengo el mismo problema.

Respuestas (1)

Cambie el nombre de su token LP en el archivo ubicado en

/src/pages/RemoveLiquidity/index.ts

buscar objeto de dominio:

const domain = {
      name: 'Spooky LP', // <= here place your LP token smart contract name
      version: '1',
      chainId,
      verifyingContract: pair.liquidityToken.address,
    }