[broken] more code for algebraic structures