interrupts and cheating added