anchor.diff:  ;
   
   type
  +  TBeforeCommandGetFunc = reference to function (AContext: TIdContext;
  +    ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo): Boolean;
  +
     TMARShttpServerIndy = class(TIdCustomHTTPServer)
     private
       FEngine: TMARSEngine;
       FStartedAt: TDateTime;
       FStoppedAt: TDateTime;
  +    FBeforeCommandGet: TBeforeCommandGetFunc;
       function GetUpTime: TTimeSpan;
     protected
       procedure SetCookies(const AResponseInfo: TIdHTTPResponseInfo; const AResponse: TIdHTTPAppResponse); virtual;
  
positive.code:   inherited Create(nil);
    OnParseAuthentication := ParseAuthenticationHandler;
    FEngine := AEngine;
  end;
  
  procedure TMARShttpServerIndy.DoCommandGet(AContext: TIdContext;
  
negative.code:   LResponse: TIdHTTPAppResponse;
  begin
    inherited;
  
    if Assigned(FBeforeCommandGet) then
      if not FBeforeCommandGet(AContext, ARequestInfo, AResponseInfo) then
        Exit;
  
    LRequest := TIdHTTPAppRequest.Create(AContext, ARequestInfo, AResponseInfo);
    try
  