function load()
{
  if (GBrowserIsCompatible())
  {
    var map = new GMap2(document.getElementById("gmapWrap"));
    map.setMapType(G_HYBRID_MAP);
    map.addControl(new GLargeMapControl());
    map.addControl(new GMapTypeControl());
    
    if(geocodes.length == 1)
    { 
      map.setCenter(new GLatLng(geocodes[0][0], geocodes[0][1]), 12);
      
      marker = new GMarker(map.getCenter());
      
      map.addOverlay(marker);
    }
    else
    {
      //set inital map center
      map.setCenter(new GLatLng(geocodes[0][0], geocodes[0][1]), 12);
      
      //set new bounds
      bounds = new GLatLngBounds();
      
      //array for markers
      markers = [];
      
      for(i = 0; i < geocodes.length; i++)
      {
        //alert(geocodes[i][0] + ', ' + geocodes[i][1])
        //make new point
        latlng = new GLatLng(parseFloat(geocodes[i][0]), parseFloat(geocodes[i][1]));
        
        //make new marker
        markers[i] = new GMarker(latlng);
        
        //extend bounds
        bounds.extend(latlng);
        
        //bind the info window
        markers[i].bindInfoWindow(document.getElementById('parkInfo_'+i).cloneNode(true));
        
        //add marker to map
        map.addOverlay(markers[i]);
      }
      
      //set map viewport
      var clat = (bounds.getNorthEast().lat() + bounds.getSouthWest().lat()) /2;
      var clng = (bounds.getNorthEast().lng() + bounds.getSouthWest().lng()) /2;
      map.setCenter(new GLatLng(clat,clng));
      map.setZoom(map.getBoundsZoomLevel(bounds));
    }
  }
}