Semigroup
cats