adding types and search (wip)