    //<![CDATA[

    var iconBlue = new GIcon(); 
    iconBlue.image = '/images/map/mm_20_blue.png';
    iconBlue.shadow = '/images/map/mm_20_shadow.png';
    iconBlue.iconSize = new GSize(12, 20);
    iconBlue.shadowSize = new GSize(22, 20);
    iconBlue.iconAnchor = new GPoint(6, 20);
    iconBlue.infoWindowAnchor = new GPoint(5, 1);

    var iconRed = new GIcon(); 
    iconRed.image = '/images/map/mm_20_red.png';
    iconRed.shadow = '/images/map/mm_20_shadow.png';
    iconRed.iconSize = new GSize(12, 20);
    iconRed.shadowSize = new GSize(22, 20);
    iconRed.iconAnchor = new GPoint(6, 20);
    iconRed.infoWindowAnchor = new GPoint(5, 1);

    var iconGreen = new GIcon(); 
    iconGreen.image = '/images/map/mm_20_green.png';
    iconGreen.shadow = '/images/map/mm_20_shadow.png';
    iconGreen.iconSize = new GSize(12, 20);
    iconGreen.shadowSize = new GSize(22, 20);
    iconGreen.iconAnchor = new GPoint(6, 20);
    iconGreen.infoWindowAnchor = new GPoint(5, 1);

    var iconYellow = new GIcon(); 
    iconYellow.image = '/images/map/mm_20_yellow.png';
    iconYellow.shadow = '/images/map/mm_20_shadow.png';
    iconYellow.iconSize = new GSize(12, 20);
    iconYellow.shadowSize = new GSize(22, 20);
    iconYellow.iconAnchor = new GPoint(6, 20);
    iconYellow.infoWindowAnchor = new GPoint(5, 1);

    var iconPurple = new GIcon(); 
    iconPurple.image = '/images/map/mm_20_purple.png';
    iconPurple.shadow = '/images/map/mm_20_shadow.png';
    iconPurple.iconSize = new GSize(12, 20);
    iconPurple.shadowSize = new GSize(22, 20);
    iconPurple.iconAnchor = new GPoint(6, 20);
    iconPurple.infoWindowAnchor = new GPoint(5, 1);

    var iconBlack = new GIcon(); 
    iconBlack.image = '/images/map/mm_20_black.png';
    iconBlack.shadow = '/images/map/mm_20_shadow.png';
    iconBlack.iconSize = new GSize(12, 20);
    iconBlack.shadowSize = new GSize(22, 20);
    iconBlack.iconAnchor = new GPoint(6, 20);
    iconBlack.infoWindowAnchor = new GPoint(5, 1);

    var iconWhite = new GIcon(); 
    iconWhite.image = '/images/map/mm_20_white.png';
    iconWhite.shadow = '/images/map/mm_20_shadow.png';
    iconWhite.iconSize = new GSize(12, 20);
    iconWhite.shadowSize = new GSize(22, 20);
    iconWhite.iconAnchor = new GPoint(6, 20);
    iconWhite.infoWindowAnchor = new GPoint(5, 1);

    var iconGray = new GIcon(); 
    iconGray.image = '/images/map/mm_20_gray.png';
    iconGray.shadow = '/images/map/mm_20_shadow.png';
    iconGray.iconSize = new GSize(12, 20);
    iconGray.shadowSize = new GSize(22, 20);
    iconGray.iconAnchor = new GPoint(6, 20);
    iconGray.infoWindowAnchor = new GPoint(5, 1);

    var iconBrown = new GIcon(); 
    iconBrown.image = '/images/map/mm_20_brown.png';
    iconBrown.shadow = '/images/map/mm_20_shadow.png';
    iconBrown.iconSize = new GSize(12, 20);
    iconBrown.shadowSize = new GSize(22, 20);
    iconBrown.iconAnchor = new GPoint(6, 20);
    iconBrown.infoWindowAnchor = new GPoint(5, 1);

    var iconOrange = new GIcon(); 
    iconOrange.image = '/images/map/mm_20_orange.png';
    iconOrange.shadow = '/images/map/mm_20_shadow.png';
    iconOrange.iconSize = new GSize(12, 20);
    iconOrange.shadowSize = new GSize(22, 20);
    iconOrange.iconAnchor = new GPoint(6, 20);
    iconOrange.infoWindowAnchor = new GPoint(5, 1);

    var customIcons = [];
    customIcons["0"] = iconRed;
    customIcons["1"] = iconGreen;
    customIcons["2"] = iconBlue;
    customIcons["3"] = iconOrange;
    customIcons["4"] = iconYellow;
    customIcons["5"] = iconPurple;
    customIcons["6"] = iconBrown;
    customIcons["7"] = iconBlack;
    customIcons["8"] = iconWhite;
    customIcons["9"] = iconGray;

    function load(property_section) {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
				var bounds = new GLatLngBounds();
//        map.addControl(new GSmallMapControl());
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
//        map.setCenter(new GLatLng(0,0),0);
        map.setCenter(new GLatLng(43.076662,-89.393263), 13);
//				map.enableScrollWheelZoom();

				var property_file = "properties.xml.php";
				if (property_section >= 0) {
					property_file += "?sec=" + property_section;
				}

        GDownloadUrl(property_file, function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("marker");
          for (var i = 0; i < markers.length; i++) {
            var name = markers[i].getAttribute("name");
            var address = markers[i].getAttribute("address");
            var goog_addr = markers[i].getAttribute("goog_addr");
            var type = markers[i].getAttribute("type");
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("lng")));
            var marker = createMarker(point, name, address, goog_addr, type);
            map.addOverlay(marker);
            bounds.extend(marker.getPoint());
          }
				  map.setZoom(map.getBoundsZoomLevel(bounds));
				  map.setCenter(bounds.getCenter());
        });
        if (document.location.href.indexOf('mapsdebug') != -1) {
          var markerdebug = new GMarker(map.getCenter(),{draggable:true});
          GEvent.addListener(markerdebug, "dragend", function() {
            markerdebug.openInfoWindowHtml(markerdebug.getPoint().toString())
          });
          map.addOverlay(markerdebug);
        }
      }
    }

    function createMarker(point, name, address, goog_addr, type) {
      var marker = new GMarker(point, customIcons[type]);
      var html = "<b>" + name + "</b> <br/>" + address;
			html += "<br /><a href=\"http://maps.google.com/maps?daddr=";
			html += goog_addr + "\" target=\"_blank\">Get Directions</a>";
      GEvent.addListener(marker, 'click', function() {
        marker.openInfoWindowHtml(html);
      });
      return marker;
    }
    //]]>
