check out dis mad haskell solution dawg