function initializeGoogleMaps(aAddresses) {
	if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("map_canvas"));

		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		
		// Create a base icon for all of our markers that specifies the shadow, icon dimensions, etc.
		var baseIcon = new GIcon(G_DEFAULT_ICON);
		baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
		baseIcon.iconSize = new GSize(20, 34);
		baseIcon.shadowSize = new GSize(37, 34);
		baseIcon.iconAnchor = new GPoint(9, 34);
		baseIcon.infoWindowAnchor = new GPoint(9, 2);
		
		// Creates a marker whose info window displays the letter corresponding to the given index.
		function createMarker(point, index) {
			// Create a lettered icon for this point using our icon class
			var letter = String.fromCharCode("A".charCodeAt(0) + index);
			var letteredIcon = new GIcon(baseIcon);
			letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";
			
			// Set up our GMarkerOptions object
			markerOptions = { icon:letteredIcon };
			var marker = new GMarker(point, markerOptions);
			
			GEvent.addListener(marker, "click", function() {
				marker.openInfoWindowHtml("Marker <b>" + letter + "</b>");
			});
			return marker;
		}

		// Add markers
		for (var i = 0; i < aAddresses.length; i++) {
			var geocoder = new GClientGeocoder();
			geocoder.getLatLng(
    			aAddresses[i],
    			function(point) {
      				if (!point) {
        				alert(aAddresses[i] + " kunne ikke vises på kortet!");
      				} else {
        				map.setCenter(point, 13);
        				var marker = new GMarker(point);
        				map.addOverlay(marker);
      				}
    			}
			);
			
		}
	}
}
