Initial commit of semigroups