haskell features
merge