pub fn merge(
    invoke_context: &InvokeContext<'_>,
    transaction_context: &TransactionContext,
    instruction_context: &InstructionContext,
    stake_account_index: usize,
    source_account_index: usize,
    clock: &Clock,
    stake_history: &StakeHistory,
    signers: &HashSet<Pubkey>
) -> Result<(), InstructionError>