function LoadMap() 
  {
  if (GBrowserIsCompatible()) 
    {
    var home = new GLatLng(0,0);
    var zoom = 0;
    var map = new GMap2(document.getElementById("map"));
    
    map.setCenter(home,zoom);
    map.setMapType(G_SATELLITE_MAP);
    map.addControl(new GSmallMapControl());

    var ricon = new GIcon();
    ricon.image = "http://labs.google.com/ridefinder/images/mm_20_white.png";
    ricon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
    ricon.iconSize = new GSize(12, 20);
    ricon.shadowSize = new GSize(22, 20);
    ricon.iconAnchor = new GPoint(6, 20);
    ricon.infoWindowAnchor = new GPoint(5, 1);

    function createRIconMarker(point,htmlStr,zoomlevel) 
      {
        var marker = new GMarker(point,ricon);
        GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(htmlStr);
        map.setZoom(zoomlevel);
        });
        return marker;
      }
    
    marker=[];
      
    GDownloadUrl("google_homepage_map_xml.php", function(data, responseCode){
        var xml = GXml.parse(data);
        var markers = xml.documentElement.getElementsByTagName("marker");
        for (var i = 0; i < markers.length; i++) 
          {
          var lat = parseFloat(markers[i].getAttribute("lat"));
          var lng = parseFloat(markers[i].getAttribute("long"));
          var point = new GPoint(lng,lat);
          var newpoint = new GPoint(lng,lat);
          
          var htmlString='<div id="infowindow"><b>'+ markers[i].getAttribute("title") + '</b>';
          var htmlString=htmlString + '<br/><img src="/images/flags/' + markers[i].getAttribute("flag") + '" alt="" border="0" />&nbsp;' + markers[i].getAttribute("near") + '<br/>';
          var htmlString=htmlString + '<br/>'+ markers[i].getAttribute("desc") + '</div>';
          
          var zoomlevel=parseInt(markers[i].getAttribute("zoom"));
          
          marker[i] = createRIconMarker(point,htmlString,zoomlevel);
          map.addOverlay(marker[i]);
          }
      });

    }
  }