    function load() {
      if (GBrowserIsCompatible()) {
        this.map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-7.231690, 115.259306), 5);
        map.setMapType(G_SATELLITE_MAP);
        document.getElementById("message").innerHTML = "(-7.231690, 115.259306), 5";
        map.addControl(new GSmallMapControl());
        var topRight = new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10,10));
        var mapTypeControl = new GMapTypeControl();
        map.addControl(mapTypeControl, topRight);
        map.addControl(new GScaleControl());
        this.zoom = new DragZoomControl({}, {backButtonEnabled: true}, {});
        map.addControl(this.zoom);
        this.manager = new MarkerManager(map);
        GEvent.addListener(map, "moveend", function() {
                var center = map.getCenter();
                var zoomp = map.getZoom();
                document.getElementById("message").innerHTML = center.toString() + ", " + zoomp.toString();
        });
        
        // Create our  marker icon
        var whiteIcon = new GIcon();
        whiteIcon.image = "images/marker_white.png";
        whiteIcon.shadow = "images/marker_shadow.png";
        whiteIcon.iconSize = new GSize(16, 28);
        whiteIcon.shadowSize = new GSize(30, 30);
        whiteIcon.iconAnchor = new GPoint(8, 26);
        whiteIcon.infoWindowAnchor = new GPoint(7, 8);
        
        
        // Set up our GMarkerOptions object literal
        markerOptions = { icon:whiteIcon };
        
        //arrays
        var level5Labels = new Array();
        var level7Labels = new Array();
        var markers = new Array();
        
        //points
        var bataviaPoint = new GLatLng(-6.125379,106.837268);
        var coupangPoint = new GLatLng(-10.163505,123.575299);
        var lintahPoint = new GLatLng(-8.605675,119.593311);
        var pasuruanPoint = new GLatLng(-7.626558,112.913816);
        var surabajaPoint = new GLatLng(-7.186905,112.698693);
        var semarangPoint = new GLatLng(-6.896478,110.431371);
        
        var bataviaMarker = new GMarker(bataviaPoint, markerOptions);
        GEvent.addListener(bataviaMarker, "click", function() {
            bataviaMarker.openInfoWindowHtml("<b>Batavia<\/b><br>Bligh and his men landed here Oct 1, 1789.<br>Bligh, Samuel, and John Smith left for England 10 days later.<br>Three of his men die here, another dies on the way to England,<br>and a fifth, Ledward, Acting Surgeon, disappears..");
          });
        markers[0] = bataviaMarker;
        
        var coupangMarker = new GMarker(coupangPoint, markerOptions);
        GEvent.addListener(coupangMarker, "click", function() {
                coupangMarker.openInfoWindowHtml("<b>Coupang, Timor<\/b><br>The launch and its crew reached Coupang on Jun 14, 1789.<br >Bligh buys <i>Resource<\/i> Jul 1, Nelson, Botanist, dies Jul 20.<br>Bligh &amp; 17 men sail for Batavia Aug 20.");
        });
        markers[1] = coupangMarker;
        
        // An ELabel with complex contents
        var bataviaDiv5 = '<div class="pbr"><div class="lbl" ><b> Batavia <\/b><br><nobr>Oct 1, 1789<\/nobr><\/div><\/div>';
        var bataviaLabel5 = new ELabel(bataviaPoint, bataviaDiv5, null, new GSize(-87, 0), 65);
        level5Labels[0] = bataviaLabel5;
        
        var coupangDiv5 = '<div class="pbl"><div class="lbl"><b> Coupang <\/b><br><nobr>Aug 20, 1789<\/nobr><\/div><\/div>';
        var coupangLabel5 = new ELabel(coupangPoint, coupangDiv5, null, null, 65);
        level5Labels[1] = coupangLabel5;
        
        //level 7 labels
        var lintahDiv7 = '<div class="pbl"><div class="lbl"><nobr><b>Lintah Strait<\/b><\/nobr><br><nobr>Aug 29, 1789<\/nobr><\/div><\/div>';
        var lintahLabel7 = new ELabel(lintahPoint, lintahDiv7, null, null, 65);
        level7Labels[0] = lintahLabel7;
        
        var pasuruanDiv7 = '<div class="pbl"><div class="lbl"><b>Pasuruan<\/b><br><nobr>Sep 10-11, 1789<\/nobr><\/div><\/div>';
        var pasuruanLabel7 = new ELabel(pasuruanPoint, pasuruanDiv7, null, null, 65);
        level7Labels[1] = pasuruanLabel7;
        
        var surabajaDiv7 = '<div class="pbl"><div class="lbl"><b>Surabaja<\/b><br><nobr>Sep 11-17, 1789<\/nobr><\/div><\/div>';
        var surabajaLabel7 = new ELabel(surabajaPoint, surabajaDiv7, null, null, 65);
        level7Labels[2] = surabajaLabel7;
        
        var semarangDiv7 = '<div class="ptr"><div class="lbl"><b>Semarang<\/b><br><nobr>Sep 22-26, 1789<\/nobr><\/div><\/div>';
        var semarangLabel7 = new ELabel(semarangPoint, semarangDiv7, null, new GSize(-117,50), 65);
        level7Labels[3] = semarangLabel7;
        
        manager.addMarkers(markers, 5);
        manager.addMarkers(level5Labels, 5);
        manager.addMarkers(level7Labels, 7);
        
        var polyline = new GPolyline([
            new GLatLng(-10.161666,123.573888),
            new GLatLng(-10.07333,123.4013888),
            new GLatLng(-9.070833,120.0463888),
            new GLatLng(-8.827133,119.58333),
            new GLatLng(-8.7009777,119.594222),
            new GLatLng(-8.660375,119.615525),
            new GLatLng(-8.634047,119.608236),
            new GLatLng(-8.605675,119.593311),//Aug 29 Lintah Strait
            new GLatLng(-8.0,119.628225),
            new GLatLng(-7.949058,117.635775),
            new GLatLng(-8.023892,116.406658),
            new GLatLng(-7.4944888,114.0699),
            new GLatLng(-7.610670,112.946789),
            new GLatLng(-7.626558,112.913816),//Pasuruan Sep 10-11,'89
            new GLatLng(-7.242760,112.836567),//Surabaja Sep 11-17
            new GLatLng(-7.180792,112.776094),
            new GLatLng(-7.184761,112.693877),
            new GLatLng(-7.142839,112.671144),
            new GLatLng(-7.009281,112.664058),
            new GLatLng(-6.903691,112.640217),
            new GLatLng(-6.833074,112.586948),
            new GLatLng(-6.772763,112.301770),
            new GLatLng(-6.626824,111.819102),
            new GLatLng(-6.489660,111.278657),
            new GLatLng(-6.313180,111.021928),
            new GLatLng(-6.423556,110.614342),
            new GLatLng(-6.896478,110.431371),//Semarang Sep 22-26
            new GLatLng(-6.769451,110.207883),
            new GLatLng(-6.733119,109.585354),
            new GLatLng(-6.660143,109.066062),
            new GLatLng(-6.207833,108.373942),
            new GLatLng(-5.854623,107.366661),
            new GLatLng(-5.895877,107.014744),
            new GLatLng(-6.119896,106.836861)
            ], "#ff9000", 2, 1); 
        
        map.addOverlay(polyline);
        
        manager.refresh();
        }
    }

    function reset() {
        this.map.setCenter(new GLatLng(-7.231690, 115.259306), 5);
    }
    function viewOne() {
        this.map.setCenter(new GLatLng(-8.776511,120.574951), 7);
    }
    function viewTwo() {
        this.map.setCenter(new GLatLng(-7.776309,116.378174), 7);
    }
    function viewThree() {
        this.map.setCenter(new GLatLng(-7.035476,111.538696), 8);
    }
    function viewFour() {
        this.map.setCenter(new GLatLng(-6.380812,109.083252), 7);
    }
