Please help me out in signing and executing the tx i am calling the function on frontend always transaction fails

entry fun entry_new(token: Coin, c: &Clock, start: u64, duration: u64, receiver: address, ctx: &mut TxContext) {
transfer::public_transfer(new(token, c, start, duration, ctx), receiver)

How to call this function parameters on
console.log(gasCoinRef, “reffffffff”)
tx.setGasPayment([gasCoinRef])
tx.setGasBudget(50000000);
tx.moveCall({
target: ${VESTING_PACKAGE_OBJECT_ID}::linear_vesting::new,
arguments: [
tx.object(coins[0]),
tx.pure(SUI_CLOCK_OBJECT_ID),
tx.pure(startTime),
tx.pure(duration),
],

  });

  

  // Generate a new Ed25519 Keypair
  const keypair = new Ed25519Keypair();
  console.log(keypair.getPublicKey(), "keypair")
  console.log(keypair.getSecretKey(), "keypair")

  const result = await client.signAndExecuteTransactionBlock({
    signer: keypair,
    transactionBlock: tx,
  });
  console.log({ result });

Help me out in setting correct parameter so that to make a transaction.