class TripCountingRootCatchup implements RootCatchup {

    @Override
    public Root catchupFrom( long fromId )
    {
        updateTripCount( fromId );
        assertTripCount();
        return rootSupplier.get();
    }

      TripCountingRootCatchup( Supplier<Root> rootSupplier );

}