Added CPP to make it compilable on GHC 7.4