incrementSupplyAndDemand(i, j);
incrementSupplyAndDemand(i, j, competingStations[i - xmin][j - ymin]);
    Vector scanAdjacentTiles() {        //Find the station radius.        FreerailsTile tile = w.getTile(this.x, this.y);	BuildingTile bTile = tile.getBuildingTile();	if (bTile == null)	    throw new IllegalStateException();	BuildingType bType = (BuildingType) w.get(KEY.BUILDING_TYPES,		bTile.getType(), Player.AUTHORITATIVE);        int stationRadius = bType.getStationRadius();        //Look at the terrain type of each tile and retrieve the cargo supplied.        //The station radius determines how many tiles each side we look at. 			int xmin = x < stationRadius ? 0 : x - stationRadius;	int xmax = x + stationRadius;	if (xmax >= w.getMapWidth())	    xmax = w.getMapWidth();	int ymin = y < stationRadius ? 0 : y - stationRadius;	int ymax = y + stationRadius;	if (ymax >= w.getMapHeight())	    ymax = w.getMapHeight();        for (int i = xmin; i <= xmax; i++) {            for (int j = ymin; j <= ymax; j++) {                incrementSupplyAndDemand(i, j);            }        }        //return the supplied cargo rates        return supplies;    }