function imageMap(m) {
	var map = $(m.map);
	var inf = $(m.infoPane);
	m.iv = 0;
	m.fading = null;
	m.cli = function() {
		if(this.iv > 0) clearTimeout(this.iv);
		this.iv = 0;
	}
	m.def = inf.find(".ekdEntry.def");
	m.curEntry = m.def;
	map.find(":not(area[href])").attr("title","").mouseover(function() {
		m.cli();
		m.iv = setTimeout(function() {
			var c = m.curEntry;
			m.curEntry = null;
			c.fadeOut("slow");
		},1500);
	});
	map.find("area[href]").each(function() {
		this.n = $(this).attr("name");
		this.ref = inf.find("."+this.n);
	}).mouseover(function() {
		m.cli();
		if(m.curEntry == this.ref) return;
		if(m.curEntry) {
			m.curEntry.stop(true,true);
			m.curEntry.hide();
		}
		if(jQuery.browser.msie) {
			this.ref.show();
		} else {
			this.ref.fadeIn(700);
		}
		m.curEntry = this.ref;
	});
	$(m.mapPane).hover(function() {
		m.cli();
		m.def.fadeOut();
	},function() {
		m.cli();
		inf.find(".ekdEntry:animated").stop(false,true);
		if(m.curEntry) m.curEntry.hide();
		m.curEntry = m.def;
		m.def.fadeIn();
	});
}
function trace(o,d) {
	if(typeof(console) == "undefined") return;
	if(typeof(d) == "undefined") var d = 0;
	d++;
	if(d > 3) return "";
	var s = tvalue(o);
	if(typeof(o) == "object") {
		var s = "";
		var t = "          ".substr(0,d*2);
		for(var n in o) {
			var oo = tvalue(o[n]);
			if(n=="innerHTML" || n=="outerHTML" || n=="outerText" || n=="innerText") oo = "[html "+n+"]";
			s+= t+n+": "+oo+"\n";
			if(typeof(oo)=="object") {
				s += trace(oo,d);
			}
		}
	}
	d--;
	if(d > 0) return s;
	console.log(s);
}
function tvalue(v) {
	try {
		var r = v.toString();
	} catch(e) {
		var r = "n.a.";
	}
	return r;
}
