+zonkExpr env (HsHetMetBrak c e)
+ = do c' <- zonkTcTypeToType env c
+ e' <- zonkLExpr env e
+ return (HsHetMetBrak c' e')
+
+zonkExpr env (HsHetMetEsc c t e)
+ = do c' <- zonkTcTypeToType env c
+ t' <- zonkTcTypeToType env t
+ e' <- zonkLExpr env e
+ return (HsHetMetEsc c' t' e')
+
+zonkExpr env (HsHetMetCSP c e)
+ = do c' <- zonkTcTypeToType env c
+ e' <- zonkLExpr env e
+ return (HsHetMetCSP c' e')
+
+zonkExpr env (HsKappa matches)
+ = do { matches' <- zonkMatchGroup env matches
+ ; returnM (HsKappa matches')
+ }
+
+zonkExpr env (HsKappaApp e1 e2)
+ = do { e1' <- zonkLExpr env e1
+ ; e2' <- zonkLExpr env e2
+ ; returnM (HsKappaApp e1' e2')
+ }
+