looking for optimisations, something is lieying about the time it takes to eval these