if(ar==null){ // Now this shouldn't happen, but if it does, create the array
ar = RArray.newArrayTraceInterface(id, true, false);
trace.arraytable.put(id, ar);
}
trace.session.execute(body);
IRObject i = ds.datapop();
ds.datapush(ar);
ds.datapush(i);
ds.getSession().execute("removeat");
ds.datapop();