def element(self, inp=None):
        """Create a new element.

        For more specific control, use set[i].element() to pick which subset to
        use.
        """
        if inp is None:
            return self.elements[0]
        elif inp in self.elements:
            return inp
        else:
            raise ValueError('cannot convert inp {} to element in {}'
                             ''.format(inp, self))