Params

Execution

  1. fee > 0 → msg.sender must be an allowed relayer (NotRelayer)
  2. txNullifier unused (TxNullifierAlreadyUsed)
  3. root known (InvalidNoteTreeRoot)
  4. rkRoot known (InvalidKeyRegistryRoot)
  5. Verify 46 public inputs (PublicInputNotInField, InvalidProof)
  6. Spend nullifiers (NullifierAlreadySpent), mark txNullifier
  7. Insert three commitments, emit three NoteAdded
  8. Transfer fee to msg.sender
  9. Emit ShieldedTransfer

Event