Note that it works with GHC 7.8.3