better execution and added query constuct, need testing