Given `(>>=) x f = case x of`, running `Complete code constructors` today produces ```haskell (>>=) x f = case x of Goto s -> _ Terminal a -> _ Transition g -> _ Invoke s mx g -> _ ``` but instead could produce ```haskell (>>=) (Goto s) f = _ (>>=) (Terminal a) f = _ -- etc... ```