I want to create a public wallet (public_account) when I create SPL tokens, and then this wallet holds the original mint tokens, and then others can transfer tokens from through the contract interface. There was a error when I executed the code: An account required by the instruction is missing.
#[account(
init,
seeds = [payer.key().as_ref(), params.name.as_bytes()],
bump,
payer = payer,
mint::decimals = params.decimals,
mint::authority = mint,
)]
pub mint: Account<'info, Mint>,
#[account(
init_if_needed,
payer = payer,
associated_token::mint = mint,
associated_token::authority = pda,
)]
pub public_account: Account<'info, TokenAccount>,
#[account(seeds = [b"token_account_pda", mint.key().as_ref()], bump)]
pub pda: AccountInfo<'info>,
Please help solve this problem.
BR