anchor.diff:  interface
   
   uses
  -  SysUtils, Classes
  +  SysUtils, Classes, REST.Client, Generics.Collections
     , MARS.Core.JSON, MARS.Client.Utils
     , MARS.Client.Resource, MARS.Client.CustomResource
     , MARS.Client.Client
  
positive.code:     {$endif}
       or pidAndroid)]
    {$endif}
    TMARSClientResourceJSON = class(TMARSClientResource)
    private
      FResponse: TJSONValue;
    protected
      procedure AfterGET(const AContent: TStream); override;
      procedure AfterPOST(const AContent: TStream); override;
      function GetResponseAsString: string; virtual;
    public
      constructor Create(AOwner: TComponent); override;
      destructor Destroy; override;
  
  
negative.code:   FResponse := TJSONObject.Create;
    SpecificAccept := TMediaType.APPLICATION_JSON;
    SpecificContentType := TMediaType.APPLICATION_JSON;
    FNotifyList := TList<TNotifyEvent>.Create;
  end;
  
  destructor TMARSClientResourceJSON.Destroy;
  begin
    FResponse.Free;
    FreeAndNil(FNotifyList);
    inherited;
  end;
  
  procedure TMARSClientResourceJSON.GetJSONResponse(out AJSONValue: TJSONValue;
    out AHasOwner: Boolean);
  begin
    AJSONValue := FResponse;
    AHasOwner := True;
  end;
  
  function TMARSClientResourceJSON.GetResponseAsString: string;
  