add interrupt handler