inelegant
not defined yet