anchor.diff:  begin
     for Y := Player.Y - Player.Radius to Player.Y + Player.Radius do
       for X := Player.X - Player.Radius to Player.X + Player.Radius do
  -      FFOV[Map.EnsureRange(X)][Map.EnsureRange(Y)] := False;
  +      FFOV[Self.EnsureRange(X)][Self.EnsureRange(Y)] := False;
   end;
   
   procedure TMap.Clear(Z: TMapEnum; ATileEnum: TTileEnum);
  
positive.code:   inherited;
  end;
  
  function TMap.EnsureRange(Value: Byte): Byte;
  begin
    Result := Math.EnsureRange(Value, 0, High(Byte));
  end;
  
negative.code:     procedure SetTileEnum(AX, AY: Byte; AZ: TMapEnum; ATileEnum: TTileEnum);
      function GetTileEnum(AX, AY: Byte; AZ: TMapEnum): TTileEnum;
      property Name: string read GetName;
      function EnsureRange(Value: Word): Byte;
    end;
  
  var
  