more WIP, added metafunc ideas