    //<![CDATA[
	// Creates a marker at the given point with the given number label
	function createMarker(point, message) {
	var marker = new GMarker(point);
	GEvent.addListener(marker, "click", function() {
		marker.openInfoWindowHtml("<b>" + message + "</b>");
	});
	return marker;
	}
	
    function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.addControl(new GLargeMapControl ());
        map.addControl(new GMapTypeControl());
        map.addControl(new GScaleControl ());
        map.addControl(new GOverviewMapControl ());
        map.setCenter(new GLatLng(19.75, 103.1666), 7);
        map.setMapType( G_HYBRID_TYPE ); 

        // Download the data in data.xml and load it on the map. The format we
        // expect is:
        // <markers>
        //   <marker lat="37.441" lng="-122.141"/>
        //   <marker lat="37.322" lng="-121.213"/>
        // </markers>
        GDownloadUrl("/00map/data.xml", function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");
          for (var i = 0; i < markers.length; i++) {
          
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
            
            map.addOverlay(createMarker(point, 'Latitude: ' + parseInt(markers[i].getAttribute("lat")) + ' ' + "Londitude: " + parseInt(markers[i].getAttribute("lng")) +  '<br>' + markers[i].childNodes[0].nodeValue));
          }
        });
      }
    }

    //]]>
