basic functionality is done without lookup