#semigroup