compiles with GHC 7.8.1