pub fn redelegate(
invoke_context: &InvokeContext<'_>,
transaction_context: &TransactionContext,
instruction_context: &InstructionContext,
stake_account: &mut BorrowedAccount<'_>,
uninitialized_stake_account_index: IndexOfAccount,
vote_account_index: IndexOfAccount,
signers: &HashSet<Pubkey>,
) -> Result<(), InstructionError>