abstract machine emulators