anchor.diff:  end;
   
   function TResource.Patch(Entity: TObject): TObject;
  -var
  -  vResponse: string;
  -begin
  -  if Entity <> nil then
  -    SetContent(Entity);
  -
  -  vResponse := FRestClient.DoRequest(METHOD_PATCH, Self);
  -  if trim(vResponse) <> '' then
  -    Result := TJsonUtil.UnMarshal(Entity.ClassType, vResponse)
  -  else
  -    Result := nil;
  +begin
  +  Result := Patch(Entity, Entity.ClassType);
   end;
   
   function TResource.Patch(Content: string; ResultClass: TClass): TObject;
  
positive.code: end;
  
  function TResource.Put(Entity: TObject; ResultClass: TClass): TObject;
  var
    vResponse: string;
  begin
    if Entity <> nil then
      SetContent(Entity);
    vResponse := FRestClient.DoRequest(METHOD_PUT, Self);
    if trim(vResponse) <> '' then
      Result := TJsonUtil.UnMarshal(ResultClass, vResponse)
    else
      Result := nil;
  end;
  
  function TResource.Patch(Content: TStream): String;
  
negative.code: end;
  
  function TResource.Post(Entity: TObject; ResultClass: TClass): TObject;
  begin
    Result := EntityRequest(Entity, ResultClass, METHOD_POST);
  end;
  
  function TResource.Put(Entity: TObject): TObject;
  begin
    Result := Put(Entity, Entity.ClassType);
  end;
  
  function TResource.Put(Content: string; ResultClass: TClass): TObject;
  