public class Test1Main {
public static void main(String[] args) {
try {
List objects = new LinkedList();
Test1 t1 = new Test1();
Test1 t2 = new Test1();
t1.setT(new Test1());
long handle1 = t1.$GET$CHECKPOINT().createCheckpoint();
objects.add(t1.getT());
System.out.print(objects.indexOf(t1.getT()) + " ");
t1.setT(new Test1());
long handle2 = t1.$GET$CHECKPOINT().createCheckpoint();
objects.add(t1.getT());
System.out.print(objects.indexOf(t1.getT()) + " ");
t2.setT(t1);
long handle3 = t2.$GET$CHECKPOINT().createCheckpoint();
objects.add(t2.getT());
System.out.print(objects.indexOf(t2.getT()) + " ");
t2.getT().setT(null);
long handle4 = t2.$GET$CHECKPOINT().createCheckpoint();
objects.add(t2.getT().getT());
System.out.print(objects.indexOf(t2.getT().getT()) + " ");
t2.setT(null);
t2.$GET$CHECKPOINT().rollback(handle4, true);
System.out.print(objects.indexOf(t2.getT().getT()) + " ");
t2.$GET$CHECKPOINT().rollback(handle3, true);
System.out.print(objects.indexOf(t2.getT()) + " ");
t2.$GET$CHECKPOINT().rollback(handle2, true);
System.out.print(objects.indexOf(t1.getT()) + " ");
t1.$GET$CHECKPOINT().rollback(handle1, true);
System.out.print(objects.indexOf(t1.getT()) + " ");