function load() {
	if (GBrowserIsCompatible()) {
	        var pt_farm_lat = 52.160301; var pt_farm_long = -2.594003;
	        var pt_shop_lat = 52.190968; var pt_shop_long = -2.508842;
		var map = new GMap2(document.getElementById("map"));
		var pointFarm = new GLatLng(pt_farm_lat, pt_farm_long);
		var pointShop = new GLatLng(pt_shop_lat, pt_shop_long);
		var pointAvg = new GLatLng((pt_farm_lat + pt_shop_lat)/2, (pt_farm_long + pt_shop_long)/2);
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		map.setCenter(pointAvg, 12);
		// See: http://googlemapsbook.com/2007/01/22/extending-gmarker/ ``Extending The API To Create Labeled Markers''.
		function LabeledMarker(latlng, options){
			this.latlng = latlng;
			this.labelText = options.labelText || "";
			this.labelClass = options.labelClass || "markerLabel";
			this.labelOffset = options.labelOffset || new GSize(0, 0);
			GMarker.apply(this, arguments);
		}

		LabeledMarker.prototype = new GMarker(new GLatLng(0, 0));

		LabeledMarker.prototype.initialize = function(map) {
			GMarker.prototype.initialize.call(this, map);
			var div = document.createElement("div");
			div.className = this.labelClass;
			div.innerHTML = this.labelText;
			div.style.position = "absolute";
			map.getPane(G_MAP_MARKER_PANE).appendChild(div);
			this.map = map;
			this.div = div;
		}

		LabeledMarker.prototype.redraw = function(force) {
			GMarker.prototype.redraw.call(this, map);
			// We only need to do anything if the coordinate system has changed
			if (!force) return;
			var p = this.map.fromLatLngToDivPixel(this.latlng);
			var z = GOverlay.getZIndex(this.latlng.lat());
			this.div.style.left = (p.x + this.labelOffset.width) + "px";
			this.div.style.top = (p.y + this.labelOffset.height) + "px";
			this.div.style.zIndex = z + 1; // Directly in front of the marker image
		}

		LabeledMarker.prototype.remove = function() {
		  this.div.parentNode.removeChild(this.div);
		  this.div = null;
		  GMarker.prototype.remove.call(this);
		}

		/*function createMarkerFarm(pointFarm) {
			var marker = new GMarker(pointFarm);
			var html = "<div class=\"map-balloon\"><span class=\"bold\">Shortwood Farm</span><br/> Pencombe<br/>Bromyard<br/>Herefordshire<br/>HR7 4RP<br/><br/><form method=\"get\" action=\"http://maps.google.com/maps\" target=\"_parent\"><input type=\"hidden\" name=\"daddr\" value=\"HR7 4RP\" /><span class=\"italic\">Enter Your Post Code</span><br/><input type=\"text\" name=\"saddr\" size=\"20\" /><br/><input class=\"submit\" type=\"submit\" value=\"Get Directions\"/></form></div>";
			GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(html);});
			return marker;
		}*/
		function createMarkerFarm(pointFarm) {
			var opts = { "labelText": "Shortwood Farm", "labelClass": "map-marker-label", "labelOffset": new GSize(16,-50) };
			var marker = new LabeledMarker(pointFarm,opts);
			var html = "<div class=\"map-balloon\"><span class=\"bold\">Shortwood Farm</span><br/> Pencombe<br/>Bromyard<br/>Herefordshire<br/>HR7 4RP<br/><br/><form method=\"get\" action=\"http://maps.google.com/maps\" target=\"_parent\"><input type=\"hidden\" name=\"daddr\" value=\"HR7 4RP\" /><span class=\"italic\">Enter Your Post Code</span><br/><input type=\"text\" name=\"saddr\" size=\"20\" /><br/><input class=\"submit\" type=\"submit\" value=\"Get Directions\"/></form></div>";
			GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(html);});
			return marker;
		}
		/*function createMarkerShop(pointShop) {
			var marker = new GMarker(pointShop);
			var html = "<div class=\"map-balloon\"><span class=\"bold\">Legges of Bromyard</span><br/>Tenbury Road<br/>Bromyard<br/>Herefordshire<br/>HR7 4LW<br/><br/><form method=\"get\" action=\"http://maps.google.com/maps\" target=\"_parent\"><input type=\"hidden\" name=\"daddr\" value=\"HR7 4LW\" /><span class=\"italic\">Enter Your Post Code</span><br/><input type=\"text\" name=\"saddr\" size=\"20\" /><br/><input class=\"submit\" type=\"submit\" value=\"Get Directions\"/></form></div>";
			GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(html);});
			return marker;
		}*/
		function createMarkerShop(pointShop) {
			var opts = { "labelText": "Legges of Bromyard", "labelClass": "map-marker-label", "labelOffset": new GSize(16, -50) };
			var marker = new LabeledMarker(pointShop,opts);
			var html = "<div class=\"map-balloon\"><span class=\"bold\">Legges of Bromyard</span><br/>Tenbury Road<br/>Bromyard<br/>Herefordshire<br/>HR7 4LW<br/><br/><form method=\"get\" action=\"http://maps.google.com/maps\" target=\"_parent\"><input type=\"hidden\" name=\"daddr\" value=\"HR7 4LW\" /><span class=\"italic\">Enter Your Post Code</span><br/><input type=\"text\" name=\"saddr\" size=\"20\" /><br/><input class=\"submit\" type=\"submit\" value=\"Get Directions\"/></form></div>";
			GEvent.addListener(marker, "click", function(){marker.openInfoWindowHtml(html);});
			return marker;
		}
		map.addOverlay(createMarkerFarm(pointFarm));
		map.addOverlay(createMarkerShop(pointShop));
	}
}
