anchor.diff:              %% includes it so we can safely eliminate this one.
               {eliminate, Acc}
       end;
  +check_where_clause_is_possible_fold(_, _, {'<=',{field,FieldName,_},{const,_LteVal}} = F, Acc) ->
  +    case find_filter_check(FieldName, Acc) of
  +        #filtercheck{'<=' = F} ->
  +            {eliminate, Acc};
  +        #filtercheck{'<=' = undefined} = Check1 ->
  +            %% this is the first less than check so just record it
  +            Check2 = Check1#filtercheck{'<=' = F},
  +            {F, lists:keystore(FieldName, #filtercheck.name, Acc, Check2)}
  +    end;
   check_where_clause_is_possible_fold(_, _, Filter, Acc) ->
       {Filter, Acc}.
   
  
positive.code:     {Field, FieldType, _OldVal} = lists:keyfind(Field, 1, TupleList),
      lists:keyreplace(Field, 1, TupleList, {Field, FieldType, NewVal}).
  
  -record(filtercheck, {name,'=','>','>=','<'}).
  
  check_where_clause_is_possible(DDL, WhereProps) ->
      Filter1 = proplists:get_value(filter, WhereProps),
  
negative.code: is_inclusive_op('>')  -> false;
  is_inclusive_op('>=') -> true;
  is_inclusive_op('<') -> false;
  is_inclusive_op('<=') -> true.
  
  %% Convert a filter to a start/end key element
  to_key_elem(ToKeyTypeFn, {_,{field,FieldName,_},{_,Val}}) ->
  