monoid structure