add interrupt handling