module Data.With (type (:&:)((:&:)), With) where type With = (:&:) infixr 1 :&: -- | Open prduct type data (:&:) a b = a :&: b