// CodeGear C++Builder
// Copyright (c) 1995, 2016 by Embarcadero Technologies, Inc.
// All rights reserved

// (DO NOT EDIT: machine generated header) 'FMX.TMSWebGMapsConst.pas' rev: 31.00 (Android)

#ifndef Fmx_TmswebgmapsconstHPP
#define Fmx_TmswebgmapsconstHPP

#pragma delphiheader begin
#pragma option push
#pragma option -w-      // All warnings off
#pragma option -Vx      // Zero-length empty class member 
#pragma pack(push,8)
#include <System.hpp>
#include <SysInit.hpp>

//-- user supplied -----------------------------------------------------------

namespace Fmx
{
namespace Tmswebgmapsconst
{
//-- forward type declarations -----------------------------------------------
//-- type declarations -------------------------------------------------------
//-- var, const, procedure ---------------------------------------------------
#define HTML_BLANK_PAGE u"about:blank"
#define JAVASCRIPT u"JavaScript"
#define MAP_TYPE_PREFIX u"google.maps.MapTypeId."
#define CONTROL_POSITION_TEXT u"%controlposition%"
#define CONTROL_DEFAULT u"DEFAULT"
#define CONTROL_ANDROID u"ANDROID"
#define CONTROL_SMALL u"SMALL"
#define CONTROL_ZOOMPAN u"ZOOM_PAN"
#define POSITION_BOTTOMCENTER u"BOTTOM_CENTER"
#define POSITION_BOTTOMLEFT u"BOTTOM_LEFT"
#define POSITION_BOTTOMRIGHT u"BOTTOM_RIGHT"
#define POSITION_LEFTBOTTOM u"LEFT_BOTTOM"
#define POSITION_LEFTCENTER u"LEFT_CENTER"
#define POSITION_LEFTTOP u"LEFT_TOP"
#define POSITION_RIGHTBOTTOM u"RIGHT_BOTTOM"
#define POSITION_RIGHTCENTER u"RIGHT_CENTER"
#define POSITION_RIGHTTOP u"RIGHT_TOP"
#define POSITION_TOPCENTER u"TOP_CENTER"
#define POSITION_TOPLEFT u"TOP_LEFT"
#define POSITION_TOPRIGHT u"TOP_RIGHT"
#define ZOOM_DEFAULT u"DEFAULT"
#define ZOOM_LARGE u"LARGE"
#define ZOOM_SMALL u"SMALL"
#define MAPTYPE_DEFAULT u"DEFAULT"
#define MAPTYPE_DROPDOWNMENU u"DROPDOWN_MENU"
#define MAPTYPE_HORIZONTALBAR u"HORIZONTAL_BAR"
#define MAP_DEFAULT u"ROADMAP"
#define MAP_SATELLITE u"SATELLITE"
#define MAP_HYBRID u"HYBRID"
#define MAP_TERRAIN u"TERRAIN"
#define GIF_RESSOURCE_NAME u"LOADER"
#define GIF_FORMAT u"GIF"
static constexpr System::Int8 DEFAULT_ZOOM = System::Int8(0xa);
static const double DEFAULT_LATITUDE = 4.885904E+01;
static const double DEFAULT_LONGITUDE = 2.294297E+00;
static constexpr System::Int8 DEFAULT_WIDTH = System::Int8(0x64);
static constexpr System::Int8 DEFAULT_HEIGHT = System::Int8(0x64);
#define GEOCODING_DOMAIN_URL u"https://maps.googleapis.com"
#define GEOCODING_BASE_URL u"https://maps.googleapis.com/maps/api/geocode/xml?"
#define GEOCODING_START_URL u"address="
#define GEOCODING_REVERSESTART_URL u"latlng="
#define GEOCODING_END_URL u"&sensor=false"
#define GEOCODING_STATUS u"status"
#define GEOCODING_LATITUDE u"lat"
#define GEOCODING_LONGITUDE u"lng"
#define GEOCODING_LOCATION_TYPE u"location_type"
#define GEOCODING_ADDRESS u"formatted_address"
#define GEOCODINF_STATUS_OK u"OK"
#define GEOCODINF_STATUS_ZERO_RESULTS u"ZERO_RESULTS"
#define GEOCODINF_STATUS_OVER_QUERY_LIMIT u"OVER_QUERY_LIMIT"
#define GEOCODINF_STATUS_REQUEST_DENIED u"REQUEST_DENIED"
#define GEOCODINF_STATUS_INVALID_REQUEST u"INVALID_REQUEST"
#define GEOCODING_LOCTYPE_ROOFTOP u"ROOFTOP"
#define GEOCODING_LOCTYPE_RANGE_INTERPOLATED u"RANGE_INTERPOLATED"
#define GEOCODING_LOCTYPE_GEOMETRIC_CENTER u"GEOMETRIC_CENTER"
#define GEOCODING_LOCTYPE_APPROXIMATE u"APPROXIMATE"
#define WEATHER_TEMPERATURE_CELSIUS u"CELSIUS"
#define WEATHER_TEMPERATURE_FAHRENHEIT u"FAHRENHEIT"
#define WEATHER_WIND_SPEED_KILOMETERS_PER_HOUR u"KILOMETERS_PER_HOUR"
#define WEATHER_WIND_SPEED_METERS_PER_SECOND u"METERS_PER_SECOND"
#define WEATHER_WIND_SPEED_MILES_PER_HOUR u"MILES_PER_HOUR"
#define WEATHER_LABEL_COLOR_BLACK u"BLACK"
#define WEATHER_LABEL_COLOR_WHITE u"WHITE"
#define HTML_FILE_1 u"<!DOCTYPE html>\r<html>\r<head>\r<meta name=\"viewport\" c"\
	u"ontent=\"width=device-width, initial-scale=1.0, user-scala"\
	u"ble=no\" />\r<meta http-equiv=\"content-type\" content=\"t"\
	u"ext/html; charset=UTF-8\" />\r<meta http-equiv=\"X-UA-Comp"\
	u"atible\" content=\"IE=11\">\r<style type=\"text/css\">\r h"\
	u"tml, body, #map_canvas {\r  margin: 0;\r  padding: 0;\r  h"\
	u"eight: 100%\r }\r</style>\r<script type=\"text/javascript\""\
	u" src=\"http://maps.google.com/maps/api/js?&libraries=panor"\
	u"amio,weather%apikey%&language=%lang%\"></script>\r<script "\
	u"type=\"text/javascript\" src=\"https://cdn.rawgit.com/mahn"\
	u"unchik/markerclustererplus/master/src/markerclusterer.js\""\
	u"></script>\r%showdebug%\r<script type=\"text/javascript\">"\
	u"\r var map;\r var streetviewService;\r var streetviewPanor"\
	u"ama;\r var allclusters = [];\r var clusterstyles = [];\r v"\
	u"ar allmarkers = [];\r var allsubmarkers = [];\r var allsub"\
	u"polylines = [];\r var alllabels = [];\r var allpolylines ="\
	u" [];\r var allpolylinetext = [];\r var allpolygons = [];\r"\
	u" var allpolygontext = [];\r var allkmllayers = [];\r var a"\
	u"llinfowindows = [];\r var allsubinfowindows = [];\r var tr"\
	u"afficLayer;\r var bicyclingLayer;\r var panoramioLayer;\r "\
	u"var cloudLayer;\r var weatherLayer;\r var directionsDispla"\
	u"y;\r var alldirections = [];\r var directionsService = new"\
	u" google.maps.DirectionsService();\r var calcLayer;\r var m"\
	u"x = 0;\r var my = 0;\r var pL = null;\r var pLM = null;\r "\
	u"var pLT = \"\";\r function printPolygon(index){\r  if ((al"\
	u"lpolygons.length > index) && (index >= 0)) {\r   var str ="\
	u" \"\";\r   var polygonBounds = allpolygons[index].getPath("\
	u");\r   var xy;\r   for (var j = 0; j < polygonBounds.lengt"\
	u"h; j++) {\r     xy = polygonBounds.getAt(j);\r     str += "\
	u"\"Polygon[\" + index + \"] Coordinate[\" + j + \"] LAT[\" "\
	u"+ xy.lat() + \"] LNG[\" + xy.lng() + \"];\";\r   }\r   doc"\
	u"ument.getElementById(\"result\").value = str;\r  }\r}\r fu"\
	u"nction printPolygonCircle(index){\r  if ((allpolygons.leng"\
	u"th > index) && (index >= 0)) {\r   var radius = allpolygon"\
	u"s[index].getRadius();\r   var xy = allpolygons[index].getC"\
	u"enter();\r   var str = \"Polygon[\" + index + \"] Radius[\""\
	u" + radius + \"] LAT[\" + xy.lat() + \"] LNG[\" + xy.lng() "\
	u"+ \"];\";\r   document.getElementById(\"result\").value = "\
	u"str;\r  }\r}\r function printPolygonRectangle(index){\r  i"\
	u"f ((allpolygons.length > index) && (index >= 0)) {\r   var"\
	u" bounds = allpolygons[index].getBounds();\r   var ne = bou"\
	u"nds.getNorthEast();\r   var sw = bounds.getSouthWest();\r "\
	u"  var str = \"Polygon[\" + index + \"] NELA[\" + ne.lat() "\
	u"+ \"] NELN[\" + ne.lng() + \"] SWLA[\" + sw.lat() + \"] SW"\
	u"LN[\" + sw.lng() + \"];\";\r   document.getElementById(\"r"\
	u"esult\").value = str;\r  }\r}\r function printPolyline(ind"\
	u"ex){\r  if ((allpolylines.length > index) && (index >= 0))"\
	u" {\r   var str = \"\";\r   var polylineBounds = allpolylin"\
	u"es[index].getPath();\r   var xy;\r   for (var j = 0; j < p"\
	u"olylineBounds.length; j++) {\r     xy = polylineBounds.get"\
	u"At(j);\r     str += \"Polyline[\" + index + \"] Coordinate"\
	u"[\" + j + \"] LAT[\" + xy.lat() + \"] LNG[\" + xy.lng() + "\
	u"\"];\";\r   }\r   document.getElementById(\"result\").valu"\
	u"e = str;\r  }\r}\r function getLatLngToXY(lat, lng){\r  va"\
	u"r str = \"\";\r  var projection = calcLayer.getProjection("\
	u");\r  if (projection) {\r    myLatLng = new google.maps.La"\
	u"tLng(parseFloat(lat), parseFloat(lng));\r    var position "\
	u"= projection.fromLatLngToDivPixel(myLatLng);\r    str = \""\
	u"XPOS[\" + parseInt(position.x) + \"] YPOS[\" + parseInt(po"\
	u"sition.y) + \"];\";\r  }\r  document.getElementById(\"resu"\
	u"lt\").value = str;\r}\r function getXYToLatLng(x, y){\r  v"\
	u"ar str = \"\";\r  var projection = calcLayer.getProjection"\
	u"();\r  if (projection) {\r    myPoint = new google.maps.Po"\
	u"int(parseInt(x), parseInt(y));\r    var position = project"\
	u"ion.fromDivPixelToLatLng(myPoint);\r    str = \"LAT[\" + p"\
	u"osition.lat() + \"] LNG[\" + position.lng() + \"];\";\r  }"\
	u"\r  document.getElementById(\"result\").value = str;\r}\r "\
	u"function setzoommap(newzoom) {\r   var OldZoomLevel = pars"\
	u"eFloat(map.getZoom());\r   var NewzoomLevel = parseFloat(n"\
	u"ewzoom);\r   if (OldZoomLevel!=NewzoomLevel) {\r     map.s"\
	u"etZoom(newzoom);\r   }\r }\r \r function getBounds() {\r  "\
	u" var result = map.getBounds();\r   var ne = result.getNort"\
	u"hEast();\r   var sw = result.getSouthWest();\r   sendObjec"\
	u"tMessage(\"jsevent://boundsretrieved:nelat=\"+ne.lat()+\"#"\
	u"nelng=\"+ne.lng()+\"#swlat=\"+sw.lat()+\"#swlng=\"+sw.lng("\
	u")); \r }\r \r function showStreetview(lat, lng, valhead, v"\
	u"alzm, valptch) {\r   var valheading = parseFloat(valhead);"\
	u"\r   var valzoom = parseFloat(valzm);\r   var valpitch = p"\
	u"arseFloat(valptch);\r   var point = new google.maps.LatLng"\
	u"(parseFloat(lat),parseFloat(lng));\r   streetviewPanorama."\
	u"setPov({\r                              heading: valheadin"\
	u"g,\r                              zoom: valzoom,\r        "\
	u"                      pitch: valpitch});\r   streetviewSer"\
	u"vice.getPanoramaByLocation(point, 50, processStreeviewData"\
	u");\r }\r \r function processStreeviewData(data, status) {\r"\
	u"   if (status == google.maps.StreetViewStatus.OK) {\r     "\
	u"streetviewPanorama.setPano(data.location.pano);\r     stre"\
	u"etviewPanorama.setVisible(true);\r   } else {\r     street"\
	u"viewPanorama.setVisible(false);\r     if (status == google"\
	u".maps.StreetViewStatus.UNKNOWN_ERROR) {\r       sendObject"\
	u"Message(\"jsevent://error:errorid=4\"); \r     } else {\r "\
	u"      sendObjectMessage(\"jsevent://error:errorid=5\"); \r"\
	u"     }\r   }\r }\r \rString.prototype.hexEncode = function"\
	u"(){\r    var hex, i;\r    var result = \"\";\r    for (i=0"\
	u"; i<this.length; i++) {\r        hex = this.charCodeAt(i)."\
	u"toString(16);\r        result += \"\\\\u\" + (\"000\"+hex)"\
	u".slice(-4);\r    }\r    return result\r}\r function calcDi"\
	u"rections(start, end, travelmode, avoidhighways, avoidtolls"\
	u", wp, optwp, color, displayroute) {\r if (color != \"\") \r"\
	u"   directionsDisplay = new google.maps.DirectionsRenderer("\
	u"{polylineOptions: {  strokeColor: color, strokeWeight: 5, "\
	u"strokeOpacity: 0.5 }});\r else\r   directionsDisplay = new"\
	u" google.maps.DirectionsRenderer();\r if (displayroute) {\r"\
	u"  directionsDisplay.setMap(map);\r  alldirections.push(dir"\
	u"ectionsDisplay);\r }\r var request = {\r    origin: start,"\
	u"\r    destination: end,\r    travelMode: travelmode,\r    "\
	u"avoidHighways: avoidhighways,\r    avoidTolls: avoidtolls,"\
	u"\r    waypoints: wp,\r    optimizeWaypoints: optwp\r  };\r"\
	u"  directionsService.route(request, function(result, status"\
	u") {\r    if (status == google.maps.DirectionsStatus.OK) {\r"\
	u"      directionsDisplay.setDirections(result);\r      myro"\
	u"ute = directionsDisplay.getDirections();\r      sendObject"\
	u"Message(\"jsevent://routingstart\"); \r      var routings "\
	u"= JSON.stringify(myroute);\r      var routingsub;\r      w"\
	u"hile (routings.length > 0) {\r      routingsub = routings."\
	u"substr(0,  Math.min(routings.length, 300)); \r      routin"\
	u"gs = routings.substr(routingsub.length, routings.length); "\
	u"\r      sendObjectMessage(\"jsevent://routing:title=\" + r"\
	u"outingsub.hexEncode()); \r      }\r      sendObjectMessage"\
	u"(\"jsevent://routingend\"); \r    } else {\r      myroute "\
	u"= \"no_route_found\";\r      sendObjectMessage(\"jsevent:/"\
	u"/routingstart\"); \r      sendObjectMessage(\"jsevent://ro"\
	u"uting:title=\" + myroute.hexEncode()); \r      sendObjectM"\
	u"essage(\"jsevent://routingend\"); \r    }\r  });\r}\r func"\
	u"tion addKMLLayer(url, zoomtobounds) {\r   var kmlOptions ="\
	u" {\r     clickable: true,\r     suppressInfoWindows: false"\
	u",\r     preserveViewport: zoomtobounds,\r     map: map\r  "\
	u" };\r   var kmlLayer = new google.maps.KmlLayer(url, kmlOp"\
	u"tions);\r   allkmllayers.push(kmlLayer);\r   google.maps.e"\
	u"vent.addListener(kmlLayer, \"status_changed\", function() "\
	u"{\r     var status = kmlLayer.getStatus();\r     if (statu"\
	u"s != \"OK\")\r \t    alert(\"KML Layer '\" + kmlLayer.getU"\
	u"rl() + \"' status: \" + status);\r   })\r   google.maps.ev"\
	u"ent.addListener(kmlLayer, \"click\", function(event) {\r  "\
	u"        IdKMLLayer=-1;\r          for (var i = 0; i < allk"\
	u"mllayers.length; i++){\r            if (allkmllayers[i]==k"\
	u"mlLayer) {\r              IdKMLLayer=i;\r            }\r  "\
	u"        }\r          lat=parseFloat(event.latLng.lat());\r"\
	u"          lng=parseFloat(event.latLng.lng());\r          s"\
	u"endObjectMessage(\"jsevent://kmllayerclick:title=\" + even"\
	u"t.featureData.name + \"#id=\"+IdKMLLayer+\"#lat=\"+lat+\"#"\
	u"lng=\"+lng); \r   });\r }\r"
#define HTML_FILE_1_1 u" function setPolylineChangedEvents(polyline){\r  ppath = p"\
	u"olyline.getPath();\r    google.maps.event.addListener(ppat"\
	u"h, \"insert_at\", function(){ \r    polylineId=-1;\r      "\
	u"    for (var i = 0; i < allpolylines.length; i++){\r      "\
	u"      if (allpolylines[i]==polyline) {\r              poly"\
	u"lineId=i;\r            }\r          }\r          sendObjec"\
	u"tMessage(\"jsevent://polylinechanged:id=\"+polylineId); \r"\
	u"    });\r \r    google.maps.event.addListener(ppath, \"rem"\
	u"ove_at\", function(){ \r    polylineId=-1;\r          for "\
	u"(var i = 0; i < allpolylines.length; i++){\r            if"\
	u" (allpolylines[i]==polyline) {\r              polylineId=i"\
	u";\r            }\r          }\r          sendObjectMessage"\
	u"(\"jsevent://polylinechanged:id=\"+polylineId); \r    }); "\
	u"\r \r    google.maps.event.addListener(ppath, \"set_at\", "\
	u"function(){ \r    polylineId=-1;\r          for (var i = 0"\
	u"; i < allpolylines.length; i++){\r            if (allpolyl"\
	u"ines[i]==polyline) {\r              polylineId=i;\r       "\
	u"     }\r          }\r          sendObjectMessage(\"jsevent"\
	u"://polylinechanged:id=\"+polylineId); \r    }); \r } \r fu"\
	u"nction updateMapPolyline(index, clickable, editable, icons"\
	u", path, color, width, opacity, visible, geodesic, zindex, "\
	u"ptext) {\r   var polylineOptions = { map: map, icons: icon"\
	u"s, clickable: clickable, editable: editable , path: path ,"\
	u" strokeColor: color, strokeWeight: width, strokeOpacity: o"\
	u"pacity, visible: visible, geodesic: geodesic, zIndex: zind"\
	u"ex };\r   allpolylines[index].setOptions(polylineOptions);"\
	u"\r   allpolylinetext[index] = ptext;\r   setPolylineChange"\
	u"dEvents(allpolylines[index]);\r   }\r function createMapPo"\
	u"lyline(clickable, editable, icons, path, color, width, opa"\
	u"city, visible, geodesic, index, ptext) {\r   var polylineO"\
	u"ptions = { map: map, icons: icons, clickable: clickable, e"\
	u"ditable: editable, path: path , strokeColor: color, stroke"\
	u"Weight: width, strokeOpacity: opacity, visible: visible, g"\
	u"eodesic: geodesic, zIndex: index };\r   var polyline = new"\
	u" google.maps.Polyline(polylineOptions);\r   allpolylines.p"\
	u"ush(polyline);\r   allpolylinetext.push(ptext);\r   setPol"\
	u"ylineChangedEvents(polyline);\r \r  google.maps.event.addL"\
	u"istener(polyline, \"dragend\", function(){ \r    polygonId"\
	u"=-1;\r          for (var i = 0; i < allpolylines.length; i"\
	u"++){\r            if (allpolylines[i]==polyline) {\r      "\
	u"        polylineId=i;\r            }\r          }\r       "\
	u"   sendObjectMessage(\"jsevent://polylinechanged:id=\"+pol"\
	u"ylineId); \r  }); \r   google.maps.event.addListener(polyl"\
	u"ine, \"click\", function() {\r          IdMarker=-1;\r    "\
	u"      for (var i = 0; i < allpolylines.length; i++){\r    "\
	u"        if (allpolylines[i]==polyline) {\r              Id"\
	u"Marker=i;\r            }\r          }\r          sendObjec"\
	u"tMessage(\"jsevent://polylineclick:id=\"+IdMarker); \r   }"\
	u");\r   google.maps.event.addListener(polyline, \"rightclic"\
	u"k\", function() {\r          IdMarker=-1;\r          for ("\
	u"var i = 0; i < allpolylines.length; i++){\r            if "\
	u"(allpolylines[i]==polyline) {\r              IdMarker=i;\r"\
	u"            }\r          }\r          sendObjectMessage(\""\
	u"jsevent://polylineclick:id=\"+IdMarker); \r   });\r   goog"\
	u"le.maps.event.addListener(polyline, \"dblclick\", function"\
	u"() {\r          IdMarker=-1;\r          for (var i = 0; i "\
	u"< allpolylines.length; i++){\r            if (allpolylines"\
	u"[i]==polyline) {\r              IdMarker=i;\r            }"\
	u"\r          }\r          sendObjectMessage(\"jsevent://pol"\
	u"ylinedblclick:id=\"+IdMarker); \r   });\r   google.maps.ev"\
	u"ent.addListener(polyline, \"mousedown\", function() {\r   "\
	u"       IdMarker=-1;\r          for (var i = 0; i < allpoly"\
	u"lines.length; i++){\r            if (allpolylines[i]==poly"\
	u"line) {\r              IdMarker=i;\r            }\r       "\
	u"   }\r          sendObjectMessage(\"jsevent://polylinemous"\
	u"edown:id=\"+IdMarker); \r   });\r   google.maps.event.addL"\
	u"istener(polyline, \"mouseout\", function() {\r          pL"\
	u".hide();\r          IdMarker=-1;\r          for (var i = 0"\
	u"; i < allpolylines.length; i++){\r            if (allpolyl"\
	u"ines[i]==polyline) {\r              IdMarker=i;\r         "\
	u"   }\r          }\r          sendObjectMessage(\"jsevent:/"\
	u"/polylinemouseexit:id=\"+IdMarker); \r   });\r   google.ma"\
	u"ps.event.addListener(polyline, \"mouseover\", function() {"\
	u"\r          IdMarker=-1;\r          for (var i = 0; i < al"\
	u"lpolylines.length; i++){\r            if (allpolylines[i]="\
	u"=polyline) {\r              IdMarker=i;\r            }\r  "\
	u"        }\r          sendObjectMessage(\"jsevent://polylin"\
	u"emouseenter:id=\"+IdMarker); \r   });\r   google.maps.even"\
	u"t.addListener(polyline, \"mouseup\", function() {\r       "\
	u"   IdMarker=-1;\r          for (var i = 0; i < allpolyline"\
	u"s.length; i++){\r            if (allpolylines[i]==polyline"\
	u") {\r              IdMarker=i;\r            }\r          }"\
	u"\r          sendObjectMessage(\"jsevent://polylinemouseup:"\
	u"id=\"+IdMarker); \r   });\r   google.maps.event.addListene"\
	u"r(polyline, \"mousemove\", function(event) {\r     if (%pl"\
	u"visible%) {\r       var ClickLatLng = event.latLng;\r     "\
	u"  if (ClickLatLng) {\r          var lat = ClickLatLng.lat("\
	u");\r          var lng = ClickLatLng.lng();\r       }\r    "\
	u"    IdMarker=-1;\r        for (var i = 0; i < allpolylines"\
	u".length; i++){\r          if (allpolylines[i]==polyline) {"\
	u"\r            IdMarker=i;\r          }\r        }\r       "\
	u" pLT = allpolylinetext[IdMarker];        if (pLT != \"\") "\
	u"{\r          var point = new google.maps.LatLng(parseFloat"\
	u"(lat), parseFloat(lng));\r          var markerOptions = { "\
	u"map: null, position: point};\r          pLM.setOptions(mar"\
	u"kerOptions);\r          pL.bindTo(\"position\", pLM, \"pos"\
	u"ition\");\r          pL.set(\"text\", pLT);\r          pL."\
	u"show();\r        } else {\r          pL.hide();\r        }"\
	u"\r     }\r   });\r }\r \r function createMapCluster(marker"\
	u"i, coptions, cstyles) {\r   var cmarkers = [];\r   for (va"\
	u"r i = 0; i < markeri.length; i++) {\r     cmarkers.push(al"\
	u"lmarkers[markeri[i]]);\r   }\r   var cluster = new MarkerC"\
	u"lusterer(map, cmarkers, coptions);\r   clusterstyles = clu"\
	u"ster.getStyles();\r   if (cstyles)\r     cluster.setStyles"\
	u"(cstyles);\r   allclusters.push(cluster);\r   google.maps."\
	u"event.addListener(cluster, \"click\", function(c) {\r     "\
	u"     IdMarker=-1;\r          for (var i = 0; i < allcluste"\
	u"rs.length; i++){\r            if (allclusters[i]==cluster)"\
	u" {\r              IdMarker=i;\r            }\r          }\r"\
	u"          sendObjectMessage(\"jsevent://clusterclick:id=\""\
	u" + IdMarker + \"#size=\"+c.getSize()+\"#lat=\"+c.getCenter"\
	u"().lat()+\"#lng=\"+c.getCenter().lng()); \r   });\r   goog"\
	u"le.maps.event.addListener(cluster, \"mouseover\", function"\
	u"(c) {\r          IdMarker=-1;\r          for (var i = 0; i"\
	u" < allclusters.length; i++){\r            if (allclusters["\
	u"i]==cluster) {\r              IdMarker=i;\r            }\r"\
	u"          }\r          sendObjectMessage(\"jsevent://clust"\
	u"ermouseenter:id=\" + IdMarker + \"#size=\"+c.getSize()+\"#"\
	u"lat=\"+c.getCenter().lat()+\"#lng=\"+c.getCenter().lng());"\
	u" \r   });\r   google.maps.event.addListener(cluster, \"mou"\
	u"seout\", function(c) {\r          IdMarker=-1;\r          "\
	u"for (var i = 0; i < allclusters.length; i++){\r           "\
	u" if (allclusters[i]==cluster) {\r              IdMarker=i;"\
	u"\r            }\r          }\r          sendObjectMessage("\
	u"\"jsevent://clustermousexit:id=\" + IdMarker + \"#size=\"+"\
	u"c.getSize()+\"#lat=\"+c.getCenter().lat()+\"#lng=\"+c.getC"\
	u"enter().lng()); \r   });\r }\r function addMarkerToCluster"\
	u"(cindex, mindex) {\r   if ((cindex < allclusters.length) &"\
	u"& (mindex < allmarkers.length))\r     allclusters[cindex]."\
	u"addMarker(allmarkers[mindex]);\r }\r function deleteMarker"\
	u"FromCluster(cindex, mindex) {\r   if ((cindex < allcluster"\
	u"s.length) && (mindex < allmarkers.length))\r     allcluste"\
	u"rs[cindex].removeMarker(allmarkers[mindex]);\r }\r"
#define HTML_FILE_2 u" function setPolygonChangedEvents(polygon) { \r  polygon.g"\
	u"etPaths().forEach(function(path, index){\r \r    google.ma"\
	u"ps.event.addListener(path, \"insert_at\", function(){ \r  "\
	u"  polygonId=-1;\r          for (var i = 0; i < allpolygons"\
	u".length; i++){\r            if (allpolygons[i]==polygon) {"\
	u"\r              polygonId=i;\r            }\r          }\r"\
	u"          sendObjectMessage(\"jsevent://polygonchanged:id="\
	u"\"+polygonId); \r    });\r \r    google.maps.event.addList"\
	u"ener(path, \"remove_at\", function(){ \r    polygonId=-1;\r"\
	u"          for (var i = 0; i < allpolygons.length; i++){\r "\
	u"           if (allpolygons[i]==polygon) {\r              p"\
	u"olygonId=i;\r            }\r          }\r          sendObj"\
	u"ectMessage(\"jsevent://polygonchanged:id=\"+polygonId); \r"\
	u"    }); \r \r    google.maps.event.addListener(path, \"set"\
	u"_at\", function(){ \r    polygonId=-1;\r          for (var"\
	u" i = 0; i < allpolygons.length; i++){\r            if (all"\
	u"polygons[i]==polygon) {\r              polygonId=i;\r     "\
	u"       }\r          }\r          sendObjectMessage(\"jseve"\
	u"nt://polygonchanged:id=\"+polygonId); \r    }); \r \r  });"\
	u" \r}\r function updateMapPolygon(index, clickable, editabl"\
	u"e, paths, bgcolor, bordercolor, borderwidth, bgopacity, bo"\
	u"rderopacity, visible, geodesic, zindex, ptype, centerlat, "\
	u"centerlng, radius, nelat, nelng, swlat, swlng, ptext) {\r "\
	u"  if (ptype == \"circle\") {\r   var center = new google.m"\
	u"aps.LatLng(parseFloat(centerlat),parseFloat(centerlng));\r"\
	u"   var polygonOptions = { map: map, clickable: clickable, "\
	u"editable: editable , center: center, radius: radius , fill"\
	u"Color: bgcolor , fillOpacity: bgopacity, strokeColor: bord"\
	u"ercolor, strokeWeight: borderwidth, strokeOpacity: bordero"\
	u"pacity, visible: visible, zIndex: zindex };\r  allpolygons"\
	u"[index].setOptions(polygonOptions);\r   } else if (ptype ="\
	u"= \"rectangle\") {\r   var bounds = new google.maps.LatLng"\
	u"Bounds(new google.maps.LatLng(swlat, swlng), new google.ma"\
	u"ps.LatLng(nelat, nelng));\r   var polygonOptions = { map: "\
	u"map, clickable: clickable, editable: editable , bounds: bo"\
	u"unds , fillColor: bgcolor , fillOpacity: bgopacity, stroke"\
	u"Color: bordercolor, strokeWeight: borderwidth, strokeOpaci"\
	u"ty: borderopacity, visible: visible, zIndex: zindex };\r  "\
	u"allpolygons[index].setOptions(polygonOptions);\r   } else "\
	u"{\r   var polygonOptions = { map: map, clickable: clickabl"\
	u"e, editable: editable , paths: paths , fillColor: bgcolor "\
	u", fillOpacity: bgopacity, strokeColor: bordercolor, stroke"\
	u"Weight: borderwidth, strokeOpacity: borderopacity, visible"\
	u": visible, geodesic: geodesic, zIndex: zindex };\r  allpol"\
	u"ygons[index].setOptions(polygonOptions);\r  polygon = allp"\
	u"olygons[index];\r  setPolygonChangedEvents(polygon);\r   }"\
	u"\r  allpolygontext[index] = ptext;\r }\r function createMa"\
	u"pPolygon(clickable, editable, paths, bgcolor, bordercolor,"\
	u" borderwidth, bgopacity, borderopacity, visible, geodesic,"\
	u" zindex, ptype, centerlat, centerlng, radius, nelat, nelng"\
	u", swlat, swlng, ptext) {\r   if (ptype == \"circle\") {\r "\
	u"  var center = new google.maps.LatLng(parseFloat(centerlat"\
	u"),parseFloat(centerlng));\r   var circleOptions = { map: m"\
	u"ap, clickable: clickable, editable: editable , center: cen"\
	u"ter, radius: radius , fillColor: bgcolor , fillOpacity: bg"\
	u"opacity, strokeColor: bordercolor, strokeWeight: borderwid"\
	u"th, strokeOpacity: borderopacity, visible: visible, zIndex"\
	u": zindex };\r   var polygon = new google.maps.Circle(circl"\
	u"eOptions);\r   google.maps.event.addListener(polygon, \"ra"\
	u"dius_changed\", function() {\r          polygonId=-1;\r   "\
	u"       for (var i = 0; i < allpolygons.length; i++){\r    "\
	u"        if (allpolygons[i]==polygon) {\r              poly"\
	u"gonId=i;\r            }\r          }\r          sendObject"\
	u"Message(\"jsevent://polygonchanged:id=\"+polygonId); \r   "\
	u"});\r   google.maps.event.addListener(polygon, \"center_ch"\
	u"anged\", function() {\r          polygonId=-1;\r          "\
	u"for (var i = 0; i < allpolygons.length; i++){\r           "\
	u" if (allpolygons[i]==polygon) {\r              polygonId=i"\
	u";\r            }\r          }\r          sendObjectMessage"\
	u"(\"jsevent://polygonchanged:id=\"+polygonId); \r   });\r  "\
	u" } else if (ptype == \"rectangle\") {\r   var bounds = new"\
	u" google.maps.LatLngBounds(new google.maps.LatLng(swlat, sw"\
	u"lng), new google.maps.LatLng(nelat, nelng));\r   var rectO"\
	u"ptions = { map: map, clickable: clickable, editable: edita"\
	u"ble , bounds: bounds , fillColor: bgcolor , fillOpacity: b"\
	u"gopacity, strokeColor: bordercolor, strokeWeight: borderwi"\
	u"dth, strokeOpacity: borderopacity, visible: visible, zInde"\
	u"x: zindex };\r   var polygon = new google.maps.Rectangle(r"\
	u"ectOptions);\r   google.maps.event.addListener(polygon, \""\
	u"bounds_changed\", function() {\r          polygonId=-1;\r "\
	u"         for (var i = 0; i < allpolygons.length; i++){\r  "\
	u"          if (allpolygons[i]==polygon) {\r              po"\
	u"lygonId=i;\r            }\r          }\r          sendObje"\
	u"ctMessage(\"jsevent://polygonchanged:id=\"+polygonId); \r "\
	u"  });\r   } else {\r   var polygonOptions = { map: map, cl"\
	u"ickable: clickable, editable: editable , paths: paths , fi"\
	u"llColor: bgcolor , fillOpacity: bgopacity, strokeColor: bo"\
	u"rdercolor, strokeWeight: borderwidth, strokeOpacity: borde"\
	u"ropacity, visible: visible, geodesic: geodesic, zIndex: zi"\
	u"ndex };\r   var polygon = new google.maps.Polygon(polygonO"\
	u"ptions);\r  setPolygonChangedEvents(polygon);\r \r  google"\
	u".maps.event.addListener(polygon, \"dragend\", function(){ "\
	u"\r    polygonId=-1;\r          for (var i = 0; i < allpoly"\
	u"gons.length; i++){\r            if (allpolygons[i]==polygo"\
	u"n) {\r              polygonId=i;\r            }\r         "\
	u" }\r          sendObjectMessage(\"jsevent://polygonchanged"\
	u":id=\"+polygonId); \r  }); \r }\r   allpolygons.push(polyg"\
	u"on);\r   allpolygontext.push(ptext);\r   google.maps.event"\
	u".addListener(polygon, \"click\", function() {\r          I"\
	u"dMarker=-1;\r          for (var i = 0; i < allpolygons.len"\
	u"gth; i++){\r            if (allpolygons[i]==polygon) {\r  "\
	u"            IdMarker=i;\r            }\r          }\r     "\
	u"     sendObjectMessage(\"jsevent://polygonclick:id=\"+IdMa"\
	u"rker); \r   });\r   google.maps.event.addListener(polygon,"\
	u" \"rightclick\", function() {\r          IdMarker=-1;\r   "\
	u"       for (var i = 0; i < allpolygons.length; i++){\r    "\
	u"        if (allpolygons[i]==polygon) {\r              IdMa"\
	u"rker=i;\r            }\r          }\r          sendObjectM"\
	u"essage(\"jsevent://polygonclick:id=\"+IdMarker); \r   });\r"\
	u"   google.maps.event.addListener(polygon, \"dblclick\", fu"\
	u"nction() {\r          IdMarker=-1;\r          for (var i ="\
	u" 0; i < allpolygons.length; i++){\r            if (allpoly"\
	u"gons[i]==polygon) {\r              IdMarker=i;\r          "\
	u"  }\r          }\r          sendObjectMessage(\"jsevent://"\
	u"polygondblclick:id=\"+IdMarker); \r   });\r   google.maps."\
	u"event.addListener(polygon, \"mousedown\", function() {\r  "\
	u"        IdMarker=-1;\r          for (var i = 0; i < allpol"\
	u"ygons.length; i++){\r            if (allpolygons[i]==polyg"\
	u"on) {\r              IdMarker=i;\r            }\r         "\
	u" }\r          sendObjectMessage(\"jsevent://polygonmousedo"\
	u"wn:id=\"+IdMarker); \r   });\r   google.maps.event.addList"\
	u"ener(polygon, \"mouseout\", function() {\r          pL.hid"\
	u"e();\r          IdMarker=-1;\r          for (var i = 0; i "\
	u"< allpolygons.length; i++){\r            if (allpolygons[i"\
	u"]==polygon) {\r              IdMarker=i;\r            }\r "\
	u"         }\r          sendObjectMessage(\"jsevent://polygo"\
	u"nmouseexit:id=\"+IdMarker); \r   });\r   google.maps.event"\
	u".addListener(polygon, \"mouseover\", function() {\r       "\
	u"   IdMarker=-1;\r          for (var i = 0; i < allpolygons"\
	u".length; i++){\r            if (allpolygons[i]==polygon) {"\
	u"\r              IdMarker=i;\r            }\r          }\r "\
	u"         sendObjectMessage(\"jsevent://polygonmouseenter:i"\
	u"d=\"+IdMarker); \r   });\r   google.maps.event.addListener"\
	u"(polygon, \"mouseup\", function() {\r          IdMarker=-1"\
	u";\r          for (var i = 0; i < allpolygons.length; i++){"\
	u"\r            if (allpolygons[i]==polygon) {\r            "\
	u"  IdMarker=i;\r            }\r          }\r          sendO"\
	u"bjectMessage(\"jsevent://polygonmouseup:id=\"+IdMarker); \r"\
	u"   });\r   google.maps.event.addListener(polygon, \"mousem"\
	u"ove\", function(event) {\r     if (%plvisible%) {\r       "\
	u"var ClickLatLng = event.latLng;\r       if (ClickLatLng) {"\
	u"\r          var lat = ClickLatLng.lat();\r          var ln"\
	u"g = ClickLatLng.lng();\r       }\r        IdMarker=-1;\r  "\
	u"      for (var i = 0; i < allpolygons.length; i++){\r     "\
	u"     if (allpolygons[i]==polygon) {\r            IdMarker="\
	u"i;\r          }\r        }\r        pLT = allpolygontext[I"\
	u"dMarker];        if (pLT != \"\") {\r          var point ="\
	u" new google.maps.LatLng(parseFloat(lat), parseFloat(lng));"\
	u"\r          var markerOptions = { map: null, position: poi"\
	u"nt};\r          pLM.setOptions(markerOptions);\r          "\
	u"pL.bindTo(\"position\", pLM, \"position\");\r          pL."\
	u"set(\"text\", pLT);\r          pL.show();\r        } else "\
	u"{\r          pL.hide();\r        }\r     }\r   });\r }\r \r"\
	u" function Label(opt_options,color,bordercolor,padding,font"\
	u"name,fontcolor,fontsize,offsetleft,offsettop) {\r  this.se"\
	u"tValues(opt_options);\r  var span = this.span_ = document."\
	u"createElement(\"div\");\r  span.style.cssText = \"position"\
	u": relative; left: \" + (offsetleft-50) + \"%; top: \" + (o"\
	u"ffsettop-60) + \"px; \" +                       \"white-sp"\
	u"ace: nowrap; font-size:\" + fontsize + \"px;\" +          "\
	u"             \"border: 1px solid \" + bordercolor + \"; \""\
	u" +                       \"font-family:\" + fontname + \";"\
	u" color: \" + fontcolor + \";\"+                       \"pa"\
	u"dding: \" + padding + \"px; background-color: \" + color +"\
	u" \";\";\r  var div = this.div_ = document.createElement(\""\
	u"div\");\r  div.appendChild(span);\r  div.style.cssText = \""\
	u"position: absolute; display: none\";\r };\r Label.prototyp"\
	u"e = new google.maps.OverlayView;\r Label.prototype.onAdd ="\
	u" function() {\r  var pane = this.getPanes().overlayLayer;\r"\
	u"  pane.appendChild(this.div_);\r  var me = this;\r  this.l"\
	u"isteners_ = [\r    google.maps.event.addListener(this, \"p"\
	u"osition_changed\",\r        function() { me.draw(); }),\r "\
	u"   google.maps.event.addListener(this, \"text_changed\",\r"\
	u"        function() { me.draw(); })\r  ];\r };\r Label.prot"\
	u"otype.setText = function(text) {\r   if (this.span_) {\r  "\
	u" this.set(\"text\", text);\r   this.draw();   }\r }\r Labe"\
	u"l.prototype.setColor = function(color) {\r   if (this.span"\
	u"_) {\r   this.span_.style.color = color;\r   this.draw(); "\
	u"  }\r }\r Label.prototype.setBackgroundColor = function(co"\
	u"lor) {\r   if (this.span_) {\r   this.span_.style.backgrou"\
	u"ndColor = color;\r   this.draw();   }\r }\r Label.prototyp"\
	u"e.setBorderColor = function(color) {\r   if (this.span_) {"\
	u"\r   this.span_.style.borderColor = color;\r   this.draw()"\
	u";   }\r }\r Label.prototype.setFont = function(fontname) {"\
	u"\r   if (this.span_) {\r   this.span_.style.fontFamily = f"\
	u"ontname;\r   this.draw();   }\r }\r Label.prototype.setFon"\
	u"tSize = function(fontsize) {\r   if (this.span_) {\r   thi"\
	u"s.span_.style.fontSize = fontsize + \"px\";\r   this.draw("\
	u");   }\r }\r Label.prototype.setPadding = function(padding"\
	u") {\r   if (this.span_) {\r   this.span_.style.padding = p"\
	u"adding + \"px\";\r   this.draw();   }\r }\r Label.prototyp"\
	u"e.setOffsetLeft = function(offset) {\r   if (this.span_) {"\
	u"\r   this.span_.style.left = (offset-50) + \"%\";\r   this"\
	u".draw();   }\r }\r Label.prototype.setOffsetTop = function"\
	u"(offset) {\r   if (this.span_) {\r   this.span_.style.top "\
	u"= (offset-60) + \"px\";\r   this.draw();   }\r }\r Label.p"\
	u"rototype.hide = function() {\r   if (this.div_) {\r     th"\
	u"is.div_.style.visibility = \"hidden\";\r   }\r }\r Label.p"\
	u"rototype.show = function() {\r   if (this.div_) {\r     th"\
	u"is.div_.style.visibility = \"visible\";\r   }\r }\r Label."\
	u"prototype.onRemove = function() {\r  this.div_.parentNode."\
	u"removeChild(this.div_);\r  for (var i = 0, I = this.listen"\
	u"ers_.length; i < I; ++i) {\r    google.maps.event.removeLi"\
	u"stener(this.listeners_[i]);\r  }\r };\r Label.prototype.dr"\
	u"aw = function() {\r  var projection = this.getProjection()"\
	u";\r  if (projection) {\r    var position = projection.from"\
	u"LatLngToDivPixel(this.get(\"position\"));\r    var div = t"\
	u"his.div_;\r    div.style.left = position.x + \"px\";\r    "\
	u"div.style.top = position.y + \"px\";\r    div.style.displa"\
	u"y = \"block\";\r    div.style.zIndex = 999;\r } \r  this.s"\
	u"pan_.innerHTML = this.get(\"text\").toString();\r };\r fun"\
	u"ction updateMapMarker(itemindex, lat, lng, html, drag, vis"\
	u", clickble, flaticon, dropanimation, imageicon, index, lab"\
	u"eltext, labelcolor, labelbordercolor, labelpadding, labelf"\
	u"ontname, labelfontcolor, labelfontsize, iconwidth, iconhei"\
	u"ght, mtext) {\r  if (itemindex <= allmarkers.length) {\r  "\
	u" var point = new google.maps.LatLng(parseFloat(lat),parseF"\
	u"loat(lng));\r   var pinImage = imageicon;\r   if ((iconwid"\
	u"th > 0) && (iconheight > 0)) {\r     var pinImage = new go"\
	u"ogle.maps.MarkerImage(imageicon, null, null, null, new goo"\
	u"gle.maps.Size(iconwidth,iconheight));   }\r   if (dropanim"\
	u"ation==true) { \r     var markerOptions = { label: mtext, "\
	u"map: map, position: point, title: html , draggable:drag , "\
	u"visible:vis , clickable:clickble , flat:flaticon, animatio"\
	u"n: google.maps.Animation.DROP, icon: pinImage, zIndex: ind"\
	u"ex};\r   } else {\r     var markerOptions = { label: mtext"\
	u", map: map, position: point, title: html , draggable:drag "\
	u", visible:vis , clickable:clickble , flat:flaticon , icon:"\
	u" pinImage, zIndex: index };\r   } \r   updateMarker = allm"\
	u"arkers[itemindex];\r   if (updateMarker) \r    updateMarke"\
	u"r.setOptions(markerOptions);\r  }\r }\r function createMap"\
	u"Marker(lat, lng, html, drag, vis, clickble, flaticon, drop"\
	u"animation, imageicon, index, lbtext, lbcolor, lbbordercolo"\
	u"r, lbpadding, lbfontname, lbfontcolor, lbfontsize, iconwid"\
	u"th, iconheight, mtext, lboffsetleft, lboffsettop) {\r   va"\
	u"r point = new google.maps.LatLng(parseFloat(lat),parseFloa"\
	u"t(lng));\r   var pinImage = imageicon;\r   if ((iconwidth "\
	u"> 0) && (iconheight > 0)) {\r     var pinImage = new googl"\
	u"e.maps.MarkerImage(imageicon, null, null, null, new google"\
	u".maps.Size(iconwidth,iconheight));   }\r   if (dropanimati"\
	u"on==true) { \r     var markerOptions = { label: mtext, map"\
	u": map, position: point, title: html , draggable:drag , vis"\
	u"ible:vis , clickable:clickble , flat:flaticon, animation: "\
	u"google.maps.Animation.DROP, icon: pinImage, zIndex: index}"\
	u";\r   } else {\r     var markerOptions = { label: mtext, m"\
	u"ap: map, position: point, title: html , draggable:drag , v"\
	u"isible:vis , clickable:clickble , flat:flaticon , icon: pi"\
	u"nImage, zIndex: index };\r   } \r   var marker = new googl"\
	u"e.maps.Marker(markerOptions);\r   var infowindow = new goo"\
	u"gle.maps.InfoWindow({});\r   allmarkers.push(marker);\r   "\
	u"allinfowindows.push(infowindow);\r"
#define HTML_FILE_3 u"   var label = new Label({     map: map   }, lbcolor, lbbo"\
	u"rdercolor, lbpadding, lbfontname, lbfontcolor, lbfontsize,"\
	u" lboffsetleft, lboffsettop);\r   label.bindTo(\"position\""\
	u", marker, \"position\");\r   label.set(\"text\", lbtext);\r"\
	u"   if (lbtext == \"\")\r     label.hide();\r   alllabels.p"\
	u"ush(label);\r   google.maps.event.addListener(infowindow, "\
	u"\"closeclick\", function() {\r          IdMarker=-1;\r    "\
	u"      for (var i = 0; i < allmarkers.length; i++){\r      "\
	u"      if (allmarkers[i]==marker) {\r              IdMarker"\
	u"=i;\r            }\r          }\r          sendObjectMessa"\
	u"ge(\"jsevent://markerinfowindowcloseclick:id=\"+IdMarker);"\
	u" \r   });\r   google.maps.event.addListener(marker, \"clic"\
	u"k\", function() {\r          ptmarker=marker.getPosition()"\
	u"\r          IdMarker=-1;\r          for (var i = 0; i < al"\
	u"lmarkers.length; i++){\r            if (allmarkers[i]==mar"\
	u"ker) {\r              IdMarker=i;\r            }\r        "\
	u"  }\r          lat=parseFloat(ptmarker.lat());\r          "\
	u"lng=parseFloat(ptmarker.lng());\r          title=marker.ge"\
	u"tTitle();\r          sendObjectMessage(\"jsevent://markerc"\
	u"lick:title=\" + title + \"#id=\"+IdMarker+\"#lat=\"+lat+\""\
	u"#lng=\"+lng); \r   });\r   google.maps.event.addListener(m"\
	u"arker, \"rightclick\", function() {\r          ptmarker=ma"\
	u"rker.getPosition()\r          IdMarker=-1;\r          for "\
	u"(var i = 0; i < allmarkers.length; i++){\r            if ("\
	u"allmarkers[i]==marker) {\r              IdMarker=i;\r     "\
	u"       }\r          }\r          lat=parseFloat(ptmarker.l"\
	u"at());\r          lng=parseFloat(ptmarker.lng());\r       "\
	u"   title=marker.getTitle();\r          sendObjectMessage(\""\
	u"jsevent://markerclick:title=\" + title + \"#id=\"+IdMarker"\
	u"+\"#lat=\"+lat+\"#lng=\"+lng); \r   });\r   google.maps.ev"\
	u"ent.addListener(marker, \"dblclick\", function() {\r      "\
	u"    ptmarker=marker.getPosition()\r          IdMarker=-1;\r"\
	u"          for (var i = 0; i < allmarkers.length; i++){\r  "\
	u"          if (allmarkers[i]==marker) {\r              IdMa"\
	u"rker=i;\r            }\r          }\r          lat=parseFl"\
	u"oat(ptmarker.lat());\r          lng=parseFloat(ptmarker.ln"\
	u"g());\r          title=marker.getTitle();\r          sendO"\
	u"bjectMessage(\"jsevent://markerdblclick:title=\" + title +"\
	u" \"#id=\"+IdMarker+\"#lat=\"+lat+\"#lng=\"+lng); \r   });\r"\
	u"   google.maps.event.addListener(marker, \"dragstart\", fu"\
	u"nction() {\r          ptmarker=marker.getPosition()\r     "\
	u"     for (var i = 0; i < allmarkers.length; i++){\r       "\
	u"     if (allmarkers[i]==marker) {\r              IdMarker="\
	u"i;\r            }\r          }\r          lat=parseFloat(p"\
	u"tmarker.lat());\r          lng=parseFloat(ptmarker.lng());"\
	u"\r          title=marker.getTitle();\r          sendObject"\
	u"Message(\"jsevent://markerdragstart:title=\" + title + \"#"\
	u"id=\"+IdMarker+\"#lat=\"+lat+\"#lng=\"+lng); \r   });\r   "\
	u" google.maps.event.addListener(marker, \"drag\", function("\
	u") {\r          ptmarker=marker.getPosition()\r          fo"\
	u"r (var i = 0; i < allmarkers.length; i++){\r            if"\
	u" (allmarkers[i]==marker) {\r              IdMarker=i;\r   "\
	u"         }\r          }\r          lat=parseFloat(ptmarker"\
	u".lat());\r          lng=parseFloat(ptmarker.lng());\r     "\
	u"     title=marker.getTitle();\r          sendObjectMessage"\
	u"(\"jsevent://markerdrag:title=\" + title + \"#id=\"+IdMark"\
	u"er+\"#lat=\"+lat+\"#lng=\"+lng); \r    });\r   google.maps"\
	u".event.addListener(marker, \"dragend\", function() {\r    "\
	u"      ptmarker=marker.getPosition()\r          for (var i "\
	u"= 0; i < allmarkers.length; i++){\r            if (allmark"\
	u"ers[i]==marker) {\r              IdMarker=i;\r            "\
	u"}\r          }\r          lat=parseFloat(ptmarker.lat());\r"\
	u"          lng=parseFloat(ptmarker.lng());\r          title"\
	u"=marker.getTitle();\r          sendObjectMessage(\"jsevent"\
	u"://markerdragend:title=\" + title + \"#id=\"+IdMarker+\"#l"\
	u"at=\"+lat+\"#lng=\"+lng); \r   });\r   google.maps.event.a"\
	u"ddListener(marker, \"mousedown\", function() {\r          "\
	u"ptmarker=marker.getPosition()\r          for (var i = 0; i"\
	u" < allmarkers.length; i++){\r            if (allmarkers[i]"\
	u"==marker) {\r              IdMarker=i;\r            }\r   "\
	u"       }\r          lat=parseFloat(ptmarker.lat());\r     "\
	u"     lng=parseFloat(ptmarker.lng());\r          title=mark"\
	u"er.getTitle();\r          sendObjectMessage(\"jsevent://ma"\
	u"rkermousedown:title=\" + title + \"#id=\"+IdMarker+\"#lat="\
	u"\"+lat+\"#lng=\"+lng); \r   });\r   google.maps.event.addL"\
	u"istener(marker, \"mouseout\", function() {\r          ptma"\
	u"rker=marker.getPosition()\r          for (var i = 0; i < a"\
	u"llmarkers.length; i++){\r            if (allmarkers[i]==ma"\
	u"rker) {\r              IdMarker=i;\r            }\r       "\
	u"   }\r          lat=parseFloat(ptmarker.lat());\r         "\
	u" lng=parseFloat(ptmarker.lng());\r          title=marker.g"\
	u"etTitle();\r          sendObjectMessage(\"jsevent://marker"\
	u"mouseexit:title=\" + title + \"#id=\"+IdMarker+\"#lat=\"+l"\
	u"at+\"#lng=\"+lng); \r   });\r   google.maps.event.addListe"\
	u"ner(marker, \"mouseover\", function() {\r          ptmarke"\
	u"r=marker.getPosition()\r          for (var i = 0; i < allm"\
	u"arkers.length; i++){\r            if (allmarkers[i]==marke"\
	u"r) {\r              IdMarker=i;\r            }\r          "\
	u"}\r          lat=parseFloat(ptmarker.lat());\r          ln"\
	u"g=parseFloat(ptmarker.lng());\r          title=marker.getT"\
	u"itle();\r          sendObjectMessage(\"jsevent://markermou"\
	u"seenter:title=\" + title + \"#id=\"+IdMarker+\"#lat=\"+lat"\
	u"+\"#lng=\"+lng); \r   });\r  google.maps.event.addListener"\
	u"(marker, \"mouseup\", function() {\r          ptmarker=mar"\
	u"ker.getPosition()\r          for (var i = 0; i < allmarker"\
	u"s.length; i++){\r            if (allmarkers[i]==marker) {\r"\
	u"              IdMarker=i;\r            }\r          }\r   "\
	u"       lat=parseFloat(ptmarker.lat());\r          lng=pars"\
	u"eFloat(ptmarker.lng());\r          title=marker.getTitle()"\
	u";\r          sendObjectMessage(\"jsevent://markermouseup:t"\
	u"itle=\" + title + \"#id=\"+IdMarker+\"#lat=\"+lat+\"#lng=\""\
	u"+lng); \r   });\r }\r \r function startMarkerBounceAnimati"\
	u"on(IdMarker) {\r   if (IdMarker<allmarkers.length) {\r    "\
	u" allmarkers[IdMarker].setAnimation(google.maps.Animation.B"\
	u"OUNCE);\r   } else {\r     sendObjectMessage(\"jsevent://e"\
	u"rror:errorid=3\");\r   }\r }\r \r function stopMarkerBounc"\
	u"eAnimation(IdMarker) {\r   if (IdMarker<allmarkers.length)"\
	u" {\r     allmarkers[IdMarker].setAnimation(null);\r   } el"\
	u"se {\r     sendObjectMessage(\"jsevent://error:errorid=3\""\
	u");\r   }\r }\r \r function deleteMapMarker(IdMarker) {\r  "\
	u" if (IdMarker<allmarkers.length) {\r     allmarkers[IdMark"\
	u"er].setMap(null);\r     allmarkers.splice(IdMarker,1);\r  "\
	u"   allinfowindows.splice(IdMarker,1);\r   } else {\r     s"\
	u"endObjectMessage(\"jsevent://error:errorid=3\");\r   }\r  "\
	u" if (IdMarker<alllabels.length) {\r     alllabels[IdMarker"\
	u"].setMap(null);\r     alllabels.splice(IdMarker,1);\r   } "\
	u"else {\r     sendObjectMessage(\"jsevent://error:errorid=3"\
	u"\");\r   }\r }\r \r function deleteMapPolyline(IdMarker) {"\
	u"\r   if (IdMarker<allpolylines.length) {\r     allpolyline"\
	u"s[IdMarker].setMap(null);\r     allpolylines.splice(IdMark"\
	u"er,1);\r     allpolylinetext.splice(IdMarker,1);\r   } els"\
	u"e {\r     sendObjectMessage(\"jsevent://error:errorid=3\")"\
	u";\r   }\r }\r \r function deleteMapCluster(IdMarker) {\r  "\
	u" if (IdMarker<allclusters.length) {\r     allclusters[IdMa"\
	u"rker].clearMarkers();\r     allclusters.splice(IdMarker,1)"\
	u";\r   } else {\r     sendObjectMessage(\"jsevent://error:e"\
	u"rrorid=3\");\r   }\r }\r \r function deleteMapPolygon(IdMa"\
	u"rker) {\r   if (IdMarker<allpolygons.length) {\r     allpo"\
	u"lygons[IdMarker].setMap(null);\r     allpolygons.splice(Id"\
	u"Marker,1);\r     allpolygontext.splice(IdMarker,1);\r   } "\
	u"else {\r     sendObjectMessage(\"jsevent://error:errorid=3"\
	u"\");\r   }\r }\r \r function deleteMapDirections(IdDir) {\r"\
	u"   if (IdDir<alldirections.length) {\r     alldirections[I"\
	u"dDir].setMap(null);\r     alldirections.splice(IdDir,1);\r"\
	u"   } else {\r     sendObjectMessage(\"jsevent://error:erro"\
	u"rid=3\");\r   }\r }\r \r function deleteKMLLayer(IdLayer) "\
	u"{\r   if (IdLayer<allkmllayers.length) {\r     allkmllayer"\
	u"s[IdLayer].setMap(null);\r     allkmllayers.splice(IdLayer"\
	u",1);\r   } else {\r     sendObjectMessage(\"jsevent://erro"\
	u"r:errorid=3\");\r   }\r }\r \r function openMarkerInfoWind"\
	u"owHtml(IdMarker, html) {\r   if (IdMarker<allmarkers.lengt"\
	u"h) {\r     var marker = allmarkers[IdMarker];\r     var in"\
	u"fowindow = allinfowindows[IdMarker];\r     infowindow.setC"\
	u"ontent(html);\r     infowindow.open(map, marker);\r   } el"\
	u"se {\r     sendObjectMessage(\"jsevent://error:errorid=3\""\
	u");\r   }\r }\r \r function openSubMarkerInfoWindowHtml(IdM"\
	u"arker, html) {\r   if (IdMarker<allsubmarkers.length) {\r "\
	u"    var marker = allsubmarkers[IdMarker];\r     var infowi"\
	u"ndow = allsubinfowindows[IdMarker];\r     infowindow.setCo"\
	u"ntent(html);\r     infowindow.open(map, marker);\r   } els"\
	u"e {\r     sendObjectMessage(\"jsevent://error:errorid=3\")"\
	u";\r   }\r }\r \r function closeMarkerInfoWindowHtml(IdMark"\
	u"er) {\r   if (IdMarker<allmarkers.length) {\r     var mark"\
	u"er = allmarkers[IdMarker];\r     var infowindow = allinfow"\
	u"indows[IdMarker];\r     infowindow.close();\r   } else {\r"\
	u"     sendObjectMessage(\"jsevent://error:errorid=3\");\r  "\
	u" }\r }\r \r function closeSubMarkerInfoWindowHtml(IdMarker"\
	u") {\r   if (IdMarker<allsubmarkers.length) {\r     var mar"\
	u"ker = allsubmarkers[IdMarker];\r     var infowindow = alls"\
	u"ubinfowindows[IdMarker];\r     infowindow.close();\r   } e"\
	u"lse {\r     sendObjectMessage(\"jsevent://error:errorid=3\""\
	u");\r   }\r }\r \r function deleteAllMapMarker() {\r   for "\
	u"(i in allmarkers) {\r     allmarkers[i].setMap(null);\r   "\
	u"  delete allmarkers[i];\r   }\r   allmarkers.splice(0,allm"\
	u"arkers.length);\r   for (i in allinfowindows) {\r     alli"\
	u"nfowindows[i] = null;\r     delete allinfowindows[i];\r   "\
	u"}\r   allinfowindows.splice(0,allinfowindows.length);\r   "\
	u"for (i in alllabels) {\r     alllabels[i].setMap(null);\r "\
	u"    delete alllabels[i];\r   }\r   alllabels.splice(0,alll"\
	u"abels.length);\r }\r \r function deleteAllMapPolyline() {\r"\
	u"   for (i in allpolylines) {\r     allpolylines[i].setMap("\
	u"null);\r   }\r   allpolylines.splice(0,allpolylines.length"\
	u");\r }\r \r function deleteAllMapCluster() {\r   for (i in"\
	u" allclusters) {\r     allclusters[i].clearMarkers();\r   }"\
	u"\r   allclusters.splice(0,allclusters.length);\r }\r \r fu"\
	u"nction deleteAllMapPolygon() {\r   for (i in allpolygons) "\
	u"{\r     allpolygons[i].setMap(null);\r   }\r   allpolygons"\
	u".splice(0,allpolygons.length);\r }\r \r function deleteAll"\
	u"Directions() {\r   for (i in alldirections) {\r     alldir"\
	u"ections[i].setMap(null);\r   }\r   alldirections.splice(0,"\
	u"alldirections.length);\r }\r \r function deleteAllKMLLayer"\
	u"() {\r   for (i in allkmllayers) {\r     allkmllayers[i].s"\
	u"etMap(null);\r   }\r   allkmllayers.splice(0,allkmllayers."\
	u"length);\r }\r \r function ShowTraffic() {\r   trafficLaye"\
	u"r.setMap(map);\r }\r \r function HideTraffic() {\r   traff"\
	u"icLayer.setMap(null);\r }\r \r function ShowBicycling() {\r"\
	u"   bicyclingLayer.setMap(map);\r }\r \r function HideBicyl"\
	u"ing() {\r   bicyclingLayer.setMap(null);\r }\r \r function"\
	u" ShowPanoramio() {\r   panoramioLayer.setMap(map);\r }\r \r"\
	u" function HidePanoramio() {\r   panoramioLayer.setMap(null"\
	u");\r }\r \r function ShowCloud() {\r   cloudLayer.setMap(m"\
	u"ap);\r }\r \r function HideCloud() {\r   cloudLayer.setMap"\
	u"(null);\r }\r \r function ShowWeather() {\r   weatherLayer"\
	u".setMap(map);\r }\r \r function HideWeather() {\r   weathe"\
	u"rLayer.setMap(null);\r }\r \r"
#define HTML_FILE_4 u" function initialize() {\r  var latlng = new google.maps.L"\
	u"atLng(%latitude%, %longitude%);\r var myStyles =[\r     {\r"\
	u"         featureType: \"poi\",\r         elementType: \"la"\
	u"bels\",\r         stylers: [\r               { visibility:"\
	u" \"%disablepoi%\" }\r         ]\r     }\r ];\r  var myOpti"\
	u"ons = {\r    navigationControlOptions: {\r      style: goo"\
	u"gle.maps.NavigationControlStyle.%controlstype%\r    },\r  "\
	u" panControl: %panControl%,\r   panControlOptions: {\r     "\
	u"position: google.maps.ControlPosition.%panControlPosition%"\
	u"\r   },\r   zoomControl: %zoomControl%,\r   zoomControlOpt"\
	u"ions: {\r     position: google.maps.ControlPosition.%zoomC"\
	u"ontrolPosition%,\r     style: google.maps.ZoomControlStyle"\
	u".%zoomControlStyle%   },\r   mapTypeControl: %mapTypeContr"\
	u"ol%,\r   mapTypeControlOptions: {\r     position: google.m"\
	u"aps.ControlPosition.%mapTypeControlPosition%,\r     style:"\
	u" google.maps.MapTypeControlStyle.%mapTypeControlStyle%   }"\
	u",\r   scaleControl: %scaleControl%,\r   scaleControlOption"\
	u"s: {\r     position: google.maps.ControlPosition.%scaleCon"\
	u"trolPosition%\r   },\r   streetViewControl: %streetViewCon"\
	u"trol%,\r   streetViewControlOptions: {\r     position: goo"\
	u"gle.maps.ControlPosition.%streetViewControlPosition%\r   }"\
	u",\r   overviewMapControl: %overviewMapControl%,\r   overvi"\
	u"ewMapControlOptions: {\r     opened: %overviewMapControlOp"\
	u"ened%\r   },\r   disableDoubleClickZoom: %disableDoubleCli"\
	u"ckZoom%,\r   draggable: %draggable%,\r   keyboardShortcuts"\
	u": %keyboardShortcuts%,\r   scrollwheel: %scrollwheel%,\r  "\
	u" disableDefaultUI: %disableDefaultUI%,\r   zoom: %zoom%,\r"\
	u"   center: latlng,\r   mapTypeId: google.maps.MapTypeId.%m"\
	u"aptype%,\r   styles: myStyles\r   , tilt: %disabletilt%   "\
	u", rotateControl: %rotateControl%   , fullscreenControl: fa"\
	u"lse   , rotateControlOptions: {\r     position: google.map"\
	u"s.ControlPosition.%rotateControlPosition%\r   },\r  };\r  "\
	u"streetviewService = new google.maps.StreetViewService();\r"\
	u"  trafficLayer = new google.maps.TrafficLayer();\r  bicycl"\
	u"ingLayer = new google.maps.BicyclingLayer();\r  panoramioL"\
	u"ayer = new google.maps.panoramio.PanoramioLayer();\r  var "\
	u"myWeatherOptions = {\r   temperatureUnits: google.maps.wea"\
	u"ther.TemperatureUnit.%weatherTemperature%,\r   labelColor:"\
	u" google.maps.weather.LabelColor.%weatherLabelColor%,\r   s"\
	u"uppressInfoWindows: %weatherSuppressInfoWinddows%,\r   win"\
	u"dSpeedUnits: google.maps.weather.WindSpeedUnit.%weatherWin"\
	u"dSpeed%\r  };\r  cloudLayer = new google.maps.weather.Clou"\
	u"dLayer()\r  weatherLayer = new google.maps.weather.Weather"\
	u"Layer(myWeatherOptions);\r  map = new google.maps.Map(docu"\
	u"ment.getElementById(\"map_canvas\"), myOptions);\r    traf"\
	u"ficLayer.setMap(%showtraffic%);\r    bicyclingLayer.setMap"\
	u"(%showbicycling%);\r    panoramioLayer.setMap(%showpanoram"\
	u"io%);\r    cloudLayer.setMap(%showcloud%);\r    weatherLay"\
	u"er.setMap(%showweather%);\r    streetviewPanorama = map.ge"\
	u"tStreetView();\r  if (%SVVisible%){\r    streetviewPanoram"\
	u"a.setVisible(true);    showStreetview(\"%SVLat%\", \"%SVLn"\
	u"g%\", %SVHeading%, %SVZoom%, %SVPitch%);\r  }\r calcLayer "\
	u"= new google.maps.OverlayView();\r calcLayer.draw = functi"\
	u"on() {};\r calcLayer.setMap(map);\r    google.maps.event.a"\
	u"ddListener(map, \"tilesloaded\", function() {\r        goo"\
	u"gle.maps.event.addListener(streetviewPanorama, \"position_"\
	u"changed\", function() {\r          NewPosition = streetvie"\
	u"wPanorama.getPosition();\r          var lat = NewPosition."\
	u"lat();\r          var lng = NewPosition.lng();\r          "\
	u"sendObjectMessage(\"jsevent://streetviewmove:lat=\" + lat "\
	u"+ \"#lng=\" + lng+\"#x=\"+mx+\"#y=\"+my); \r        });\r "\
	u"       google.maps.event.addListener(streetviewPanorama, \""\
	u"pov_changed\", function() {\r        var heading = streetv"\
	u"iewPanorama.getPov().heading;\r        if (heading)\r     "\
	u"     heading = parseInt(heading);\r        else\r         "\
	u" heading = -1;\r        var pitch = streetviewPanorama.get"\
	u"Pov().pitch;\r        if (pitch)\r          pitch = parseI"\
	u"nt(pitch);\r        else\r          pitch = -1;\r        v"\
	u"ar zoom = streetviewPanorama.getPov().zoom;\r        if (z"\
	u"oom)\r          zoom = parseInt(zoom);\r        else\r    "\
	u"      zoom = -1;\r        sendObjectMessage(\"jsevent://st"\
	u"reetviewchange:heading=\" + heading + \"#pitch=\" + pitch "\
	u"+ \"#zoom=\" + zoom); \r        });\r          sendObjectM"\
	u"essage(\"jsevent://tilesload\"); \r    });\r"
#define HTML_FILE_5 u"    google.maps.event.addListener(map, \"click\", function"\
	u"(event) {\r         var ClickLatLng = event.latLng;\r     "\
	u"    if (ClickLatLng) {\r            var lat = ClickLatLng."\
	u"lat();\r            var lng = ClickLatLng.lng();\r        "\
	u"    sendObjectMessage(\"jsevent://click:lat=\"+lat+\"#lng="\
	u"\"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r    });\r    "\
	u"google.maps.event.addListener(map, \"dblclick\", function("\
	u"event) {\r         var ClickLatLng = event.latLng;\r      "\
	u"   if (ClickLatLng) {\r            var lat = ClickLatLng.l"\
	u"at();\r            var lng = ClickLatLng.lng();\r         "\
	u"   sendObjectMessage(\"jsevent://dblclick:lat=\"+lat+\"#ln"\
	u"g=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r    });\r  "\
	u"  google.maps.event.addListener(map, \"mousemove\", functi"\
	u"on(event) {\r         var ClickLatLng = event.latLng;\r   "\
	u"      if (ClickLatLng) {\r            var lat = ClickLatLn"\
	u"g.lat();\r            var lng = ClickLatLng.lng();\r      "\
	u"      sendObjectMessage(\"jsevent://mousemove:lat=\"+lat+\""\
	u"#lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r    });\r"\
	u"    google.maps.event.addListener(map, \"mouseout\", funct"\
	u"ion(event) {\r         var ClickLatLng = event.latLng;\r  "\
	u"       if (ClickLatLng) {\r            var lat = ClickLatL"\
	u"ng.lat();\r            var lng = ClickLatLng.lng();\r     "\
	u"       sendObjectMessage(\"jsevent://mouseexit:lat=\"+lat+"\
	u"\"#lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r    })"\
	u";\r    google.maps.event.addListener(map, \"mouseover\", f"\
	u"unction(event) {\r         var ClickLatLng = event.latLng;"\
	u"\r         if (ClickLatLng) {\r            var lat = Click"\
	u"LatLng.lat();\r            var lng = ClickLatLng.lng();\r "\
	u"           sendObjectMessage(\"jsevent://mouseenter:lat=\""\
	u"+lat+\"#lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r "\
	u"   });\r    google.maps.event.addListener(map, \"dragstart"\
	u"\", function() {\r         var ptcenter=map.getCenter();\r"\
	u"         var lat=ptcenter.lat();\r         var lng=ptcente"\
	u"r.lng();\r            sendObjectMessage(\"jsevent://dragst"\
	u"art:lat=\"+lat+\"#lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r   "\
	u" });\r    google.maps.event.addListener(map, \"dragend\", "\
	u"function() {\r         var ptcenter=map.getCenter();\r    "\
	u"     var lat=ptcenter.lat();\r         var lng=ptcenter.ln"\
	u"g();\r            sendObjectMessage(\"jsevent://dragend:la"\
	u"t=\"+lat+\"#lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r    });\r"\
	u"    google.maps.event.addListener(map, \"drag\", function("\
	u") {\r         var ptcenter=map.getCenter();\r         var "\
	u"lat=ptcenter.lat();\r         var lng=ptcenter.lng();\r   "\
	u"         sendObjectMessage(\"jsevent://drag:lat=\"+lat+\"#"\
	u"lng=\"+lng+\"#x=\"+mx+\"#y=\"+my); \r    });\r    google.m"\
	u"aps.event.addListener(map, \"idle\", function() {\r       "\
	u"  sendObjectMessage(\"jsevent://idle\"); \r    });\r    go"\
	u"ogle.maps.event.addListener(map, \"rightclick\", function("\
	u"event) {\r         var ClickLatLng = event.latLng;\r      "\
	u"   if (ClickLatLng) {\r            var lat = ClickLatLng.l"\
	u"at();\r            var lng = ClickLatLng.lng();\r         "\
	u"   sendObjectMessage(\"jsevent://click:lat=\"+lat+\"#lng=\""\
	u"+lng+\"#x=\"+mx+\"#y=\"+my); \r         }\r    });\r"
#define HTML_FILE_6 u"    google.maps.event.addListener(map, \"maptypeid_changed"\
	u"\", function() {\r         var TypeMap=map.getMapTypeId();"\
	u"\r         var IdTypeMap=0;\r         switch(TypeMap)\r   "\
	u"      {\r         case google.maps.MapTypeId.ROADMAP:\r   "\
	u"        IdTypeMap=0;\r           break\r         case goog"\
	u"le.maps.MapTypeId.SATELLITE:\r           IdTypeMap=1;\r   "\
	u"        break\r         case google.maps.MapTypeId.HYBRID:"\
	u"\r           IdTypeMap=2;\r           break\r         case"\
	u" google.maps.MapTypeId.TERRAIN:\r           IdTypeMap=3;\r"\
	u"           break\r         }\r         sendObjectMessage(\""\
	u"jsevent://typeidchange:id=\"+IdTypeMap); \r    });\r    go"\
	u"ogle.maps.event.addListener(map, \"zoom_changed\", functio"\
	u"n() {\r         var ZoomLevel = map.getZoom();\r         d"\
	u"eleteSubMarkers();\r         sendObjectMessage(\"jsevent:/"\
	u"/zoomchange:zoomlevel=\"+ZoomLevel); \r    });\r var point"\
	u" = new google.maps.LatLng(parseFloat(0), parseFloat(0));\r"\
	u" var markerOptions = { map: null, position: point};\r pLM "\
	u"= new google.maps.Marker(markerOptions);\r pL = new Label("\
	u"{   map: map }, \"%plcolor%\", \"%plbordercolor%\", \"%plp"\
	u"adding%\", \"%plfontname%\", \"%plfontcolor%\", %plfontsiz"\
	u"e%, %plleft%, %pltop%);\r pL.bindTo(\"position\", pLM, \"p"\
	u"osition\");\r pL.set(\"text\", pLT);\r pL.hide();\r }\r \r"\
	u" function getMapScale(lat)\r {\r    var circumference = 40"\
	u"075040;\r    var zoom = map.getZoom();\r    return (circum"\
	u"ference * Math.cos(lat * Math.PI/180) / Math.pow(2, zoom +"\
	u" 8));\r }\r function drawCircle(lat, lng, radiusp, dir, po"\
	u"ints) {\r   var mpp = getMapScale(lat);\r   var point = ne"\
	u"w google.maps.LatLng(lat, lng);\r   var d2r = Math.PI / 18"\
	u"0;   // degrees to radians\r   var r2d = 180 / Math.PI;   "\
	u"// radians to degrees\r   var earthsradius = 6371;   // ra"\
	u"dius of the earth in km\r   var radius = (radiusp * (mpp /"\
	u" 1000));\r   var rlat = (radius / earthsradius) * r2d;\r  "\
	u" var rlng = rlat / Math.cos(point.lat() * d2r);\r   var ex"\
	u"tp = new Array();\r   if (dir == 1) {\r      var start = 0"\
	u";\r      var end = points;\r   } else {\r      var start ="\
	u" points;\r      var end = 0;\r   }\r   for (var i = start;"\
	u" (dir == 1 ? i < end : i > end); i = i + dir)\r   {\r     "\
	u" var theta = Math.PI * (i / (points / 2));\r      ey = poi"\
	u"nt.lng() + (rlng * Math.cos(theta));\r      ex = point.lat"\
	u"() + (rlat * Math.sin(theta));\r      var pAr = new Array("\
	u");      pAr.push(ex);      pAr.push(ey);      extp.push(pA"\
	u"r);\r   }\r   return extp;\r }\r function drawSubMarkers(l"\
	u"at, lng, radius, dir, points, hints, icolor, polycolor, po"\
	u"lywidth, polyopacity) {\r   deleteSubMarkers();\r   for (j"\
	u" = 0; j < points; j++){\r     var marray = drawCircle(lat,"\
	u" lng, radius[j], dir, points);\r     var marker = new goog"\
	u"le.maps.Marker({map: map, icon: icolor[j], title: hints[j]"\
	u", position: new google.maps.LatLng(marray[j][0], marray[j]"\
	u"[1])});\r     var coords = new Array();\r     coords.push("\
	u"new google.maps.LatLng(lat, lng));\r     coords.push(new g"\
	u"oogle.maps.LatLng(marray[j][0], marray[j][1]));\r     var "\
	u"poly = new google.maps.Polyline({map: map, path: coords, s"\
	u"trokeColor: polycolor[j], strokeWeight: polywidth[j], stro"\
	u"keOpacity: polyopacity[j]});\r     allsubmarkers.push(mark"\
	u"er);\r     allsubpolylines.push(poly);\r     var infowindo"\
	u"w = new google.maps.InfoWindow({});\r     allsubinfowindow"\
	u"s.push(infowindow);\r     google.maps.event.addListener(ma"\
	u"rker, \"click\", function() {\r          ptmarker = this.g"\
	u"etPosition()\r          IdMarker = -1;\r          for (var"\
	u" i = 0; i < allsubmarkers.length; i++){\r            if (a"\
	u"llsubmarkers[i] == this) {\r              IdMarker = i;\r "\
	u"           }\r          }\r          lat = parseFloat(ptma"\
	u"rker.lat());\r          lng = parseFloat(ptmarker.lng());\r"\
	u"          title = this.getTitle();\r          sendObjectMe"\
	u"ssage(\"jsevent://submarkerclick:title=\" + title + \"#id="\
	u"\"+IdMarker+\"#lat=\"+lat+\"#lng=\"+lng); \r     });\r  }\r"\
	u"}\r function deleteSubMarkers() {\r   for (i in allsubmark"\
	u"ers) {\r     allsubmarkers[i].setMap(null);\r     delete a"\
	u"llsubmarkers[i];\r   }\r   allsubmarkers.splice(0,allsubma"\
	u"rkers.length);\r   for (i in allsubpolylines) {\r     alls"\
	u"ubpolylines[i].setMap(null);\r     delete allsubpolylines["\
	u"i];\r   }\r   allsubpolylines.splice(0,allsubpolylines.len"\
	u"gth);\r   for (i in allsubinfowindows) {\r     allsubinfow"\
	u"indows[i] = null;\r     delete allsubinfowindows[i];\r   }"\
	u"\r   allsubinfowindows.splice(0,allsubinfowindows.length);"\
	u"\r}\r google.maps.event.addDomListener(window, \"load\", i"\
	u"nitialize);\r \r  function SetValues()\r    {\r    mx = wi"\
	u"ndow.event.clientX;\r    my = window.event.clientY;\r    }"\
	u"\rvar sendObjectMessage = function(parameters) {\r  inject"\
	u"edObject.setPrivateImeOptions(parameters); \r  injectedObj"\
	u"ect.performClick();\r };\rfunction touchStart(event) {\r  "\
	u"var allTouches = event.touches;\r  for (var i = 0; i < all"\
	u"Touches.length; i++){\r    mx = event.touches[i].pageX;\r "\
	u"   my = event.touches[i].pageY;\r  }\r}\r</script>\r</head"\
	u">\r<body>\r  <div id=\"map_canvas\" onmousedown=SetValues("\
	u");></div>\r  <input type=\"hidden\" name=\"result\" id=\"r"\
	u"esult\" value=\"\" />\r</body>\r</html>"
}	/* namespace Tmswebgmapsconst */
}	/* namespace Fmx */
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX_TMSWEBGMAPSCONST)
using namespace Fmx::Tmswebgmapsconst;
#endif
#if !defined(DELPHIHEADER_NO_IMPLICIT_NAMESPACE_USE) && !defined(NO_USING_NAMESPACE_FMX)
using namespace Fmx;
#endif
#pragma pack(pop)
#pragma option pop

#pragma delphiheader end.
//-- end unit ----------------------------------------------------------------
#endif	// Fmx_TmswebgmapsconstHPP
