more work on query builder