@Test public void testLift() { assertIntEquals(2, event1.lift(1).getValue()); assertIntEquals(3, event2.lift(1).getValue()); }
abstract Event lift(int m);
Event { abstract Event lift(int m); }
Event { abstract Event lift(int m); Event(); }
Event { abstract Event lift(int m); Event();  }
Event { abstract Event lift(int m); Event();   }