selecting vs non-selecting query contract