re-thinking how to execute queries