ENH: generic top down WIP