anchor.diff:    TRestOnRequestEvent = procedure (ARestClient: TRestClient;
       AResource: TResource; AMethod: TRequestMethod) of object;
   
  +  TRestOnResponseEvent = procedure (ARestClient: TRestClient; ResponseCode: Integer; const ResponseContent: string) of object;
   
     THTTPErrorEvent = procedure(ARestClient: TRestClient; AResource: TResource;
       AMethod: TRequestMethod; AHTTPError: EHTTPError;
  
positive.code: 
      if assigned(OnBeforeRequest) then
        OnBeforeRequest(self, ResourceRequest, Method);
      case Method of
        METHOD_GET: FHttpConnection.Get(vUrl, vResponse);
        METHOD_POST: FHttpConnection.Post(vURL, ResourceRequest.GetContent, vResponse);
  
negative.code: 
          Result := UTF8Decode(vResponse.DataString);
        {$ENDIF}
        if Assigned(OnResponse) then
          OnResponse(Self, FHttpConnection.ResponseCode, Result);
      end;
      if ResponseCodeRaisesError(FHttpConnection.ResponseCode) then
      begin
        vRetryMode := hrmRaise;
        if assigned(FOnError) then
  