added exit on interrupt