```rust #[derive(Accounts)] #[instruction(poll_id: u64, candidate: String)] pub struct Vote<'info> { #[account(mut)] pub signer: Signer<'info>, #[account( mut, seeds = [b"poll".as_ref(), poll_id.to_le_bytes().as_ref()], bump, )] pub poll_account: Account<'info, PollAccount>, #[account( mut, seeds = [poll_id.to_le_bytes().as_ref(), candidate.as_ref()], bump)] pub candidate_account: Account<'info, CandidateAccount>, } ```