T9017.hs:8:7: error: • Couldn't match kind ‘k2’ with ‘*’ When matching types a0 :: * -> * -> * a :: k2 -> k3 -> * Expected: a b (m b) Actual: a0 b0 (m0 b0) ‘k2’ is a rigid type variable bound by the type signature for: foo :: forall {k2} {k3} (a :: k2 -> k3 -> *) (b :: k2) (m :: k2 -> k3). a b (m b) at T9017.hs:7:1-16 • In the expression: arr return In an equation for ‘foo’: foo = arr return • Relevant bindings include foo :: a b (m b) (bound at T9017.hs:8:1)