added possibly working but not debugged checkpoint support