adt and then ...
ADT example