sig
  val hoist : TypeCore.env -> TypeCore.typ -> TypeCore.typ
  val extract_constraints :
    TypeCore.env ->
    TypeCore.typ -> TypeCore.mode_constraint list * TypeCore.typ
end