Iterator iter = null;
if ( ts instanceof Table ) {
Table t = (Table)ts;
IntIterator ii = getOptimizedIterator(t,p);
if ( ii != null )
iter = t.tuples(ii);
}
// optimization fails, scan the entire table
if ( iter == null ) {
iter = new FilterIterator(ts.tuples(), p);