anchor.diff:        Inc(Result);
   end;
   
  -constructor TEntities<T>.Create;
  +constructor TEntities{$IFNDEF FPC} <T> {$ENDIF}.Create;
   begin
     Sections := TStringList.Create;
   end;
   
  -procedure TEntities<T>.Delete(const Index: Integer);
  +procedure TEntities{$IFNDEF FPC} <T> {$ENDIF}.Delete(const Index: Integer);
   begin
     FEntity[Index].Active := False;
   end;
   
  -destructor TEntities<T>.Destroy;
  +destructor TEntities{$IFNDEF FPC} <T> {$ENDIF}.Destroy;
   begin
     Sections.Free;
     Self.Clear;
     inherited;
   end;
   
  -function TEntities<T>.GetIndex(SectionID: string): Integer;
  +function TEntities{$IFNDEF FPC} <T> {$ENDIF}.GetIndex(SectionID: string): Integer;
   var
     I: Integer;
   begin
  
positive.code: {$REGION ' TEntities '}
  
  type
    TEntities<T: TEntity> = class(TGenericEntities<T>, IStorage)
    private
      Sections: TStringList;
    public
  
negative.code:     end;
  end;
  
  function TEntities{$IFNDEF FPC} <T> {$ENDIF}.GetIndex(N, X, Y: Integer): Integer;
  var
    I, J: Integer;
  begin
  