adding stm haskell source