lab04: add interrupt handler