flesh out example with GADT representation.  Seems to work now.