PolyKinds02.hs:13:16: The second argument of ‛Vec’ should have kind ‛Nat’, but ‛Nat’ has kind ‛*’ In the type signature for ‛vec’: vec :: Vec Nat Nat