perfection
not defined yet