anchor.diff:    end.
   
   resource_exists(RD, Ctx) ->
  -    Key = search_path(RD),
  -    case article_fe:fetch(Key) of
  -        {ok, ArticleVs}   ->
  -            {true, RD, select_version(RD, Ctx#ctx{article_vs=ArticleVs})};
  -        {error, notfound} ->
  -            {false, RD, Ctx}
  -    end.
  +  Key = search_path(RD),
  +  case article_fe:fetch(Key) of
  +    {ok, ArticleVs}   ->
  +      {true, RD, select_version(RD, Ctx#ctx{article_vs=ArticleVs})};
  +    {error, notfound} ->
  +      {false, RD, Ctx}
  +  end.
   
   select_version(RD, Ctx) ->
       case wrq:get_qs_value("v", RD) of
  
positive.code:     base64url:encode(mochiweb_util:unquote(wrq:disp_path(RD))).
  
  finish_request(RD, Ctx) ->
      case wrq:response_code(RD) of
          404 ->
              {Content, NewRD, NewCtx} =
                  case in_mode(RD, ?MODE_EDIT) of
                      true  -> render_404_editor(RD, Ctx);
                      false -> render_404(RD, Ctx)
                  end,
              {true,
               wrq:set_resp_header(
                 "Content-type", "text/html; charset=utf-8",
                 wrq:set_resp_body(Content, NewRD)),
               NewCtx};
          _ ->
              {true, RD, Ctx}
      end.
  
  render_404_editor(RD, Ctx) ->
      Article = article_fe:create(search_path(RD),
  
negative.code:     to_html(RD, ACtx).
  
  render_404(RD, Ctx) ->
    Search  = base64url:decode_to_string(search_path(RD)),
    %% Results = study_material:search(Search),
    {ok, C} = error_404_dtl:render([{req, wrq_dtl_helper:new(RD)},
                                    {search, Search},
                                    {results, []}]),
    {C, RD, Ctx}.
  