anchor.diff:  
     procedure SetOwner(X,Y: Word);
     begin
  -    fMapPreview[X + Y*fMapX].TileOwner := fLastHand;
  +    fMapPreview[X-1 + (Y-1)*fMapX].TileOwner := fLastHand;
     end;
   
     function RevealForPlayer(aPlayerIndex: TKMHandIndex): Boolean;
  
positive.code: { TMissionParserPreview }
  function TMissionParserPreview.GetTileInfo(X,Y: Integer): TKMTilePreview;
  begin
    Result := fMapPreview[(Y-1)*fMapX + X];
  end;
  
  
  
negative.code:     for I := Max(Y-Radius,1) to Min(Y+Radius,fMapY) do
      for K := Max(X-Radius,1) to Min(X+Radius,fMapX) do
      if (Sqr(X-K) + Sqr(Y-I)) <= Sqr(Radius) then
        fMapPreview[(I-1)*fMapX + K-1].Revealed := True;
    end;
  
  var
  