    var map = null;
    var geocoder = null;

    function GoogleMap()
    {
      if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map"));
        //map.setCenter(new GLatLng(52.905,-1.258), 13);
        //map.setCenter(new GLatLng(52.89258,-1.2599), 15);
        map.setCenter(new GLatLng(52.898962,-1.301193), 11);
        map.setUIToDefault();
        
        // Create our "tiny" marker icon
        var icon = new GIcon();
        //icon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
        icon.image = "http://www.google.com/mapfiles/marker.png";
        icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
        icon.iconSize = new GSize(12, 20);
        icon.shadowSize = new GSize(22, 20);
        icon.iconAnchor = new GPoint(6, 20);
        icon.infoWindowAnchor = new GPoint(5, 1);
        
        var point = new GLatLng(52.89258226860718, -1.2604424357414246);
        
        map.addOverlay(new GMarker(point, icon));
        map.openInfoWindowHtml(new GLatLng(52.89258226860718, -1.2604424357414246), "<div class='map_balloon'><b>Core 13 Ltd<\/b><br\/>31-33 Meadow Lane, Long Eaton<br\/>Nottingham, NG10 2FE<br\/><img src='\/_images\/offices_200.jpg' width='200' height='102' alt='Core 13 Offices' \/><\/div>");
        }
    }
    
    function showAddress(address) {
        geocoder = new GClientGeocoder();

      geocoder.getLatLng(
        address,
        function(point) {
          if (!point) {
            alert(address + " not found");
          } else {
            $('#points').val(point);
            map.setCenter(point, 13);
            var marker = new GMarker(point);
            map.addOverlay(marker);
            marker.openInfoWindowHtml(address);
          }
        }
      );
    }

    function showLocation(address) {
        geocoder = new GClientGeocoder();
      geocoder.getLocations(address, addAddressToMap);
    }

    function addAddressToMap(response) {
      map.clearOverlays();
      if (!response || response.Status.code != 200) {
        alert("\"" + address + "\" not found");
      } else {
        place = response.Placemark[0];
        point = new GLatLng(place.Point.coordinates[1],
                            place.Point.coordinates[0]);
        marker = new GMarker(point);
        map.addOverlay(marker);
        marker.openInfoWindowHtml(place.address + '<br>' + 
          '<b>Country code:</b> ' + place.AddressDetails.Country.CountryNameCode);
          
          var p;
          p = p + place.Point.coordinates[1];
          p = p + ",";
          p = p + place.Point.coordinates[0];
            $('#points').val(point);
            
            //alert(place.AddressDetails.Country.AdministrativeArea.SubAdministrativeArea.Locality.PostalCode.PostalCodeNumber);
            //alert(place.toString());
      }
    }