“…In all that follows we use standard concepts and constructions from category theory, see e.g., [1], [17], [18], [19], and [22]; classical universal algebra, see e.g., [6], [10], [16], [21], and [25]; many-sorted algebra, see e.g., [2], [4], [20], [24], and [28]; and lattice theory, see e.g., [3], [6], and [25]. However, following the French mathematical tradition, we agree to call a functor F : C / / D essentially surjective (instead of representative or isomorphism-dense) if for every object d in D there exists an object c in C such that F (c) is isomorphic to d.…”