DFMonad
type DFM fact a