    //<![CDATA[
    if (GBrowserIsCompatible()) {
    	// variables for iframe
      var gmarkers = [];
      var htmls = [];
      var i = 1;
 
      // create the map
      var map = new GMap2(document.getElementById("map")); 
			var singaporelat=1.3528467689974;
			var singaporelng=103.82390052857;
			var lat1=1.30058492891;
			var lng1=103.842068011;
			var orchardpoint=new GLatLng(lat1, lng1);

		  map.addControl(new GLargeMapControl());
      map.addControl(new GMapTypeControl());
		  map.setCenter(new GLatLng(singaporelat,singaporelng), 11);

      // A function to create the marker and set up the event window
      function createMarker(point,name,html,type) {
        var marker = new GMarker(point,micons[type]);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        GEvent.addListener(marker, "mouseover", function() {
          marker.openInfoWindowHtml(html);
        });
        GEvent.addListener(marker, "mouseout", function() {
          marker.closeInfoWindowHtml(html);
        });
        // save the info we need to use later for the side_bar
        gmarkers[i] = marker;
        htmls[i] = html;
        i++;
        return marker;
      }

			// change icon to different colours
			var micons =[]; 
			micons[0] = new GIcon(); micons[0].image = "icon/mm_20_white.png";	micons[0].shadow = "icon/mm_20_shadow.png"; micons[0].iconSize = new GSize(12, 20);	micons[0].shadowSize = new GSize(22, 20);	micons[0].iconAnchor = new GPoint(6, 20);	micons[0].infoWindowAnchor = new GPoint(5, 1);
			micons[2] = new GIcon(); micons[2].image = "icon/mm_20_yellow.png";	micons[2].shadow = "icon/mm_20_shadow.png"; micons[2].iconSize = new GSize(12, 20);	micons[2].shadowSize = new GSize(22, 20);	micons[2].iconAnchor = new GPoint(6, 20);	micons[2].infoWindowAnchor = new GPoint(5, 1);
			micons[3] = new GIcon(); micons[3].image = "icon/mm_20_red.png";	micons[3].shadow = "icon/mm_20_shadow.png"; micons[3].iconSize = new GSize(12, 20);	micons[3].shadowSize = new GSize(22, 20);	micons[3].iconAnchor = new GPoint(6, 20);	micons[3].infoWindowAnchor = new GPoint(5, 1);			
			micons[4] = new GIcon(); micons[4].image = "icon/mm_20_blue.png";	micons[4].shadow = "icon/mm_20_shadow.png";	micons[4].iconSize = new GSize(12, 20);	micons[4].shadowSize = new GSize(22, 20);	micons[4].iconAnchor = new GPoint(6, 20); micons[4].infoWindowAnchor = new GPoint(5, 1);
			micons[5] = new GIcon(); micons[5].image = "icon/mm_20_brown.png"; micons[5].shadow = "icon/mm_20_shadow.png";	micons[5].iconSize = new GSize(12, 20); micons[5].shadowSize = new GSize(22, 20); micons[5].iconAnchor = new GPoint(6, 20); micons[5].infoWindowAnchor = new GPoint(5, 1);
			micons[6] = new GIcon(); micons[6].image = "icon/mm_20_green.png"; micons[6].shadow = "icon/mm_20_shadow.png"; micons[6].iconSize = new GSize(12, 20); micons[6].shadowSize = new GSize(22, 20); micons[6].iconAnchor = new GPoint(6, 20); micons[6].infoWindowAnchor = new GPoint(5, 1);
			micons[9] = new GIcon(); micons[9].image = "icon/mm_20_black.png"; micons[9].shadow = "icon/mm_20_shadow.png"; micons[9].iconSize = new GSize(12, 20); micons[9].shadowSize = new GSize(22, 20); micons[9].iconAnchor = new GPoint(6, 20); micons[9].infoWindowAnchor = new GPoint(5, 1);

      // This function picks up the click and opens the correhotelnding info window
      function showlocation(i) {
        gmarkers[i].openInfoWindowHtml(htmls[i]);
      }
      function zoomin(i) {
        gmarkers[i].openInfoWindowHtml(htmls[i]);
	  		map.zoomIn();
      }
      function zoomout(i) {
        gmarkers[i].openInfoWindowHtml(htmls[i]);
	  		map.zoomOut();
      }

      // Read the data from example.xml
      var request = GXmlHttp.create();
      request.open("GET", "hotel.xml", true);
      request.onreadystatechange = function() {
        if (request.readyState == 4) {
					var xmlDoc = GXml.parse(request.responseText);
					var count=0;
					while (xmlDoc.getElementsByTagName("lat")[count]!=null){
						var lat=xmlDoc.getElementsByTagName("lat")[count].childNodes[0].nodeValue;
						var lng=xmlDoc.getElementsByTagName("lng")[count].childNodes[0].nodeValue;
						// check if it is zero, if so, set to default
						if (lat==0) {
							lat=singaporelat;
							lng=singaporelng;
						}
						var point = new GLatLng(lat,lng);
						var name=xmlDoc.getElementsByTagName("name")[count].childNodes[0].nodeValue;						
						var area=xmlDoc.getElementsByTagName("area")[count].childNodes[0].nodeValue;						
						var star=xmlDoc.getElementsByTagName("star")[count].childNodes[0].nodeValue;
						var rate=xmlDoc.getElementsByTagName("rate")[count].childNodes[0].nodeValue;						
						var url=xmlDoc.getElementsByTagName("url")[count].childNodes[0].nodeValue;
            var html="<table width=200><tr><td><B>Name</B></td><td>"+name+"</td></tr>";
            html +="<tr><td><B>Area</B></td><td>"+area+"</td></tr>";
            html +="<tr><td><B>Stars </B></td><td>"+star+"</td></tr>";
            html +="<tr><td><B>Rate (S$)</B></td><td>"+rate+"</td></tr>";
            html +="<tr><td><a href=# onclick=zoomin("+(count+1)+");>Zoom In</a></td><td><a href=# onclick=zoomout("+(count+1)+");>Zoom Out</a></td></tr>";
            html +="<tr><td colspan=2><a href='"+url+"'>Book It!</a></td></tr>";
						var label="<tr><td>"+name+"</td><td>"+area+"</td><td>"+star+"</td></tr>";
						var type=xmlDoc.getElementsByTagName("star")[count].childNodes[0].nodeValue;						
						if (type.indexOf("Boutique")==0) type=6;
            // create the marker
            var marker = createMarker(point,label,html,type);
            map.addOverlay(marker);
          	count++;  
          }
        }
      }
      request.send(null);
    } // end of gmap
    else {
      alert("Sorry, the Google Maps API is not compatible with this browser");
    } // if gmap
	  function zoomMap(zoom){
  		map.setCenter(orchardpoint, zoom);
  	}    
    //]]>