function highlighter(latlng, iconpath,iconwidth,iconheight) {  
	this.latlng_ = latlng 
	if(browser.isIE && browser.version<7){
		this.iconpath_ = iconpath.replace(".png",".gif")
	}else{
		this.iconpath_ = iconpath
	}
	this.iconwidth_ = iconwidth
	this.iconheight_ = iconheight
}

highlighter.prototype = new GOverlay();

// Creates the DIV representing this highlightrt.

highlighter.prototype.initialize = function(map) {  
	// Create the img representing our highlighter  
	
	var div=document.createElement("div"); 
	div.style.position = "absolute"
	
	var img = document.createElement("img");  
	img.src = this.iconpath_
	img.width = this.iconwidth_
	img.height = this.iconheight_
	img.style.position = "absolute"
	img.style.left=parseInt(this.iconwidth_/2.0*-1)+"px"
	img.style.top=parseInt(this.iconheight_*-1)+"px"
	
	div.appendChild(img)
	// Our rectangle is flat against the map, so we add our selves to the  
	// MAP_PANE pane, which is at the same z-index as the map itself (i.e.,  // below the marker shadows)  
	map.getPane(G_MAP_FLOAT_PANE).appendChild(div);  
	this.map_ = map;  
	this.img_ = img;
	this.div_ = div;
}

// Remove the main DIV from the map pane
highlighter.prototype.remove = function() {  
	this.div_.parentNode.removeChild(this.div_);
}

// Copy our data to a new Rectangle
highlighter.prototype.copy = function() {  
	return new highlighter(this.latlng_, this.iconpath_, this.iconwidth_,this.iconheight_);
}

// Redraw the rectangle based on the current projection and zoom level
highlighter.prototype.redraw = function(force) {  
	// We only need to redraw if the coordinate system has changed  
	if (!force) return;  
	// Calculate the DIV coordinates of two opposite corners of our bounds to  
	// get the size and position of our rectangle  
	var c1 = this.map_.fromLatLngToDivPixel(this.latlng_);  
	var c2 = this.map_.fromLatLngToDivPixel(this.latlng_);  
	// Now position our DIV based on the DIV coordinates of our bounds  
	this.div_.style.left = (Math.min(c2.x, c1.x)) + "px";  
	this.div_.style.top = (Math.min(c2.y, c1.y)) + "px";
}