use KnownNat only - ghc 7.8.3's fromInteger . natVal is smarter than it was in 7.6.*