sclass Stage implements Runnable { S name; bool done; O result; PersistableThrowable error; //long started, done; // timestamps //S log; IF0 code; sS _fieldOrder = "name done result"; run { if (done || code == null) ret; try { result = code!; } catch print e { error = persistableThrowable(e); } finally { done = true; } } }