N-semigroups