-emptyVarSet :: VarSet fs ft
-intersectVarSet :: VarSet fs ft -> VarSet fs ft -> VarSet fs ft
-intersectsVarSet:: VarSet fs ft -> VarSet fs ft -> Bool -- True if non-empty intersection
-unionVarSet :: VarSet fs ft -> VarSet fs ft -> VarSet fs ft
-unionVarSets :: [VarSet fs ft] -> VarSet fs ft
-varSetElems :: VarSet fs ft -> [Var fs ft]
-unitVarSet :: Var fs ft -> VarSet fs ft
-extendVarSet :: VarSet fs ft -> Var fs ft -> VarSet fs ft
-elemVarSet :: Var fs ft -> VarSet fs ft -> Bool
-delVarSet :: VarSet fs ft -> Var fs ft -> VarSet fs ft
-minusVarSet :: VarSet fs ft -> VarSet fs ft -> VarSet fs ft
-isEmptyVarSet :: VarSet fs ft -> Bool
-mkVarSet :: [Var fs ft] -> VarSet fs ft
-foldVarSet :: (Var fs ft -> a -> a) -> a -> VarSet fs ft -> a
-lookupVarSet :: VarSet fs ft -> Var fs ft -> Maybe (Var fs ft)
+emptyVarSet :: VarSet
+intersectVarSet :: VarSet -> VarSet -> VarSet
+unionVarSet :: VarSet -> VarSet -> VarSet
+unionVarSets :: [VarSet] -> VarSet
+varSetElems :: VarSet -> [Var]
+unitVarSet :: Var -> VarSet
+extendVarSet :: VarSet -> Var -> VarSet
+extendVarSetList:: VarSet -> [Var] -> VarSet
+elemVarSet :: Var -> VarSet -> Bool
+delVarSet :: VarSet -> Var -> VarSet
+delVarSetList :: VarSet -> [Var] -> VarSet
+minusVarSet :: VarSet -> VarSet -> VarSet
+isEmptyVarSet :: VarSet -> Bool
+mkVarSet :: [Var] -> VarSet
+foldVarSet :: (Var -> a -> a) -> a -> VarSet -> a
+lookupVarSet :: VarSet -> Var -> Maybe Var