add __repr__ and combinations methods