function CityMarker(lat, long, map, html, name, n, cityName, infoW) {
				
		var latitude = lat;
		var longitude = long;
		var name = name;
		var PsOI = n;
		var marker;
		var map = map;
		var html = html;
		var point = new GLatLng(latitude, longitude);
		var ignore = false;
		var opened = true;
		var cityName = cityName;
		var iw = infoW;
		var txtObj;
		
		construct();
		
		function construct () {			
			
			marker = new BaseMarker(point, "city", PsOI,justeKleur);
			GEvent.addListener(marker, "mouseover", function(overlay, latlng) {
				//map.openInfoWindow(point, html);
				iw.showOverlay(html, point, "city");
			});
			/*
			GEvent.addListener(marker, "mouseout", function(overlay, latlng) {
				//map.openInfoWindow(point, html);
				iw.hideOverlay();
			});*/		
			GEvent.addListener(marker, "click", function() {
				map.setCenter(point, 12);										  
			});
			map.addOverlay(marker);			
		}
		this.lng = function () {
			return longitude;
		}
		this.lat = function () {
			return latitude;
		}
		this.setPsOI = function (_n) {
			map.removeOverlay(marker);
			html = "<p><b class=\"caps\">"+ cityName +"</b><br /><span class=\"smalerKaart MT5\">"+ txtObj.txtBevat +" <b>"+ _n +"</b> "+txtObj.txtResultaten+"</span></p>";
			PsOI = _n;
			construct();
		}
		this.getPsOI = function () {
			return PsOI;	
		}
		this.getName = function () {
			return name;
		}
		this.getCName = function (){
			return cityName;
		}
		this.kill = function() {
			map.closeInfoWindow();
			marker.hide();
		}
		this.show = function() {
			marker.show();	
		}
		this.getIgnore = function () {
			return ignore;
		}
		this.setIgnore = function (_ignore) {
			ignore = _ignore;
		}
		this.setTxtObj = function(o) {
			txtObj = o;
		}
}
