i have this error PS C:\Users\lidor\Desktop\Trade Bot> node index.js
Starting trade execution process…
Approving token spend by SwapRouter…
Token spend approval transaction confirmed.
Preparing swap transaction…
Sending swap transaction…  
Error executing trade: Error: could not coalesce error (error={ "code": -32603, "data": 
{ "data": "0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000035354460000000000000000000000000000000000000000000000000000000000", "message": "Error: VM Exception while processing transaction: reverted with reason string 'STF'", "txHash": "0x2d9687c41eed41a294f5900b08008a19dae403044cae02011234888c559383bc" }, "message": "Error: VM Exception while processing transaction: reverted with reason string 'STF'" }, code=UNKNOWN_ERROR, version=6.4.1)
    at makeError (C:\Users\lidor\Desktop\Trade Bot\node_modules\ethers\lib.commonjs\utils\errors.js:125:21)
    at JsonRpcProvider.getRpcError (C:\Users\lidor\Desktop\Trade Bot\node_modules\ethers\lib.commonjs\providers\provider-jsonrpc.js:638:41)
    at C:\Users\lidor\Desktop\Trade Bot\node_modules\ethers\lib.commonjs\providers\provider-jsonrpc.js:257:52
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {     
  code: 'UNKNOWN_ERROR',
  error: {
    code: -32603,
    message: "Error: VM Exception while processing transaction: reverted with reason string 'STF'",
    data: {
      message: "Error: VM Exception while processing transaction: reverted with reason string 'STF'",
      txHash: '0x2d9687c41eed41a294f5900b08008a19dae403044cae02011234888c559383bc',     
      data: '0x08c379a0000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000035354460000000000000000000000000000000000000000000000000000000000' with this code const ethers = require('ethers');

// Ethereum network configuration
const provider = new ethers.JsonRpcProvider('http://127.0.0.1:8545/');

const privateKey = 'ac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80';

// Uniswap V3 contract configuration
const uniswapV3SwapRouterAddress = '0xE592427A0AEce92De3Edee1F18E0157C05861564';
const uniswapV3SwapRouterABI = require('@uniswap/v3-periphery/artifacts/contracts/SwapRouter.sol/SwapRouter.json').abi;

// Token configuration
const tokenToSwapAddress = '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2';
const tokenToReceiveAddress = '0x1f9840a85d5aF5bf1D1762F925BDADdC4201F984';
const tokenToSwapAmount = ethers.parseUnits('0.001', 'ether');

// Connect to wallet
const wallet = new ethers.Wallet(privateKey, provider);

// Load the Uniswap V3 contract
const uniswapV3SwapRouterContract = new ethers.Contract(uniswapV3SwapRouterAddress, uniswapV3SwapRouterABI, wallet);
const customGasPrice = ethers.parseUnits('50', 'gwei');

async function executeTrade() {
  console.log('Starting trade execution process…');

  // Approve Uniswap V3 SwapRouter to spend tokenToSwap
  console.log('Approving token spend by SwapRouter…');
  const tokenToSwapContract = new ethers.Contract(tokenToSwapAddress, ['function approve(address spender, uint256 amount) external returns (bool)'], wallet);
  const approvalTx = await tokenToSwapContract.approve(uniswapV3SwapRouterAddress, tokenToSwapAmount, { gasPrice: customGasPrice, gasLimit: 25000000 });

  await approvalTx.wait();

  console.log('Token spend approval transaction confirmed.');

  // Prepare swap transaction

  console.log('Preparing swap transaction…');
  const swapParams = {
    tokenIn: tokenToSwapAddress,
    tokenOut: tokenToReceiveAddress,
    fee: 3000,
    recipient: wallet.address,
    deadline: Math.floor(Date.now() / 1000) + 60 * 20,
    amountIn: tokenToSwapAmount,
    amountOutMinimum: 0,
    sqrtPriceLimitX96: 0,
  };

  console.log('Sending swap transaction…');
  const swapTx = await uniswapV3SwapRouterContract.exactInputSingle(swapParams, { gasPrice: customGasPrice, gasLimit: 25000000 });

  console.log('Swap transaction hash:', swapTx.hash);

  // Wait for transaction confirmation
  console.log('Waiting for swap transaction confirmation…');
  await swapTx.wait();
  console.log('Swap transaction confirmed!');
}

executeTrade()
  .then(() => {
    console.log('Trade executed successfully');
  })
  .catch((error) => {
    console.error('Error executing trade:', error);
  });
``;

    }
  }
}
PS C:\Users\lidor\Desktop\Trade Bot>