﻿// JavaScript generated by Wadachi Version 3.43

var track = new Array();
var route = new Array();
var waypoints = new Array();
var markerIcon = new Array();
var markers = new Array();
var maxSpeed = new Array();
var timeLine = new Array();
var map;
var currPoint = 0;
var currTrack = 0;
var playTimer;
var playing = false;
var centerPointer;
var infoPanel;
var speedMeter = null;
var showMeterPanel = false;
var realTimePlay = false;

function displayMap() {
	if (GBrowserIsCompatible()) {
		map = new GMap2(document.getElementById("map"));
		map.addMapType(G_PHYSICAL_MAP);
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		map.addControl(new GScaleControl());
		map.setCenter(new GLatLng(36.020939, 139.597366), map.getBoundsZoomLevel(new GLatLngBounds(new GLatLng(35.710407, 139.390930), new GLatLng(36.331470, 139.803802))));
		map.setMapType(G_NORMAL_MAP);
		/*<OverviewMap>*/
		map.disableDoubleClickZoom();
		map.enableScrollWheelZoom();
		new GKeyboardHandler(map);

		var pointerIcon = new GIcon();
		pointerIcon.image = '091227map_files/center_pointer.png';
		pointerIcon.iconSize = new GSize(32, 32);
		pointerIcon.iconAnchor = new GPoint(15, 15);
		centerPointer = new GMarker(new GLatLng(35, 135), {icon: pointerIcon, clickable: false, zIndexProcess: function() {return 9999;}});

		setIcon();
		setWaypoints();
		setRoutes();
		drawWaypoints(true, true, true, true);
		setTracks();
		/*<InitTimeLine>*/
	}
	else {
		document.getElementById('map').innerHTML = 'お使いのブラウザではこの地図は表示できません。';
	}
}

function setWaypoints() {
	waypoints.push(new MarkerInfo(36.094604, 139.758499, -7, "2009/12/27", "10:01:48", 0, "道の駅ごか", "091227map_files/091227002.jpg", "", "", ""));
	waypoints.push(new MarkerInfo(36.208847, 139.667816, 29, "2009/12/27", "11:05:41", 0, "渡瀬貯水池", "091227map_files/091227004.jpg", "", "", ""));
	waypoints.push(new MarkerInfo(36.296757, 139.625183, 17, "2009/12/27", "11:55:05", 0, "道の駅みかも", "091227map_files/091227008.jpg", "", "", ""));
	waypoints.push(new MarkerInfo(36.189068, 139.510605, 28, "2009/12/27", "13:16:51", 0, "道の駅はにゅう", "091227map_files/091227010.jpg", "", "", ""));
}

function setRoutes() {
/*<RouteList>*/
}

function setTracks() {

	track[0] = new Array();
	track[0].push(new TrackPoint(35.711987, 139.776398, 0.000, 22, 0, 0, "Sun Dec 27 2009 08:42:32"));
	track[0].push(new TrackPoint(35.712486, 139.777344, 0.109, 28, 0, 0, "Sun Dec 27 2009 08:43:10"));
	track[0].push(new TrackPoint(35.712330, 139.778336, 0.205, 39, 0, 0, "Sun Dec 27 2009 08:43:26"));
	track[0].push(new TrackPoint(35.712826, 139.778671, 0.268, 39, 0, 0, "Sun Dec 27 2009 08:43:28"));
	track[0].push(new TrackPoint(35.712788, 139.778976, 0.296, 41, 0, 0, "Sun Dec 27 2009 08:43:29"));
	track[0].push(new TrackPoint(35.712368, 139.779434, 0.361, 48, 0, 0, "Sun Dec 27 2009 08:43:51"));
	track[0].push(new TrackPoint(35.712795, 139.779434, 0.409, 48, 0, 0, "Sun Dec 27 2009 08:44:12"));
	track[0].push(new TrackPoint(35.713322, 139.779266, 0.479, 51, 0, 0, "Sun Dec 27 2009 08:44:41"));
	track[0].push(new TrackPoint(35.717243, 139.781937, 0.977, 61, 0, 0, "Sun Dec 27 2009 08:45:10"));
	track[0].push(new TrackPoint(35.719749, 139.784042, 1.315, 30, 0, 0, "Sun Dec 27 2009 08:45:29"));
	track[0].push(new TrackPoint(35.721958, 139.785461, 1.591, 14, 0, 0, "Sun Dec 27 2009 08:45:44"));
	track[0].push(new TrackPoint(35.729042, 139.790787, 2.514, 5, 0, 0, "Sun Dec 27 2009 08:47:07"));
	track[0].push(new TrackPoint(35.730358, 139.791977, 2.697, 7, 0, 0, "Sun Dec 27 2009 08:47:20"));
	track[0].push(new TrackPoint(35.732368, 139.792679, 2.929, 5, 0, 0, "Sun Dec 27 2009 08:47:35"));
	track[0].push(new TrackPoint(35.734447, 139.794205, 3.198, 4, 0, 0, "Sun Dec 27 2009 08:47:53"));
	track[0].push(new TrackPoint(35.736813, 139.796494, 3.534, 10, 0, 0, "Sun Dec 27 2009 08:49:26"));
	track[0].push(new TrackPoint(35.738445, 139.796936, 3.721, 15, 0, 0, "Sun Dec 27 2009 08:49:39"));
	track[0].push(new TrackPoint(35.740967, 139.798065, 4.019, 18, 0, 0, "Sun Dec 27 2009 08:49:56"));
	track[0].push(new TrackPoint(35.743561, 139.797516, 4.312, 14, 0, 0, "Sun Dec 27 2009 08:50:13"));
	track[0].push(new TrackPoint(35.746155, 139.798386, 4.611, 5, 0, 0, "Sun Dec 27 2009 08:50:37"));
	track[0].push(new TrackPoint(35.746231, 139.798264, 4.637, 11, 0, 0, "Sun Dec 27 2009 08:51:36"));
	track[0].push(new TrackPoint(35.749420, 139.799576, 5.010, 7, 0, 0, "Sun Dec 27 2009 08:52:04"));
	track[0].push(new TrackPoint(35.762829, 139.803802, 6.548, 8, 0, 0, "Sun Dec 27 2009 08:53:33"));
	track[0].push(new TrackPoint(35.768257, 139.803513, 7.151, 8, 0, 0, "Sun Dec 27 2009 08:54:08"));
	track[0].push(new TrackPoint(35.788963, 139.802826, 9.455, 16, 0, 0, "Sun Dec 27 2009 08:57:36"));
	track[0].push(new TrackPoint(35.804939, 139.801407, 11.232, 6, 0, 0, "Sun Dec 27 2009 08:59:17"));
	track[0].push(new TrackPoint(35.805683, 139.801086, 11.320, 3, 0, 0, "Sun Dec 27 2009 08:59:22"));
	track[0].push(new TrackPoint(35.806454, 139.800415, 11.425, -0, 0, 0, "Sun Dec 27 2009 08:59:28"));
	track[0].push(new TrackPoint(35.810062, 139.795090, 12.051, 5, 0, 0, "Sun Dec 27 2009 09:00:02"));
	track[0].push(new TrackPoint(35.811100, 139.794220, 12.191, 1, 0, 0, "Sun Dec 27 2009 09:00:10"));
	track[0].push(new TrackPoint(35.813358, 139.793472, 12.452, -3, 0, 0, "Sun Dec 27 2009 09:00:24"));
	track[0].push(new TrackPoint(35.829105, 139.792648, 14.201, -1, 0, 0, "Sun Dec 27 2009 09:02:08"));
	track[0].push(new TrackPoint(35.830612, 139.792374, 14.370, 2, 0, 0, "Sun Dec 27 2009 09:02:17"));
	track[0].push(new TrackPoint(35.863396, 139.780167, 18.171, -12, 0, 0, "Sun Dec 27 2009 09:07:33"));
	track[0].push(new TrackPoint(35.874546, 139.777908, 19.425, -21, 0, 0, "Sun Dec 27 2009 09:09:00"));
	track[0].push(new TrackPoint(35.877384, 139.776978, 19.751, -24, 0, 0, "Sun Dec 27 2009 09:09:22"));
	track[0].push(new TrackPoint(35.899410, 139.766769, 22.364, -24, 0, 0, "Sun Dec 27 2009 09:14:11"));
	track[0].push(new TrackPoint(35.900928, 139.766479, 22.534, -24, 0, 0, "Sun Dec 27 2009 09:14:20"));
	track[0].push(new TrackPoint(35.903168, 139.766876, 22.786, -28, 0, 0, "Sun Dec 27 2009 09:14:33"));
	track[0].push(new TrackPoint(35.911015, 139.769653, 23.692, -13, 0, 0, "Sun Dec 27 2009 09:15:54"));
	track[0].push(new TrackPoint(35.912811, 139.770782, 23.917, -8, 0, 0, "Sun Dec 27 2009 09:16:05"));
	track[0].push(new TrackPoint(35.917904, 139.776093, 24.658, 3, 0, 0, "Sun Dec 27 2009 09:17:41"));
	track[0].push(new TrackPoint(35.923130, 139.781967, 25.444, 4, 0, 0, "Sun Dec 27 2009 09:18:17"));
	track[0].push(new TrackPoint(35.926983, 139.785721, 25.989, -5, 0, 0, "Sun Dec 27 2009 09:18:41"));
	track[0].push(new TrackPoint(35.928902, 139.786896, 26.228, -5, 0, 0, "Sun Dec 27 2009 09:18:58"));
	track[0].push(new TrackPoint(35.938686, 139.791229, 27.382, 5, 0, 0, "Sun Dec 27 2009 09:20:23"));
	track[0].push(new TrackPoint(35.951496, 139.794800, 28.839, 5, 0, 0, "Sun Dec 27 2009 09:22:32"));
	track[0].push(new TrackPoint(35.954334, 139.795166, 29.156, 0, 0, 0, "Sun Dec 27 2009 09:22:57"));
	track[0].push(new TrackPoint(35.955841, 139.795181, 29.323, -3, 0, 0, "Sun Dec 27 2009 09:23:17"));
	track[0].push(new TrackPoint(35.958393, 139.794830, 29.608, -11, 0, 0, "Sun Dec 27 2009 09:23:38"));
	track[0].push(new TrackPoint(35.958736, 139.794495, 29.648, -2, 0, 0, "Sun Dec 27 2009 09:27:04"));
	track[0].push(new TrackPoint(35.958687, 139.794296, 29.697, 0, 0, 0, "Sun Dec 27 2009 09:28:42"));
	track[0].push(new TrackPoint(35.958923, 139.794769, 29.758, 4, 0, 0, "Sun Dec 27 2009 09:30:23"));
	track[0].push(new TrackPoint(35.976360, 139.792725, 31.702, 6, 0, 0, "Sun Dec 27 2009 09:32:35"));
	track[0].push(new TrackPoint(35.992287, 139.793503, 33.472, 15, 0, 0, "Sun Dec 27 2009 09:35:05"));
	track[0].push(new TrackPoint(35.994717, 139.793793, 33.742, 12, 0, 0, "Sun Dec 27 2009 09:35:23"));
	track[0].push(new TrackPoint(35.995754, 139.793732, 33.858, 10, 0, 0, "Sun Dec 27 2009 09:35:29"));
	track[0].push(new TrackPoint(35.998672, 139.792831, 34.192, 3, 0, 0, "Sun Dec 27 2009 09:35:48"));
	track[0].push(new TrackPoint(36.006718, 139.788742, 35.159, -3, 0, 0, "Sun Dec 27 2009 09:36:46"));
	track[0].push(new TrackPoint(36.009594, 139.788055, 35.484, -7, 0, 0, "Sun Dec 27 2009 09:37:13"));
	track[0].push(new TrackPoint(36.025620, 139.786469, 37.268, -7, 0, 0, "Sun Dec 27 2009 09:39:02"));
	track[0].push(new TrackPoint(36.028469, 139.785721, 37.592, -1, 0, 0, "Sun Dec 27 2009 09:39:28"));
	track[0].push(new TrackPoint(36.041122, 139.779816, 39.093, -3, 0, 0, "Sun Dec 27 2009 09:41:55"));
	track[0].push(new TrackPoint(36.052402, 139.772186, 40.522, -9, 0, 0, "Sun Dec 27 2009 09:43:30"));
	track[0].push(new TrackPoint(36.054440, 139.771606, 40.754, -9, 0, 0, "Sun Dec 27 2009 09:43:43"));
	track[0].push(new TrackPoint(36.057102, 139.771667, 41.050, -6, 0, 0, "Sun Dec 27 2009 09:44:00"));
	track[0].push(new TrackPoint(36.067791, 139.774582, 42.266, -10, 0, 0, "Sun Dec 27 2009 09:45:16"));
	track[0].push(new TrackPoint(36.069744, 139.774551, 42.483, -8, 0, 0, "Sun Dec 27 2009 09:45:29"));
	track[0].push(new TrackPoint(36.071445, 139.774078, 42.676, -7, 0, 0, "Sun Dec 27 2009 09:45:42"));
	track[0].push(new TrackPoint(36.084572, 139.767578, 44.246, 7, 0, 0, "Sun Dec 27 2009 09:47:35"));
	track[0].push(new TrackPoint(36.087353, 139.765717, 44.598, 8, 0, 0, "Sun Dec 27 2009 09:47:58"));
	track[0].push(new TrackPoint(36.095211, 139.756332, 45.813, -5, 0, 0, "Sun Dec 27 2009 09:49:28"));
	track[0].push(new TrackPoint(36.095726, 139.756851, 45.891, -11, 0, 0, "Sun Dec 27 2009 09:49:44"));
	track[0].push(new TrackPoint(36.095387, 139.757629, 45.966, 3, 0, 0, "Sun Dec 27 2009 09:51:50"));
	track[0].push(new TrackPoint(36.095264, 139.758057, 46.099, 1, 0, 0, "Sun Dec 27 2009 10:00:07"));
	track[0].push(new TrackPoint(36.094738, 139.758591, 46.178, -3, 0, 0, "Sun Dec 27 2009 10:01:28"));
	track[0].push(new TrackPoint(36.095161, 139.758347, 46.265, -5, 0, 0, "Sun Dec 27 2009 10:02:50"));
	track[0].push(new TrackPoint(36.094963, 139.758240, 46.325, -15, 0, 0, "Sun Dec 27 2009 10:03:54"));
	track[0].push(new TrackPoint(36.095047, 139.758133, 46.339, -12, 0, 0, "Sun Dec 27 2009 10:04:18"));
	track[0].push(new TrackPoint(36.095242, 139.758423, 46.408, -19, 0, 0, "Sun Dec 27 2009 10:05:55"));
	track[0].push(new TrackPoint(36.094994, 139.758133, 46.447, -21, 0, 0, "Sun Dec 27 2009 10:07:35"));
	track[0].push(new TrackPoint(36.095009, 139.757858, 46.472, -21, 0, 0, "Sun Dec 27 2009 10:07:49"));
	track[0].push(new TrackPoint(36.095337, 139.758545, 46.563, -22, 0, 0, "Sun Dec 27 2009 10:10:11"));
	track[0].push(new TrackPoint(36.095303, 139.758347, 46.662, -16, 0, 0, "Sun Dec 27 2009 10:12:18"));
	track[0].push(new TrackPoint(36.095177, 139.758438, 46.678, -16, 0, 0, "Sun Dec 27 2009 10:12:30"));
	track[0].push(new TrackPoint(36.095009, 139.758255, 46.707, -32, 0, 0, "Sun Dec 27 2009 10:13:08"));
	track[0].push(new TrackPoint(36.095322, 139.758377, 46.749, -29, 0, 0, "Sun Dec 27 2009 10:14:00"));
	track[0].push(new TrackPoint(36.095226, 139.758224, 46.767, -30, 0, 0, "Sun Dec 27 2009 10:14:20"));
	track[0].push(new TrackPoint(36.095455, 139.758148, 46.803, -32, 0, 0, "Sun Dec 27 2009 10:14:57"));
	track[0].push(new TrackPoint(36.095306, 139.757980, 46.825, -32, 0, 0, "Sun Dec 27 2009 10:15:11"));
	track[0].push(new TrackPoint(36.095272, 139.758179, 46.843, -33, 0, 0, "Sun Dec 27 2009 10:15:24"));
	track[0].push(new TrackPoint(36.095100, 139.758133, 46.863, -21, 0, 0, "Sun Dec 27 2009 10:16:05"));
	track[0].push(new TrackPoint(36.095474, 139.757980, 46.966, 6, 0, 0, "Sun Dec 27 2009 10:18:52"));
	track[0].push(new TrackPoint(36.095440, 139.757584, 46.986, 19, 0, 0, "Sun Dec 27 2009 10:24:05"));
	track[0].push(new TrackPoint(36.094727, 139.758072, 47.105, 9, 0, 0, "Sun Dec 27 2009 10:26:41"));
	track[0].push(new TrackPoint(36.095604, 139.756866, 47.251, 10, 0, 0, "Sun Dec 27 2009 10:26:56"));
	track[0].push(new TrackPoint(36.095371, 139.756165, 47.324, 14, 0, 0, "Sun Dec 27 2009 10:28:18"));
	track[0].push(new TrackPoint(36.097477, 139.753952, 47.631, 13, 0, 0, "Sun Dec 27 2009 10:28:41"));
	track[0].push(new TrackPoint(36.099010, 139.752823, 47.830, 13, 0, 0, "Sun Dec 27 2009 10:28:54"));
	track[0].push(new TrackPoint(36.105049, 139.749146, 48.577, 21, 0, 0, "Sun Dec 27 2009 10:29:35"));
	track[0].push(new TrackPoint(36.106316, 139.748550, 48.727, 17, 0, 0, "Sun Dec 27 2009 10:29:45"));
	track[0].push(new TrackPoint(36.108242, 139.748001, 48.947, 5, 0, 0, "Sun Dec 27 2009 10:30:04"));
	track[0].push(new TrackPoint(36.110416, 139.747925, 49.189, 11, 0, 0, "Sun Dec 27 2009 10:30:20"));
	track[0].push(new TrackPoint(36.111874, 139.748215, 49.352, 19, 0, 0, "Sun Dec 27 2009 10:30:30"));
	track[0].push(new TrackPoint(36.119160, 139.751282, 50.207, 21, 0, 0, "Sun Dec 27 2009 10:31:21"));
	track[0].push(new TrackPoint(36.120239, 139.752075, 50.347, 20, 0, 0, "Sun Dec 27 2009 10:31:29"));
	track[0].push(new TrackPoint(36.132702, 139.763794, 52.086, 14, 0, 0, "Sun Dec 27 2009 10:33:20"));
	track[0].push(new TrackPoint(36.135494, 139.765961, 52.454, 14, 0, 0, "Sun Dec 27 2009 10:33:45"));
	track[0].push(new TrackPoint(36.136902, 139.764359, 52.667, 18, 0, 0, "Sun Dec 27 2009 10:34:01"));
	track[0].push(new TrackPoint(36.141052, 139.760925, 53.222, 21, 0, 0, "Sun Dec 27 2009 10:34:37"));
	track[0].push(new TrackPoint(36.147663, 139.755615, 54.098, 23, 0, 0, "Sun Dec 27 2009 10:36:08"));
	track[0].push(new TrackPoint(36.151329, 139.753220, 54.559, 21, 0, 0, "Sun Dec 27 2009 10:36:39"));
	track[0].push(new TrackPoint(36.157402, 139.747986, 55.382, 19, 0, 0, "Sun Dec 27 2009 10:37:33"));
	track[0].push(new TrackPoint(36.159985, 139.747086, 55.680, 13, 0, 0, "Sun Dec 27 2009 10:38:25"));
	track[0].push(new TrackPoint(36.161339, 139.746368, 55.843, 14, 0, 0, "Sun Dec 27 2009 10:38:38"));
	track[0].push(new TrackPoint(36.163342, 139.745972, 56.069, 11, 0, 0, "Sun Dec 27 2009 10:38:54"));
	track[0].push(new TrackPoint(36.164253, 139.745468, 56.179, 13, 0, 0, "Sun Dec 27 2009 10:39:01"));
	track[0].push(new TrackPoint(36.165195, 139.744553, 56.313, 17, 0, 0, "Sun Dec 27 2009 10:39:09"));
	track[0].push(new TrackPoint(36.167480, 139.741501, 56.687, 20, 0, 0, "Sun Dec 27 2009 10:39:34"));
	track[0].push(new TrackPoint(36.171993, 139.730957, 57.760, 19, 0, 0, "Sun Dec 27 2009 10:40:38"));
	track[0].push(new TrackPoint(36.174500, 139.726471, 58.250, 27, 0, 0, "Sun Dec 27 2009 10:41:11"));
	track[0].push(new TrackPoint(36.175747, 139.725052, 58.440, 25, 0, 0, "Sun Dec 27 2009 10:41:24"));
	track[0].push(new TrackPoint(36.176334, 139.721848, 58.735, 27, 0, 0, "Sun Dec 27 2009 10:41:42"));
	track[0].push(new TrackPoint(36.178242, 139.717743, 59.161, 29, 0, 0, "Sun Dec 27 2009 10:42:07"));
	track[0].push(new TrackPoint(36.180309, 139.711807, 59.743, 14, 0, 0, "Sun Dec 27 2009 10:43:33"));
	track[0].push(new TrackPoint(36.180820, 139.706772, 60.200, 8, 0, 0, "Sun Dec 27 2009 10:44:05"));
	track[0].push(new TrackPoint(36.181103, 139.702789, 60.560, 16, 0, 0, "Sun Dec 27 2009 10:44:45"));
	track[0].push(new TrackPoint(36.182610, 139.701675, 60.756, 25, 0, 0, "Sun Dec 27 2009 10:45:02"));
	track[0].push(new TrackPoint(36.186249, 139.699875, 61.191, 21, 0, 0, "Sun Dec 27 2009 10:45:32"));
	track[0].push(new TrackPoint(36.190048, 139.697418, 61.667, 24, 0, 0, "Sun Dec 27 2009 10:46:08"));
	track[0].push(new TrackPoint(36.192986, 139.696869, 61.998, 22, 0, 0, "Sun Dec 27 2009 10:46:28"));
	track[0].push(new TrackPoint(36.193420, 139.696274, 62.072, 25, 0, 0, "Sun Dec 27 2009 10:46:34"));
	track[0].push(new TrackPoint(36.193443, 139.695724, 62.121, 26, 0, 0, "Sun Dec 27 2009 10:46:39"));
	track[0].push(new TrackPoint(36.192329, 139.689255, 62.717, 9, 0, 0, "Sun Dec 27 2009 10:47:20"));
	track[0].push(new TrackPoint(36.196194, 139.685425, 63.267, 29, 0, 0, "Sun Dec 27 2009 10:47:56"));
	track[0].push(new TrackPoint(36.198627, 139.682556, 63.641, 29, 0, 0, "Sun Dec 27 2009 10:48:19"));
	track[0].push(new TrackPoint(36.199627, 139.680481, 63.858, 28, 0, 0, "Sun Dec 27 2009 10:48:32"));
	track[0].push(new TrackPoint(36.201244, 139.675400, 64.348, 14, 0, 0, "Sun Dec 27 2009 10:50:33"));
	track[0].push(new TrackPoint(36.202675, 139.672974, 64.618, 18, 0, 0, "Sun Dec 27 2009 10:50:51"));
	track[0].push(new TrackPoint(36.206654, 139.667633, 65.271, 35, 0, 0, "Sun Dec 27 2009 10:51:34"));
	track[0].push(new TrackPoint(36.207706, 139.666809, 65.410, 30, 0, 0, "Sun Dec 27 2009 10:52:05"));
	track[0].push(new TrackPoint(36.208603, 139.667526, 65.530, 16, 0, 0, "Sun Dec 27 2009 10:52:21"));
	track[0].push(new TrackPoint(36.208679, 139.668137, 65.587, 13, 0, 0, "Sun Dec 27 2009 10:52:30"));
	track[0].push(new TrackPoint(36.203804, 139.674759, 66.392, 6, 0, 0, "Sun Dec 27 2009 10:53:28"));
	track[0].push(new TrackPoint(36.200760, 139.679749, 66.988, 10, 0, 0, "Sun Dec 27 2009 10:54:45"));
	track[0].push(new TrackPoint(36.203197, 139.675430, 67.462, 28, 0, 0, "Sun Dec 27 2009 10:55:19"));
	track[0].push(new TrackPoint(36.207638, 139.669495, 68.189, 22, 0, 0, "Sun Dec 27 2009 10:56:08"));
	track[0].push(new TrackPoint(36.208252, 139.668549, 68.302, 18, 0, 0, "Sun Dec 27 2009 10:56:26"));
	track[0].push(new TrackPoint(36.208805, 139.667847, 68.400, 18, 0, 0, "Sun Dec 27 2009 10:58:58"));
	track[0].push(new TrackPoint(36.209740, 139.668716, 68.621, 20, 0, 0, "Sun Dec 27 2009 11:02:57"));
	track[0].push(new TrackPoint(36.209957, 139.668671, 68.645, 15, 0, 0, "Sun Dec 27 2009 11:03:27"));
	track[0].push(new TrackPoint(36.209625, 139.668640, 68.682, 25, 0, 0, "Sun Dec 27 2009 11:04:23"));
	track[0].push(new TrackPoint(36.209499, 139.668289, 68.720, 35, 0, 0, "Sun Dec 27 2009 11:04:44"));
	track[0].push(new TrackPoint(36.208847, 139.667816, 68.804, 29, 0, 0, "Sun Dec 27 2009 11:05:41"));
	track[0].push(new TrackPoint(36.208652, 139.668060, 68.949, 11, 0, 0, "Sun Dec 27 2009 11:08:47"));
	track[0].push(new TrackPoint(36.208614, 139.667572, 68.996, 13, 0, 0, "Sun Dec 27 2009 11:08:54"));
	track[0].push(new TrackPoint(36.207684, 139.666779, 69.124, 17, 0, 0, "Sun Dec 27 2009 11:09:11"));
	track[0].push(new TrackPoint(36.207134, 139.667221, 69.208, 14, 0, 0, "Sun Dec 27 2009 11:09:47"));
	track[0].push(new TrackPoint(36.211620, 139.662323, 69.879, 25, 0, 0, "Sun Dec 27 2009 11:10:35"));
	track[0].push(new TrackPoint(36.211269, 139.662216, 70.214, 17, 0, 0, "Sun Dec 27 2009 11:16:25"));
	track[0].push(new TrackPoint(36.211090, 139.662491, 70.305, 22, 0, 0, "Sun Dec 27 2009 11:17:40"));
	track[0].push(new TrackPoint(36.210670, 139.662292, 70.372, 27, 0, 0, "Sun Dec 27 2009 11:19:02"));
	track[0].push(new TrackPoint(36.210892, 139.662369, 70.400, 40, 0, 0, "Sun Dec 27 2009 11:20:44"));
	track[0].push(new TrackPoint(36.210709, 139.662262, 70.444, 26, 0, 0, "Sun Dec 27 2009 11:21:38"));
	track[0].push(new TrackPoint(36.210857, 139.662567, 70.477, 27, 0, 0, "Sun Dec 27 2009 11:24:16"));
	track[0].push(new TrackPoint(36.210728, 139.662460, 70.494, 27, 0, 0, "Sun Dec 27 2009 11:24:23"));
	track[0].push(new TrackPoint(36.211040, 139.662491, 70.530, 29, 0, 0, "Sun Dec 27 2009 11:25:13"));
	track[0].push(new TrackPoint(36.210835, 139.662537, 70.582, 35, 0, 0, "Sun Dec 27 2009 11:28:13"));
	track[0].push(new TrackPoint(36.210999, 139.662643, 70.602, 31, 0, 0, "Sun Dec 27 2009 11:28:35"));
	track[0].push(new TrackPoint(36.211647, 139.662064, 70.698, 35, 0, 0, "Sun Dec 27 2009 11:28:54"));
	track[0].push(new TrackPoint(36.211700, 139.662338, 70.729, 32, 0, 0, "Sun Dec 27 2009 11:29:09"));
	track[0].push(new TrackPoint(36.213032, 139.661026, 70.918, 26, 0, 0, "Sun Dec 27 2009 11:29:23"));
	track[0].push(new TrackPoint(36.216976, 139.658340, 71.418, 17, 0, 0, "Sun Dec 27 2009 11:29:54"));
	track[0].push(new TrackPoint(36.220615, 139.656357, 71.861, 22, 0, 0, "Sun Dec 27 2009 11:30:22"));
	track[0].push(new TrackPoint(36.222736, 139.656799, 72.101, 19, 0, 0, "Sun Dec 27 2009 11:30:39"));
	track[0].push(new TrackPoint(36.224018, 139.656494, 72.247, 17, 0, 0, "Sun Dec 27 2009 11:30:51"));
	track[0].push(new TrackPoint(36.226162, 139.654984, 72.523, 21, 0, 0, "Sun Dec 27 2009 11:31:14"));
	track[0].push(new TrackPoint(36.226940, 139.654999, 72.610, 15, 0, 0, "Sun Dec 27 2009 11:31:21"));
	track[0].push(new TrackPoint(36.228210, 139.653839, 72.787, 16, 0, 0, "Sun Dec 27 2009 11:31:34"));
	track[0].push(new TrackPoint(36.228432, 139.653152, 72.854, 19, 0, 0, "Sun Dec 27 2009 11:31:40"));
	track[0].push(new TrackPoint(36.229469, 139.652557, 72.982, 20, 0, 0, "Sun Dec 27 2009 11:31:49"));
	track[0].push(new TrackPoint(36.230633, 139.652390, 73.112, 25, 0, 0, "Sun Dec 27 2009 11:31:57"));
	track[0].push(new TrackPoint(36.231953, 139.652817, 73.264, 28, 0, 0, "Sun Dec 27 2009 11:32:06"));
	track[0].push(new TrackPoint(36.235176, 139.654144, 73.643, 30, 0, 0, "Sun Dec 27 2009 11:32:30"));
	track[0].push(new TrackPoint(36.237774, 139.652573, 73.966, 27, 0, 0, "Sun Dec 27 2009 11:32:54"));
	track[0].push(new TrackPoint(36.239418, 139.650681, 74.216, 23, 0, 0, "Sun Dec 27 2009 11:33:10"));
	track[0].push(new TrackPoint(36.245731, 139.648483, 74.945, 28, 0, 0, "Sun Dec 27 2009 11:33:52"));
	track[0].push(new TrackPoint(36.246571, 139.648392, 75.038, 28, 0, 0, "Sun Dec 27 2009 11:33:58"));
	track[0].push(new TrackPoint(36.248154, 139.648605, 75.216, 29, 0, 0, "Sun Dec 27 2009 11:34:10"));
	track[0].push(new TrackPoint(36.250767, 139.646225, 75.577, 19, 0, 0, "Sun Dec 27 2009 11:34:41"));
	track[0].push(new TrackPoint(36.253483, 139.648010, 75.919, 21, 0, 0, "Sun Dec 27 2009 11:35:10"));
	track[0].push(new TrackPoint(36.255531, 139.649857, 76.201, 29, 0, 0, "Sun Dec 27 2009 11:35:36"));
	track[0].push(new TrackPoint(36.257812, 139.650269, 76.457, 21, 0, 0, "Sun Dec 27 2009 11:35:59"));
	track[0].push(new TrackPoint(36.259724, 139.650238, 76.669, 15, 0, 0, "Sun Dec 27 2009 11:36:18"));
	track[0].push(new TrackPoint(36.261971, 139.649826, 76.921, 26, 0, 0, "Sun Dec 27 2009 11:37:08"));
	track[0].push(new TrackPoint(36.267921, 139.650238, 77.583, 17, 0, 0, "Sun Dec 27 2009 11:38:09"));
	track[0].push(new TrackPoint(36.269333, 139.650192, 77.741, 11, 0, 0, "Sun Dec 27 2009 11:38:20"));
	track[0].push(new TrackPoint(36.270195, 139.651688, 77.907, 15, 0, 0, "Sun Dec 27 2009 11:38:34"));
	track[0].push(new TrackPoint(36.271996, 139.652847, 78.134, 28, 0, 0, "Sun Dec 27 2009 11:39:04"));
	track[0].push(new TrackPoint(36.272900, 139.654068, 78.283, 20, 0, 0, "Sun Dec 27 2009 11:39:17"));
	track[0].push(new TrackPoint(36.274281, 139.655014, 78.459, 17, 0, 0, "Sun Dec 27 2009 11:39:31"));
	track[0].push(new TrackPoint(36.275948, 139.656738, 78.700, 21, 0, 0, "Sun Dec 27 2009 11:40:08"));
	track[0].push(new TrackPoint(36.277740, 139.658264, 78.942, 20, 0, 0, "Sun Dec 27 2009 11:40:29"));
	track[0].push(new TrackPoint(36.279915, 139.660767, 79.272, 18, 0, 0, "Sun Dec 27 2009 11:40:49"));
	track[0].push(new TrackPoint(36.282066, 139.663712, 79.629, 23, 0, 0, "Sun Dec 27 2009 11:41:14"));
	track[0].push(new TrackPoint(36.285381, 139.665756, 80.040, 26, 0, 0, "Sun Dec 27 2009 11:42:03"));
	track[0].push(new TrackPoint(36.287224, 139.666428, 80.253, 29, 0, 0, "Sun Dec 27 2009 11:42:14"));
	track[0].push(new TrackPoint(36.288982, 139.666656, 80.450, 27, 0, 0, "Sun Dec 27 2009 11:42:25"));
	track[0].push(new TrackPoint(36.293507, 139.665970, 80.956, 24, 0, 0, "Sun Dec 27 2009 11:42:52"));
	track[0].push(new TrackPoint(36.294765, 139.666168, 81.097, 25, 0, 0, "Sun Dec 27 2009 11:43:00"));
	track[0].push(new TrackPoint(36.299698, 139.669495, 81.721, 30, 0, 0, "Sun Dec 27 2009 11:43:34"));
	track[0].push(new TrackPoint(36.305176, 139.670868, 82.342, 33, 0, 0, "Sun Dec 27 2009 11:44:07"));
	track[0].push(new TrackPoint(36.308647, 139.672134, 82.743, 42, 0, 0, "Sun Dec 27 2009 11:44:29"));
	track[0].push(new TrackPoint(36.312157, 139.672699, 83.137, 36, 0, 0, "Sun Dec 27 2009 11:44:53"));
	track[0].push(new TrackPoint(36.313347, 139.673309, 83.302, 41, 0, 0, "Sun Dec 27 2009 11:45:58"));
	track[0].push(new TrackPoint(36.314396, 139.665207, 84.039, 38, 0, 0, "Sun Dec 27 2009 11:46:40"));
	track[0].push(new TrackPoint(36.314495, 139.662567, 84.277, 40, 0, 0, "Sun Dec 27 2009 11:46:52"));
	track[0].push(new TrackPoint(36.314297, 139.659912, 84.516, 40, 0, 0, "Sun Dec 27 2009 11:47:05"));
	track[0].push(new TrackPoint(36.313736, 139.657242, 84.764, 39, 0, 0, "Sun Dec 27 2009 11:47:20"));
	track[0].push(new TrackPoint(36.308941, 139.642227, 86.214, 32, 0, 0, "Sun Dec 27 2009 11:48:44"));
	track[0].push(new TrackPoint(36.307381, 139.639694, 86.501, 33, 0, 0, "Sun Dec 27 2009 11:48:57"));
	track[0].push(new TrackPoint(36.300430, 139.633041, 87.477, 26, 0, 0, "Sun Dec 27 2009 11:49:39"));
	track[0].push(new TrackPoint(36.298450, 139.630554, 87.790, 35, 0, 0, "Sun Dec 27 2009 11:49:54"));
	track[0].push(new TrackPoint(36.297371, 139.628647, 87.999, 32, 0, 0, "Sun Dec 27 2009 11:50:06"));
	track[0].push(new TrackPoint(36.296806, 139.627151, 88.148, 32, 0, 0, "Sun Dec 27 2009 11:50:18"));
	track[0].push(new TrackPoint(36.296848, 139.626953, 88.166, 29, 0, 0, "Sun Dec 27 2009 11:50:21"));
	track[0].push(new TrackPoint(36.297287, 139.626633, 88.225, 28, 0, 0, "Sun Dec 27 2009 11:50:30"));
	track[0].push(new TrackPoint(36.297153, 139.625977, 88.285, 28, 0, 0, "Sun Dec 27 2009 11:50:39"));
	track[0].push(new TrackPoint(36.296871, 139.625809, 88.327, 21, 0, 0, "Sun Dec 27 2009 11:53:09"));
	track[0].push(new TrackPoint(36.296799, 139.624924, 88.420, 18, 0, 0, "Sun Dec 27 2009 11:55:22"));
	track[0].push(new TrackPoint(36.296993, 139.625534, 88.592, 21, 0, 0, "Sun Dec 27 2009 12:01:06"));
	track[0].push(new TrackPoint(36.296673, 139.625656, 88.701, 19, 0, 0, "Sun Dec 27 2009 12:05:33"));
	track[0].push(new TrackPoint(36.297112, 139.625916, 88.789, 26, 0, 0, "Sun Dec 27 2009 12:09:40"));
	track[0].push(new TrackPoint(36.297302, 139.626770, 88.870, 25, 0, 0, "Sun Dec 27 2009 12:09:53"));
	track[0].push(new TrackPoint(36.296852, 139.626984, 88.924, 21, 0, 0, "Sun Dec 27 2009 12:10:23"));
	track[0].push(new TrackPoint(36.296455, 139.626053, 89.020, 17, 0, 0, "Sun Dec 27 2009 12:10:32"));
	track[0].push(new TrackPoint(36.295918, 139.623871, 89.224, 14, 0, 0, "Sun Dec 27 2009 12:10:43"));
	track[0].push(new TrackPoint(36.295582, 139.621262, 89.462, 16, 0, 0, "Sun Dec 27 2009 12:10:55"));
	track[0].push(new TrackPoint(36.295246, 139.613037, 90.201, 11, 0, 0, "Sun Dec 27 2009 12:11:30"));
	track[0].push(new TrackPoint(36.295410, 139.610764, 90.406, 13, 0, 0, "Sun Dec 27 2009 12:11:40"));
	track[0].push(new TrackPoint(36.296284, 139.604630, 90.966, 17, 0, 0, "Sun Dec 27 2009 12:12:09"));
	track[0].push(new TrackPoint(36.296326, 139.602631, 91.146, 17, 0, 0, "Sun Dec 27 2009 12:12:18"));
	track[0].push(new TrackPoint(36.295921, 139.599380, 91.441, 17, 0, 0, "Sun Dec 27 2009 12:12:33"));
	track[0].push(new TrackPoint(36.295490, 139.597717, 91.598, 20, 0, 0, "Sun Dec 27 2009 12:12:41"));
	track[0].push(new TrackPoint(36.293335, 139.592209, 92.148, 18, 0, 0, "Sun Dec 27 2009 12:13:08"));
	track[0].push(new TrackPoint(36.292728, 139.590210, 92.340, 16, 0, 0, "Sun Dec 27 2009 12:13:17"));
	track[0].push(new TrackPoint(36.287815, 139.565414, 94.633, 13, 0, 0, "Sun Dec 27 2009 12:15:31"));
	track[0].push(new TrackPoint(36.287766, 139.563248, 94.828, 20, 0, 0, "Sun Dec 27 2009 12:15:40"));
	track[0].push(new TrackPoint(36.289543, 139.549255, 96.100, 25, 0, 0, "Sun Dec 27 2009 12:16:38"));
	track[0].push(new TrackPoint(36.290108, 139.546875, 96.328, 17, 0, 0, "Sun Dec 27 2009 12:17:15"));
	track[0].push(new TrackPoint(36.293289, 139.536438, 97.334, 31, 0, 0, "Sun Dec 27 2009 12:18:24"));
	track[0].push(new TrackPoint(36.293545, 139.534683, 97.494, 27, 0, 0, "Sun Dec 27 2009 12:18:31"));
	track[0].push(new TrackPoint(36.293385, 139.532196, 97.719, 20, 0, 0, "Sun Dec 27 2009 12:18:41"));
	track[0].push(new TrackPoint(36.292648, 139.529877, 97.943, 19, 0, 0, "Sun Dec 27 2009 12:18:51"));
	track[0].push(new TrackPoint(36.291443, 139.527878, 98.167, 22, 0, 0, "Sun Dec 27 2009 12:19:01"));
	track[0].push(new TrackPoint(36.286324, 139.520950, 99.010, 17, 0, 0, "Sun Dec 27 2009 12:19:38"));
	track[0].push(new TrackPoint(36.285362, 139.518814, 99.230, 15, 0, 0, "Sun Dec 27 2009 12:19:48"));
	track[0].push(new TrackPoint(36.284916, 139.516418, 99.452, 14, 0, 0, "Sun Dec 27 2009 12:19:58"));
	track[0].push(new TrackPoint(36.284943, 139.514725, 99.604, 16, 0, 0, "Sun Dec 27 2009 12:20:05"));
	track[0].push(new TrackPoint(36.285240, 139.512909, 99.770, 19, 0, 0, "Sun Dec 27 2009 12:20:13"));
	track[0].push(new TrackPoint(36.293316, 139.487335, 102.236, 34, 0, 0, "Sun Dec 27 2009 12:22:05"));
	track[0].push(new TrackPoint(36.294289, 139.484726, 102.494, 31, 0, 0, "Sun Dec 27 2009 12:22:17"));
	track[0].push(new TrackPoint(36.295216, 139.482971, 102.683, 26, 0, 0, "Sun Dec 27 2009 12:22:26"));
	track[0].push(new TrackPoint(36.304562, 139.470764, 104.192, 32, 0, 0, "Sun Dec 27 2009 12:24:49"));
	track[0].push(new TrackPoint(36.306053, 139.468170, 104.478, 33, 0, 0, "Sun Dec 27 2009 12:25:05"));
	track[0].push(new TrackPoint(36.307201, 139.465088, 104.783, 30, 0, 0, "Sun Dec 27 2009 12:26:40"));
	track[0].push(new TrackPoint(36.308834, 139.456253, 105.597, 35, 0, 0, "Sun Dec 27 2009 12:27:17"));
	track[0].push(new TrackPoint(36.309319, 139.446030, 106.518, 35, 0, 0, "Sun Dec 27 2009 12:27:57"));
	track[0].push(new TrackPoint(36.309959, 139.442886, 106.809, 29, 0, 0, "Sun Dec 27 2009 12:28:10"));
	track[0].push(new TrackPoint(36.313839, 139.429642, 108.074, 36, 0, 0, "Sun Dec 27 2009 12:29:31"));
	track[0].push(new TrackPoint(36.316940, 139.421280, 108.901, 45, 0, 0, "Sun Dec 27 2009 12:30:16"));
	track[0].push(new TrackPoint(36.322247, 139.413132, 109.840, 50, 0, 0, "Sun Dec 27 2009 12:31:02"));
	track[0].push(new TrackPoint(36.328377, 139.400040, 111.199, 60, 0, 0, "Sun Dec 27 2009 12:32:19"));
	track[0].push(new TrackPoint(36.330162, 139.397186, 111.522, 59, 0, 0, "Sun Dec 27 2009 12:32:39"));
	track[0].push(new TrackPoint(36.331463, 139.395447, 111.735, 53, 0, 0, "Sun Dec 27 2009 12:33:01"));
	track[0].push(new TrackPoint(36.331470, 139.395218, 111.756, 52, 0, 0, "Sun Dec 27 2009 12:33:06"));
	track[0].push(new TrackPoint(36.330173, 139.393845, 111.946, 39, 0, 0, "Sun Dec 27 2009 12:34:00"));
	track[0].push(new TrackPoint(36.327637, 139.391907, 112.277, 39, 0, 0, "Sun Dec 27 2009 12:34:54"));
	track[0].push(new TrackPoint(36.324429, 139.390930, 112.645, 38, 0, 0, "Sun Dec 27 2009 12:35:12"));
	track[0].push(new TrackPoint(36.322929, 139.390961, 112.812, 36, 0, 0, "Sun Dec 27 2009 12:35:20"));
	track[0].push(new TrackPoint(36.316711, 139.392014, 113.508, 39, 0, 0, "Sun Dec 27 2009 12:35:53"));
	track[0].push(new TrackPoint(36.298851, 139.399857, 115.612, 34, 0, 0, "Sun Dec 27 2009 12:39:43"));
	track[0].push(new TrackPoint(36.295258, 139.402084, 116.058, 33, 0, 0, "Sun Dec 27 2009 12:40:05"));
	track[0].push(new TrackPoint(36.289722, 139.406693, 116.799, 30, 0, 0, "Sun Dec 27 2009 12:40:40"));
	track[0].push(new TrackPoint(36.288395, 139.408066, 116.991, 30, 0, 0, "Sun Dec 27 2009 12:40:50"));
	track[0].push(new TrackPoint(36.286980, 139.410370, 117.252, 29, 0, 0, "Sun Dec 27 2009 12:41:03"));
	track[0].push(new TrackPoint(36.284370, 139.416870, 117.903, 28, 0, 0, "Sun Dec 27 2009 12:41:39"));
	track[0].push(new TrackPoint(36.283340, 139.418793, 118.111, 28, 0, 0, "Sun Dec 27 2009 12:41:51"));
	track[0].push(new TrackPoint(36.282131, 139.420303, 118.301, 24, 0, 0, "Sun Dec 27 2009 12:42:03"));
	track[0].push(new TrackPoint(36.278603, 139.423660, 118.796, 27, 0, 0, "Sun Dec 27 2009 12:42:31"));
	track[0].push(new TrackPoint(36.277172, 139.426041, 119.063, 26, 0, 0, "Sun Dec 27 2009 12:43:26"));
	track[0].push(new TrackPoint(36.276428, 139.428024, 119.259, 26, 0, 0, "Sun Dec 27 2009 12:43:39"));
	track[0].push(new TrackPoint(36.274372, 139.434586, 119.892, 25, 0, 0, "Sun Dec 27 2009 12:44:36"));
	track[0].push(new TrackPoint(36.272350, 139.438599, 120.316, 25, 0, 0, "Sun Dec 27 2009 12:45:00"));
	track[0].push(new TrackPoint(36.270840, 139.441284, 120.611, 33, 0, 0, "Sun Dec 27 2009 12:45:27"));
	track[0].push(new TrackPoint(36.269226, 139.446091, 121.079, 31, 0, 0, "Sun Dec 27 2009 12:46:26"));
	track[0].push(new TrackPoint(36.268749, 139.450165, 121.449, 25, 0, 0, "Sun Dec 27 2009 12:46:48"));
	track[0].push(new TrackPoint(36.269543, 139.457916, 122.151, 24, 0, 0, "Sun Dec 27 2009 12:48:09"));
	track[0].push(new TrackPoint(36.269894, 139.465378, 122.823, 22, 0, 0, "Sun Dec 27 2009 12:48:56"));
	track[0].push(new TrackPoint(36.270119, 139.485718, 124.651, 18, 0, 0, "Sun Dec 27 2009 12:51:27"));
	track[0].push(new TrackPoint(36.270020, 139.491013, 125.127, 21, 0, 0, "Sun Dec 27 2009 12:52:10"));
	track[0].push(new TrackPoint(36.270645, 139.499802, 125.920, 21, 0, 0, "Sun Dec 27 2009 12:53:17"));
	track[0].push(new TrackPoint(36.270451, 139.502121, 126.130, 21, 0, 0, "Sun Dec 27 2009 12:53:39"));
	track[0].push(new TrackPoint(36.269897, 139.505997, 126.484, 19, 0, 0, "Sun Dec 27 2009 12:54:12"));
	track[0].push(new TrackPoint(36.269539, 139.506943, 126.578, 21, 0, 0, "Sun Dec 27 2009 12:54:19"));
	track[0].push(new TrackPoint(36.267994, 139.509354, 126.854, 25, 0, 0, "Sun Dec 27 2009 12:54:41"));
	track[0].push(new TrackPoint(36.266129, 139.511322, 127.127, 23, 0, 0, "Sun Dec 27 2009 12:55:04"));
	track[0].push(new TrackPoint(36.259682, 139.516556, 127.983, 23, 0, 0, "Sun Dec 27 2009 12:57:01"));
	track[0].push(new TrackPoint(36.256405, 139.519943, 128.458, 18, 0, 0, "Sun Dec 27 2009 12:58:06"));
	track[0].push(new TrackPoint(36.255238, 139.520264, 128.591, 22, 0, 0, "Sun Dec 27 2009 12:58:16"));
	track[0].push(new TrackPoint(36.245117, 139.520782, 129.715, 25, 0, 0, "Sun Dec 27 2009 12:59:15"));
	track[0].push(new TrackPoint(36.236561, 139.520035, 130.667, 24, 0, 0, "Sun Dec 27 2009 13:01:37"));
	track[0].push(new TrackPoint(36.229294, 139.520401, 131.467, 19, 0, 0, "Sun Dec 27 2009 13:03:36"));
	track[0].push(new TrackPoint(36.226849, 139.519226, 131.758, 21, 0, 0, "Sun Dec 27 2009 13:04:21"));
	track[0].push(new TrackPoint(36.225109, 139.518784, 131.956, 23, 0, 0, "Sun Dec 27 2009 13:04:37"));
	track[0].push(new TrackPoint(36.222530, 139.519455, 132.248, 30, 0, 0, "Sun Dec 27 2009 13:04:59"));
	track[0].push(new TrackPoint(36.219845, 139.520554, 132.562, 33, 0, 0, "Sun Dec 27 2009 13:05:24"));
	track[0].push(new TrackPoint(36.217869, 139.520844, 132.784, 31, 0, 0, "Sun Dec 27 2009 13:05:41"));
	track[0].push(new TrackPoint(36.206329, 139.516953, 134.112, 35, 0, 0, "Sun Dec 27 2009 13:07:49"));
	track[0].push(new TrackPoint(36.198181, 139.513168, 135.078, 32, 0, 0, "Sun Dec 27 2009 13:10:12"));
	track[0].push(new TrackPoint(36.196014, 139.512558, 135.324, 40, 0, 0, "Sun Dec 27 2009 13:10:28"));
	track[0].push(new TrackPoint(36.187950, 139.509613, 136.259, 32, 0, 0, "Sun Dec 27 2009 13:12:28"));
	track[0].push(new TrackPoint(36.188034, 139.509796, 136.281, 31, 0, 0, "Sun Dec 27 2009 13:12:33"));
	track[0].push(new TrackPoint(36.188911, 139.510132, 136.383, 30, 0, 0, "Sun Dec 27 2009 13:12:45"));
	track[0].push(new TrackPoint(36.188808, 139.510590, 136.431, 31, 0, 0, "Sun Dec 27 2009 13:12:54"));
	track[0].push(new TrackPoint(36.189068, 139.510605, 136.593, 28, 0, 0, "Sun Dec 27 2009 13:16:51"));
	track[0].push(new TrackPoint(36.188988, 139.510437, 136.610, 28, 0, 0, "Sun Dec 27 2009 13:17:21"));
	track[0].push(new TrackPoint(36.188892, 139.510712, 136.654, 29, 0, 0, "Sun Dec 27 2009 13:18:07"));
	track[0].push(new TrackPoint(36.188782, 139.510635, 136.668, 28, 0, 0, "Sun Dec 27 2009 13:18:20"));
	track[0].push(new TrackPoint(36.189060, 139.510422, 136.785, 26, 0, 0, "Sun Dec 27 2009 13:20:08"));
	track[0].push(new TrackPoint(36.188774, 139.510925, 136.840, 29, 0, 0, "Sun Dec 27 2009 13:20:57"));
	track[0].push(new TrackPoint(36.188808, 139.510666, 136.864, 28, 0, 0, "Sun Dec 27 2009 13:21:51"));
	track[0].push(new TrackPoint(36.188686, 139.510696, 136.912, 28, 0, 0, "Sun Dec 27 2009 13:23:19"));
	track[0].push(new TrackPoint(36.188683, 139.510544, 136.939, 28, 0, 0, "Sun Dec 27 2009 13:24:26"));
	track[0].push(new TrackPoint(36.188511, 139.510559, 136.939, 31, 0, 0, "Sun Dec 27 2009 13:31:26"));
	track[0].push(new TrackPoint(36.187824, 139.510162, 137.038, 26, 0, 0, "Sun Dec 27 2009 13:36:50"));
	track[0].push(new TrackPoint(36.187832, 139.509445, 137.104, 26, 0, 0, "Sun Dec 27 2009 13:37:02"));
	track[0].push(new TrackPoint(36.185741, 139.508804, 137.344, 18, 0, 0, "Sun Dec 27 2009 13:37:20"));
	track[0].push(new TrackPoint(36.184757, 139.508713, 137.453, 15, 0, 0, "Sun Dec 27 2009 13:37:45"));
	track[0].push(new TrackPoint(36.183727, 139.508865, 137.568, 18, 0, 0, "Sun Dec 27 2009 13:37:55"));
	track[0].push(new TrackPoint(36.182766, 139.509262, 137.681, 17, 0, 0, "Sun Dec 27 2009 13:38:02"));
	track[0].push(new TrackPoint(36.181625, 139.510178, 137.832, 14, 0, 0, "Sun Dec 27 2009 13:38:11"));
	track[0].push(new TrackPoint(36.177349, 139.515503, 138.506, 18, 0, 0, "Sun Dec 27 2009 13:38:53"));
	track[0].push(new TrackPoint(36.172314, 139.522079, 139.320, 19, 0, 0, "Sun Dec 27 2009 13:40:02"));
	track[0].push(new TrackPoint(36.170166, 139.523956, 139.613, 16, 0, 0, "Sun Dec 27 2009 13:40:23"));
	track[0].push(new TrackPoint(36.157944, 139.531662, 141.136, 20, 0, 0, "Sun Dec 27 2009 13:41:48"));
	track[0].push(new TrackPoint(36.147923, 139.540817, 142.521, 22, 0, 0, "Sun Dec 27 2009 13:43:44"));
	track[0].push(new TrackPoint(36.146133, 139.543137, 142.809, 22, 0, 0, "Sun Dec 27 2009 13:43:58"));
	track[0].push(new TrackPoint(36.145348, 139.544617, 142.968, 22, 0, 0, "Sun Dec 27 2009 13:44:06"));
	track[0].push(new TrackPoint(36.144745, 139.546310, 143.135, 24, 0, 0, "Sun Dec 27 2009 13:44:30"));
	track[0].push(new TrackPoint(36.142864, 139.554047, 143.863, 14, 0, 0, "Sun Dec 27 2009 13:45:57"));
	track[0].push(new TrackPoint(36.141994, 139.555267, 144.010, 13, 0, 0, "Sun Dec 27 2009 13:46:06"));
	track[0].push(new TrackPoint(36.140438, 139.556244, 144.205, 13, 0, 0, "Sun Dec 27 2009 13:46:18"));
	track[0].push(new TrackPoint(36.138130, 139.556793, 144.465, 14, 0, 0, "Sun Dec 27 2009 13:46:34"));
	track[0].push(new TrackPoint(36.135166, 139.556854, 144.794, 16, 0, 0, "Sun Dec 27 2009 13:46:52"));
	track[0].push(new TrackPoint(36.134289, 139.557053, 144.893, 17, 0, 0, "Sun Dec 27 2009 13:46:57"));
	track[0].push(new TrackPoint(36.129974, 139.558731, 145.396, 19, 0, 0, "Sun Dec 27 2009 13:47:22"));
	track[0].push(new TrackPoint(36.126472, 139.558167, 145.789, 19, 0, 0, "Sun Dec 27 2009 13:47:42"));
	track[0].push(new TrackPoint(36.122665, 139.558334, 146.211, 19, 0, 0, "Sun Dec 27 2009 13:48:04"));
	track[0].push(new TrackPoint(36.118328, 139.558212, 146.694, 21, 0, 0, "Sun Dec 27 2009 13:48:27"));
	track[0].push(new TrackPoint(36.116802, 139.558945, 146.876, 21, 0, 0, "Sun Dec 27 2009 13:48:36"));
	track[0].push(new TrackPoint(36.112415, 139.563934, 147.539, 23, 0, 0, "Sun Dec 27 2009 13:49:45"));
	track[0].push(new TrackPoint(36.103367, 139.570053, 148.685, 21, 0, 0, "Sun Dec 27 2009 13:51:25"));
	track[0].push(new TrackPoint(36.102261, 139.571411, 148.858, 21, 0, 0, "Sun Dec 27 2009 13:51:33"));
	track[0].push(new TrackPoint(36.096649, 139.580505, 149.887, 15, 0, 0, "Sun Dec 27 2009 13:52:37"));
	track[0].push(new TrackPoint(36.095699, 139.581726, 150.039, 13, 0, 0, "Sun Dec 27 2009 13:52:47"));
	track[0].push(new TrackPoint(36.094265, 139.582733, 150.223, 14, 0, 0, "Sun Dec 27 2009 13:52:57"));
	track[0].push(new TrackPoint(36.091206, 139.583557, 150.571, 17, 0, 0, "Sun Dec 27 2009 13:53:39"));
	track[0].push(new TrackPoint(36.089165, 139.584320, 150.808, 16, 0, 0, "Sun Dec 27 2009 13:53:51"));
	track[0].push(new TrackPoint(36.087635, 139.585403, 151.004, 14, 0, 0, "Sun Dec 27 2009 13:54:01"));
	track[0].push(new TrackPoint(36.086441, 139.587341, 151.224, 16, 0, 0, "Sun Dec 27 2009 13:54:43"));
	track[0].push(new TrackPoint(36.075466, 139.613205, 153.853, 14, 0, 0, "Sun Dec 27 2009 13:57:40"));
	track[0].push(new TrackPoint(36.073513, 139.616455, 154.218, 11, 0, 0, "Sun Dec 27 2009 13:57:58"));
	track[0].push(new TrackPoint(36.060215, 139.627991, 156.023, 10, 0, 0, "Sun Dec 27 2009 14:00:43"));
	track[0].push(new TrackPoint(36.058090, 139.629227, 156.284, 12, 0, 0, "Sun Dec 27 2009 14:00:56"));
	track[0].push(new TrackPoint(36.056709, 139.629532, 156.440, 13, 0, 0, "Sun Dec 27 2009 14:01:04"));
	track[0].push(new TrackPoint(36.054535, 139.629364, 156.683, 13, 0, 0, "Sun Dec 27 2009 14:01:16"));
	track[0].push(new TrackPoint(36.046192, 139.625900, 157.660, 14, 0, 0, "Sun Dec 27 2009 14:02:52"));
	track[0].push(new TrackPoint(36.044708, 139.625977, 157.826, 10, 0, 0, "Sun Dec 27 2009 14:03:02"));
	track[0].push(new TrackPoint(36.036415, 139.628677, 158.778, 14, 0, 0, "Sun Dec 27 2009 14:03:52"));
	track[0].push(new TrackPoint(36.031956, 139.629349, 159.277, 19, 0, 0, "Sun Dec 27 2009 14:04:15"));
	track[0].push(new TrackPoint(36.024971, 139.633179, 160.126, 21, 0, 0, "Sun Dec 27 2009 14:06:01"));
	track[0].push(new TrackPoint(36.019737, 139.635193, 160.735, 21, 0, 0, "Sun Dec 27 2009 14:06:31"));
	track[0].push(new TrackPoint(36.018528, 139.635910, 160.884, 24, 0, 0, "Sun Dec 27 2009 14:06:40"));
	track[0].push(new TrackPoint(36.016624, 139.637375, 161.133, 24, 0, 0, "Sun Dec 27 2009 14:06:53"));
	track[0].push(new TrackPoint(36.015713, 139.637711, 161.239, 21, 0, 0, "Sun Dec 27 2009 14:06:58"));
	track[0].push(new TrackPoint(36.013138, 139.638138, 161.530, 28, 0, 0, "Sun Dec 27 2009 14:07:30"));
	track[0].push(new TrackPoint(36.011551, 139.639252, 161.734, 25, 0, 0, "Sun Dec 27 2009 14:07:43"));
	track[0].push(new TrackPoint(36.003735, 139.647522, 162.878, 16, 0, 0, "Sun Dec 27 2009 14:09:15"));
	track[0].push(new TrackPoint(36.002548, 139.648087, 163.020, 17, 0, 0, "Sun Dec 27 2009 14:09:22"));
	track[0].push(new TrackPoint(35.998230, 139.649109, 163.510, 15, 0, 0, "Sun Dec 27 2009 14:09:50"));
	track[0].push(new TrackPoint(35.991051, 139.653793, 164.411, 21, 0, 0, "Sun Dec 27 2009 14:10:35"));
	track[0].push(new TrackPoint(35.986786, 139.656326, 164.937, 13, 0, 0, "Sun Dec 27 2009 14:11:00"));
	track[0].push(new TrackPoint(35.981701, 139.658676, 165.542, 23, 0, 0, "Sun Dec 27 2009 14:12:49"));
	track[0].push(new TrackPoint(35.975452, 139.662628, 166.322, 27, 0, 0, "Sun Dec 27 2009 14:13:30"));
	track[0].push(new TrackPoint(35.974697, 139.663620, 166.445, 21, 0, 0, "Sun Dec 27 2009 14:13:36"));
	track[0].push(new TrackPoint(35.973557, 139.666519, 166.736, 26, 0, 0, "Sun Dec 27 2009 14:13:51"));
	track[0].push(new TrackPoint(35.972675, 139.667099, 166.848, 20, 0, 0, "Sun Dec 27 2009 14:13:58"));
	track[0].push(new TrackPoint(35.970055, 139.668045, 167.151, 14, 0, 0, "Sun Dec 27 2009 14:14:23"));
	track[0].push(new TrackPoint(35.968208, 139.668976, 167.372, 13, 0, 0, "Sun Dec 27 2009 14:14:40"));
	track[0].push(new TrackPoint(35.963589, 139.672134, 167.959, 21, 0, 0, "Sun Dec 27 2009 14:15:23"));
	track[0].push(new TrackPoint(35.959446, 139.675583, 168.515, 25, 0, 0, "Sun Dec 27 2009 14:16:02"));
	track[0].push(new TrackPoint(35.953827, 139.681290, 169.324, 13, 0, 0, "Sun Dec 27 2009 14:16:56"));
	track[0].push(new TrackPoint(35.952549, 139.682404, 169.497, 18, 0, 0, "Sun Dec 27 2009 14:17:08"));
	track[0].push(new TrackPoint(35.949841, 139.683853, 169.826, 15, 0, 0, "Sun Dec 27 2009 14:17:30"));
	track[0].push(new TrackPoint(35.944176, 139.685684, 170.476, 25, 0, 0, "Sun Dec 27 2009 14:18:43"));
	track[0].push(new TrackPoint(35.940636, 139.687729, 170.913, 43, 0, 0, "Sun Dec 27 2009 14:20:47"));
	track[0].push(new TrackPoint(35.938358, 139.690231, 171.252, 45, 0, 0, "Sun Dec 27 2009 14:21:06"));
	track[0].push(new TrackPoint(35.937992, 139.691025, 171.335, 45, 0, 0, "Sun Dec 27 2009 14:21:11"));
	track[0].push(new TrackPoint(35.937805, 139.692123, 171.436, 43, 0, 0, "Sun Dec 27 2009 14:21:17"));
	track[0].push(new TrackPoint(35.937256, 139.692764, 171.522, 37, 0, 0, "Sun Dec 27 2009 14:21:22"));
	track[0].push(new TrackPoint(35.935413, 139.693130, 171.729, 28, 0, 0, "Sun Dec 27 2009 14:21:33"));
	track[0].push(new TrackPoint(35.926861, 139.701553, 172.945, 18, 0, 0, "Sun Dec 27 2009 14:22:39"));
	track[0].push(new TrackPoint(35.925621, 139.702469, 173.106, 18, 0, 0, "Sun Dec 27 2009 14:22:48"));
	track[0].push(new TrackPoint(35.923725, 139.703506, 173.336, 17, 0, 0, "Sun Dec 27 2009 14:23:01"));
	track[0].push(new TrackPoint(35.910213, 139.709076, 174.919, 47, 0, 0, "Sun Dec 27 2009 14:24:41"));
	track[0].push(new TrackPoint(35.900391, 139.714844, 176.127, 23, 0, 0, "Sun Dec 27 2009 14:25:44"));
	track[0].push(new TrackPoint(35.898186, 139.716461, 176.412, 24, 0, 0, "Sun Dec 27 2009 14:25:57"));
	track[0].push(new TrackPoint(35.895580, 139.718842, 176.772, 28, 0, 0, "Sun Dec 27 2009 14:26:13"));
	track[0].push(new TrackPoint(35.893822, 139.721436, 177.079, 23, 0, 0, "Sun Dec 27 2009 14:26:28"));
	track[0].push(new TrackPoint(35.892818, 139.721893, 177.198, 20, 0, 0, "Sun Dec 27 2009 14:26:34"));
	track[0].push(new TrackPoint(35.891022, 139.722244, 177.400, 22, 0, 0, "Sun Dec 27 2009 14:26:44"));
	track[0].push(new TrackPoint(35.884006, 139.726257, 178.255, 23, 0, 0, "Sun Dec 27 2009 14:28:23"));
	track[0].push(new TrackPoint(35.883141, 139.726929, 178.368, 24, 0, 0, "Sun Dec 27 2009 14:28:29"));
	track[0].push(new TrackPoint(35.881569, 139.728806, 178.612, 25, 0, 0, "Sun Dec 27 2009 14:28:41"));
	track[0].push(new TrackPoint(35.877552, 139.732544, 179.171, 26, 0, 0, "Sun Dec 27 2009 14:29:06"));
	track[0].push(new TrackPoint(35.875919, 139.733841, 179.386, 19, 0, 0, "Sun Dec 27 2009 14:29:15"));
	track[0].push(new TrackPoint(35.874054, 139.734833, 179.612, 17, 0, 0, "Sun Dec 27 2009 14:29:25"));
	track[0].push(new TrackPoint(35.870560, 139.735153, 180.002, 21, 0, 0, "Sun Dec 27 2009 14:29:42"));
	track[0].push(new TrackPoint(35.862579, 139.735153, 180.887, 62, 0, 0, "Sun Dec 27 2009 14:30:25"));
	track[0].push(new TrackPoint(35.855732, 139.734436, 181.651, 48, 0, 0, "Sun Dec 27 2009 14:31:27"));
	track[0].push(new TrackPoint(35.851696, 139.734055, 182.110, 42, 0, 0, "Sun Dec 27 2009 14:33:09"));
	track[0].push(new TrackPoint(35.844017, 139.734329, 182.963, 27, 0, 0, "Sun Dec 27 2009 14:33:52"));
	track[0].push(new TrackPoint(35.839260, 139.734879, 183.493, 32, 0, 0, "Sun Dec 27 2009 14:34:18"));
	track[0].push(new TrackPoint(35.836716, 139.734222, 183.782, 18, 0, 0, "Sun Dec 27 2009 14:34:32"));
	track[0].push(new TrackPoint(35.835640, 139.734131, 183.902, 15, 0, 0, "Sun Dec 27 2009 14:34:40"));
	track[0].push(new TrackPoint(35.834465, 139.734390, 184.034, 14, 0, 0, "Sun Dec 27 2009 14:35:34"));
	track[0].push(new TrackPoint(35.828236, 139.737274, 184.774, 27, 0, 0, "Sun Dec 27 2009 14:36:30"));
	track[0].push(new TrackPoint(35.824295, 139.738007, 185.217, 17, 0, 0, "Sun Dec 27 2009 14:37:50"));
	track[0].push(new TrackPoint(35.823063, 139.738068, 185.353, 15, 0, 0, "Sun Dec 27 2009 14:38:05"));
	track[0].push(new TrackPoint(35.802967, 139.732651, 187.637, 7, 0, 0, "Sun Dec 27 2009 14:43:10"));
	track[0].push(new TrackPoint(35.799603, 139.729477, 188.109, 2, 0, 0, "Sun Dec 27 2009 14:44:49"));
	track[0].push(new TrackPoint(35.799198, 139.728394, 188.217, 5, 0, 0, "Sun Dec 27 2009 14:44:59"));
	track[0].push(new TrackPoint(35.797710, 139.726562, 188.452, 10, 0, 0, "Sun Dec 27 2009 14:45:32"));
	track[0].push(new TrackPoint(35.795055, 139.726746, 188.748, 17, 0, 0, "Sun Dec 27 2009 14:46:26"));
	track[0].push(new TrackPoint(35.793056, 139.725464, 189.000, 15, 0, 0, "Sun Dec 27 2009 14:46:50"));
	track[0].push(new TrackPoint(35.786568, 139.722641, 189.764, -4, 0, 0, "Sun Dec 27 2009 14:47:47"));
	track[0].push(new TrackPoint(35.786087, 139.721954, 189.846, -6, 0, 0, "Sun Dec 27 2009 14:47:54"));
	track[0].push(new TrackPoint(35.783810, 139.720749, 190.122, 2, 0, 0, "Sun Dec 27 2009 14:48:16"));
	track[0].push(new TrackPoint(35.783421, 139.721863, 190.237, 16, 0, 0, "Sun Dec 27 2009 14:48:44"));
	track[0].push(new TrackPoint(35.782166, 139.728165, 190.825, -1, 0, 0, "Sun Dec 27 2009 14:50:17"));
	track[0].push(new TrackPoint(35.781509, 139.729263, 190.949, -3, 0, 0, "Sun Dec 27 2009 14:50:24"));
	track[0].push(new TrackPoint(35.779320, 139.731674, 191.275, 1, 0, 0, "Sun Dec 27 2009 14:50:42"));
	track[0].push(new TrackPoint(35.776821, 139.733231, 191.586, 17, 0, 0, "Sun Dec 27 2009 14:51:39"));
	track[0].push(new TrackPoint(35.773022, 139.733093, 192.008, 21, 0, 0, "Sun Dec 27 2009 14:52:15"));
	track[0].push(new TrackPoint(35.769569, 139.734192, 192.405, 44, 0, 0, "Sun Dec 27 2009 14:53:30"));
	track[0].push(new TrackPoint(35.769131, 139.733154, 192.512, 37, 0, 0, "Sun Dec 27 2009 14:53:44"));
	track[0].push(new TrackPoint(35.766579, 139.724045, 193.384, 32, 0, 0, "Sun Dec 27 2009 14:55:09"));
	track[0].push(new TrackPoint(35.766243, 139.721191, 193.646, 31, 0, 0, "Sun Dec 27 2009 14:56:05"));
	track[0].push(new TrackPoint(35.765148, 139.719131, 193.868, 31, 0, 0, "Sun Dec 27 2009 14:56:28"));
	track[0].push(new TrackPoint(35.764492, 139.717239, 194.054, 27, 0, 0, "Sun Dec 27 2009 14:56:38"));
	track[0].push(new TrackPoint(35.762173, 139.708801, 194.860, 18, 0, 0, "Sun Dec 27 2009 14:57:21"));
	track[0].push(new TrackPoint(35.761520, 139.707275, 195.016, 22, 0, 0, "Sun Dec 27 2009 14:57:50"));
	track[0].push(new TrackPoint(35.761227, 139.706223, 195.118, 14, 0, 0, "Sun Dec 27 2009 14:59:03"));
	track[0].push(new TrackPoint(35.761189, 139.705963, 195.149, 5, 0, 0, "Sun Dec 27 2009 14:59:12"));
	track[0].push(new TrackPoint(35.753132, 139.708878, 196.082, -10, 0, 0, "Sun Dec 27 2009 15:00:05"));
	track[0].push(new TrackPoint(35.751728, 139.709091, 196.239, -12, 0, 0, "Sun Dec 27 2009 15:00:13"));
	track[0].push(new TrackPoint(35.750542, 139.708939, 196.377, -17, 0, 0, "Sun Dec 27 2009 15:00:21"));
	track[0].push(new TrackPoint(35.750320, 139.708618, 196.415, -19, 0, 0, "Sun Dec 27 2009 15:00:22"));
	track[0].push(new TrackPoint(35.749817, 139.708817, 196.476, -18, 0, 0, "Sun Dec 27 2009 15:00:27"));
	track[0].push(new TrackPoint(35.749031, 139.708481, 196.574, -9, 0, 0, "Sun Dec 27 2009 15:01:46"));
	track[0].push(new TrackPoint(35.743587, 139.708328, 197.179, 19, 0, 0, "Sun Dec 27 2009 15:03:16"));
	track[0].push(new TrackPoint(35.742077, 139.707748, 197.356, 20, 0, 0, "Sun Dec 27 2009 15:03:26"));
	track[0].push(new TrackPoint(35.737934, 139.704056, 197.928, 21, 0, 0, "Sun Dec 27 2009 15:04:13"));
	track[0].push(new TrackPoint(35.735256, 139.700897, 198.342, 23, 0, 0, "Sun Dec 27 2009 15:04:38"));
	track[0].push(new TrackPoint(35.733601, 139.699799, 198.551, 22, 0, 0, "Sun Dec 27 2009 15:04:50"));
	track[0].push(new TrackPoint(35.728615, 139.697327, 199.148, 22, 0, 0, "Sun Dec 27 2009 15:05:24"));
	track[0].push(new TrackPoint(35.724144, 139.694427, 199.709, 17, 0, 0, "Sun Dec 27 2009 15:05:55"));
	track[0].push(new TrackPoint(35.717648, 139.688110, 200.630, 15, 0, 0, "Sun Dec 27 2009 15:06:51"));
	track[0].push(new TrackPoint(35.713989, 139.686295, 201.068, 21, 0, 0, "Sun Dec 27 2009 15:07:23"));
	track[0].push(new TrackPoint(35.710407, 139.684814, 201.488, 38, 0, 0, "Sun Dec 27 2009 15:08:21"));
	track[0].push(new TrackPoint(35.710602, 139.685730, 201.575, 34, 0, 0, "Sun Dec 27 2009 15:08:33"));
	drawTrack(0, '#FF0000', 3, 0.70);

	maxSpeed[0] = 209.9;
}

function TrackPoint(lat, lon, dist, height, hr, cad, time) {
	this.latlng = new GLatLng(lat, lon);
	this.dist = parseFloat(dist);
	this.height = parseInt(height);
	this.hr = parseInt(hr);
	this.cad = parseInt(cad);
	this.time = new Date(time);
}

function drawTrack(n, color, width, opacity) {
	var tp = new Array();
	var i;
	for (i=0; i<track[n].length; i++) {
		tp.push(track[n][i].latlng);
	}
	map.addOverlay(new GPolyline(tp, color, width, opacity));
}

function drawRoute(color, width, opacity) {
	map.addOverlay(new GPolyline(route, color, width, opacity));
}

function drawWaypoints(showDate, showTime, showLocation, showHeight) {
	var i;
	for (i=0; i<waypoints.length; i++) {
		markers[i] = createMarker(waypoints[i], showDate, showTime, showLocation, showHeight);
		map.addOverlay(markers[i]);
	}
}

function initTimeLine() {
	var i;
	for (i=0; i<track.length; i++) {
		timeLine[i] = new TimeLine("timeLine" + i);
		var chartType = document.getElementById("chartType" + i);
		if (chartType) {
			drawTimeLine(i, chartType.value);
		}
	}
}

function setIcon() {
	var imgPath = "./images/";
	var i;
	for (i=0; i<9; i++) {
		markerIcon[i] = new GIcon();
		markerIcon[i].shadow = imgPath + "mm_20_shadow.png";
		markerIcon[i].iconSize = new GSize(12, 20);
		markerIcon[i].shadowSize = new GSize(22, 20);
		markerIcon[i].iconAnchor = new GPoint(6, 20);
		markerIcon[i].infoWindowAnchor = new GPoint(6, 1);
	}
	markerIcon[0].image = imgPath + "mm_20_red.png";
	markerIcon[1].image = imgPath + "mm_20_orange.png";
	markerIcon[2].image = imgPath + "mm_20_yellow.png";
	markerIcon[3].image = imgPath + "mm_20_green.png";
	markerIcon[4].image = imgPath + "mm_20_blue.png";
	markerIcon[5].image = imgPath + "mm_20_purple.png";
	markerIcon[6].image = imgPath + "mm_20_white.png";
	markerIcon[7].image = imgPath + "mm_20_gray.png";
	markerIcon[8].image = imgPath + "mm_20_black.png";
}

function MarkerInfo(lat, lon, height, date, time, icon, name, image, url, desc, largeImage) {
	this.point = new GLatLng(parseFloat(lat), parseFloat(lon));
	this.height = parseInt(height);
	this.date = date;
	this.time = time;
	this.icon = icon;
	this.name = name;
	this.image = image;
	this.url = url;
	this.desc = desc;
	this.largeImage = largeImage;
}
MarkerInfo.prototype.getHtml = MarkerInfo_getHtml;

function MarkerInfo_getHtml(showDate, showTime, showLocation, showHeight, imageLoaded) {
	var html;

	html = '<div class="marker">';
	html += '<div class="marker_subject">' + this.name + '</div>';
	if (showDate || showTime) {
		html += '<div class="marker_time">';
		if (showDate) {
			html += this.date;
		}
		if (showTime) {
			if (showDate) {
				html += '&nbsp;';
			}
			html += this.time;
		}
		html += '</div>';
	}
	if (showLocation || showHeight) {
		html += '<div class="marker_location">';
		if (showLocation) {
			var prefix_lat = (this.point.lat() >= 0) ? 'N' : 'S';
			var prefix_lon = (this.point.lng() >= 0) ? 'E' : 'W';
			html += '(' + prefix_lat + Math.abs(this.point.lat()).toFixed(6) + ', ' + prefix_lon + Math.abs(this.point.lng()).toFixed(6) + ')';
		}
		if (showHeight) {
			if (showLocation) {
				html += '&nbsp;';
			}
			html += '高度' + this.height + 'm';
		}
		html += '</div>';
	}
	if (this.image != '') {
		var ext = getFileExt(this.image);
		if (ext == 'jpg' || ext == 'gif' || ext == 'png') {
			if (imageLoaded) {
				if (this.largeImage != '') {
					html += '<div class="marker_image"><a href="' + this.largeImage + '" target="largeImage"><img src="' + this.image + '" /></a></div>';
				}
				else {
					html += '<div class="marker_image"><img src="' + this.image + '" /></div>';
				}
			}
		}
		else {
			html += '<div class="marker_url"><a href="' + this.image + '" target="refer">関連ファイル</a></div>';
		}
	}
	if (this.url != '') {
		html += '<div class="marker_url"><a href="' + this.url + '" target="refer">関連リンク</a></div>';
	}
	if (this.desc != '') {
		html += '<div class="marker_desc">' + this.desc + '</div>';
	}
	html += '</div>';

	return html;
}

function createMarker(markerInfo, showDate, showTime, showLocation, showHeight) {
	var marker = new GMarker(markerInfo.point, {icon: markerIcon[markerInfo.icon], title: markerInfo.name});

	GEvent.addListener(marker, 'click', function() {
		if (markerInfo.image != '') {
			var ext = getFileExt(markerInfo.image);
			if (ext == 'jpg' || ext == 'gif' || ext == 'png') {
				var image = new Image();
				image.src = markerInfo.image;
				if (image.complete) {
					marker.openInfoWindowHtml(markerInfo.getHtml(showDate, showTime, showLocation, showHeight, true));
				}
				else {
					image.onload = function() {
						marker.openInfoWindowHtml(markerInfo.getHtml(showDate, showTime, showLocation, showHeight, true));
					}
					image.onerror = function() {
						marker.openInfoWindowHtml(markerInfo.getHtml(showDate, showTime, showLocation, showHeight, false));
					}
				}
				return;
			}
		}
		marker.openInfoWindowHtml(markerInfo.getHtml(showDate, showTime, showLocation, showHeight, false));
	});

	return marker;
}

function popupMarker(num) {
	GEvent.trigger(markers[num], 'click');
}

function getFileExt(filepath) {
	var strArray = filepath.split('.');
	return strArray[strArray.length - 1].toLowerCase();
}

function getBrowser() {
	var agent = navigator.userAgent;

	if (agent.indexOf('Safari') >= 0) {
		return 'Safari';
	}
	else if (agent.indexOf('Opera') >= 0) {
		return 'Opera';
	}
	else if (agent.indexOf('Gecko') >= 0) {
		return 'Mozilla';
	}
	else if (agent.indexOf('MSIE') >= 0) {
		return 'MSIE';
	}
	else {
		return 'other';
	}
}

function playRoute() {
	var count = 0;
	for (i=0; i<track.length; i++) {
		count += track[i].length;
	}

	if (count > 1 && !playing) {
		map.addOverlay(centerPointer);
		if (showMeterPanel) {
			infoPanel = new InfoPanel();
			map.addControl(infoPanel);
			speedMeter = new SpeedMeter();
			map.addControl(speedMeter);
			speedMeter.setMaxSpeed(maxSpeed[currTrack]);
		}
		playing = true;
		goForward();
	}
}

function goForward() {
	var waittime;
	var pos = track[currTrack][currPoint].latlng;
	map.panTo(pos);
	centerPointer.setLatLng(pos);
	if (showMeterPanel) {
		displayInfoPanel(currTrack, currPoint);
	}
	if (currPoint < track[currTrack].length - 1) {
		if (realTimePlay) {
			waittime = track[currTrack][currPoint+1].time.getTime() - track[currTrack][currPoint].time.getTime();
			waittime /= parseFloat(document.getElementById("playSpeed").value);
		}
		else {
			waittime = 1000 / parseFloat(document.getElementById("playSpeed").value);
		}
		currPoint++;
	}
	else {
		if (currTrack < track.length - 1) {
			waittime = 1000;
			currTrack++;
			currPoint = 0;
			if (showMeterPanel) {
				speedMeter.setMaxSpeed(maxSpeed[currTrack]);
			}
		}
		else {
			window.clearTimeout(playTimer);
			playing = false;
			map.removeOverlay(centerPointer);
			if (showMeterPanel) {
				map.removeControl(infoPanel);
				map.removeControl(speedMeter);
			}
			return;
		}
	}
	playTimer = window.setTimeout("goForward()", waittime);
}

function stopRoute() {
	if (playing) {
		window.clearTimeout(playTimer);
		playing = false;
		map.removeOverlay(centerPointer);
		if (showMeterPanel) {
			map.removeControl(infoPanel);
			map.removeControl(speedMeter);
		}
	}
}

function rewindRoute() {
	currTrack = 0;
	currPoint = 0;
	map.setCenter(track[currTrack][currPoint].latlng);
	if (showMeterPanel && speedMeter) {
		speedMeter.setMaxSpeed(maxSpeed[currTrack]);
	}
}

function prevTrack() {
	if (currTrack > 0) {
		currTrack--;
		currPoint = 0;
		map.setCenter(track[currTrack][currPoint].latlng);
		if (showMeterPanel && speedMeter) {
			speedMeter.setMaxSpeed(maxSpeed[currTrack]);
		}
	}
}

function nextTrack() {
	if (currTrack < track.length - 1) {
		currTrack++;
		currPoint = 0;
		map.setCenter(track[currTrack][currPoint].latlng);
		if (showMeterPanel && speedMeter) {
			speedMeter.setMaxSpeed(maxSpeed[currTrack]);
		}
	}
}

function displayInfoPanel(ntrack, npoint) {
	infoPanel.writeTime(track[ntrack][npoint].time);
	
	var distance = 0;
	var speed = 0;
	var timespan;
	var gradient = 0;
	var elevation;
	if (npoint > 0) {
		distance = track[ntrack][npoint].dist - track[ntrack][npoint - 1].dist;
		timespan = track[ntrack][npoint].time.getTime() - track[ntrack][npoint - 1].time.getTime();
		elevation = track[ntrack][npoint].height - track[ntrack][npoint - 1].height;
		if (timespan > 0) {
			speed = 3600000 * distance / timespan;
		}
		if (distance > 0) {
			gradient = elevation / distance / 10;
		}
	}
	speed = Math.round(speed * 10) / 10;

	infoPanel.writeSpeed(track[ntrack][npoint].dist,speed);
	infoPanel.writeHeight(track[ntrack][npoint].height,gradient);
	speedMeter.update(speed);
}

function InfoPanel() {
	this.writeTime = function(date) {
		var hour = date.getHours();
		var min = date.getMinutes();
		var sec = date.getSeconds();
		if (hour < 10) hour = "0" + hour;
		if (min < 10) min = "0" + min;
		if (sec < 10) sec = "0" + sec;
		var timePanel = document.getElementById("time");
		timePanel.innerHTML = '時刻：' + hour + ':' + min + ':' + sec;
	}

	this.writeSpeed = function(distance, speed) {
		var speedPanel = document.getElementById("speed");
		var distStr = distance.toFixed(3);
		var speedStr = speed.toFixed(1);
		if (distStr < 10) distStr = "&nbsp;&nbsp;&nbsp;" + distStr;
		else if (distStr < 100) distStr = "&nbsp;&nbsp;" + distStr;
		else if (distStr < 1000) distStr = "&nbsp;" + distStr;
		if (speedStr < 10) speedStr = "&nbsp;&nbsp;" + speedStr;
		else if (speedStr < 100) speedStr = "&nbsp;" + speedStr;
		speedPanel.innerHTML = '距離：' + distStr + 'km&nbsp;&nbsp;速度：' + speedStr + 'km/h';
	}

	this.writeHeight = function(height, gradient) {
		var heightStr = height.toString();
		if (height > -100) {
			if (height <= -10) heightStr = "&nbsp;" + heightStr;
			else if (height < 0) heightStr = "&nbsp;&nbsp;" + heightStr;
			else if (height < 10) heightStr = "&nbsp;&nbsp;&nbsp;" + heightStr;
			else if (height < 100) heightStr = "&nbsp;&nbsp;" + heightStr;
			else if (height < 1000) heightStr = "&nbsp;" + heightStr;
		}
		var gradStr = Math.abs(gradient).toFixed(1);
		if (gradStr < 10) gradStr = "&nbsp;" + gradStr;
		if (gradient >= 0) {
			gradStr = '↑' + gradStr;
		}
		else {
			gradStr = '↓' + gradStr;
		}
		var heightPanel = document.getElementById("height");
		heightPanel.innerHTML = '高度：' + heightStr + 'm&nbsp;&nbsp;勾配：' + gradStr + '%';
	}
}
InfoPanel.prototype = new GControl();

InfoPanel.prototype.initialize = function(map) {
	var outerFrame = document.createElement("div");
	outerFrame.style.width = "240px";
	outerFrame.style.height = "70px";
	if (getBrowser() == 'MSIE') {
		outerFrame.style.backgroundColor = "#FFFFFF";
	}
	else {
		outerFrame.style.backgroundColor = "rgba(255, 255, 255, 0.7)";
	}
	outerFrame.style.border = "1px solid black";
	outerFrame.innerHTML = '<div id="time"></div><div id="speed"></div><div id="height"></div>';
	map.getContainer().appendChild(outerFrame);
	return outerFrame;
}

InfoPanel.prototype.getDefaultPosition = function() {
	return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10, 30));
}

function SpeedMeter() {
	this.data = new google.visualization.DataTable();
	this.data.addColumn('string', 'Label');
	this.data.addColumn('number', 'Value');
	this.data.addRows(1);
	this.data.setValue(0, 0, 'Speed');

	this.setMaxSpeed = function(max) {
		var majorTicks = new Array();
		if (max <= 8) {
			max = 8;
			majorTicks = ["0","1","2","3","4","5","6","7","8"];
			minorTicks = 5;
		}
		else if (max <= 25) {
			max = 25;
			majorTicks = ["0","5","10","15","20","25"];
			minorTicks = 5;
		}
		else if (max <= 40) {
			max = 40;
			majorTicks = ["0","5","10","15","20","25","30","35","40"];
			minorTicks = 5;
		}
		else if (max <= 60) {
			max = 60;
			majorTicks = ["0","10","20","30","40","50","60"];
			minorTicks = 5;
		}
		else if (max <= 80) {
			max = 80;
			majorTicks = ["0","10","20","30","40","50","60","70","80"];
			minorTicks = 5;
		}
		else if (max <= 140) {
			max = 140;
			majorTicks = ["0","20","40","60","80","100","120","140"];
			minorTicks = 4;
		}
		else if (max <= 350) {
			max = 350;
			majorTicks = ["0","50","100","150","200","250","300","350"];
			minorTicks = 5;
		}
		else if (max <= 1200) {
			max = 1200;
			majorTicks = ["0","200","400","600","800","1000","1200"];
			minorTicks = 4;
		}
		else {
			majorTicks = ["0","","","","",max.toString()];
			minorTicks = 5;
		}

		this.options = {width: 100, height: 100, max: max, majorTicks: majorTicks, minorTicks: minorTicks};
	}

	this.update = function(speed) {
	    this.data.setValue(0, 1, speed);
    	this.meter.draw(this.data, this.options);
	}
}
SpeedMeter.prototype = new GControl();

SpeedMeter.prototype.initialize = function(map) {
	var outerFrame = document.createElement("div");
	outerFrame.style.width = "100px";
	outerFrame.style.height = "100px";
	map.getContainer().appendChild(outerFrame);

	this.meter = new google.visualization.Gauge(outerFrame);

	return outerFrame;
}

SpeedMeter.prototype.getDefaultPosition = function() {
	return new GControlPosition(G_ANCHOR_TOP_RIGHT, new GSize(10, 110));
}

function TimeLine(container) {
	this.chart = new google.visualization.AnnotatedTimeLine(document.getElementById(container));

	this.draw = function(data, unit, scaleType) {
		this.chart.draw(data, {dateFormat: "yyyy/MM/dd HH:mm:ss", allValuesSuffix: unit, scaleType: scaleType});
	}

	this.draw2columns = function(data, scaleType) {
		this.chart.draw(data, {dateFormat: "yyyy/MM/dd HH:mm:ss", scaleType: scaleType, scaleColumns: [0,1]});
	}
}

function drawTimeLine(ntrack, type) {
	var data = new google.visualization.DataTable();
	data.addColumn("datetime", "Time");

	if (type == "height") {
		data.addColumn("number", "高度");
		var i;
		for (i=0; i<track[ntrack].length; i++) {
			data.addRow([track[ntrack][i].time, track[ntrack][i].height]);
		}
		timeLine[ntrack].draw(data, "m", "maximized");
	}
	else if (type == "speed") {
		data.addColumn("number", "速度");
		var i;
		for (i=0; i<track[ntrack].length; i++) {
			data.addRow([track[ntrack][i].time, calcSpeed(ntrack, i)]);
		}
		timeLine[ntrack].draw(data, "km/h", "fixed");
	}
	else if (type == "distance") {
		data.addColumn("number", "距離");
		var i;
		for (i=0; i<track[ntrack].length; i++) {
			data.addRow([track[ntrack][i].time, track[ntrack][i].dist]);
		}
		timeLine[ntrack].draw(data, "km", "fixed");
	}
	else if (type == "height_speed") {
		data.addColumn("number", "高度");
		data.addColumn("number", "速度");
		var i;
		for (i=0; i<track[ntrack].length; i++) {
			data.addRow([track[ntrack][i].time, track[ntrack][i].height, calcSpeed(ntrack, i)]);
		}
		timeLine[ntrack].draw2columns(data, "allmaximized");
	}
}

function calcSpeed(ntrack, npoint) {
	var speed = 0;
	if (npoint > 0) {
		var distance = track[ntrack][npoint].dist - track[ntrack][npoint-1].dist;
		var timespan = track[ntrack][npoint].time.getTime() - track[ntrack][npoint-1].time.getTime();
		if (timespan > 0) {
			speed = 3600000 * distance / timespan;
		}
	}

	return speed;
}

