anchor.diff:              Args#view_query_args{group_level=exact};
           {"group_level", LevelStr} ->
               Args#view_query_args{group_level=list_to_integer(LevelStr)};
  +        {"reduce", "true"} ->
  +            Args#view_query_args{reduce=true};
  +        {"reduce", "false"} ->
  +            Args#view_query_args{reduce=false};
           _ -> % unknown key
               Msg = lists:flatten(io_lib:format(
                   "Bad URL query key:~s", [Key])),
  
positive.code:     {not_found, Reason} ->
          case couch_view:get_reduce_view({DbName, <<"_design/", DocId/binary>>, ViewName}) of
          {ok, View} ->
              output_reduce_view(Req, View);
          _ ->
              throw({not_found, Reason})
          end
  
negative.code:         count = Count,
          skip = SkipCount,
          direction = Dir,
          start_docid = StartDocId,
          reduce = Reduce
      } = QueryArgs = parse_view_query(Req),
      
      case couch_view:get_map_view({DbName, <<"_design/", DocId/binary>>, ViewName}) of
  