Cms written in haskell