    var opts;
    var map;
  	var localSearch = new Array(10);
  	var points = new Array(10);

	function usePointFromPostcode(i,postcode,labeltitle,labeltext) {
	    if (postcode.length == 0)
	      return;
    	localSearch[i] = new GlocalSearch();
		localSearch[i].setSearchCompleteCallback(null, function () {ProcessSearchResults(i, labeltitle,labeltext);});
    	localSearch[i].execute(postcode + ", UK");
	}

	function ProcessSearchResults(i, labeltitle,labeltext) {
			if (localSearch[i].results[0])	{
				var resultLat = localSearch[i].results[0].lat;
				var resultLng = localSearch[i].results[0].lng;
				points[i] = new GLatLng(resultLat,resultLng);

//				var marker = new GMarker(point);

/*
        var icon = new GIcon();
        icon.image = 'http://gmaps-samples.googlecode.com/svn/trunk/markers/circular/greencirclemarker.png';
        icon.iconSize = new GSize(32, 32);
        icon.iconAnchor = new GPoint(16, 16);
        icon.infoWindowAnchor = new GPoint(25, 7);
*/

        if (labeltext.length == 1)
          xoffset = -2;
        else
          xoffset = -5;

        opts = makeOptions(labeltitle,labeltext, xoffset);
        var marker = new LabeledMarker(points[i], opts);

  				map.addOverlay(marker);
//				map.setCenter(point, 13, G_NORMAL_MAP);

         fitMap( map, points, i+1 );
			}else{
				//alert("Postcode not found!");
			}
	}

	function makeOptions(labeltitle,labeltext, xoffset)
	{
	  return {
          "clickable": false,
          "title": labeltitle,
          "labelText": labeltext,
          "labelOffset": new GSize(xoffset, -30),
          "labelClass" : "mapmarkers"
	  }
	}

	function usePointFromLatLong(i, lat, lng, labeltitle,labeltext) {
	    if (lat.length == 0)
	      return;
	    if (lng.length == 0)
	      return;

   	  points[i] = new GLatLng(lat,lng);

		if (labeltext.length == 1)
			xoffset = -2;
		else
			xoffset = -5;

		opts = makeOptions(labeltitle,labeltext, xoffset);
		var marker = new LabeledMarker(points[i], opts);

 		map.addOverlay(marker);
        fitMap( map, points, i+1 );
	}


	function fitMap( map, points, totalpoints ) {
	var bounds = new GLatLngBounds();
//	for (var i=0; i< totalpoints; i++) {
	for (var i=0; i< 10; i++) {
	  if (points[i] != null)
		bounds.extend(points[i]);
	}
	map.setZoom(map.getBoundsZoomLevel(bounds));
	map.setCenter(bounds.getCenter());
	}

	function mapLoad(lat, lng) {
		if (GBrowserIsCompatible()) {
			map = new GMap2(document.getElementById("map"));
//			map.addControl(new GLargeMapControl());
//			map.addControl(new GMapTypeControl());
            map.addControl(new GSmallMapControl());

			map.setCenter(new GLatLng(lat,lng), 13, G_NORMAL_MAP);
//			usePointFromPostcode(postcode);
		}
	}
