added critical interrupt handling