void interrupt INTERRUPT_InterruptManager(void) 
{
    if (PIE1bits.ADIE && PIR1bits.ADIF) 
    {
        ADC_ISR();
    } 
    else if (PIE1bits.TMR1IE && PIR1bits.TMR1IF) 
    {
        TMR1_ISR();
    }     
    else if (PIE3bits.TMR4IE && PIR3bits.TMR4IF) 
    {
        TMR4_ISR();
    } 
    else 
    {        
    }
}
void interrupt INTERRUPT_InterruptManager (void)
{
   // interrupt handler
    if(PIE1bits.TXIE == 1 && PIR1bits.TXIF == 1)
    {
        EUSART_Transmit_ISR();
    }
    else if(PIE1bits.RCIE == 1 && PIR1bits.RCIF == 1)
    {
        EUSART_Receive_ISR();
    }
    else if(PIE3bits.TMR4IE == 1 && PIR3bits.TMR4IF == 1)
    {
        TMR4_ISR();
    }
    else
    {
        //Unhandled Interrupt
    }
}