@Test public void testSink() { assertIntEquals(0, event1.sink(1).getValue()); assertIntEquals(1, event2.sink(1).getValue()); }
abstract Event sink(int m);
Event { abstract Event sink(int m); }
Event { abstract Event sink(int m); Event(); }
Event { abstract Event sink(int m); Event();  }
Event { abstract Event sink(int m); Event();   }