var L_invalidinvoketarget_text="Invalid invoke target specified.",L_invaliddirections_text="Invalid argument passed; both start and end must be present.",L_invalidpageindex_text="Invalid search results page index is passed.",L_invalidelement_text="Invalid element id; unable to find the element in the document body.",L_noheadelement_text="Head element is missing for the current document; cannot initialize the API framework.",L_noserviceurl_text="Either a service url or script url is required to create VENetwork instance.",L_noscripturl_text="Invalid script source url is assigned; cannot download the assigned script.",L_nostylesurl_text="Invalid style source url is assigned; cannot attach the assigned styles.",L_invalidwhatwhere_text="Invalid what/where parameters; either 'what' or 'where' must be present.",L_notinitialized_text="Map is not loaded; cannot perform this operation.",L_noroute_text="Cannot calculate route at this point; try again later.",L_invalidpushpin_text="Invalid pushpin instance.",L_invalidpushpinid_text="Invalid pushpin id; either id is empty or another pushpin already exists with that id.",L_invalidpolylineid_text="Invalid polyline id; either id is empty or another polyline already exists with that id.",L_invalidpolygonid_text="Invalid polygon id; either id is empty or another polygon already exists with that id.",L_invalidargument_text="Invalid argument; input argument '%1' is not a valid '%2' value.",L_invalidlayerid_text="Invalid layer id; either id is empty or another layer already exists with that id.",L_invalidlayertype_text="Invalid layer type.",L_invalidlayersource_text="Invalid layer source; either layer is empty or does not exist.",L_invalidsourceid_text="Invalid source id; either id is empty or another tile source already exists with that id.",L_invalidminmaxzoom_text="Min zoom is greater than max zoom.",L_invalidopacity_text="Invalid opacity value.",L_loadxml_text="Unable to load source file.",L_Help_Text="Help",L_ErrorServerBusy_Text="The server is temporarily unavailable. Try again later.",L_UnsupportMethod_Text="%1 method is not supported.",L_UnsupportClass_Text="%1 class is not supported.",L_UnsupportProperty_Text="'%1' class does not support property '%2' equals to '%3'.",L_error_text="Error",L_close_text="close",L_what_text="What",L_where_text="Where",L_find_text="Find",L_selectlocation_text="Select a location",L_Start_Text="Start",L_End_Text="End",L_DirectionsGetDirections_Text="Get directions",L_loading_text=".. Loading ..",L_arriveat_text="Arrive at",L_startat_text="Start at",L_step_text="Step %1 of %2",L_DirectionsStep_Text="Step",L_invalidroute_Text="Unable to find a route for the locations you entered. Ensure that your start and end locations are correct, and try again.",L_invalidlocation_Text="The location you entered cannot be found.",L_routelessthanoneminute_Text="Less Than One Minute",L_hoursandminutes_Text="%1 Hours, %2 Minutes",L_minutes_Text="%1 Minutes",L_CollectionManagerViewerDefaultTitle_Text="Shared Collection",L_CollectionManagerUnsavedCollectionTitle_Text="Unsaved Collection",L_AnnotationConfDefaultTitle_Text="Untitled item",L_TrafficPopupSeverity_Text="Severity",L_TrafficPopupLocation_Text="Location",L_TrafficPopupDescription_Text="Description",L_TrafficPopupStartTime_Text="Start time",L_TrafficPopupEstEndTime_Text="Est. end time",L_TrafficManagerSerious_Text="Serious",L_TrafficManagerModerate_Text="Moderate",L_TrafficManagerMinor_Text="Minor",L_TrafficManager_Zoomout_Text="Zoom out to view Traffic information",L_TrafficManager_Zoomin_Text="Zoom in to view Traffic information",L_ClientTokenInvalid_Text="Invalid client token.",L_ClientTokenExpired_Text="Expired client token.",L_CredentialsInvalid_Text="Invalid Credentials.",L_Shp_IncorrectPoints_Text="The number of points does not match the specified VEShape type.",L_Shp_IncorrectLineWidth_Text="The line width must be a positive integer.",L_Shp_IncorrectZoomLevel_Text="The specified zoom level is invalid. The valid range is 1 to 21,inclusive.",L_Shp_IncorrectZoomLevel2_Text="Max zoom is less than min zoom.",L_shp_Notinitialized_text="Shape is not initialized.",L_ShpExist_text="This shape has already been added to layer.",L_invalidzindex_text="Invalid z-Index parameters; either 'icon' or 'polyshape' must be present.",L_altitudemodemismatch_Text="All altitudes must have the same altitudeMode in a VEShape.",L_invalidwhere_text="Invalid argument; input argument 'where' is not a valid 'string, VELatLong, VELatLongRectangle, or VEPlace ' value.",L_invalidnonnegativeint_text="Invalid argument; input argument '%1' must be a non-negative int value.",L_invalidbetweenint_text="Invalid argument; input argument '%1' must be between %2 and %3, inclusive.",L_invalidsearchlocation_Text="%1 could not find a match for the location. Please check your spelling, enter the complete address including country name and commas, and try again.",L_invalidsearchresult_Text="No results were found.",L_ClusterDefaultTitle_Text="%1 locations near here",L_ClusterDefaultDescription_Text="Zoom in for details.",L_InvalidClusterLayer_Text="Cannot apply clustering to a cluster layer.",L_DashboardBirdsEye_Text="Bird's eye",L_DashboardBirdsEyeText_Text="See this location in bird's eye view",L_Dashboard3DText_Text="See this location in Bing Maps 3D",L_Dashboard3DInstalled_Text="Bing Maps 3D has finished updating",L_ObliqueCompassSelectDirection_Text="Change the direction of the view",L_ObliqueModeImageNotAvailable_Text="Sorry, bird's eye images aren't available here.",L_MinimapHybrid_Text="H",L_MinimapRoad_Text="R",L_MinimapHideToolTip_Text="Hide the mini map",L_MinimapShowToolTip_Text="Show the mini map",L_MinimapLargerToolTip_Text="Larger mini map",L_MinimapSmallerToolTip_Text="Smaller mini map",L_MinimapRoadToolTip_Text="Switch to road view",L_MinimapHybridToolTip_Text="Switch to hybrid view",L_MinimapDragToolTip_Text="Drag to move the map",L_MinimapReticuleDragToolTip_Text="Drag to center map",L_ScaleBarMiles_Text="miles",L_ScaleBarKilometers_Text="km",L_ScaleBarMeters_Text="m",L_ScaleBarYards_Text="yds",L_NavActionFlatland_Text="2D",L_NavActionView3D_Text="3D",L_NavActionRoad_Text="Road",L_NavActionAerial_Text="Aerial",L_NavActionHybrid_Text="Hybrid",L_NavActionLabels_Text="Labels",L_NavActionTraffic_Text="Traffic",L_NavActionHideToolTip_Text="Hide the view control",L_NavActionShowToolTip_Text="Show the view control",L_NavActionFlatlandToolTip_Text="View map in 2D mode",L_NavActionView3DToolTip_Text="View map in 3D mode with Bing Maps 3D (Beta)",L_NavActionOrthoToolTip_Text="Switch to map view",L_NavActionObliqueToolTip_Text="Switch to bird's eye view",L_NavActionStreetSideToolTip_Text="Street-level view",L_NavAction3DOrthoToolTip_Text="Look down",L_NavAction3DObliqueToolTip_Text="Look down at an angle",L_NavAction3DStreetSideToolTip_Text="Look toward horizon",L_NavActionShowTrafficToolTip_Text="Show traffic on the map",L_NavActionHideTrafficToolTip_Text="Hide traffic on the map",L_NavActionRoadToolTip_Text="Switch to road view",L_NavActionAerialToolTip_Text="Switch to aerial view",L_NavActionHybridToolTip_Text="Switch to hybrid view",L_NavActionObliqueRotationToolTip_CW_Text="Rotate the camera angle counterclockwise",L_NavActionObliqueRotationToolTip_CCW_Text="Rotate the camera angle clockwise",L_NavActionShowObliqueToolTip_Text="Show bird's eye images on the map",L_NavActionHideObliqueToolTip_Text="Hide bird's eye images on the map",L_NavActionShowLabels_Text="Show labels",L_NavActionHideLabels_Text="Hide labels",L_North_Text="north",L_East_Text="east",L_South_Text="south",L_West_Text="west",L_ObliqueSkippingOneDirection_Text="A bird's eye image facing %2 isn't available for this location. Facing %1 instead.",L_ObliqueSkippingTwoDirections_Text="Bird's eye images facing %2 or %3 aren't available for this location. Facing %1 instead.",L_ObliqueSpinNoOtherImagery_Text="No other bird's eye images are available for this location. Continuing to face %1.",L_ObliqueNoImageryInRequestedDirection_Text="Bird's eye images facing %2 aren't available for this location. Continuing to face %1.",L_NavActionCompassPan_Text="Pan in any direction",L_ZoomBarMinusToolTip_Text="Zoom out. To zoom continuously, click and hold this button.",L_ZoomBarPlusToolTip_Text="Zoom in. To zoom continuously, click and hold this button.",L_ZoomBarSliderToolTip_Text="Move slider to zoom in or zoom out",L_BrowserNotSupported_Text="To use this feature, open Live Search in Windows Internet Explorer version 6 or 7. For more information, and to download the latest version, visit the Microsoft Internet Explorer website (%1%3%2).",L_BrowserNotSupported3D_Text="Bing Maps 3D is currently not supported for your browser. For a list of supported browsers, see Help.",L_NoHardwareAcceleration_Text="Bing Maps 3D has detected that hardware acceleration is turned off.",L_3DLoading_Text="Initializing Bing Maps 3D (Beta).",L_UnableToDisplay3DVIAModel_Text="Unable to display 3D models in collections at this time. Please try again later.",L_InstallVE3DVIATitle_Text="Virtual Earth - 3DVIA (Beta) installation",L_LaunchVE3DVIA_Text="Launching Virtual Earth - 3DVIA (Beta)",L_PluginFeatureNotAvailable_Text="Feature is currently not available. Please try again later.",L_MapLegendTrafficSlow_Text="Slow",L_MapLegendTrafficFast_Text="Fast",L_MapLegendAndPopupLink_Text="Zoom in for traffic details",L_GeoRssInvalidFormatError_Text="The GeoRSS file you have tried to import is improperly formatted.",L_BingSearchWatermark_Text="Search on Bing",L_BingSearchGoTooltip_Text="Search on Bing",L_BingLogoTooltip_Text="Bing Maps",L_MapCopyrightMicrosoft="© 2014 Microsoft Corporation",L_MapCopyrightTraffic="Traffic.com",L_MapControlPlatformName_Text="Virtual Earth",L_SupportedBrowserDownloadUrl_Text="http://www.microsoft.com/windows/ie/downloads/default.mspx";_VERegisterNamespaces("MapControl");MapControl.Features={PlatformName:L_MapControlPlatformName_Text,Image:{PoweredLogo:"logo_powered_by_map.png"},MapStyle:{Road:true,Shaded:true,Aerial:true,Hybrid:true,BirdsEye:true,View3D:true},BirdsEyeAtZoomLevel:10,ScaleBarKilometers:false,Traffic:{Flow:{Slow:"0-25 mph",Moderate:"25-45 mph",Fast:"45+ mph"},Enabled:true,ShowOnNavbar:false,ShowIncidents:true},RouteOptions:{RouteMode:{Driving:true,Walking:true},UseMWS:true,UseTraffic:true},Minimap:{ShowByDefault:false}};function _VERegisterNamespaces(){for(var d=0;d=0){var a=document.createElement("div"),b=null;a.style.visible="hidden";a.style.overflowY="scroll";a.style.position="absolute";a.style.width=0;document.body.insertAdjacentElement("afterBegin",a);b=a.offsetWidth;a.parentNode.removeChild(a);if(!b)b=16;scrollbarWidth=b;return b}else return 0}function GetUrlPrefix(){var a=window.location.pathname.lastIndexOf("/"),b=window.location.protocol+"//"+window.location.hostname+window.location.pathname.substring(0,a+1);return b}function GetUrlParameterString(){var a=window.location.search;if(a.length==0||a.indexOf("?")==-1)return "";return a.substr(a.indexOf("?")+1)}function CheckWipExistence(){var a=GetUrlParameterString();if(a!=""&&a.indexOf("wip=")>-1)return true;return false}function GetUrlParameters(){var b=[],d=GetUrlParameterString();if(!d)return b;var e=d.split("&");for(var c=0;c=0)a.onreadystatechange=function(){if(a&&("loaded"==a.readyState||"complete"==a.readyState)){a.onreadystatechange=null;EndInvoke(g,h,f,a,c)}};else a.onload=function(){a.onload=null;EndInvoke(g,h,f,a,c)};VENetwork.GetAttachTarget().appendChild(a)}}function EndInvoke(endInvokeTarget,fnCallback,endInvokeMethod,elScript,executionId){var objects=null;if(endInvokeMethod)eval("if(typeof "+endInvokeMethod+" == 'function') {objects = "+endInvokeMethod+"();}");setTimeout(function(){if(elScript.parentNode)elScript.parentNode.removeChild(elScript);elScript=null},100);if(fnCallback!=null&&fnCallback!="undefined")fnCallback(objects,endInvokeTarget);if(Msn.VE.API&&Msn.VE.API.Globals.veonendinvokeevent)Msn.VE.API.Globals.veonendinvokeevent()}VENetwork.GetExecutionID=function(){var a=new Date,b=Date.UTC(a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds());b+=Math.round(Math.random()*1000000);return b};function GetXmlHttp(){var a=null;if(window.XMLHttpRequest)a=new XMLHttpRequest;else if(window.ActiveXObject)try{a=new ActiveXObject("Msxml2.XmlHttp.6.0")}catch(b){try{a=new ActiveXObject("Msxml2.XmlHttp.3.0")}catch(c){try{a=new ActiveXObject("Msxml2.XMLHTTP")}catch(d){try{a=new ActiveXObject("Microsoft.XMLHTTP")}catch(e){}}}}else throw"XMLHTTP Required: Browser not supported";return a}VENetwork.AttachStyleSheetCallback=function(a){if(a)a()};VENetwork.AttachStyleSheet=function(a,b,d,c){if(a==null||a=="undefined"||a.length==0)throw new VEException("VENetwork:AttachStylesheet","err_nostylesurl","");elStyle=document.createElement("link");if(d==true)elStyle.rel="alternate stylesheet";else elStyle.rel="stylesheet";if(c)elStyle.media=c;elStyle.type="text/css";elStyle.rev="stylesheet";elStyle.id=VENetwork.GetExecutionID();elStyle.href=a;VENetwork.GetAttachTarget().appendChild(elStyle);if(navigator.userAgent.indexOf("IE")>=0)elStyle.onreadystatechange=function(){if(elStyle&&("loaded"==elStyle.readyState||"complete"==elStyle.readyState)){elStyle.onreadystatechange=null;VENetwork.AttachStyleSheetCallback(b)}};else VENetwork.AttachStyleSheetCallback(b);return};VENetwork.DownloadScriptCallback=function(a,b){if(a)a(b)};VENetwork.DownloadScript=function(b,c,d){if(b==null||b=="undefined"||b.length==0)throw new VEException("VENetwork:DownloadScript","err_noscripturl",L_noscripturl_text);var a=document.createElement("script");a.type="text/javascript";a.language="javascript";a.id=VENetwork.GetExecutionID();a.src=b;if(navigator.userAgent.indexOf("IE")>=0)a.onreadystatechange=function(){if(a&&("loaded"==a.readyState||"complete"==a.readyState)){a.onreadystatechange=null;VENetwork.DownloadScriptCallback(c,d)}};else a.onload=function(){a.onload=null;VENetwork.DownloadScriptCallback(c,d)};VENetwork.GetAttachTarget().appendChild(a);return a.id};VENetwork.DownloadXml=function(e,c,b,d){var a=GetXmlHttp();a.open(c,e,true);a.onreadystatechange=function(){if(a.readyState==4){if(b)b(a.responseXML,d);a=null}};a.send(null)};VENetwork.GetAttachTarget=function(){if(document.getElementsByTagName("head")[0]!=null)return document.getElementsByTagName("head")[0];else throw new VEException("VENetwork:cstr","err_noheadelement",L_noheadelement_text)};VENetwork.prototype.BeginInvoke=BeginInvoke;VENetwork.prototype.EndInvoke=EndInvoke;function JSONConstant(){}JSONConstant.culture="culture";JSONConstant.format="format";JSONConstant.json="json";JSONConstant.requestid="rid";function JSONRequestInvoke(f,a,e){var c=new VENetwork,b=VENetwork.GetExecutionID();c.UseCloseDep=true;c.ServiceUrl=f;if(!a)a=[];var d=Msn.VE.API?Msn.VE.API.Globals.locale:window.serviceLocale;a.push(new VEParameter(JSONConstant.culture,'"'+d+'"'));a.push(new VEParameter(JSONConstant.format,JSONConstant.json));a.push(new VEParameter(JSONConstant.requestid,b));c.BeginInvoke("_f"+b,a,e,null,b)}_VERegisterNamespaces("Msn.Drawing");var MC_PointID=10000,MC_PolylineID=30000,MC_PolygonID=50000,MC_SYMBOL_IID=70000,MC_TEXT_IID=90000,MC_ENTITY_IID=200000,MC_COL_IID=1000,MC_GEO_TYPE_SYMBOL="Symbol",MC_GEO_TYPE_POINT="Point",MC_GEO_TYPE_POLYLINE="Polyline",MC_GEO_TYPE_POLYGON="Polygon",MC_GEO_TYPE_TEXT="Text",MC_GEO_TYPE_COL="Collection",MC_GEO_TYPE_ENTITY="Entity",VEShapeType={Pushpin:"Point",Polyline:"Polyline",Polygon:"Polygon"},VEMapserviceType={None:"None",MapCruncher:"MapCruncher",KML:"KML",WMS:"WMS"},VEMapserviceTypeList=[VEMapserviceType.None,VEMapserviceType.MapCruncher,VEMapserviceType.KML,VEMapserviceType.WMS];VEMapserviceTypeIndex=function(c){var b=-1;if(VEMapserviceTypeList!=null)for(var a=0;a=0&&a<=1};Msn.Drawing.GetGeoUID=function(b){var a="";switch(b){case VEShapeType.Polygon:a=MC_PolygonID++;break;case VEShapeType.Pushpin:a=MC_PointID++;break;case VEShapeType.Polyline:a=MC_PolylineID++;break;case MC_GEO_TYPE_SYMBOL:a=MC_SYMBOL_IID++;break;case MC_GEO_TYPE_TEXT:a=MC_TEXT_IID++;break;case MC_GEO_TYPE_COL:a=MC_COL_IID++;break;case MC_GEO_TYPE_ENTITY:a=MC_ENTITY_IID++}return a.toString()};Msn.Drawing.Exception=function(a){this.message=a;this.name="Msn.Drawing.Exception"};Msn.Drawing.Exception.prototype.toString=function(){return this.name+": "+this.message};Msn.Drawing.Point=function(a,b){this.id=0;this.points=[];this.points.push(a);this.points.push(b);this.iid=Msn.Drawing.GetGeoUID(VEShapeType.Pushpin)};Msn.Drawing.Point.prototype.altitudes=null;Msn.Drawing.Point.prototype.altitudeMode="Ground";Msn.Drawing.Point.prototype.type=VEShapeType.Pushpin;Msn.Drawing.Point.prototype.name=null;Msn.Drawing.Point.prototype.symbol=null;Msn.Drawing.Point.prototype.isLabel=true;Msn.Drawing.Point.prototype.isOnLegend=false;Msn.Drawing.Point.prototype.Destroy=function(){this.symbol=null;this.points=null;this.altitudes=null;this.altitudeMode=null};Msn.Drawing.Point.prototype.toString=function(){return this.points[0]+","+this.points[1]};Msn.Drawing.PolyLine=function(a){this.id=0;this.iid=Msn.Drawing.GetGeoUID(VEShapeType.Polyline);this.points=a?a:[];this.minX=null;this.minY=null;this.maxX=null;this.maxY=null;this.length=-1};Msn.Drawing.PolyLine.prototype.toString=function(){if(this.points!=null)return this.points.join(" ");else return ""};Msn.Drawing.PolyLine.prototype.altitudes=null;Msn.Drawing.PolyLine.prototype.altitudeMode="Ground";Msn.Drawing.PolyLine.prototype.extruded=false;Msn.Drawing.PolyLine.prototype.minZ=null;Msn.Drawing.PolyLine.prototype.maxZ=null;Msn.Drawing.PolyLine.prototype.minX=null;Msn.Drawing.PolyLine.prototype.minY=null;Msn.Drawing.PolyLine.prototype.maxX=null;Msn.Drawing.PolyLine.prototype.maxY=null;Msn.Drawing.PolyLine.prototype.iid=Msn.Drawing.GetGeoUID(VEShapeType.Polyline);Msn.Drawing.PolyLine.prototype.labelPosX=null;Msn.Drawing.PolyLine.prototype.labelPosY=null;Msn.Drawing.PolyLine.prototype.labelPosZ=null;Msn.Drawing.PolyLine.prototype.name=null;Msn.Drawing.PolyLine.prototype.type=VEShapeType.Polyline;Msn.Drawing.PolyLine.prototype.symbol=null;Msn.Drawing.PolyLine.prototype.isLabel=true;Msn.Drawing.PolyLine.prototype.isOnLegend=false;Msn.Drawing.PolyLine.prototype.Destroy=function(){this.symbol=null;this.points=null;this.altitudes=null;this.altitudeMode=null;this.extruded=null;this.minX=null;this.minY=null;this.maxX=null;this.maxY=null;this.minZ=null;this.maxZ=null};Msn.Drawing.PolyLine.prototype.GetLength=function(){if(this.length<0)this.length=CalculateShapeLengthP(this.points);return this.length};Msn.Drawing.PolyLine.prototype.SetLength=function(a){this.length=a};Msn.Drawing.Polygon=function(a){this.id=0;this.iid=Msn.Drawing.GetGeoUID(VEShapeType.Polygon);this.points=a;this.length=-1;this.area=-1;this.minX=null;this.minY=null;this.maxX=null;this.maxY=null};Msn.Drawing.Polygon.prototype.altitudes=null;Msn.Drawing.Polygon.prototype.altitudeMode="Ground";Msn.Drawing.Polygon.prototype.extruded=false;Msn.Drawing.Polygon.prototype.minZ=null;Msn.Drawing.Polygon.prototype.maxZ=null;Msn.Drawing.Polygon.prototype.labelPosX=null;Msn.Drawing.Polygon.prototype.labelPosY=null;Msn.Drawing.Polygon.prototype.labelPosZ=null;Msn.Drawing.Polygon.prototype.symbol=null;Msn.Drawing.Polygon.prototype.isLabel=true;Msn.Drawing.Polygon.prototype.isOnLegend=false;Msn.Drawing.Polygon.prototype.type=VEShapeType.Polygon;Msn.Drawing.Polygon.prototype.name=null;Msn.Drawing.Polygon.prototype.Destroy=function(){this.symbol=null;this.points=null;this.altitudes=null;this.altitudeMode=null;this.extruded=null;this.minX=null;this.minY=null;this.maxX=null;this.maxY=null;this.minZ=null;this.maxZ=null};Msn.Drawing.Polygon.prototype.GetLength=function(){if(this.length<0)this.length=CalculateShapeLength(this);return this.length};Msn.Drawing.Polygon.prototype.SetLength=function(a){this.length=a};Msn.Drawing.Polygon.prototype.GetArea=function(){if(this.area<0)this.area=CalculateAreaP(this.points);if(this.area<0)this.area=CalculateAreaP(this.points,false);return this.area};Msn.Drawing.Polygon.prototype.SetArea=function(a){this.area=a};Msn.Drawing.Stroke=function(){this.width=1;this.linecap="round";this.opacity=1;this.linejoin="miter";this.color=new Msn.Drawing.Color(255,255,255,1);this.fillcolor=new Msn.Drawing.Color(0,255,0,1)};Msn.Drawing.Color=function(d,c,b,a){this.R=d?d:0;this.G=c?c:0;this.B=b?b:0;this.A=a?a:0;this.ToHexString=function(){return VEColorToHexString(this.R,this.G,this.B)}};VEShapeStyle=function(){this.iid=Msn.Drawing.GetGeoUID(MC_GEO_TYPE_SYMBOL);this.id=this.iid};VEShapeStyle.prototype.point_type="v:rect";VEShapeStyle.prototype.name="symbol";VEShapeStyle.prototype.highlight_stroke_color="#336666";VEShapeStyle.prototype.highlight_fill_color="#FFCC33";VEShapeStyle.prototype.shape_drawtype="v:shape";VEShapeStyle.prototype.shape_fill="false";VEShapeStyle.prototype.shape_filled="false";VEShapeStyle.prototype.shape_unselectable="off";VEShapeStyle.prototype.style_zIndex=60;VEShapeStyle.prototype.style_zIndex_polyshape=50;VEShapeStyle.prototype.style_position="absolute";VEShapeStyle.prototype.style_filter="alpha(opacity=30)";VEShapeStyle.prototype.style_width="10";VEShapeStyle.prototype.style_height="10";VEShapeStyle.prototype.style_visibility="visible";VEShapeStyle.prototype.style_display="block";VEShapeStyle.prototype.stroke_drawtype="v:stroke";VEShapeStyle.prototype.stroke_on="true";VEShapeStyle.prototype.stroke_joinstyle="miter";VEShapeStyle.prototype.stroke_endcap="round";VEShapeStyle.prototype.stroke_opacity="1";VEShapeStyle.prototype.stroke_color="#0000FF";VEShapeStyle.prototype.stroke_weight="2pt";VEShapeStyle.prototype.stroke_style="Single";VEShapeStyle.prototype.stroke_filltype="solid";VEShapeStyle.prototype.stroke_color2="#FF0000";VEShapeStyle.prototype.stroke_dashstyle="Solid";VEShapeStyle.prototype.stroke_startarrow="none";VEShapeStyle.prototype.stroke_startarrowwidth="medium";VEShapeStyle.prototype.stroke_startarrowlength="medium";VEShapeStyle.prototype.stroke_endarrow="none";VEShapeStyle.prototype.stroke_endarrowwidth="medium";VEShapeStyle.prototype.stroke_endarrowlength="medium";VEShapeStyle.prototype.fill_drawtype="v:fill";VEShapeStyle.prototype.fill_color="#008000";VEShapeStyle.prototype.fill_colors="30% yellow";VEShapeStyle.prototype.fill_color2="#0000FF";VEShapeStyle.prototype.fill_type="solid";VEShapeStyle.prototype.fill_opacity="0.3";VEShapeStyle.prototype.fill_on="false";VEShapeStyle.prototype.textbox_drawtype="v:textbox";VEShapeStyle.prototype.textbox_text="name";VEShapeStyle.prototype.textbox_color="#FFFFFF";VEShapeStyle.prototype.textbox_bold=false;VEShapeStyle.prototype.textbox_italic=false;VEShapeStyle.prototype.textbox_underscore=false;VEShapeStyle.prototype.textbox_font="Arial";VEShapeStyle.prototype.textbox_size=7;VEShapeStyle.prototype.imagedata_on=false;VEShapeStyle.prototype.imagedata_src=null;VEShapeStyle.prototype.isOn=false;VEShapeStyle.prototype.textbox_OffsetX=0;VEShapeStyle.prototype.textbox_OffsetY=0;VEShapeStyle.prototype.textbox_backcolor="#0000FF";VEShapeStyle.textbox_color_opacity="1";VEShapeStyle.textbox_backcolor_opacity="1";VEShapeStyle.prototype.img_offsetX=0;VEShapeStyle.prototype.img_offsetY=0;VEShapeStyle.prototype.img_width=22;VEShapeStyle.prototype.img_height=22;VEShapeStyle.prototype.Clone=function(){var a=new VEShapeStyle;a.point_type=this.point_type;a.name=this.name;a.line_color=this.line_color;a.line_width=this.line_width;a.line_dasharray=this.line_dasharray;a.highlight_stroke_color=this.highlight_stroke_color;a.highlight_fill_color=this.highlight_fill_color;a.shape_drawtype=this.shape_drawtype;a.shape_fill=this.shape_fill;a.shape_filled=this.shape_filled;a.shape_unselectable=this.shape_unselectable;a.style_zIndex=this.style_zIndex;a.style_zIndex_polyshape=this.style_zIndex_polyshape;a.style_position=this.style_position;a.style_filter=this.style_filter;a.style_width=this.style_width;a.style_height=this.style_height;a.style_visibility=this.style_visibility;a.style_display=this.style_display;a.stroke_drawtype=this.stroke_drawtype;a.stroke_on=this.stroke_on;a.stroke_joinstyle=this.stroke_joinstyle;a.stroke_endcap=this.stroke_endcap;a.stroke_opacity=this.stroke_opacity;a.stroke_color=this.stroke_color;a.stroke_weight=this.stroke_weight;a.stroke_style=this.stroke_style;a.stroke_filltype=this.stroke_filltype;a.stroke_color2=this.stroke_color2;a.stroke_dashstyle=this.stroke_dashstyle;a.stroke_startarrow=this.stroke_startarrow;a.stroke_startarrowwidth=this.stroke_startarrowwidth;a.stroke_startarrowlength=this.stroke_startarrowlength;a.stroke_endarrow=this.stroke_endarrow;a.stroke_endarrowwidth=this.stroke_endarrowwidth;a.stroke_endarrowlength=this.stroke_endarrowlength;a.fill_drawtype=this.fill_drawtype;a.fill_color=this.fill_color;a.fill_colors=this.fill_colors;a.fill_color2=this.fill_color2;a.fill_type=this.fill_type;a.fill_opacity=this.fill_opacity;a.fill_on=this.fill_on;a.textbox_drawtype=this.textbox_drawtype;a.textbox_text=this.textbox_text;a.textbox_color=this.textbox_color;a.textbox_bold=this.textbox_bold;a.textbox_italic=this.textbox_italic;a.textbox_underscore=this.textbox_underscore;a.textbox_backcolor=this.textbox_backcolor;a.imagedata_on=this.imagedata_on;a.imagedata_src=this.imagedata_src;a.isOn=this.isOn;a.textbox_OffsetX=this.textbox_OffsetX;a.textbox_OffsetY=this.textbox_OffsetY;a.img_offsetX=this.img_offsetX;a.img_offsetY=this.img_offsetY;a.img_width=this.img_width;a.img_height=this.img_height;return a};function VE_MapLineClip(){var b=-360,c=360,d=-180,e=180,a={LEFT:1,RIGHT:2,BOTTOM:4,TOP:8};function h(i,s,u,t,v){b=s;c=t;d=u;e=v;if(typeof i=="undefined"||i==null||i.length<4)return null;var m=false,o=i.length;if(i[o-2]==i[0]&&i[o-1]==i[1])m=true;var f=[];for(var l=0;lc)f=f|a.RIGHT;if(he)f=f|a.TOP;return f}this.Clip=h}VE_LineClip=new VE_MapLineClip;var L_GraphicsInitError_Text="Your Web browser does not support SVG or VML. Some graphics features may not function properly.";_VERegisterNamespaces("Msn.Drawing");Msn.Drawing.Graphic=function(){};Msn.Drawing.Graphic.CreateGraphic=function(b,a){if(Msn.VE.Environment.BrowserInfo.BrowserCaps&Msn.VE.BrowserCaps.VML)return new Msn.Drawing.VMLGraphic(b,a);else{if(Gimme.Browser.isOpera||Msn.VE.Environment.BrowserInfo.BrowserCaps&Msn.VE.BrowserCaps.SVG)return new Msn.Drawing.SVGGraphic(b,a);throw new Msn.Drawing.Exception(L_GraphicsInitError_Text)}};Msn.Drawing.BaseGraphic=function(){this._stroke=new Msn.Drawing.Stroke};Msn.Drawing.BaseGraphic.prototype.CreatePrimitive=function(){};Msn.Drawing.BaseGraphic.prototype.DrawPrimitive=function(d,c,a){var b=new VEShapeStyle;if(a._stroke){b.stroke_weight=a._stroke.width;b.stroke_joinstyle=a._stroke.linejoin;b.stroke_color=a._stroke.color.ToHexString();b.stroke_dashstyle=a._stroke.linecap;b.stroke_opacity=a._stroke.color.A.toString();b.fill_color=a._stroke.fillcolor.ToHexString();b.fill_opacity=a._stroke.fillcolor.A.toString()}c.symbol=b;var e=a.CreatePrimitive(d,c,"");return e};Msn.Drawing.BaseGraphic.prototype.SetStroke=function(a){this._stroke=a};Msn.Drawing.VMLGraphic=function(c,d){Msn.Drawing.BaseGraphic.call();var g=new Msn.Drawing.Color(255,0,0,1),f=new Msn.Drawing.Color(255,0,0,1),e=1,a=c;c.unselectable="on";var b=[];this.DrawPrimitive=function(f,e){var c=Msn.Drawing.VMLGraphic.prototype.DrawPrimitive(d,f,this);if(a&&c){if(e)a.appendChild(wrapVmlElementInDiv(c));else a.appendChild(c);b.push(c)}};this.resetOffset=function(){};this.SetZIndex=function(a){e=a};this.Clear=function(){var a=null,c=null;while(a=b.pop()){c=a.parentElement;if(c)c.removeChild(a);a=null}};this.Destroy=function(){this.Clear();a=null}};Msn.Drawing.VMLGraphic.prototype=new Msn.Drawing.BaseGraphic;Msn.Drawing.VMLGraphic.prototype.CreatePrimitive=function(e,a){var b=null;if(a.type==VEShapeType.Pushpin){if(a.symbol.shape_drawtype=="v:oval"||a.symbol.shape_drawtype=="v:rect"||a.symbol.shape_drawtype=="v:roundrect")b=document.createElement(a.symbol.shape_drawtype);else b=document.createElement("v:roundrect");b.className="vml";var f=LatLongtoRoundedPixel(e,a.points[1],a.points[0]);b.style.width=a.symbol.style_width;b.style.height=a.symbol.style_height;b.style.left=-5+f.x+e.GetOffsetX()+"px";b.style.top=-5+f.y+e.GetOffsetY()+"px";b.style.position=a.symbol.style_position}else{b=document.createElement("v:shape");b.className="MSVE_Shape vml";var g=null;g=GetVmlPath(e,a);var h=e.GetMapWidth(),i=e.GetMapHeight();b.style.top="0px";b.style.left="0px";b.style.width=h+"px";b.style.height=i+"px";b.coordsize=h+" "+i;b.style.position=a.symbol.style_position;b.path=g}b.id=a.id!=0?a.id:a.iid;b.style.zIndex=a.symbol.style_zIndex_polyshape;b.unselectable=a.symbol.shape_unselectable;var c=document.createElement("v:stroke");c.className="vml";c.joinstyle=a.symbol.stroke_joinstyle;c.endcap=a.symbol.stroke_endcap;c.opacity=a.symbol.stroke_opacity;c.dashstyle=a.symbol.stroke_dashstyle;c.filltype=a.symbol.stroke_filltype;c.color2=a.symbol.stroke_color2;c.color=a.symbol.stroke_color;c.weight=a.symbol.stroke_weight;c.linestyle=a.symbol.stroke_style;if(a.type==VEShapeType.Polygon){var d=document.createElement("v:fill");d.className="vml";d.color=a.symbol.fill_color;d.colors=a.symbol.fill_colors;d.color2=a.symbol.fill_color2;d.type=a.symbol.fill_type;d.opacity=a.symbol.fill_opacity;b.appendChild(d)}else if(a.type==VEShapeType.Polyline)b.filled=false;else if(a.type==VEShapeType.Pushpin){b.style.filter=a.symbol.style_filter;b.style.zIndex=a.symbol.style_zIndex;b.style.display=a.symbol.style_display;b.unselectable=a.symbol.shape_unselectable;b.fill=true;b.filled=true;b.fillcolor=a.symbol.fill_color}b.appendChild(c);return b};Msn.Drawing.VMLGraphic.prototype.UpdatePoints=function(d,a,b,c){if(c&&(a.type==VEShapeType.Polyline||a.type==VEShapeType.Polygon)){var e=GetVmlPath(d,a);b.path=e}return b};Msn.Drawing.VMLGraphic.prototype.UpdateStyle=function(f,a,e){e.style.zIndex=a.symbol.style_zIndex_polyshape;e.unselectable=a.symbol.shape_unselectable;var c=e.firstChild,b=null,d=null;while(c!=null){if(c.tagName=="stroke")b=c;else if(c.tagName=="fill")d=c;c=c.nextSibling}if(b){b.joinstyle=a.symbol.stroke_joinstyle;b.endcap=a.symbol.stroke_endcap;b.opacity=a.symbol.stroke_opacity;b.dashstyle=a.symbol.stroke_dashstyle;b.filltype=a.symbol.stroke_filltype;b.color2=a.symbol.stroke_color2;b.color=a.symbol.stroke_color;b.weight=a.symbol.stroke_weight;b.linestyle=a.symbol.stroke_style}if(a.type==VEShapeType.Polygon&&d){d.color=a.symbol.fill_color;d.color2=a.symbol.fill_color2;d.type=a.symbol.fill_type;d.opacity=a.symbol.fill_opacity}return e};Msn.Drawing.VMLGraphic.prototype._printable=false;Msn.Drawing.VMLGraphic.prototype._printTilesLayer=null;Msn.Drawing.VMLGraphic.prototype._printTopLayer=null;Msn.Drawing.VMLGraphic.prototype.CreatePrintLayer=function(a,d,c,b){if(!this._printable){this._printTilesLayer=document.createElement("div");this._printTilesLayer.className="MSVE_Print_TileLayer";this._printTilesLayer.innerHTML=" ";a.appendChild(this._printTilesLayer);this._printTopLayer=document.createElement("div");this._printTopLayer.className="MSVE_Print_TopLayer";this._printTopLayer.innerHTML=" ";this._printTopLayer.style.width=c;this._printTopLayer.style.height=b;this._printTopLayer.zIndex=100;a.parentNode.appendChild(this._printTopLayer);this._printable=true}};Msn.Drawing.VMLGraphic.prototype.RemovePrintLayer=function(){if(this._printable){this._printable=false;this._printTilesLayer.parentNode.removeChild(this._printTilesLayer);this._printTopLayer.parentNode.removeChild(this._printTopLayer);this._printTilesLayer=null;this._printTopLayer=null}};Msn.Drawing.VMLGraphic.prototype.AddPrintTile=function(f,g,e,d,b,h,c){var a=null;if(this._printable){a=document.createElement("div");a.style.position="absolute";a.style.top=g;a.style.left=e;a.style.width=d+1;a.style.height=b+1;a.style.zIndex=c;a.innerHTML=" ";this._printTilesLayer.appendChild(a)}return a};Msn.Drawing.VMLGraphic.prototype.RemovePrintTile=function(a){if(a.parentNode)a.parentNode.removeChild(a)};Msn.Drawing.VMLGraphic.prototype.AddLogo=function(b){if(this._printable){var a=document.createElement("v:image");a.src=b;a.className="MSVE_PoweredByLogo_print vml";this._printTopLayer.appendChild(a)}};Msn.Drawing.SVGGraphic=function(c,b){Msn.Drawing.BaseGraphic.call();var g=new Msn.Drawing.Color(255,0,0,1),f=new Msn.Drawing.Color(0,255,0,1);_curmap=b;this._svgLayer=null;var d=60,e=c,a=[];this.DrawPrimitive=function(d){var c=Msn.Drawing.SVGGraphic.prototype.DrawPrimitive(b,d,this);if(c)a.push(c)};this.resetOffset=function(){_curmap.resetSvgLayer()};this.SetZIndex=function(a){d=a;if(this._svgLayer!=null)this._svgLayer.SetZIndex(a)};this.Destroy=function(){this.Clear()};this.Clear=function(){if(this._svgLayer==null)return;var b=null,c=null;while(b=a.pop()){c=b.parentNode;if(c)c.removeChild(b);b=null}}};Msn.Drawing.SVGGraphic.prototype=new Msn.Drawing.BaseGraphic;Msn.Drawing.SVGGraphic.prototype.CreatePrimitive=function(a,b,c){this._svgLayer=a.getSvgLayer();return this._svgLayer.addShape(b,c)};Msn.Drawing.SVGGraphic.prototype.UpdatePoints=function(a,b,c){this._svgLayer=a.getSvgLayer();return this._svgLayer.UpdatePoints(b,c)};Msn.Drawing.SVGGraphic.prototype.UpdateStyle=function(a,b,c){this._svgLayer=a.getSvgLayer();return this._svgLayer.UpdateStyle(b,c)};Msn.Drawing.SVGGraphic.prototype._printable=false;Msn.Drawing.SVGGraphic.prototype._printTilesLayer=null;Msn.Drawing.SVGGraphic.prototype._printTopLayer=null;Msn.Drawing.SVGGraphic.prototype._printLogo=null;Msn.Drawing.SVGGraphic.prototype._offsetX=null;Msn.Drawing.SVGGraphic.prototype._offsetY=null;Msn.Drawing.SVGGraphic.prototype.CreatePrintLayer=function(d,a,c,b){if(!this._printable){this._svgLayer=a.getSvgLayer();this._printTopLayer=this._svgLayer.CreatePrintLayer("MSVE_Print_TopLayer");this._printTopLayer.setAttributeNS(null,"width",parseInt(c));this._printTopLayer.setAttributeNS(null,"height",parseInt(b));this._printTilesLayer=this._svgLayer.CreatePrintLayer("MSVE_Print_TileLayer");this._printable=true}};Msn.Drawing.SVGGraphic.prototype.RemovePrintLayer=function(){if(this._printable){this._printTilesLayer.parentNode.removeChild(this._printTilesLayer);this._printTopLayer.parentNode.removeChild(this._printTopLayer);this._printTilesLayer=null;this._printTopLayer=null;this._printLogo=null;this._printable=false}};Msn.Drawing.SVGGraphic.prototype.AddPrintTile=function(g,h,f,e,c,b,d){var a=null;if(this._printable){a=document.createElementNS("http://www.w3.org/2000/svg","image");a.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",g);a.setAttributeNS(null,"preserveAspectRatio","none");a.setAttributeNS(null,"x",f-this._offsetX);a.setAttributeNS(null,"y",h-this._offsetY);a.setAttributeNS(null,"width",e);a.setAttributeNS(null,"height",c);a.setAttributeNS(null,"opacity",b);this.AddPrintTileToLayer(a,d)}return a};Msn.Drawing.SVGGraphic.prototype.AddPrintTileToLayer=function(d,b){var a=this._printTilesLayer.firstChild;while(a&&a.style.zIndex1)a/=100;else if(a<0)a=0;return a}this.SetZIndex=function(a){if(!c.bShowSVG)return;c.GetsvgDiv().style.zIndex=a};this.UpdatePoints=function(a,b){if(a.type==VEShapeType.Polyline||a.type==VEShapeType.Polygon)b.setAttribute("points",GetSvgPath(c,a.points))};this.UpdateStyle=function(a,c){if(b==null)return;if(a.type!=VEShapeType.Pushpin){c.setAttribute("stroke",a.symbol.stroke_color);c.setAttribute("stroke-width",a.symbol.stroke_weight);c.setAttribute("stroke-linejoin",a.symbol.stroke_joinstyle);c.setAttribute("stroke-opacity",d(a.symbol.stroke_opacity));var f=this.lineDashStyles;for(var e=0;e=c.length)c.length+=Math.round(c.length/4);c[i++]=d;l=g;m=h}a++}if(i>0)c.length=i;return c.join("")}function LatLongtoRoundedPixel(b,d,e){var c;if(typeof VEMap!="undefined"&&b instanceof VEMap)c=new VELatLong(d,e);else c=new Msn.VE.LatLong(d,e);var a=b.LatLongToPixel(c,b.GetZoomLevel());if(!a)return null;a.x=MathRound(a.x);a.y=MathRound(a.y);return a}VE_LatLongThreshold={PixelDiff:8,DistDiff:.5,OriginLat:0,OriginLon:0,LatDiff:0,LonDiff:0,UseThreshold:true,IsNotInit:true};function VE_SetLatLonThreshold(c,e,d){VE_LatLongThreshold.IsNotInit=false;if(e!=null&&d!=null){VE_LatLongThreshold.OriginLat=d;VE_LatLongThreshold.OriginLon=e}var a,b=LatLongtoRoundedPixel(c,VE_LatLongThreshold.OriginLat,VE_LatLongThreshold.OriginLon);if(b){a=c.PixelToLatLong(new VEPixel(b.x+VE_LatLongThreshold.PixelDiff,b.y+VE_LatLongThreshold.PixelDiff));VE_LatLongThreshold.LatDiff=Math.abs(a.latitude-VE_LatLongThreshold.OriginLat);VE_LatLongThreshold.LonDiff=Math.abs(a.longitude-VE_LatLongThreshold.OriginLon)}}function VE_IsDisplayLatLon(e,i,h,b,a){if(!VE_LatLongThreshold.UseThreshold)return true;var c=Math.abs(VE_LatLongThreshold.OriginLat-a),d=Math.abs(VE_LatLongThreshold.OriginLon-b);if(Math.max(c,d)>VE_LatLongThreshold.DistDiff||VE_LatLongThreshold.IsNotInit)VE_SetLatLonThreshold(e,b,a);var f=Math.abs(a-h),g=Math.abs(b-i);if(f>VE_LatLongThreshold.LatDiff||g>VE_LatLongThreshold.LonDiff)return true;return false}function GetVmlPath(j,a){var h=a.points;if(!h)return null;var g=0,l=h.length,m=l/2,e=0,b=new Array(Math.max(128,Math.round(l/8)));b[e++]="m ";var q=MathRound(j.GetOffsetY()),p=MathRound(j.GetOffsetX()),f=null,n=0,o=0,c=0,d=0;if(l>=4){c=h[g*2];d=h[g*2+1];f=LatLongtoRoundedPixel(j,d,c);if(!f)return null;var i="";i=i.concat(f.x+p,",",f.y+q," l ");if(e>=b.length)b.length+=Math.round(b.length/4);b[e++]=i;n=c;o=d;++g}var k=false;if(a.type!=VEShapeType.Pushpin)if(a.minX==null||a.minY==null||a.maxX==null||a.maxY==null){k=false;a.minX=360;a.minY=360;a.maxX=-360;a.maxY=-360}else k=true;while(g=b.length)b.length+=Math.round(b.length/4);b[e++]=i;n=c;o=d}++g}if(e>=b.length)b.length+=1;b[e++]=" e";if(e>0)b.length=e;return b.join("")}function GetCurrentMapViewBounds(b){var o=b.GetCenterLongitude(),p=b.GetCenterLatitude(),a=b.LatLongToPixel(new Msn.VE.LatLong(p,o)),h=b.GetMapWidth(),g=b.GetMapHeight();if(!a||isNaN(a.x)||isNaN(a.y))return new Msn.VE.Bounds(0,0,-Infinity,-Infinity,Infinity,Infinity);var l,n,k,m,j=false,q=b.GetMapStyle(),c=b.PixelToLatLong(new VEPixel(a.x-h/2,a.y+g/2)),d=b.PixelToLatLong(new VEPixel(a.x+h/2,a.y-g/2));if(Msn.VE.MapStyle.IsViewOblique(q)){var e=b.PixelToLatLong(new VEPixel(a.x-h/2,a.y-g/2)),f=b.PixelToLatLong(new VEPixel(a.x+h/2,a.y+g/2));if(c!=null&&d!=null&&e!=null&&f!=null){l=Math.min(c.longitude,d.longitude,e.longitude,f.longitude);n=Math.min(c.latitude,d.latitude,e.latitude,f.latitude);k=Math.max(c.longitude,d.longitude,e.longitude,f.longitude);m=Math.max(c.latitude,d.latitude,e.latitude,f.latitude)}else j=true}else if(c!=null&&d!=null){l=Math.min(c.longitude,d.longitude);n=Math.min(c.latitude,d.latitude);k=Math.max(c.longitude,d.longitude);m=Math.max(c.latitude,d.latitude)}else j=true;var i=null;if(j)i=new Msn.VE.Bounds(0,0,-Infinity,-Infinity,Infinity,Infinity);else i=new Msn.VE.Bounds(0,0,l,n,k,m);return i}function GetBufferedMapViewBounds(b,a){var c=null,e=Math.abs(a.x2-a.x1),d=Math.abs(a.y2-a.y1);c=new Msn.VE.Bounds(0,0,a.x1-b*e,a.y1-b*d,a.x2+b*e,a.y2+b*d);return c}function IsContainedInView(a,b){var c=false;if(b.x1>a.x1&&b.y1>a.y1&&b.x2b.x2||a.y2b.y2)return false;return true}function IsDisplayShape(d,c,e,g,f,h){if(c==0)return true;if(e==f&&g==h)return true;var a=null,b=null;a=d.LatLongToPixel(new Msn.VE.LatLong(g,e));b=d.LatLongToPixel(new Msn.VE.LatLong(h,f));if(a==null||b==null)return true;if(Math.abs(b.y-a.y)>c||Math.abs(b.x-a.x)>c)return true;else return false}function IsRecIntersect(c,d,a,b,g,h,e,f){if(ae||bf)return false;return true}function wrapVmlElementInDiv(a){var c=Msn.VE.Css.Functions.getComputedStyle,b=document.createElement("div");b.className="VmlContainer";b.style.left=c(a,"left");b.style.top=c(a,"top");b.style.width=c(a,"width");b.style.height=c(a,"height");a.style.position="relative";a.style.left="0px";a.style.top="0px";a.style.width="100%";a.style.height="100%";b.appendChild(a);return b}function VEColorToHexString(c,b,a){return "#"+(c<16?"0":"")+Number(c).toString(16)+(b<16?"0":"")+Number(b).toString(16)+(a<16?"0":"")+Number(a).toString(16)}function VEHexStringToColor(){this.Convert=function(a){a=a.toUpperCase();var b=hTov(a.substring(0,1)),c=hTov(a.substring(1,2)),d=hTov(a.substring(2,3)),e=hTov(a.substring(3,4)),f=hTov(a.substring(4,5)),g=hTov(a.substring(5,6)),h=b*16+c,i=d*16+e,j=f*16+g;return new VEColor(h,i,j,1)};function hTov(h){var v=0;if(h=="A")v=10;else if(h=="B")v=11;else if(h=="C")v=12;else if(h=="D")v=13;else if(h=="E")v=14;else if(h=="F")v=15;else v=eval(h);return v}}_VERegisterNamespaces("Msn.VE");$MVEM=new function(){this.IsEnabled=function(a){if(a==undefined)throw new VEException("$MVEM.IsEnabled","err_invalidfeature","Specified feature is invalid.");return a}};function VEException(b,c,a){this.source=b;this.name=c;this.message=a}VEException.prototype.Name=this.name;VEException.prototype.Source=this.source;VEException.prototype.Message=this.message;function pseudoHover(a){if(!document.all)return;var d=function(){a.className+=" ms_pseudoHover"},c=function(){a.className=a.className.replace(/\s*ms_pseudoHover/g,"")};a.attachEvent("onmouseenter",d);a.attachEvent("onmouseleave",c);window.attachEvent("onunload",b);function b(){a.detachEvent("onmouseenter",d);a.detachEvent("onmouseleave",c);window.detachEvent("onunload",b)}}function pseudoHoverForChildren(d,a){if(!document.all)return;if(!a)a="LI";var c=d.getElementsByTagName(a);for(var b=0;b-1)Msn.VE.Css.Cursors[a.name]=a.fallback;else Msn.VE.Css.Cursors[a.name]='url("'+a.domain+a.path+'"), '+a.fallback}}},RegEx:{RectClip:/rect\((auto|\d+px|\d*\.*\d+em|\d*\.*\d+pt)\s*,*\s*(auto|\d+px|\d*\.*\d+em|\d*\.*\d+pt)\s*,*\s*(auto|\d+px|\d*\.*\d+em|\d*\.*\d+pt)\s*,*\s*(auto|\d+px|\d*\.*\d+em|\d*\.*\d+pt)\)/},Functions:{addClass:function(a){this.alterClass(a,arguments,true)},removeClass:function(a){this.alterClass(a,arguments,false)},alterClass:function(a,e,g){var c,h=e.length;for(c=1;c=2)this.Locale=arguments[1]}this.IsCompatibleWith=function(c){for(var b=0;ba.MajorVersion||a.MajorVersion==this.MajorVersion&&a.MinorVersion>=this.MinorVersion))return true}return false};function c(){if(a.UserAgent.indexOf("Mac")==-1&&(a.UserAgent.indexOf("Gecko")!=-1||a.UserAgent.indexOf("MSIE")!=-1))a.BrowserCaps|=Msn.VE.BrowserCaps.RightMouseButton}function d(){if(a.UserAgent.indexOf("MSIE 7")!=-1||a.UserAgent.indexOf("MSIE 8")!=-1||a.UserAgent.indexOf("MSIE 9")!=-1||a.UserAgent.indexOf("Gecko")!=-1)a.BrowserCaps|=Msn.VE.BrowserCaps.WindowlessSelectElement}function k(){if(!b())a.BrowserCaps|=Msn.VE.BrowserCaps.VML}function j(){if(b())a.BrowserCaps|=Msn.VE.BrowserCaps.SVG}function b(){var a;if(document.implementation&&document.implementation.hasFeature)a=document.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1");else{var c=document.createElement("v:shape");c.style.behavior="url(/staticarchive/)";a=typeof c.strokecolor==="undefined"}b=function(){return a};return a}function i(){try{if(a.UserAgent.indexOf("MSIE")!=-1)a.BrowserCaps|=Msn.VE.BrowserCaps.AddFavourite}catch(b){}}this.GetVersionString=function(){if(this.versionString==null)if(a.UserAgent.indexOf("Win")!=-1&&a.UserAgent.indexOf("MSIE")!=-1){var b=null,c;try{b=document.createElement("");document.body.appendChild(b);c=b.getComponentVersion("{89820200-ECBD-11CF-8B85-00AA005B4383}","componentid")}catch(d){c=a.MajorVersion+"."+a.MinorVersion}finally{if($ID("__clientCaps")!=null)$ID("__clientCaps").parentNode.removeChild(b)}this.versionString=c}else if(a.MajorVersion!=null&&a.MajorVersion!=null)this.versionString=a.MajorVersion+"."+a.MinorVersion;else this.versionString="";return this.versionString};function f(){if(a.UserAgent.indexOf("MSIE")!=-1){var c=new RegExp("MSIE (\\d+)\\.(\\d+)"),b=c.exec(a.UserAgent);if(b!=null){a.MajorVersion=parseInt(b[1]);a.MinorVersion=parseInt(b[2]);return}}else if(a.UserAgent.indexOf("Firefox")!=-1){var c=new RegExp("Firefox/([0-9]).([0-9])(.*)"),b=c.exec(a.UserAgent);if(b!=null){a.MajorVersion=parseInt(b[1]);a.MinorVersion=parseInt(b[2]);return}}else if(a.UserAgent.indexOf("Opera")!=-1){var c=new RegExp("Opera/([0-9]{1,2}).([0-9])"),b=c.exec(a.UserAgent);if(b!=null){a.MajorVersion=parseInt(b[1]);a.MinorVersion=parseInt(b[2]);return}}a.MajorVersion=null;a.MinorVersion=null}function h(){if(a.UserAgent.indexOf("Mac OS X")!=-1)a.OSType=Msn.VE.OSType.MacOSX;else if(a.UserAgent.indexOf("Mac")!=-1)a.OSType=Msn.VE.OSType.MacOS;else if(a.UserAgent.indexOf("Linux")!=-1)a.OSType=Msn.VE.OSType.Linux;else if(a.UserAgent.indexOf("Win95")!=-1||a.UserAgent.indexOf("Windows 95")!=-1)a.OSType=Msn.VE.OSType.Windows95;else if(a.UserAgent.indexOf("Win98")!=-1||a.UserAgent.indexOf("Windows 98")!=-1)a.OSType=Msn.VE.OSType.Windows98;else if(a.UserAgent.indexOf("Win 9x 4.90")!=-1)a.OSType=Msn.VE.OSType.WindowsMillenium;else if(a.UserAgent.indexOf("Windows NT 4.0")!=-1)a.OSType=Msn.VE.OSType.WindowsNT4;else if(a.UserAgent.indexOf("Windows NT 5.01")!=-1)a.OSType=Msn.VE.OSType.Windows2000SP1;else if(a.UserAgent.indexOf("Windows NT 5.0")!=-1)a.OSType=Msn.VE.OSType.Windows2000;else if(a.UserAgent.indexOf("Windows NT 5.1")!=-1&&a.UserAgent.indexOf("SV1")!=-1)a.OSType=Msn.VE.OSType.WindowsXPSP2;else if(a.UserAgent.indexOf("Windows NT 5.1")!=-1)a.OSType=Msn.VE.OSType.WindowsXP;else if(a.UserAgent.indexOf("Windows NT 5.2")!=-1&&a.UserAgent.indexOf("SV1")!=-1)a.OSType=Msn.VE.OSType.WindowsServer2003SP1;else if(a.UserAgent.indexOf("Windows NT 5.2")!=-1)a.OSType=Msn.VE.OSType.WindowsServer2003;else if(a.UserAgent.indexOf("Windows NT 6.0")!=-1)a.OSType=Msn.VE.OSType.WindowsVista;else if(a.UserAgent.indexOf("Windows NT")!=-1)a.OSType=Msn.VE.OSType.WindowsNT;else if(a.UserAgent.indexOf("Win")!=-1)a.OSType=Msn.VE.OSType.Windows;else a.OSType=Msn.VE.OSType.Unknown}function e(){if(a.UserAgent.indexOf(".NET CLR 1.0")!=-1)a.CLRType|=Msn.VE.CLRType.CLR10;if(a.UserAgent.indexOf(".NET CLR 1.1")!=-1)a.CLRType|=Msn.VE.CLRType.CLR11;if(a.UserAgent.indexOf(".NET CLR 2.0")!=-1)a.CLRType|=Msn.VE.CLRType.CLR20;if(a.UserAgent.indexOf(".NET CLR 3.0")!=-1)a.CLRType|=Msn.VE.CLRType.CLR30}function g(){if(a.Locale!=null)return;a.Locale="en-US";if(a.UserAgent.indexOf("MSIE")!=-1){if(navigator.browserLanguage)a.Locale=navigator.browserLanguage;if(navigator.userLanguage)a.Locale=navigator.userLanguage;if(navigator.systemLanguage)a.Locale=navigator.systemLanguage}else if(a.UserAgent.indexOf("Gecko")!=-1){var c=new RegExp("; (.*); rv:"),b=c.exec(a.UserAgent);if(b&&b.length>=2)a.Locale=b[1].substring(b[1].lastIndexOf(" "),b[1].length+1)}else if(a.UserAgent.indexOf("Opera")!=-1){var c=new RegExp(" (.*)\\)"),b=c.exec(a.UserAgent);if(b&&b.length>=2)a.Locale=b[1].substring(b[1].lastIndexOf(" "),b[1].length+1)}}function l(){if(a.UserAgent.indexOf("Gecko")!=-1)a.Type=Msn.VE.BrowserType.Firefox;else if(a.UserAgent.indexOf("MSIE")!=-1)a.Type=Msn.VE.BrowserType.MSIE;else if(a.UserAgent.indexOf("Opera")!=-1)a.Type=Msn.VE.BrowserType.Opera;else a.Type=Msn.VE.BrowserType.Unknown;f();h();e();g();i();j();k();d();c()}l()};Msn.VE.Environment=function(){};Msn.VE.Environment.Redirect=function(a){window.location.href=a};Msn.VE.Environment.BrowserInfo=new Msn.VE.BrowserInfo;Msn.VE.Environment.IsSVG=function(){return Msn.VE.Environment.BrowserInfo.BrowserCaps&Msn.VE.BrowserCaps.SVG};Msn.VE.Environment.IsFF20=function(){var a=Msn.VE.Environment.BrowserInfo;if(a.Type==Msn.VE.BrowserType.Firefox){var b=a.MajorVersion;if(b>=2)return true}return false};Msn.VE.Environment.IsIE50=function(){var a=Msn.VE.Environment.BrowserInfo;if(a.Type==Msn.VE.BrowserType.MSIE){var b=a.MajorVersion;if(b>=5)return true}return false};Msn.VE.Environment.IsIE80=function(){var a=Msn.VE.Environment.BrowserInfo;if(a.Type==Msn.VE.BrowserType.MSIE){var b=a.MajorVersion;if(b>=8)return true}return false};_VERegisterNamespaces("Msn.VE");Msn.VE.PushPinTypes={Default:0,SearchResultPrecise:1,Annotation:2,Direction:3,DirectionTemp:4,TrafficLight:5,TrafficOthers:6,YouAreHere:7,AdStandard:8,AdWide:9,AdCategory:10,AdRoofStandard:11,AdRoofWide:12,AdSponsor:13,DirectionStep:14,Context:15,SearchResultNonprecise:16,Collection:17,Overlay:18};Msn.VE.MapActionMode={ModeUnknown:0,Mode2D:1,Mode3D:2,ModeOblique:3};Msn.VE.BirdsEyeSearchSpinDirection={ClockwiseSpin:-1,NoSpin:0,CounterclockwiseSpin:1};Msn.VE.LineJoinMode={Straight:"miter",Round:"round"};Msn.VE.Css.Cursors.defineCustomCursors([{name:"Grab",domain:".",path:"/cursors/grab.cur",fallback:"move"},{name:"Grabbing",domain:".",path:"/cursors/grabbing.cur",fallback:"move"},{name:"Target",domain:".",path:"/cursors/target.cur",fallback:"crosshair"}]);Msn.VE.MapControl=function(p_elSource,p_htParams,p_parentAPIControl){var offsetMeters=20971520,baseMetersPerPixel=163840,buffer=0,maxTilePixelBuffer=768,animatedMovementEnabled=true,zoomTotalSteps=6,keyboardPanSpeed=15,panToLatLongSpeed=15,earthRadius=6378137,earthCircumference=earthRadius*2*Math.PI,projectionOffset=earthCircumference*.5,minZoom=1,maxZoom=19,emptyTile="http://virtualearth.msn.com/i/spacer.gif",minLatitude=-85,maxLatitude=85,minLongitude=-180,maxLongitude=180,tileSize=256,generations={},zoomLevelToAdjustObliqueToOrthro=18,kbInputZIndex=0,containerZIndex=0,mapZIndex=1,swapZIndex=1,baseZIndex=2,debugZIndex=3,baseZIndex=11,topZIndex=20,p_this=this,isVML=!Msn.VE.Environment.IsSVG(),m_clientToken=null,cssCursors=Msn.VE.Css.Cursors,cssFn=Msn.VE.Css.Functions,roadStyle=Msn.VE.MapStyle.Road,shadedStyle=Msn.VE.MapStyle.Shaded,hybridStyle=Msn.VE.MapStyle.Hybrid,aerialStyle=Msn.VE.MapStyle.Aerial,obliqueStyle=Msn.VE.MapStyle.Oblique,obliqueHybridStyle=Msn.VE.MapStyle.ObliqueHybrid;generations[roadStyle]=2981;generations[aerialStyle]=2981;generations[hybridStyle]=2981;generations[obliqueStyle]=2981;generations[obliqueHybridStyle]=2981;var mapTiles="Road",trafficTiles="Traffic",marketMaxZoom=1,currentScaleBarUnit=null,currentView=new Msn.VE.MapView(p_this),preferredView=new Msn.VE.MapView(p_this),previousZoomLevel=1,previousCenter=null,lastViewChangeType=null,previousMapStyle=null,lastOrthoZoomLevel=15,lastOrthoMapStyle=roadStyle,x=0,y=0,width=0,height=0,trafficAvailable=false,tileLayerManager=new VETileLayerManager,originX=0,originY=0,offsetX=0,offsetY=0,tileViewportX1=0,tileViewportY1=0,tileViewportX2=0,tileViewportY2=0,tileViewportWidth=0,tileViewportHeight=0,dragging=false,keyboardPan=false,lastMouseX=0,lastMouseY=0,zooming=false,zoomCounter=0,panning=false,panCounter=0,panningX=0,panningY=0,panLatitude=null,panLongitude=null,pushpins=[],lines=[],map=document.createElement("div"),keyboard=document.createElement("input");keyboard.id="wl_ve_mapInput";var logo=null,scaleBar=null,mapLegend=null,copyright=null;this.UpdateCopyright=function(){if(copyright)copyright.Update()};var dashboardContainer=null,dashboard=null,minimapControl=null,minimapContainer=null,mouseZoomDisabled=false,mousewheelZoomToCenter=true,isMinimap=false,boxTool=null,panTool=null,targetTool=null,currentTool=null,orthoMode=null,obliqueMode=null,threeDMode=null,currentMode=null,previousMode=null,Initialized2D=false,currentBounds=null,defaultEventTable=[],customEventTable=[],debug=false,graphicCanvas=null,svgLayer=null,svgDiv=null,bShowSVG=true;this.GetsvgDiv=function(){return svgDiv};var mapCenterOffset=new VEPixel(0,0),resizeInProgress=false,loadBaseTiles=true,view3DCreated=false,spacecontrol=false,spacediv=null,spaceCameraIsFlying=false,init3dparam=null,resizeTimer=null,traffic3dAdded=false,initial3dView=null,cameraUpdateCount=0,photoplugin3dActive=false;this.Is3DPhotoPluginActive=function(){return photoplugin3dActive};this.Set3DPhotoPluginActive=function(a){photoplugin3dActive=a};function SetChildDiv(a){map.appendChild(a)}function EnableGeoCommunity(a){hijackMouseMove=a}function IsGeoCommunityEnabled(){return hijackMouseMove}function HijackMouseCursor(a){hijackMouseCursor=a}function IsHijackMouseCursor(){return hijackMouseCursor}function GetOffsetX(){return offsetX}function GetOffsetY(){return offsetY}function GetOriginY(){return originY}function GetOriginX(){return originX}this.Init=function(){orthoMode=new OrthoMode;orthoMode.Init();if(p_htParams.obliqueEnabled){obliqueMode=new ObliqueMode;obliqueMode.SetGUID(p_htParams.mapGUID);obliqueMode.Init(p_htParams.obliqueUrl?p_htParams.obliqueUrl:"%0dev.virtualearth.net/services/v1/ImageryMetadataService/ImageryMetadataService.asmx")}if(p_htParams.clientToken)this.SetClientToken(p_htParams.clientToken);threeDMode=new ThreeDMode;threeDMode.Init();UpdateFromParent();map.className="MSVE_Map";map.style.zIndex=mapZIndex;p_elSource.appendChild(map);cssFn.addClass(p_elSource,"MSVE_MapContainer");keyboard.className="MSVE_KeyboardInput";if(typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null&&Web.Browser.isSafari()){keyboard.style.top=0;keyboard.style.left=0;keyboard.style.border=0;if(Web.Browser.isSafari2()){keyboard.style.height=0;keyboard.style.width=0}else if(Web.Browser.isSafari3()){keyboard.style.outlineWidth=0;keyboard.style.color="transparent";keyboard.style.backgroundColor="transparent"}}p_elSource.appendChild(keyboard);if(!p_htParams.fixedView){p_elSource.attachEvent("onmousedown",MouseDown);p_elSource.attachEvent("onmouseup",MouseUp);p_elSource.attachEvent("onmousemove",MouseMove);p_elSource.attachEvent("ondblclick",MouseDoubleClick);p_elSource.attachEvent("oncontextmenu",ContextMenu);p_elSource.attachEvent("onclick",MouseClick);p_elSource.attachEvent("onmouseout",MouseOut);p_elSource.attachEvent("onmouseover",MouseOver);p_elSource.attachEvent("onmouseenter",MouseEnter);p_elSource.attachEvent("onmouseleave",MouseLeave)}if(p_htParams.buffer!=undefined&&p_htParams.buffer!=null)SetTilePixelBuffer(p_htParams.buffer);var startIn3DMode=false;loadBaseTiles=typeof p_htParams.loadBaseTiles=="undefined"||p_htParams.loadBaseTiles!=false;if(p_htParams.mapMode!="undefined"&&p_htParams.mapMode!=null&&p_htParams.mapMode==Msn.VE.MapActionMode.Mode3D||p_htParams.altitude&&p_htParams.altitude>-1000||p_htParams.tilt&&p_htParams.tilt!=-90||p_htParams.direction&&p_htParams.direction!=0){SetBaseTileSource();startIn3DMode=true;currentMode=threeDMode}init3dparam=p_htParams.mapGUID;if((p_htParams.latitude!=null&&typeof p_htParams.latitude!="undefined"&&p_htParams.longitude!=null&&typeof p_htParams.longitude!="undefined"&&p_htParams.zoomlevel!=null&&typeof p_htParams.zoomlevel!="undefined"||p_htParams.boundingBox!=null&&typeof p_htParams.boundingBox!="undefined")&&p_htParams.mapstyle!=null&&typeof p_htParams.mapstyle!="undefined")try{var initialView=new Msn.VE.MapView(p_this);initialView.SetMapStyle(ValidateMapStyle(p_htParams.mapstyle),p_htParams.obliqueSceneId,p_htParams.birdseyeOrientation);if(startIn3DMode){initialView.sceneId=p_htParams.obliqueSceneId;initialView.photoX=p_htParams.photoX;initialView.photoY=p_htParams.photoY;initialView.photoScale=p_htParams.photoScale}if(p_htParams.boundingBox){var bb=p_htParams.boundingBox;if(bb.northwest){bb.northwest.latitude=ClipLatitude(bb.northwest.latitude);bb.northwest.longitude=ClipLongitude(bb.northwest.longitude)}if(bb.southeast){bb.southeast.latitude=ClipLatitude(bb.southeast.latitude);bb.southeast.longitude=ClipLongitude(bb.southeast.longitude)}initialView.SetLatLongRectangle(bb);if(startIn3DMode)initialView.Resolve(orthoMode,width,height)}else{initialView.SetZoomLevel(eval(p_htParams.zoomlevel));initialView.SetCenterLatLong(new Msn.VE.LatLong(eval(p_htParams.latitude),eval(p_htParams.longitude)))}if(p_htParams.altitude)initialView.SetAltitude(p_htParams.altitude);if(p_htParams.tilt)initialView.SetTilt(p_htParams.tilt);if(p_htParams.direction)initialView.SetDirection(p_htParams.direction);if(p_htParams.cameraPos){initialView.cameraLatlong=new Msn.VE.LatLong(eval(p_htParams.cameraPos[0]),eval(p_htParams.cameraPos[1]));initialView._needsPivotOperation=false}if(!startIn3DMode)SetBaseTileSource();currentView=initialView}catch(a){if(!startIn3DMode)SetDefaultView();else currentView=initialView}else if(!startIn3DMode)SetDefaultView();else currentView=initialView;if(startIn3DMode)this.Init3DOnly();else this.Init2DOnly();if(typeof p_htParams.hideCopyright=="undefined"||!p_htParams.hideCopyright){copyright=new Copyright(p_elSource);copyright.Init();copyright.Update();if(scaleBar)copyright.PinTo(scaleBar);if(mapLegend)mapLegend.PinTo(copyright)}if(typeof p_htParams.showMinimap!="undefined"&&p_htParams.showMinimap){var loadMinimapNow=false;if(obliqueMode!=null&&Msn.VE.MapStyle.IsViewOblique(p_htParams.mapstyle))loadMinimapNow=true;CreateMinimap(null,null,null,loadMinimapNow,null,p_htParams.minimapVersion,p_htParams.clientToken)}if(p_htParams.showDashboard){if(p_htParams.showMapModeSwitch!=false)p_htParams.showMapModeSwitch=true;CreateDashboard(p_htParams.dashboardX,p_htParams.dashboardY,p_htParams.dashboardSize,p_htParams.dashboardId,p_htParams.showMapModeSwitch,p_htParams.obliqueEnabled,p_htParams.labelsDefault,p_htParams.dashboardVersion,p_htParams.dashboardColor)}if(p_htParams.showMapLegend)this.CreateLegend();if(startIn3DMode)copyright.Hide()};AttachEvent("onstartmapstyleoblique",function(){if(targetTool)targetTool.trackMovement()});AttachEvent("onendmapstyleoblique",function(){if(targetTool)targetTool.ignoreMovement()});AttachEvent("onchangeview",OnChangeView);this.Init2DOnly=function(a){mvcViewFacade.OnSwitchToFlatlandView();currentView.doRoadShading=typeof p_htParams.doRoadShading!="undefined"&&p_htParams.doRoadShading==true;if(!p_htParams.fixedView){boxTool=new BoxTool;boxTool.Init();panTool=new PanTool;panTool.Init();currentTool=panTool;keyboard.attachEvent("onkeydown",KeyDown);keyboard.attachEvent("onkeyup",KeyUp);keyboard.attachEvent("onblur",StopKeyboardPan);p_elSource.attachEvent("onmousewheel",MouseWheel)}targetTool=new TargetTool;targetTool.init();if(!p_htParams.disableLogo){logo=new Logo(this,p_elSource,p_htParams.enableClickLogo,p_htParams.enableSearchLogo);logo.Init()}if(typeof copyright!="undefined"&©right!=null)copyright.Show();if(obliqueMode&¤tMode!=obliqueMode)obliqueMode.UpdateAvailability();graphicCanvas=GetGraphic(this);window.attachEvent("onresize",WindowResizeSVG);tileLayerManager.Active=true;if(currentView==null)SetDefaultView();else{if(a==true||!Initialized2D){SetView(currentView);Initialized2D=true}SetView(null)}if(p_htParams.showScaleBar){InitScaleBar();scaleBar.Show()}Fire("oninitmode",Msn.VE.MapActionMode.Mode2D)};function InitScaleBar(){scaleBar=new ScaleBar(p_elSource);scaleBar.Init();if(currentScaleBarUnit)SetScaleBarDistanceUnit(currentScaleBarUnit);if(copyright)copyright.PinTo(scaleBar);AttachEvent("onendzoom",scaleBar.Update);AttachEvent("onendpan",scaleBar.Update);AttachEvent("onobliquechange",scaleBar.Update);AttachEvent("onchangemapstyle",scaleBar.Update);AttachEvent("onresize",scaleBar.Reposition)}this.Init3DOnly=function(){if(typeof LoadMapDrawing=="function")LoadMapDrawing(null);if(dashboard)if(window.navigator.userAgent.indexOf("Firefox")<0){var d=dashboard.GetShimmedElements(),c;for(c=0;c
0)this.Setup3DManifests();tileLayerManager.AddAllTileSourcesTo3D(spacecontrol);AttachEvent("onchangetraffic",OnView3DScaleBarPositionUpdate);AttachEvent("onchangemapstyle",OnChangeMapStyle3D);spacecontrol.AttachEvent("OnCameraChanged","OnView3DUpdateViewpoint");spacecontrol.AttachEvent("OnBeginCameraChange","OnBeginFlyTo");if(!p_htParams.fixedView){spacecontrol.AttachEvent("OnHover","OnView3DPushpinHover");spacecontrol.AttachEvent("OnHoverEnd","OnView3DHoverEnd");spacecontrol.AttachEvent("OnDropGeometry","OnView3DDropGeometry");spacecontrol.AttachEvent("OnLatLonAltClicked","OnView3DLatLonAltClicked");spacecontrol.AttachEvent("OnMouseDown","OnMouseDown3D");spacecontrol.AttachEvent("OnMouseUp","OnMouseUp3D");spacecontrol.AttachEvent("OnClick","OnClick3D");spacecontrol.AttachEvent("OnMouseOver","OnMouseOver3D");spacecontrol.AttachEvent("OnMouseOut","OnMouseOut3D");spacecontrol.AttachEvent("OnDoubleClick","OnDoubleClick3D");spacecontrol.AttachEvent("OnModelViewSuccess","UniqueModelViewSuccess");spacecontrol.AttachEvent("OnModelViewFailure","UniqueModelViewFailure");spacecontrol.AttachEvent("OnModelFullyDownloaded","UniqueModelFullyDownloaded")}else spacecontrol.FixedView=true;traffic3dAdded=false;if(typeof VE_TrafficManager!="undefined"&&VE_TrafficManager!=null)VE_TrafficManager.GetTrafficInfo(false);OnView3DScaleBarPositionUpdate();if(typeof VE_BrandExplorationManager!="undefined"&&VE_BrandExplorationManager!=null)VE_BrandExplorationManager.Clear();LoadStreetLevelGeometry(spacecontrol);LoadHiResModelsPlugin(spacecontrol);LoadWeatherPlugin(spacecontrol);if(!init3dparam)Relay3DPushpins();Fire("oninitmode",Msn.VE.MapActionMode.Mode3D)};this.Setup3DManifests=function(){var c=currentView.mapStyle,a="http://go.microsoft.com/fwlink/?LinkID=98770",b="http://go.microsoft.com/fwlink/?LinkID=98775",d="http://go.microsoft.com/fwlink/?LinkID=98774";if(c=="a"){a="http://go.microsoft.com/fwlink/?LinkID=98771";spacecontrol.ShowAtmosphere=true}if(c=="h"){a="http://go.microsoft.com/fwlink/?LinkID=98772";spacecontrol.ShowAtmosphere=true}if(c=="r"){spacecontrol.TexturesVisible=false;if(spacecontrol.HardwareClassificationLevel<3)a="http://go.microsoft.com/fwlink/?LinkID=98769";spacecontrol.ShowAtmosphere=false}else spacecontrol.TexturesVisible=true;if(2==spacecontrol.HardwareClassificationLevel){d="http://go.microsoft.com/fwlink/?LinkID=98773";b="http://go.microsoft.com/fwlink/?LinkID=98776"}else if(1==spacecontrol.HardwareClassificationLevel){d="http://go.microsoft.com/fwlink/?LinkID=98773";b=""}if(loadBaseTiles)spacecontrol.AddImageSource("Terrain","Texture",GetManifestUrl(a),0,1);spacecontrol.AddElevationSource("Terrain","DEM",GetManifestUrl(d),0);if(b!="")spacecontrol.AddModelSource("Model","Model",GetManifestUrl(b));else spacecontrol.RemoveModelSource("Model","Model")};this.ShowSVG=function(a){bShowSVG=a};this.getSvgLayer=function(){if(svgLayer==null){svgDiv=document.createElement("div");svgDiv.style.position="absolute";if(bShowSVG)svgDiv.style.zIndex=60;else svgDiv.style.zIndex=-1;svgDiv.align="left";this.resizeSVG();map.appendChild(svgDiv);svgLayer=new Msn.Drawing.SvgLayer(svgDiv,this)}return svgLayer};this.resetSvgLayer=function(){this.getSvgLayer();svgDiv.style.top=-parseInt(map.style.top)+"px";svgDiv.style.left=-parseInt(map.style.left)+"px";if(currentMode!=threeDMode&&graphicCanvas){graphicCanvas.SetOffset(offsetX,offsetY);tileLayerManager.RePositionPrintTiles()}};this.resizeSVG=function(){if(svgDiv!=null){var b=GetWindowWidth(),a=GetWindowHeight();svgDiv.style.top="0px";svgDiv.style.left="0px";svgDiv.style.width=b+"px";svgDiv.style.height=a+"px";if(currentMode!=threeDMode&&graphicCanvas){graphicCanvas.SetOffset(offsetX,offsetY);graphicCanvas.RepositionLogo(g(p_elSource).getStyle("width"),g(p_elSource).getStyle("height"));tileLayerManager.RePositionPrintTiles()}}};function WindowResizeSVG(){if(svgDiv!=null){svgDiv.style.width=GetWindowWidth()+"px";svgDiv.style.height=GetWindowHeight()+"px"}}function GetGraphic(a){if(!graphicCanvas)try{graphicCanvas=Msn.Drawing.Graphic.CreateGraphic(map,a);graphicCanvas.SetZIndex(17)}catch(b){}return graphicCanvas}this.GetDashboard=function(){return dashboard};this.GetMinimap=function(){return minimapControl};this.DisableZoomEvents=function(a){mouseZoomDisabled=a};this.GetMouseWheelZoomToCenter=function(){return mousewheelZoomToCenter};this.SetMouseWheelZoomToCenter=function(a){mousewheelZoomToCenter=a};this.SetMinimapMode=function(){mouseZoomDisabled=true;isMinimap=true};this.SetCursor=function(a){var b=p_elSource.style;if(b.cursor!=a)b.cursor=a};this.Destroy=function(){if(currentView){currentView.Destroy();currentView=null}if(preferredView){preferredView.Destroy();preferredView=null}if(copyright){copyright.Destroy();copyright=null}if(currentMode==threeDMode&¤tMode!=null)this.Destroy3DOnly();else{this.Destroy2DOnly();while(pushpins.length)pushpins.pop().Destroy();ClearLines()}if(!p_htParams.fixedView){p_elSource.detachEvent("onmousedown",MouseDown);p_elSource.detachEvent("onmouseup",MouseUp);p_elSource.detachEvent("onmousemove",MouseMove);p_elSource.detachEvent("ondblclick",MouseDoubleClick);p_elSource.detachEvent("oncontextmenu",ContextMenu);p_elSource.detachEvent("onmousewheel",MouseWheel);p_elSource.detachEvent("onclick",MouseClick);p_elSource.detachEvent("onmouseout",MouseOut);p_elSource.detachEvent("onmouseover",MouseOver);p_elSource.detachEvent("onmouseenter",MouseEnter);p_elSource.detachEvent("onmouseleave",MouseLeave)}if(dashboard){if(typeof dashboard.Destroy!="undefined")dashboard.Destroy();dashboard=null}if(mapLegend){DetachEvent("onendzoom",mapLegend.Update);DetachEvent("onendpan",mapLegend.Update);DetachEvent("onobliquechange",mapLegend.Update);mapLegend.Destroy();mapLegend=null}if(dashboardContainer){dashboardContainer.detachEvent("onmousedown",IgnoreEvent);dashboardContainer.detachEvent("onmouseup",IgnoreEvent);dashboardContainer.detachEvent("onmousemove",DashboardContainerMouseMoveEvent);dashboardContainer.detachEvent("onmousewheel",IgnoreEvent);dashboardContainer.detachEvent("ondblclick",IgnoreEvent);dashboardContainer.detachEvent("oncontextmenu",IgnoreEvent);dashboardContainer.detachEvent("onkeydown",IgnoreEvent);dashboardContainer.detachEvent("onkeyup",IgnoreEvent);dashboardContainer=null}if(minimapControl){minimapControl.Destroy();minimapControl=null}if(minimapContainer){minimapContainer.detachEvent("onmousedown",IgnoreEvent);minimapContainer.detachEvent("onmouseup",IgnoreEvent);minimapContainer.detachEvent("onmousemove",DashboardContainerMouseMoveEvent);minimapContainer.detachEvent("onmousewheel",IgnoreEvent);minimapContainer.detachEvent("ondblclick",IgnoreEvent);minimapContainer.detachEvent("oncontextmenu",IgnoreEvent);minimapContainer.detachEvent("onkeydown",IgnoreEvent);minimapContainer.detachEvent("onkeyup",IgnoreEvent);minimapContainer=null}if(orthoMode){orthoMode.Destroy();orthoMode=null}if(obliqueMode){obliqueMode.Destroy();obliqueMode=null}if(threeDMode){threeDMode.Destroy();threeDMode=null}DestroyEventTable();m_clientToken=null;p_elSource.style.backgroundColor="transparent";p_elSource.style.backgroundImage="none";p_elSource.style.filter="";keyboard=p_elSource=p_this=map=null;tileLayerManager.ClearTileLayers();cssCursors=null;cssFn=null};this.Destroy2DOnly=function(){if(!p_htParams.fixedView){keyboard.detachEvent("onkeydown",KeyDown);keyboard.detachEvent("onkeyup",KeyUp);keyboard.detachEvent("onblur",StopKeyboardPan);p_elSource.detachEvent("onmousewheel",MouseWheel)}tileLayerManager.Active=false;if(scaleBar){DetachEvent("onendzoom",scaleBar.Update);DetachEvent("onendpan",scaleBar.Update);DetachEvent("onobliquechange",scaleBar.Update);DetachEvent("onchangemapstyle",scaleBar.Update);DetachEvent("onresize",scaleBar.Reposition);scaleBar.Destroy();scaleBar=null}if(copyright)copyright.PinTo(null);if(logo){logo.Destroy();logo=null}if(boxTool){boxTool.Destroy();boxTool=null}if(panTool){panTool.Destroy();panTool=null}if(targetTool){targetTool.destroy();targetTool=null}if(graphicCanvas){window.detachEvent("onresize",WindowResizeSVG);graphicCanvas.Destroy();graphicCanvas=null}Fire("ondestroymode",Msn.VE.MapActionMode.Mode2D)};this.Destroy3DOnly=function(){DetachEvent("onchangetraffic",OnView3DScaleBarPositionUpdate);DetachEvent("onchangemapstyle",OnChangeMapStyle3D);view3DCreated=false;try{spacecontrol.Close()}catch(c){}spacecontrol=false;window.status="";if(spacediv!=null){spacediv.removeNode(true);spacediv=null}if(dashboard&&dashboard.GetShimmedElements){var b=dashboard.GetShimmedElements(),a;for(a=0;a=0)width=b;if(a&&a>=0)height=a}PanToView(currentView)}if(copyright)copyright.Reposition();if(scaleBar)scaleBar.Reposition();if(!isVML)p_this.resizeSVG();Fire("onresize")};function IsObliqueAvailable(){return obliqueMode?obliqueMode.IsAvailable():false}function GetObliqueScene(){return obliqueMode?obliqueMode.GetScene():null}function SetAnimationEnabled(a){animatedMovementEnabled=a}function IsAnimationEnabled(){return animatedMovementEnabled&¤tMode!=threeDMode}function SetObliqueScene(a){if(obliqueMode)SetMapStyle(obliqueStyle,a,null)}function SetObliqueLocation(f,c,d,e){if(obliqueMode){Sync3dView();var a=currentView.MakeCopy(),b;if(IsMapViewOblique())b=GetMapStyle();else b=p_htParams.labelsDefault?obliqueHybridStyle:obliqueStyle;a.SetMapStyle(b,null,c);a.SetZoomLevel(d);if(!Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){Fire("onstartmapstyleoblique");lastOrthoZoomLevel=currentView.zoomLevel;lastOrthoMapStyle=currentView.mapStyle}a.SetCenterLatLong(f);a.callback=e;SetView(a)}}function SetObliqueOrientation(d,c,b){if(obliqueMode){var a;if(IsMapViewOblique())a=GetMapStyle();else a=p_htParams.labelsDefault?obliqueHybridStyle:obliqueStyle;SetMapStyle(a,null,d,c,b)}}function Debug(a){debug=a}function GetMapLegend(){return mapLegend}function SetFocus(){if(currentMode==threeDMode)spacecontrol.Focus();else keyboard.focus()}function StopKeyboardPan(){if(panning&&keyboardPan)StopContinuousPan()}function UpdatePreferredView(){preferredView.Copy(currentView)}function GetCenterOffset(){if(currentMode!=null&¤tMode==threeDMode)return new VEPixel(0,0);return mapCenterOffset}function SetCenterOffset(a){if(typeof a!="undefined"&&a!=null)mapCenterOffset=a}function GetLastViewChangeType(){var a=lastViewChangeType;lastViewChangeType=null;return a}function ShowNonIENotSupportedDialog(){Fire("onerror",CreateEvent(currentView.latlong,currentView.zoomLevel,L_BrowserNotSupported_Text.replace(/%1/g,'').replace(/%3/g,L_SupportedBrowserDownloadUrl_Text).replace(/%2/g," ")))}function DelayedHWDialog(){ShowMessage(L_NoHardwareAcceleration_Text)}function SetShowMapModeSwitch(a){if(dashboard&&dashboard.constructor==Msn.VE.NavAction)dashboard.SetShowMapModeSwitch(a)}function SetTilePixelBuffer(a){buffer=ae-c)a=(e-c-b)/2-d+c;else if(d+ae)a=e-d-b;return a}function VECopyrightTableEntry(b,a,e,f,c,d){this.MinZoomLevel=b;this.MaxZoomLevel=a;this.MinLatitude=e;this.MinLongitude=f;this.MaxLatitude=c;this.MaxLongitude=d}VECopyrightTableEntry.prototype.IsMatch=function(b,c,a){var d=false;if(b>=this.MinZoomLevel&&b<=this.MaxZoomLevel&&(c>=this.MinLatitude&&c<=this.MaxLatitude)&&(a>=this.MinLongitude&&a<=this.MaxLongitude))d=true;return d};function VECopyrightTable(){var L_MapControlImageCourtesyOfPictometry_Text = 'Pictometry Bird’s Eye © 2010 Pictometry International Corp';
var L_MapControlImageCourtesyOfPictometry_CAN_Text = 'Pictometry Bird’s Eye © 2010 MDA Geospatial Services Inc.';
var L_MapControlImageCourtesyOfPictometry_AUS_Text = 'Pictometry Bird’s Eye © 2010 AAMHatch Pty Ltd';
var L_MapControlImageCourtesyOfBlom_Text = '© 2010 Blom';
var L_MapControlImageCourtesyOfNAVTEQ_Text = '© 2010 NAVTEQ';
var L_MapControlImageCourtesyOfAND_Text = '© AND';
var L_MapControlImageCourtesyOfMapDataSciences_Text = '© 2010 MapData Sciences Pty Ltd, PSMA';
var L_MapControlImageCourtesyOfZenrin_Text = '© 2010 Zenrin';
var L_MapControlImageCourtesyOfIntermap_Text = '© 2010 Intermap';
var L_MapControlImageCourtesyOfDigitalGlobe_Text = '© 2010 DigitalGlobe';
var L_MapControlImageCourtesyOfNASA_Text = 'Image courtesy of NASA';
var L_MapControlImageCourtesyOfHarrisCorp_Text = '© Harris Corp, Earthstar Geographics LLC';
var L_MapControlImageCourtesyOfUSGS_Text = 'Image courtesy of USGS';
var L_MapControlImageCourtesyOfGetmapping_Text = '© Getmapping plc';
var L_MapControlImageCourtesyOfGeoEye_Text = '© 2010 GeoEye';
var L_MapControlImageCourtesyOfPasco_Text = '© 2010 Pasco';
var L_MapControlImageCourtesyOfIntergraph_Text = '© GeoContent / (p) Intergraph';
var L_MapControlImageCourtesyOfTerraItaly_Text = '© 2010 TerraItaly';
var L_MapControlImageCourtesyOfIntermap_Text = '© 2010 Intermap';
var L_MapControlImageCourtesyOfIndianaMap_Text = 'Image courtesy of the IndianaMap';
var L_MapControlImageCourtesyOfStateOfNevada_Text = 'Image courtesy of the Nevada State Mapping Advisory Committee';
var L_MapControlImageCourtesyOfInterAtlas_Text = '© 2010 InterAtlas';
var L_MapControlImageCourtesyOfEurosense_Text = '© 2010 Eurosense';
var L_MapControlImageCourtesyOfIGP_Text = '© 2010 IGP';
var L_MapControlImageCourtesyOfIGN_Text = '© 2010 IGN';
var L_MapControlImageCourtesyOfBC_Text = '© Province of British Columbia';
var L_MapControlImageCourtesyOfBEV_Text = '© 2010 BEV / (p) Intergraph';
var L_MapControlImageCourtesyOfBlom_Text = '© 2010 Blom';
var L_MapControlImageCourtesyOfAerialsExpress_Text = '© 2010 Aerials Express';
var L_MapControlImageCourtesyOfLACounty_Text = 'Image courtesy of LAR-IAC';
var L_MapControlImageCourtesyOfTerraPixel_Text = 'ImagePatch.com';
var L_MapControlImageCourtesyOfStateOfMichigan_Text = 'State of Michigan';
var m_tableKeys = [];
m_tableKeys[Msn.VE.MapStyle.Oblique] = [ L_MapControlImageCourtesyOfPictometry_Text, L_MapControlImageCourtesyOfPictometry_CAN_Text, L_MapControlImageCourtesyOfPictometry_AUS_Text, L_MapControlImageCourtesyOfBlom_Text ];
m_tableKeys[Msn.VE.MapStyle.Road] = [ L_MapControlImageCourtesyOfNAVTEQ_Text, L_MapControlImageCourtesyOfAND_Text, L_MapControlImageCourtesyOfMapDataSciences_Text, L_MapControlImageCourtesyOfZenrin_Text, L_MapControlImageCourtesyOfIntermap_Text ];
m_tableKeys[Msn.VE.MapStyle.Aerial] = [ L_MapControlImageCourtesyOfDigitalGlobe_Text, L_MapControlImageCourtesyOfNASA_Text, L_MapControlImageCourtesyOfHarrisCorp_Text, L_MapControlImageCourtesyOfUSGS_Text, L_MapControlImageCourtesyOfGetmapping_Text, L_MapControlImageCourtesyOfGeoEye_Text, L_MapControlImageCourtesyOfPasco_Text, L_MapControlImageCourtesyOfIntergraph_Text, L_MapControlImageCourtesyOfTerraItaly_Text, L_MapControlImageCourtesyOfIntermap_Text, L_MapControlImageCourtesyOfIndianaMap_Text, L_MapControlImageCourtesyOfStateOfNevada_Text, L_MapControlImageCourtesyOfInterAtlas_Text, L_MapControlImageCourtesyOfEurosense_Text, L_MapControlImageCourtesyOfIGP_Text, L_MapControlImageCourtesyOfIGN_Text, L_MapControlImageCourtesyOfBC_Text, L_MapControlImageCourtesyOfBEV_Text, L_MapControlImageCourtesyOfBlom_Text, L_MapControlImageCourtesyOfAerialsExpress_Text, L_MapControlImageCourtesyOfLACounty_Text, L_MapControlImageCourtesyOfTerraPixel_Text, L_MapControlImageCourtesyOfStateOfMichigan_Text ];
var m_table = [];
m_table[Msn.VE.MapStyle.Oblique] = [];
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_Text] = [];
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_Text].push( new VECopyrightTableEntry( 1, 20, 10, -165, 75, -45) );
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_Text].push( new VECopyrightTableEntry( 1, 20, 10, 90, 72, 165) );
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_CAN_Text] = [];
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_CAN_Text].push( new VECopyrightTableEntry( 1, 20, 41.3, -142, 70, -50) );
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_AUS_Text] = [];
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_AUS_Text].push( new VECopyrightTableEntry( 1, 20, -60, 90, 0, 180) );
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfBlom_Text] = [];
m_table[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfBlom_Text].push( new VECopyrightTableEntry( 1, 20, 34, -13, 72, 35) );
m_table[Msn.VE.MapStyle.Road] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 1, 9, -90, -180, 90, 180) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 14, -180, 90, -50) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 27, -32, 40, -13) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 35, -11, 72, 20) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 21, 20, 72, 32) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 21.92, 113.14, 22.79, 114.52) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 21.73, 119.7, 25.65, 122.39) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 0, 98.7, 8, 120.17) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfNAVTEQ_Text].push( new VECopyrightTableEntry( 10, 21, 0.86, 103.2, 1.92, 104.45) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfAND_Text] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfAND_Text].push( new VECopyrightTableEntry( 10, 21, -90, -180, 90, 180) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text].push( new VECopyrightTableEntry( 5, 21, -45, 111, -9, 156) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text].push( new VECopyrightTableEntry( 5, 21, -49.7, 164.42, -30.82, 180) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfZenrin_Text] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfZenrin_Text].push( new VECopyrightTableEntry( 4, 21, 23.5, 122.5, 46.65, 151.66) );
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfIntermap_Text] = [];
m_table[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfIntermap_Text].push( new VECopyrightTableEntry( 1, 21, 49, -11, 60, 2) );
m_table[Msn.VE.MapStyle.Aerial] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, -67, -179.99, 27, 0) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 27, -179.99, 87, -126.5) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 48.4, -126.5, 87, -5.75) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, -67, 28, 86.5, 179.99) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, -67, 0, 37.8, 28) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 37.7, 18.5, 59.8, 28) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 43, -81.6, 48.4, -10) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 27, -70, 43, -10) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 27, -10, 35.8, 0) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 27, -120, 32.3, -105.8) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfDigitalGlobe_Text].push( new VECopyrightTableEntry( 14, 21, 43.4, 13.78, 54.9, 18.5) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfNASA_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfNASA_Text].push( new VECopyrightTableEntry( 1, 8, -90, -180, 90, 180) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfHarrisCorp_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfHarrisCorp_Text].push( new VECopyrightTableEntry( 9, 13, -90, -180, 90, 180) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfUSGS_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfUSGS_Text].push( new VECopyrightTableEntry( 14, 17, 17.99, -150.11, 61.39, -65.57) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGetmapping_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGetmapping_Text].push( new VECopyrightTableEntry( 14, 21, 49.94, -6.82, 60.17, 1.78) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, 48.95, -152, 65.5, -95.4) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, 45.15, -73.2, 48.9, -70.2) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, 31.87, -67.56, 49, -50.46) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, -23, -180, 30, -145) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, -37.7, -110, 26.5, -33) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push( new VECopyrightTableEntry( 14, 21, -46, -20, 67, 180) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfPasco_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfPasco_Text].push( new VECopyrightTableEntry( 14, 21, 23.5, 122.5, 46.65, 151.66) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntergraph_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntergraph_Text].push( new VECopyrightTableEntry( 14, 21, 47, 5, 55.5, 16) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push( new VECopyrightTableEntry( 14, 21, 43.15, 6.5, 47.15, 14) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push( new VECopyrightTableEntry( 14, 21, 41.3, 9.9, 43.15, 16.4) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push( new VECopyrightTableEntry( 14, 21, 36.5, 7.9, 41.3, 18.7) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntermap_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntermap_Text].push( new VECopyrightTableEntry( 1, 21, 49, -11, 60, 2) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIndianaMap_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIndianaMap_Text].push( new VECopyrightTableEntry( 14, 21, 37.7, -88.2, 41.9, -84.7) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfNevada_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfNevada_Text].push( new VECopyrightTableEntry( 14, 21, 34.85, -120.2, 42.12, -113.91) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push( new VECopyrightTableEntry( 14, 21, 48.37, 1.4, 49.28, 3.37) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push( new VECopyrightTableEntry( 14, 21, 47.72, 1.67, 48.05, 2.18) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push( new VECopyrightTableEntry( 14, 21, 45.55, 4.57, 45.95, 5.33) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push( new VECopyrightTableEntry( 14, 21, 43.18, 4.92, 43.77, 5.82) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text].push( new VECopyrightTableEntry( 14, 21, 51, 3, 53.65, 7.67) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text].push( new VECopyrightTableEntry( 14, 21, 50.58, 5.42, 51, 5.47) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGP_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGP_Text].push( new VECopyrightTableEntry( 14, 21, 36.88, -9.6, 42.27, -6) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 42, -5, 51.25, 8.5) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 41.25, 8.3, 43.1, 9.65) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 17.85, -63.17, 18.15, -62.77) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 15.75, -61.9, 16.55, -60.9) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 14.35, -61.25, 14.95, -60.75) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 2.25, -54.65, 6, -51.4) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, -21.5, 55, -20.75, 56) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push( new VECopyrightTableEntry( 14, 21, 46.7, -56.5, 47.2, -56.1) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBC_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBC_Text].push( new VECopyrightTableEntry( 14, 18, 48.99, -139.05, 60, -114.05) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBEV_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBEV_Text].push( new VECopyrightTableEntry( 14, 21, 46.25, 9.4, 49.2, 17.3) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBlom_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBlom_Text].push( new VECopyrightTableEntry( 14, 21, 36.1, -9.51, 51.04, 11.67) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBlom_Text].push( new VECopyrightTableEntry( 14, 21, 55.69, 9.8, 61.17, 13.23) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBlom_Text].push( new VECopyrightTableEntry( 14, 21, 62.2, 25.82, 62.24, 25.89) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfAerialsExpress_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfAerialsExpress_Text].push( new VECopyrightTableEntry( 14, 21, 34.63, -90.41, 35.52, -89.48) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfLACounty_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfLACounty_Text].push( new VECopyrightTableEntry( 14, 21, 33.27, -119.02, 34.9, -117.59) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraPixel_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraPixel_Text].push( new VECopyrightTableEntry( 14, 21, 25.74, -106.76, 36.63, -93.97) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraPixel_Text].push( new VECopyrightTableEntry( 14, 21, 34.36, -93.14, 35.44, -92) );
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfMichigan_Text] = [];
m_table[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfMichigan_Text].push( new VECopyrightTableEntry( 14, 21, 41.68, -86.87, 45.89, -82.91) );
;this.CreditsFor=function(a,i,j,h){var e=[];if(a!="undefined"&&a!=null&&typeof m_tableKeys[a]!="undefined"&&m_tableKeys[a]!=null){var k=m_tableKeys[a].length;for(var c=0;c0)if(c==2)d+="\n";else d+=" ";f+=""+g[c]+" ";d+=g[c]}if(view3DCreated)spacecontrol.SetCopyrightString(d);b.innerHTML=f;a.innerHTML=f;e()}function i(){e()}function k(b){c=b;if(c)c.SetPinElement(a)}function h(a){d=a;e()}this.Reposition=e;this.Update=j;this.SetOffset=i;this.PinTo=k;this.SetPinElement=h}function MapEvent(f,d,e,a,c,b,g){this.view=f;this.oblique=d;this.error=e;this.requestedView=a;this.elementID=c;this.mouseButton=b;this.e=g}function CreateEvent(b,f,c,d,e,n,g,h){var a=currentView.MakeCopy();if(b!=null&&b instanceof Msn.VE.LatLong){if(Msn.VE.API!=null){var m=new VELatLongFactory(new VELatLongFactorySpecFromMapView(a));a.LatLong=m.CreateVELatLong(b.latitude,b.longitude);a.latlong=b}else a.latlong=b;if(typeof g!="undefined"&&g!=null)a.altitude=parseFloat(g);else a.altitude=0}if(f!=null&&typeof f=="number")a.zoomLevel=f;if(c==null||typeof c=="undefined")c="";var j=null;if(obliqueMode)j=obliqueMode.GetEventInfo();var i=null;if(d!=null&&d instanceof Msn.VE.MapView)i=d.MakeCopy();var k=null;if(typeof e!="undefined"&&e!=null)k=e;var l=null;if(typeof h!="undefined"&&h!=null)l=h;return new MapEvent(a,j,c,i,k,n,l)}function CreateCustomEvent(h,b,d){var a=new MapEvent;if(d)a.error=d.error;a.eventName=h;a.zoomLevel=currentView.zoomLevel;a.mapStyle=currentView.mapStyle;if(currentMode!=threeDMode){a.birdseyeSceneID=currentView.sceneId;a.birdseyeSceneOrientation=currentView.sceneOrientation;if(b){a.leftMouseButton=IsLeftMouseButton(b);a.rightMouseButton=IsRightMouseButton(b);a.middleMouseButton=IsMiddleMouseButton(b);a.mouseWheelChange=GetMouseScrollDelta(b);a.screenX=b.screenX;a.screenY=b.screenY;var e=Gimme.Screen.getMousePosition(b);a.clientX=e.x;a.clientY=e.y;var f=g(p_elSource).getPagePosition();a.mapX=a.clientX-f.x;a.mapY=a.clientY-f.y;a.keyCode=b.keyCode;a.altKey=b.altKey;a.ctrlKey=b.ctrlKey;a.shiftKey=b.shiftKey;a.elementID=null;var c=GetTarget(b);while(typeof c!="undefined"&&c!=null)if(typeof c.id!="undefined"&&c.id!=null&&c.id.indexOf(MC_IID_NAMESPACE)==0&&c.tagName!="CANVAS"){a.elementID=c.id;break}else if(typeof c.className!="undefined"&&c.className!=null&&c.className=="MSVE_MapContainer")break;else c=c.parentElement}}else if(d){if(d.view)a.latLong=d.view.LatLong;else a.latLong=null;a.elementID=d.elementID;a.leftMouseButton=d.mouseButton=="Left";a.rightMouseButton=d.mouseButton=="Right";a.middleMouseButton=d.mouseButton=="Middle";a.mouseWheelChange=0;a.keyCode=0;a.altKey=false;a.ctrlKey=false;a.shiftKey=false}return a}function AttachEvent(d,c){var a=defaultEventTable[d];if(!a){a=[];defaultEventTable[d]=a}for(var b=0;b0)lines.pop().Destroy()}function ShowLines(){graphicCanvas.Clear();for(var a=0;aa[0].latitude?b[0].latitude:a[0].latitude,k=b[0].longitude>a[0].longitude?b[0].longitude:a[0].longitude,m=b[1].latitude=0)a--;k(h[a],b);C(b)}function k(f,c){if(s(f.boundingRectangle[0],f.boundingRectangle[1]))return;if(f.childRegions!=null)for(var j=0;j=southLatitude&&a<=northLatitude&&b>=westLongitude&&b<=eastLongitude}function s(a,b){return a.latitude>northLatitude&&b.latitude>northLatitude||a.latitudeeastLongitude&&b.longitude>eastLongitude||a.longitude=0&&parseInt(navigator.userAgent.substring(I+5))===6;f=document.createElement("div");f.className="MSVE_LogoContainer";p.appendChild(f);if(G||E){e=g(f);e.addEvent("mouseover",B).addEvent("mouseout",D).addEvent("mousedown",a).addEvent("mouseup",a).addEvent("dblclick",a).addEvent("contextmenu",a).addEvent("click",a)}if(G){c=document.createElement("a");c.href="#";c.target="mc_bingMaps";c.title=L_BingLogoTooltip_Text;n=c;m.AttachEvent("onchangeview",t);try{t()}catch(J){}}else c=document.createElement("div");c.id="MSVE_PoweredByLogo";o(c,s);f.appendChild(c);if(E){var F=document.createElement("div");F.className="MSVE_LogoSearchContainer";var r=document.createElement("div");r.className="MSVE_LogoSearchGroup";F.appendChild(r);var k=document.createElement("input");k.id="MSVE_LogoSearchInput";k.type="text";k.maxLength=60;k.className="watermark";k.value=L_BingSearchWatermark_Text;j=true;r.appendChild(k);var l=document.createElement("input");l.id="MSVE_LogoSearchGo";l.type="button";l.title=L_BingSearchGoTooltip_Text;r.appendChild(l);b=g(F);b.setStyle("display","none");i=false;h=false;b.addEvent("mouseover",y).addEvent("mouseout",A).addEvent("mousedown",a).addEvent("mouseup",a).addEvent("dblclick",a).addEvent("contextmenu",a);q=g(l);q.addEvent("blur",v).addEvent("focus",u).addEvent("click",w);d=g(k);d.addEvent("blur",z).addEvent("focus",x).addEvent("keydown",C);p.appendChild(F)}};this.GetURL=function(){return Msn.VE.API.Globals.vecurrentdomain+"/i/bin/"+Msn.VE.API.Globals.vecurrentversion+"/"+s};this.Destroy=function(){if(n)m.DetachEvent("onchangeview",t);if(e)e.removeEvent("mouseover",B).removeEvent("mouseout",D).removeEvent("mousedown",a).removeEvent("mouseup",a).removeEvent("dblclick",a).removeEvent("contextmenu",a).removeEvent("click",a);p.removeChild(f);if(b){b.removeEvent("mouseover",y).removeEvent("mouseout",A).removeEvent("mousedown",a).removeEvent("mouseup",a).removeEvent("dblclick",a).removeEvent("contextmenu",a);q.removeEvent("blur",v).removeEvent("focus",u).removeEvent("click",w);d.removeEvent("blur",z).removeEvent("focus",x).removeEvent("keydown",C);p.removeChild(b.element())}l();n=null;c=null;f=null;q=null;d=null;b=null;e=null};function o(b,a){if(H)b.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+Msn.VE.API.Globals.vecurrentdomain+"/i/bin/"+Msn.VE.API.Globals.vecurrentversion+"/"+a+"', sizingMethod='scale')"}function a(a){a.stopPropagation()}function l(){if(b&&k){window.clearTimeout(k);k=null}}function r(){if(b&&i){l();k=window.setTimeout(K,2000)}}function F(){if(!j&&!d.element().value){d.element().value=L_BingSearchWatermark_Text;d.addClass("watermark");j=true}}function L(){if(j){d.element().value="";d.removeClass("watermark");j=false}}function K(){k=null;I();i=false}function I(){b.setStyle("display","none");e.swapClass("MSVE_LogoContainer_active","MSVE_LogoContainer");o(c,s)}function t(){if(n)n.href="http://www.bing.com/maps/?v=2&cp={0}~{1}&lvl={2}&FORM=BMLOGO".replace("{0}",m.GetCenterLatitude()).replace("{1}",m.GetCenterLongitude()).replace("{2}",m.GetZoomLevel())}function y(){l()}function A(){if(!h)r()}function v(){h=false;r()}function u(){h=true;l()}function z(a){v(a);F()}function x(a){u(a);L()}function w(){var a=d.element().value;if(!j&&typeof a==="string"&&a.length>0){d.element().value="";F();a=IOSec.EncodeUrl(a);var b="http://www.bing.com/search?q={0}&FORM=BMSDK1".replace("{0}",a);window.open(b,"mc_bingSearch");r()}}function C(a){if(h&&a.keyCode===13)w()}function B(){l();if(b&&!i){b.setStyle("display","");i=true}e.swapClass("MSVE_LogoContainer","MSVE_LogoContainer_active");o(c,J)}function D(){if(b){if(i&&!h)r()}else{e.swapClass("MSVE_LogoContainer_active","MSVE_LogoContainer");o(c,s)}}}var hijackMouseMove=false,hijackMouseCursor=false,isLastButtonMiddle=false;function MouseDown(a){a=GetEvent(a);CancelEvent(a);if(currentMode!=threeDMode&&FireCustomEvent("onmousedown",a))return false;if(zooming)return false;if(panning)StopContinuousPan();if(obliqueMode)obliqueMode.CancelRequest();if(!mouseZoomDisabled)if(a.which&&a.which==2)currentTool=boxTool;else if(!a.which&&a.button&&a.button==4)currentTool=boxTool;else if(a.ctrlKey|a.altKey)currentTool=boxTool;if(!document.all&&!isEnablingDefaultDblClick)isEnablingDefaultDblClick=true;dragging=true;var b=typeof a.which!="undefined"?a.which:a.button;if(!hijackMouseMove&&!hijackMouseCursor&&b==1)p_this.SetCursor(cssCursors.Grabbing);if(currentTool)currentTool.OnMouseDown(a);return false}var lastmouseX=0,lastmouseY=0;function MouseMove(a){a=GetEvent(a);var b=Gimme.Screen.getMousePosition(a);lastmouseX=b.x;lastmouseY=b.y;if(currentMode!=threeDMode&&FireCustomEvent("onmousemove",a))return false;if(hijackMouseMove){a=GetEvent(a);CancelEvent(a);var c=g(p_elSource).getPagePosition();x=c.x;y=c.y;var e=originX+offsetX+lastmouseX-x,f=originY+offsetY+lastmouseY-y,d=CreateEvent(currentMode.PixelToLatLong(new VEPixel(e,f),currentView.zoomLevel));FireDefaultEvent("onmousemove",d);return}if(currentTool&&dragging)currentTool.OnMouseMove(a);return false}function MouseUp(a){a=GetEvent(a);CancelEvent(a);if(a)isLastButtonMiddle=IsMiddleMouseButton(a);if(currentMode!=threeDMode&&FireCustomEvent("onmouseup",a))return false;dragging=false;if(!hijackMouseMove&&!hijackMouseCursor)p_this.SetCursor(cssCursors.Grab);var b;if(currentTool)b=currentTool.OnMouseUp(a);if(targetTool&&targetTool.isOutOfBounds())targetTool.OnMouseUp(a);var c=true;if(typeof b!="undefined"&&b.view!=null){isEnablingDefaultDblClick=b.view.disableDbClick!=true;c=b.view.disableMapFocus!=true}else isEnablingDefaultDblClick=true;currentTool=panTool;try{if(c)keyboard.focus()}catch(d){}return false}function IsOnscreen(c,d){var b=tileSize*Math.pow(2,currentView.zoomLevel),a=originX+offsetX+c-x;if(a<0||a>b)return false;a=originY+offsetY+d-y;if(a<0||a>b)return false;return true}var isEnablingDefaultDblClick=true;function MouseDoubleClick(a){a=GetEvent(a);CancelEvent(a);var b=Gimme.Screen.getMousePosition(a);if(currentMode!=threeDMode&&FireCustomEvent("ondoubleclick",a))return false;if(hijackMouseMove)return false;if(isEnablingDefaultDblClick){UpdateFromParent();if(panning||zooming||mouseZoomDisabled)return false;if(!IsMapViewOblique()&&!IsOnscreen(b.x,b.y))return false;var c=preferredView.MakeCopy();c.SetCenter(new VEPixel(originX+offsetX+b.x-x-mapCenterOffset.x,originY+offsetY+b.y-y-mapCenterOffset.y));if(a.ctrlKey|a.altKey)c.SetZoomLevel(currentView.zoomLevel-1);else c.SetZoomLevel(currentView.zoomLevel+1);SetView(c);return false}else isEnablingDefausltDblClick=true}function MouseWheel(a){a=GetEvent(a);CancelEvent(a);if(currentMode!=threeDMode&&FireCustomEvent("onmousewheel",a))return false;if(currentMode!=null&¤tMode==threeDMode)return false;if(panning||zooming||mouseZoomDisabled)return false;var f=GetMouseScrollDelta(a);if(f===0)return false;var g=f>0;if(mousewheelZoomToCenter||IsMapViewOblique()||!IsOnscreen(lastmouseX,lastmouseY))if(g)ZoomIn();else ZoomOut();else{var b=g?currentView.zoomLevel+1:currentView.zoomLevel-1;if(b<=GetCurrentViewMaxZoomLevel(currentView)){UpdateFromParent();var h=lastmouseX-x,i=lastmouseY-y,d=originX+offsetX+h,e=originY+offsetY+i,c=preferredView.MakeCopy();d=currentView.ScaleCoord(d,b);e=currentView.ScaleCoord(e,b);c.SetZoomLevel(b);c.SetCenter(new VEPixel(d-h+width/2,e-i+height/2));SetView(c)}}return false}function ContextMenu(a){if(mouseZoomDisabled)return false;a=GetEvent(a);CancelEvent(a);if(currentMode!=threeDMode&&FireCustomEvent("onclick",a))return false;var e=g(p_elSource).getPagePosition();x=e.x;y=e.y;var c,d,b=Gimme.Screen.getMousePosition(a);if(currentMode==threeDMode){c=b.x-x;d=b.y-y}else{c=originX+offsetX+b.x-x;d=originY+offsetY+b.y-y}var f=currentMode.PixelToLatLong(new VEPixel(c,d),currentView.zoomLevel);if(f!=null){if(currentMode==threeDMode&&Get3DControl().UIHasFocus())return false;var h=CreateEvent(f);FireDefaultEvent("oncontextmenu",h)}return false}function MouseClick(a){a=GetEvent(a);CancelEvent(a);if(!isLastButtonMiddle)if(currentMode!=threeDMode&&FireCustomEvent("onclick",a))return false}function MouseOut(a){a=GetEvent(a);if(currentMode!=threeDMode&&g(GetTarget(a)).hasClass("MSVE_Shape")&&FireCustomEvent("onmouseout",a)){CancelEvent(a);return false}}function MouseOver(a){a=GetEvent(a);if(currentMode!=threeDMode&&g(GetTarget(a)).hasClass("MSVE_Shape")&&FireCustomEvent("onmouseover",a)){CancelEvent(a);return false}}function MouseEnter(a){a=GetEvent(a);var b=a.relatedTarget||a.fromElement;if(currentMode!=threeDMode&&b!=null&&FireCustomEvent("onmouseover",a)){CancelEvent(a);return false}if(!hijackMouseMove&&!hijackMouseCursor)p_this.SetCursor(cssCursors.Grab)}function MouseLeave(a){a=GetEvent(a);if(currentMode!=threeDMode&&FireCustomEvent("onmouseout",a)){CancelEvent(a);return false}}var obliqueLoop=0,panningTargetPixel=null,panningCurrentPixel=null;function PanMap(c,d){if(c==0&&d==0||isNaN(c)||isNaN(d))return false;if(currentMode!=threeDMode){var a=ShiftView(currentView,currentBounds,c,d);if(typeof a!="undefined"&&a!=null){var f=g(map).getComputedPosition(),e=f.x-a.x,h=f.y-a.y;map.style.left=e+"px";map.style.top=h+"px";offsetX=-e;offsetY=-h;var b=new VEPixel(width/2+originX+offsetX,height/2+originY+offsetY);if(keyboardPan&&(c!=0&&a.x==0||d!=0&&a.y==0)){if(typeof currentMode.RequestPending!="undefined"&&!currentMode.RequestPending()){b.x+=c;b.y+=d;var i=PixelToLatLong(b);targetTool.centeringTrigger=true;SetCenter(i.latitude,i.longitude)}}else{currentView.SetCenter(b);preferredView.SetCenter(new VEPixel(b.x,b.y));tileLayerManager.PanView()}Fire("onpan")}}else return false;if(copyright)copyright.Update();return true}function ContinuousPan(a,b,c,d){if(zooming)return;if(!c)c=-1;panningX=a;panningY=b;panCounter=c;if(!a&&!b){StopContinuousPan();return}keyboardPan=d;if(view3DCreated){spacecontrol.ContinuousPan(a,b);Fire("onstartpan")}else if(!panning){panning=true;StepPan();Fire("onstartpan")}}function StepPan(){if(panning){var a=panningX,b=panningY;if(panningCurrentPixel!=null&&panningTargetPixel!=null){var c=panningTargetPixel.x-panningCurrentPixel.x;if(Math.abs(c)0)panCounter--;if(panCounter!=0&&(panningCurrentPixel==null||panningTargetPixel==null||panningTargetPixel.x!=panningCurrentPixel.x||panningTargetPixel.y!=panningCurrentPixel.y))window.setTimeout(StepPan,10);else StopContinuousPan()}}function StopContinuousPan(){panningX=0;panningY=0;panningTargetPixel=null;panningCurrentPixel=null;panning=false;keyboardPan=false;if(currentMode!=threeDMode)if(panLatitude!=null&&panLongitude!=null){var b=new Msn.VE.LatLong(panLatitude,panLongitude),a=LatLongToPixel(b),c=a.x-width/2,d=a.y-height/2;PanMap(c,d);currentView.latlong.latitude=panLatitude;currentView.latlong.longitude=panLongitude;preferredView.Copy(currentView);panLatitude=null;panLongitude=null;if(obliqueMode)obliqueMode.UpdateAvailability()}else ComputeCenterPoint(true);else if(view3DCreated)spacecontrol.ContinuousPan(0,0);Fire("onendpan");Fire("onchangeview");if(resizeInProgress)resizeInProgress=false}function PanToLatLong(b,a,c){if(currentMode==threeDMode)SetCenter(b,a);else{panLatitude=b;panLongitude=a;if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)&&PanInOblique(new Msn.VE.LatLong(b,a),null,c));else PanToPixel(LatLongToPixel(new Msn.VE.LatLong(b,a)),c)}}function PanByPixel(a,b){a.x=width/2+a.x;a.y=height/2+a.y;PanToPixel(a,b)}function PanToView(a){var b=a.center.x-(originX+offsetX),c=a.center.y-(originY+offsetY);PanToPixel(new VEPixel(b,c))}function PanToPixel(a,e){if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)&&PanInOblique(null,a,e))return;var b=a.x-width/2,c=a.y-height/2;panningTargetPixel=a;panningCurrentPixel=new VEPixel(width/2,height/2);var d=Math.sqrt(b*b+c*c);if(!e&&(!IsAnimationEnabled()||MathAbs(b)>2*width||MathAbs(c)>2*height||d>1.5*Math.sqrt(width*width+height*height))){var h=preferredView.MakeCopy(),j=a.x+(originX+offsetX),k=a.y+(originY+offsetY);h.SetCenter(new VEPixel(j,k));SetView(h);if(resizeInProgress)resizeInProgress=false;return}var f=Math.atan2(c,b),i=MathCeil(d/panToLatLongSpeed),g=MathRound(d/i);b=MathRound(Math.cos(f)*g);c=MathRound(Math.sin(f)*g);ContinuousPan(b,c)}function PanInOblique(a,d){obliqueLoop++;if(obliqueLoop>30){obliqueLoop=0;return false}var c=obliqueMode.GetScene();if(!a)a=PixelToLatLong(d);if(!c||!c.ContainsLatLong(a,currentView.zoomLevel)){var b=preferredView.MakeCopy();b.sceneId=null;b.SetCenterLatLong(a);SetView(b);if(resizeInProgress)resizeInProgress=false;return true}else return false}function PushPinOffset(a,b){this.x=a;this.y=b}function getPushPinOffset(c){var a=Msn.VE.PushPinTypes,b;switch(c){case a.Annotation:b=new PushPinOffset(-2,-29/2-5);break;case a.Overlay:case a.SearchResultPrecise:case a.SearchResultNonprecise:case a.Collection:case a.AdSponsor:b=new PushPinOffset(0,-29/2+3);break;case a.Direction:b=new PushPinOffset(-3,-26/2-3);break;case a.DirectionTemp:b=new PushPinOffset(2,-26/2+3);break;case a.TrafficLight:b=new PushPinOffset(0,-26/2);break;case a.TrafficOthers:b=new PushPinOffset(0,-29/2);break;case a.YouAreHere:b=new PushPinOffset(0,-26/2);break;case a.AdStandard:b=new PushPinOffset(0,-42/2+2);break;case a.AdWide:b=new PushPinOffset(0,-27/2);break;case a.AdCategory:b=new PushPinOffset(0,-16/2);break;case a.Default:default:b=new PushPinOffset(0,0)}return b}function GetPushpins(){return pushpins}function AddPushpin(m,k,l,j,h,e,f,i,g,b,c,d){var a=new Pushpin;a.Init(m,k,l,j,h,e,f,i,g,d);if(typeof b=="undefined"||b==false||b==null){if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D)){if(!(typeof c!="undefined"&&c==false))View3DAddPushpin(a);map.appendChild(a.pin);a.Hide()}else map.appendChild(a.pin);pushpins.push(a)}return a.pin}function GetPushpinIndex(b){for(var a=0;a=0){var c=pushpins[a];pushpins.splice(a,1);if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D))View3DRemovePushpin(b);c.Destroy()}}function ClearPushpins(){while(pushpins.length>0){var a=pushpins.pop();if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D))View3DRemovePushpin(a.id);a.Destroy()}}function Relay3DPushpins(){for(var b=0;b=0)if(b[a])pushpins[c].SetAccuratePixel(b[a])}_RepositionPushpins()};if(pushpins&&pushpins.length>0){if(null==Msn.VE.API&¤tMode==obliqueMode){var c=currentMode.GetScene(),f=[],a=0;if(c){h=c.GetID();for(var e=0;e0){currentMode.LatLongToPixelAsync(f,currentView.GetZoomLevel(),i);return}}}_RepositionPushpins()}}function HidePins(){for(var a=0;a0)a.xs.pop();while(a.ys.length>0)a.ys.pop();a=null}}Pushpin.prototype.Init=function(i,g,h,f,e,c,d,j,a,b){this.id=i;this.lat=g;this.lon=h;this.width=f;this.height=e;this.className=c;this.innerHtml=d;this.zIndex=j;this.pinType=a;this.pin.id=i;this.pin.className=c;this.pin.style.position="absolute";this.pin.innerHTML=d;this.pin.pinType=a||Msn.VE.PushPinTypes.Default;this.Offset=getPushPinOffset(this.pin.pinType);if(a==Msn.VE.PushPinTypes.SearchResultPrecise){this.img.src=GetUrlPrefix()+"i/bin/"+window.buildVersion+"/pins/poi_search.gif";this.pin.appendChild(this.img)}else if(a==Msn.VE.PushPinTypes.SearchResultNonprecise){this.img.src=GetUrlPrefix()+"i/bin/"+window.buildVersion+"/pins/poi_search_nonprecise.gif";this.pin.appendChild(this.img)}else if(a==Msn.VE.PushPinTypes.AdSponsor){this.img.src=GetUrlPrefix()+"i/bin/"+window.buildVersion+"/pins/poi_search.gif";this.pin.appendChild(this.img)}this.pin.unselectable="on";this.center=new Msn.VE.LatLong(g,h);this.w=f;this.h=e;if(b)this.SetAccuratePixel(b);var k=this.LatLongToPixelWithAccuracyOffset(currentView.zoomLevel,originX,originY);this.SetPixelLocation(k)};Pushpin.prototype.SetAccuratePixel=function(b){var a=currentMode.PixelToLatLong(b,currentView.zoomLevel);this.beLatLongOffset=new Msn.VE.LatLong(a.latitude-this.center.latitude,a.longitude-this.center.longitude)};Pushpin.prototype.LatLongToPixelWithAccuracyOffset=function(b,c,d){var a=this.center;if(this.beLatLongOffset&&IsMapViewOblique())a=new Msn.VE.LatLong(this.center.latitude+this.beLatLongOffset.latitude,this.center.longitude+this.beLatLongOffset.longitude);return GetPushpinPixel(a,b,c,d)};Pushpin.prototype.GetLatitude=function(){return this.center.latitude};Pushpin.prototype.GetLongitude=function(){return this.center.longitude};Pushpin.prototype.ClearSteps=function(){var b=zoomTotalSteps;for(var a=0;a<=b;a++){this.xs[a]=this.x1-this.w/2+this.Offset.x+"px";this.ys[a]=this.y1-this.h/2+this.Offset.y+"px"}};Pushpin.prototype.PrecomputeSteps=function(){var d=zoomTotalSteps;for(var a=0;a<=d;a++){var b=a/d,c=1-b;this.xs[a]=MathFloor(c*this.x1+b*this.x2-this.w/2+this.Offset.x)+"px";this.ys[a]=MathFloor(c*this.y1+b*this.y2-this.h/2+this.Offset.y)+"px"}};Pushpin.prototype.SetFactor=function(a){this.pin.style.left=this.xs[a];this.pin.style.top=this.ys[a]};Pushpin.prototype.SetPixelLocation=function(a){if(a&&this.visible){this.x1=a.x;this.y1=a.y;this.x2=this.x1;this.y2=this.y1;this.PrecomputeSteps();this.SetFactor(0);this.pin.style.display="block"}else this.pin.style.display="none"};Pushpin.prototype.SwapStates=function(){var a=0;a=this.x1;this.x1=this.x2;this.x2=a;a=this.y1;this.y1=this.y2;this.y2=a};Pushpin.prototype.Reposition=function(){var a=this.LatLongToPixelWithAccuracyOffset(currentView.zoomLevel,originX,originY);if(a){this.x1=a.x;this.y1=a.y;this.ClearSteps();this.SetFactor(0);if(this.pin.style.display!="none"&&this.visible)this.pin.style.display="block"}else this.pin.style.display="none"};Pushpin.prototype.UnHide=function(){if(!this.visible){this.pin.style.display="block";this.visible=true}};Pushpin.prototype.Hide=function(){if(this.visible){this.pin.style.display="none";this.visible=false}};Pushpin.prototype.UnHide3D=function(){if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D))View3DAddPushpin(this)};Pushpin.prototype.Hide3D=function(){if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D))View3DRemovePushpin(this.id)};Pushpin.prototype.PrepareForZoom=function(b,c,d){this.x1-=offsetX;this.y1-=offsetY;var a=this.LatLongToPixelWithAccuracyOffset(d,b,c);if(a){this.x2=a.x;this.y2=a.y;this.PrecomputeSteps();if(this.pin.style.display!="none"&&this.visible)this.pin.style.display="block"}else this.pin.style.display="none"};Pushpin.prototype.RemoveFromMap=function(){if(this.pin.parentNode==map)map.removeChild(this.pin)};Pushpin.prototype.Move=function(a){this.MoveToLatLon(PixelToLatLong(a))};Pushpin.prototype.MoveToLatLon=function(a){this.center=a;this.Reposition()};function ScaleBar(c){var e=null,j=null,a=g(document.createElement("div")),b=g(document.createElement("div")),m=false,d=document.createElement("div"),f=document.createElement("div"),i=150;this.Init=function(){a.addClass("MSVE_ScaleBarLabel MSVE_ScaleBarLabelBg");b.addClass("MSVE_ScaleBarLabel MSVE_ScaleBarLabelFg");d.className="MSVE_ScaleBar MSVE_ScaleBarBg";f.className="MSVE_ScaleBar MSVE_ScaleBarFg";n();k()};this.Show=function(){c.appendChild(a.element());c.appendChild(b.element());c.appendChild(d);c.appendChild(f)};this.Hide=function(){try{c.removeChild(a.element());c.removeChild(b.element());c.removeChild(d);c.removeChild(f)}catch(e){}};this.Destroy=function(){this.Hide();e=null;a=b=d=BarFg=null};function k(){var c=0;if(e&&e.style.display!=="none"){var i=parseInt(g(e).getStyle("height")),h=parseInt(e.style.bottom);c+=(isNaN(i)?0:i)+(isNaN(h)?0:h)}if(a){a.setStyle("bottom",c+"px");b.setStyle("bottom",1+c+"px")}if(d){d.style.bottom=c+"px";f.style.bottom=1+c+"px"}}function o(a){return a*.001}function q(a){return a*.000621371192}function r(a){return a*1.0936133}function t(a){i=a}function p(a){j=a}function n(){try{var f=GetMetersPerPixel(),c=f*i,e;if(j==null)e=$MVEM.IsEnabled(MapControl.Features.ScaleBarKilometers);else e=j==Msn.VE.DistanceUnit.Kilometers;if(e){var d=L_ScaleBarKilometers_Text,b=o(c),a=h(b);if(a<.5){d=L_ScaleBarMeters_Text;b=c;a=h(b)}l("metric",d,a,Math.round(a/b*i))}else{var d=L_ScaleBarMiles_Text,b=q(c),a=h(b);if(a<.5){d=L_ScaleBarYards_Text;b=r(c);a=h(b)}l("us",d,a,Math.round(a/b*i))}}catch(g){}}function h(d){var g=Math.log(d)/Math.log(10),e=Math.floor(g),a=Math.pow(10,e),c=d/a,b=Math.floor(c);if(b>=3)return b*a;var f=Math.floor(c*2)*.5;return f*a}function l(j,i,c,g){if(c<1)c=c.toFixed(1);var e=GetMapStyle()!=roadStyle;if(e!=m){if(e){a.swapClass("MSVE_ScaleBarLabelBg","MSVE_ScaleBarLabelBgInv");b.swapClass("MSVE_ScaleBarLabelFg","MSVE_ScaleBarLabelFgInv")}else{a.swapClass("MSVE_ScaleBarLabelBgInv","MSVE_ScaleBarLabelBg");b.swapClass("MSVE_ScaleBarLabelFgInv","MSVE_ScaleBarLabelFg")}m=e}var h=c+" "+i;a.setHTML(h);b.setHTML(h);d.style.width=4+g+"px";f.style.width=g+"px"}function s(a){e=a;k()}this.SetBarWidth=t;this.SetDistanceUnit=p;this.Update=n;this.Reposition=k;this.SetPinElement=s}function MapLegend(h){var q=this,g=h,a=null,e=null,b=null,d=null,c=null;h=null;this.Init=function(){a=document.createElement("div");a.id="MSVE_MapLegend";a.style.display="none";g.appendChild(a);e=document.createElement("div");e.className="MSVE_LegendGroup";a.appendChild(e);a.attachEvent("onmousedown",IgnoreEvent);a.attachEvent("onmouseup",IgnoreEvent);a.attachEvent("onmousemove",IgnoreEvent);a.attachEvent("onmousewheel",IgnoreEvent);a.attachEvent("ondblclick",IgnoreEvent);a.attachEvent("oncontextmenu",IgnoreEvent);a.attachEvent("onkeydown",IgnoreEvent);a.attachEvent("onkeyup",IgnoreEvent)};this.Destroy=function(){if(a){a.detachEvent("onmousedown",IgnoreEvent);a.detachEvent("onmouseup",IgnoreEvent);a.detachEvent("onmousemove",IgnoreEvent);a.detachEvent("onmousewheel",IgnoreEvent);a.detachEvent("ondblclick",IgnoreEvent);a.detachEvent("oncontextmenu",IgnoreEvent);a.detachEvent("onkeydown",IgnoreEvent);a.detachEvent("onkeyup",IgnoreEvent);g.removeChild(a);a=null}g=null;e=null;d=null;c=null};function k(d){if(d&&!b)i();a.style.display=d?"":"none";if(c)window.setTimeout(c.Reposition,1);f()}function i(){if(e&&!b){b=document.createElement("div");b.className="MSVE_LegendGroup";b.id="MSVE_TrafficLegend";e.appendChild(b);var a=document.createElement("span");a.id="MSVE_TL_Slow";a.appendChild(document.createTextNode(L_MapLegendTrafficSlow_Text));b.appendChild(a);a=document.createElement("span");a.id="MSVE_TL_Fast";a.appendChild(document.createTextNode(L_MapLegendTrafficFast_Text));b.appendChild(a);a=document.createElement("img");a.id="MSVE_TL_Key";var c=GetUrlPrefix(),f=window.buildVersion;if(Msn.VE.API!=null){c=Msn.VE.API.Globals.vecurrentdomain+"/";f=Msn.VE.API.Globals.vecurrentversion}a.src=c+"i/bin/"+f+"/traffic/tf_legend.gif";a.alt="";b.appendChild(a);d=document.createElement("div");d.className="MSVE_LegendGroup";d.id="MSVE_TrafficMsg";e.appendChild(d)}}function l(a){while(a.hasChildNodes())a.removeChild(a.childNodes[0])}function j(a){if(d){l(d);d.appendChild(document.createTextNode(a));f()}}function o(b){c=b;if(c)c.SetPinElement(a)}function p(){if(c){c.SetPinElement(null);c=null}}function n(b,c){if(a){a.style.left=b+"px";a.style.top=c+"px";a.style.bottom="auto";a.style.right="auto";f()}}function f(){if(a)mvcViewFacade.UpdateShimIfSupported(a)}function m(){if(a)destroyIFrameShim(a.id)}this.ShowTrafficLegend=k;this.SetTrafficLegendMsg=j;this.UnPin=p;this.PinTo=o;this.MoveTo=n;this.UpdateShim=f;this.RemoveShim=m}var totalRequestTime=0,totalRequestCount=0,totalFailureCount=0,responseRangeCeilings=[];responseRangeCeilings[roadStyle]=[325,975];responseRangeCeilings[shadedStyle]=responseRangeCeilings[roadStyle];responseRangeCeilings[aerialStyle]=[350,1050];responseRangeCeilings[hybridStyle]=[425,1275];responseRangeCeilings[obliqueStyle]=[450,1350];responseRangeCeilings[obliqueHybridStyle]=responseRangeCeilings[obliqueStyle];var responseRangeCounts=[0,0,0];function RequestTile(b,c,i,h,d,g,e,f){var a=new Tile;a.Init(b,c,i,h,b*tileSize-originX,c*tileSize-originY,d,g,e,f);return a}function ClearTiles(a){while(a.length>0){var b=a.pop();b.Destroy();b=null}}function GetResponseRangeCounts(){var b=0;for(var a=0;a0)m.pop();while(o.length>0)o.pop();while(u.length>0)u.pop();while(s.length>0)s.pop();m=o=u=s=null};function y(c,d,b,a){g=c;h=d;k=b;j=a}this.SetCurrentState=y;function I(c,d,b,a){l=c;n=d;t=b;r=a}this.SetNextState=I;function Q(){for(var a=0;a<=zoomTotalSteps;a++){m[a]=g+"px";o[a]=h+"px";u[a]=k+"px";s[a]=j+"px"}}this.ClearSteps=Q;function w(){for(var a=0;a<=zoomTotalSteps;a++){var b=a/zoomTotalSteps,c=1-b;m[a]=MathFloor(c*g+b*l)+"px";o[a]=MathFloor(c*h+b*n)+"px";u[a]=MathCeil(c*k+b*t)+"px";s[a]=MathCeil(c*j+b*r)+"px"}}this.PrecomputeSteps=w;function K(e){if(a==null||zooming&&!A)return;var b=a.style;b.left=m[e];b.top=o[e];b.width=u[e];b.height=s[e];if(debug&&e==0){if(!c)F();var g=c.style;b.border="1px dashed red";g.left=m[e];g.top=o[e]}if(a.parentNode!=map){b.position="absolute";b.zIndex=f;if(C>0)if(Msn.VE.Environment.BrowserInfo.Type==Msn.VE.BrowserType.MSIE && Msn.VE.Environment.BrowserInfo.MajorVersion<=9)if(Msn.VE.Environment.BrowserInfo.MajorVersion<=6){if(!i){i=document.createElement("div");i.className="MSVE_ImageTile";var b=i.style;b.left=m[e];b.top=o[e];b.width=u[e];b.height=s[e];b.position="absolute";b.zIndex=f;if(d!=1)b.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+a.src+"',sizingMethod='scale'), alpha(opacity="+d*100+")";else b.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+a.src+"',sizingMethod='scale')";map.appendChild(i)}}else{b.zIndex=f;if(d<1)b.filter="alpha(opacity="+d*100+");opacity:"+d+";";map.appendChild(a)}else{b.zIndex=f;b.opacity=d;map.appendChild(a)}else{if(b&&typeof b.filter!="undefined"){if(d<1)b.filter="alpha(opacity="+d*100+");opacity:"+d}else b.opacity=d;map.appendChild(a)}if(debug&&c&&c.parentNode!=map){var h=a.src;c.innerHTML=h.substring(h.lastIndexOf("/")+1,h.lastIndexOf("."));g.position="absolute";g.zIndex=f+1;map.appendChild(c)}}}this.SetFactor=K;function J(){var a=0;a=g;g=l;l=a;a=h;h=n;n=a;a=k;k=t;t=a;a=j;j=r;r=a}this.SwapStates=J;function G(){if(b){b.onload=null;b.onerror=null;b=null}if(a){if(a.parentNode==map)map.removeChild(a);a=null}if(c){if(c.parentNode==map)map.removeChild(c);c=null}if(i){if(i.parentNode==map)map.removeChild(i);i=null}if(e){graphicCanvas.RemovePrintTile(e);e=null}}this.RemoveFromMap=G;function T(){if(currentView&&v!=currentView.zoomLevel||b==null)return;var d=new Date,c=d.getTime()-z.getTime();E(c);totalRequestTime+=c;totalRequestCount++;if(debug)window.status="last="+c+", average="+totalRequestTime/totalRequestCount;b.onload=null;b.onerror=null;a=b;a.onmousedown=function(){return false};b=null;if(!zooming)K(zoomCounter);if(graphicCanvas&&graphicCanvas._printable)H()}function S(){if(v!=currentView.zoomLevel||b==null)return;var c=new Date,a=c.getTime()-z.getTime();E(a);totalRequestTime+=a;totalRequestCount++;totalFailureCount++;b.onload=null;b.onerror=null;b=null}function E(b){for(var a=0;atileViewportX2-c||qtileViewportY2-b);J();w();f=swapZIndex}this.PrepareSwapTile=N;function R(b){if(!c)F();if(a!=null)a.style.border=b?"1px dashed red":"0px";c.style.display=b?"block":"none"}this.Debug=R;function P(){t=k;r=j}this.ClearStates=P;function F(){c=document.createElement("div");c.style.font="7pt Verdana, sans-serif";c.style.color="Red";c.style.backgroundColor="White"}}var tileMarket=Msn.VE.API?Msn.VE.API.Globals.locale:window.locale,orthoTileSpec=new VETileSourceSpecification;orthoTileSpec.Subdomains=[[0,2],[1,3]];if(orthoTileSpec.Subdomains!=null){orthoTileSpec.SubdomainsMaxX=orthoTileSpec.Subdomains.length;orthoTileSpec.SubdomainsMaxY=orthoTileSpec.Subdomains[0].length}orthoTileSpec.ID=mapTiles;orthoTileSpec.SourceName=Msn.VE.API?Msn.VE.API.Constants.orthotileserver:"%0t%2.ssl.ak.tiles.virtualearth.net/tiles/%3%4.%5?g=%6&mkt={21}";orthoTileSpec.SourceName=orthoTileSpec.SourceName.replace(/\{21\}/g,tileMarket);orthoTileSpec.OriginSourceName=Msn.VE.API&&p_htParams.useOriginTiles?Msn.VE.API.Constants.orthoorigintileserver.replace(/\{21\}/g,tileMarket):"";orthoTileSpec.NumServers=4;var shadedTileSpec=new VETileSourceSpecification;shadedTileSpec.Subdomains=[[0,2],[1,3]];if(shadedTileSpec.Subdomains!=null){shadedTileSpec.SubdomainsMaxX=shadedTileSpec.Subdomains.length;shadedTileSpec.SubdomainsMaxY=shadedTileSpec.Subdomains[0].length}shadedTileSpec.ID=mapTiles;shadedTileSpec.SourceName=Msn.VE.API?Msn.VE.API.Constants.shadedtileserver:"%0t%2.ssl.ak.tiles.virtualearth.net/tiles/%3%4.%5?g=%6&mkt={21}&shading=hill";shadedTileSpec.SourceName=shadedTileSpec.SourceName.replace(/%1/g,"r").replace(/%3/g,"r").replace(/%5/g,"png").replace(/%6/g,generations["r"]).replace(/\{21\}/g,tileMarket);shadedTileSpec.OriginSourceName=Msn.VE.API&&p_htParams.useOriginTiles?Msn.VE.API.Constants.shadedorigintileserver.replace(/%1/g,"r").replace(/%3/g,"r").replace(/%5/g,"png").replace(/%6/g,generations["r"]).replace(/\{21\}/g,tileMarket):"";shadedTileSpec.NumServers=4;var lavenderTileSpec=null;if(p_htParams.useEnhancedRoadStyle){lavenderTileSpec=new VETileSourceSpecification;lavenderTileSpec.Subdomains=[[0,2],[1,3]];if(lavenderTileSpec.Subdomains!=null){lavenderTileSpec.SubdomainsMaxX=lavenderTileSpec.Subdomains.length;lavenderTileSpec.SubdomainsMaxY=lavenderTileSpec.Subdomains[0].length}lavenderTileSpec.ID=mapTiles;lavenderTileSpec.SourceName=Msn.VE.API?Msn.VE.API.Constants.lavendertileserver:"%0t%2.ssl.ak.tiles.virtualearth.net/tiles/r%4?g=%6&mkt={21}&lbl=l1&stl=h&shading=hill&n=z";lavenderTileSpec.SourceName=lavenderTileSpec.SourceName.replace(/%1/g,"r").replace(/%3/g,"r").replace(/%5/g,"png").replace(/%6/g,generations["r"]).replace(/\{21\}/g,tileMarket);lavenderTileSpec.OriginSourceName=Msn.VE.API&&p_htParams.useOriginTiles?Msn.VE.API.Constants.lavenderorigintileserver.replace(/%1/g,"r").replace(/%3/g,"r").replace(/%5/g,"png").replace(/%6/g,generations["r"]).replace(/\{21\}/g,tileMarket):"";lavenderTileSpec.NumServers=4}function SetBaseTileSource(a){if(!a)a=currentView;var b=null;if(a&&lavenderTileSpec&&a.mapStyle==Msn.VE.MapStyle.Road)b=lavenderTileSpec;else{var c=a&&shadedTileSpec&&shadedTileSpec.SourceName&&(a.mapStyle==Msn.VE.MapStyle.Road&&$MVEM.IsEnabled(MapControl.Features.MapStyle.Shaded)&¤tView.doRoadShading||a.mapStyle==Msn.VE.MapStyle.Shaded);b=c?shadedTileSpec:orthoTileSpec}b.LoadTiles=loadBaseTiles;tileLayerManager.AddTileSource(b)}function SetView(a){if(currentMode!=null&¤tMode==threeDMode)return SetView3DSpecialized(a);if(a==null)return CreateNewView();if(zooming||dragging)return true;if(panning)StopContinuousPan();var b=a.latlong;if(a.GetViewType()==Msn.VE.MapViewType.LatLongRect)b=a.latlongRect.Center();if(Msn.VE.MapStyle.IsViewOblique(a.mapStyle))return SetViewOblique(a,b);else return SetViewOrtho(a,b)}function SetView3DSpecialized(a){var b=false;if(a==null){a=new Msn.VE.MapView;a.Copy(currentView);b=true}if(!view3DCreated)b=true;return SetView3D(a,b)}function SetViewOblique(a,c){if(obliqueMode==null)return true;preferredView.Copy(a);currentMode=obliqueMode;if(Msn.VE.API)p_elSource.style.background='#000 url("'+Msn.VE.API.Globals.vecurrentdomain+"/i/bin/"+Msn.VE.API.Globals.vecurrentversion+'/oblique/oblique_bg.gif") repeat';else p_elSource.style.background='#000 url("./i/bin/'+window.buildVersion+'/oblique/oblique_bg.gif") repeat';function b(){var b=HandleSetViewObliqueResolve(a,c,preferredView);if(!b&&typeof a.callback=="function")a.callback(obliqueMode.GetScene())}a.Resolve(currentMode,width,height,b)}function HandleSetViewObliqueResolve(a,c,i){if(targetTool.centeringTrigger){targetTool.centeringTrigger=false;obliqueMode.RequestSceneAtLatLong(c,a.sceneOrientation,true,null,null,null,null,a.mapStyle);return true}var b=obliqueMode.GetScene(),e=b&&b.ContainsLatLong(c,a.zoomLevel);if(a.bySceneId){if(!b||b.GetID()!=a.sceneId){obliqueMode.RequestScene(a.sceneId);return true}else if(!e){var l=b.GetBounds();a.SetCenterLatLong(b.PixelToLatLong(new VEPixel(b.GetWidth()/4,b.GetHeight()/4),1));a.Resolve(currentMode,width,height);e=true}}else if(!b||!e||b.GetOrientation()!=a.sceneOrientation||b.GetMapStyle()!=a.mapStyle){obliqueMode.RequestSceneAtLatLong(c,a.sceneOrientation,true,null,a.callback,a.spinDirection,a.preserveScene,a.mapStyle);return true}c=a.latlong;i.Copy(a);SetBaseTileSource(a);currentMode.ValidateZoomLevel(a);currentBounds=currentMode.GetBounds(a);ClipView(a,currentBounds);if(a.Equals(currentView)&&!resizeInProgress)return false;var g=a.GetX(currentView.zoomLevel)-currentView.center.x,h=a.GetY(currentView.zoomLevel)-currentView.center.y,d=Math.sqrt(g*g+h*h);previousCenter=currentView.latlong;var f=0;if(!previousCenter.Equals(a.latlong))f+=Msn.VE.ViewChangeType.Pan;if(currentView.zoomLevel!=a.zoomLevel)f+=Msn.VE.ViewChangeType.Zoom;SetLastViewChangeType(f);var k=da.getP2().x)c+=d.Range.GreaterThanX;if(b.getP1().xa.getP2().y)c+=d.Range.GreaterThanY;if(b.getP1().y=a.x&&c.x<=b.x&&c.y>=a.y&&c.y<=b.y};this.scale=function(d){a.x-=d;a.y-=d;b.x+=d;b.y+=d;c()};this.getOverlap=function(a){var b=Msn.VE.Geometry;return new b.Overlap.getInstance(g,a)};function c(){d=b.y-a.y;e=b.x-a.x}};Msn.VE.Geometry.Functions={getSlope:function(a,b){return (b.y-a.y)/(b.x-a.x)},getYIntercept:function(b,a){return a.y-b*a.x},getBestBoundingPoint:function(f,b,c){var a=Msn.VE.Geometry;if(!b)b=g(f).getScreenPosition();var e=new a.Rectangle(b,new a.Point(b.x+f.offsetWidth,b.y+f.offsetHeight)),j=c.getOverlap(e),d=j.getRange();if((d&a.Overlap.Range.InRange)==a.Overlap.Range.InRange)return b;var h=b.x,i=b.y;if(d&a.Overlap.Range.GreaterThanX)h=c.getP2().x-e.getWidth();if(d&a.Overlap.Range.LessThanX)h=c.getP1().x;if(d&a.Overlap.Range.GreaterThanY)i=c.getP2().y-e.getHeight();if(d&a.Overlap.Range.LessThanY)i=c.getP1().y;return new a.Point(h,i)}};view3DMode=false;var sentinel3D,setStyle;function View3DAddPushpin(a){if(g(a.pin).hasClass("inactiveAbbreviationPin"))return;var d=parseInt(a.pinType),h=TranslatePushpinURL(a.className,a.innerHtml,d),c=Msn.VE.PushPinTypes,e=parseFloat(a.lat),f=parseFloat(a.lon),b='zindex="'+a.zIndex+'"';switch(d){case c.DirectionStep:case c.SearchResultNonprecise:b+=' textoffset="50%, 50%"';case c.Direction:case c.SearchResultPrecise:case c.AdSponsor:b+=' text="'+extractText(a.innerHtml)+'"';break;case c.Collection:if(a.className.indexOf("point")==-1)b+=' textoffset="50%, 60%"';b+=' text="'+extractText(a.innerHtml)+'"';break;case c.Overlay:b+=' textoffset="50%, 50%"';b+=' text="'+extractText(a.innerHtml)+'"'}spacecontrol.AddPointWithProperties(0,a.id,e,f,h,b)}function extractText(b){var a=document.createElement("div");a.innerHTML=b;var c=a.textContent||a.innerText;a=null;return c}function View3DRemovePushpin(a){spacecontrol.DeleteGeometry(0,a)}function AddView3DParameter(d,c,b){var a=document.createElement("param");a.name=c;a.value=b;d.appendChild(a)}function Get3DUpdatedUrl(a){var b=Get3dInstallMarket();return "http://www.bing.com/maps/Help/VE3DInstall/"+"VersionUpdated.aspx?version="+a+"&mkt="+b}function GetScriptVersion(){var a=null;if(typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null&&Msn.VE.API.Globals.vecurrentversion){var b=Msn.VE.API.Globals.vecurrentversion.split(".");a="";if(b.length>0)a+=b[0];if(b.length>1)a+="."+b[1]}else if(typeof window.spacelandScriptVersion!="undefined")a=window.spacelandScriptVersion;return a}function CreateView3DControl(a){if(!BrowserSupports3D()){View3DUnavailable();return false}initial3dView=new Msn.VE.MapView;initial3dView.Copy(a);if(sentinel3D==null)sentinel3D=GetSentinel();if(null==sentinel3D){View3DUnavailable();return false}if(sentinel3D!=null&&sentinel3D.CurrentVersion<4.0){var d=sentinel3D.CurrentVersion;sentinel3D=null;if(d>0)View3DUpgrade(d);return false}try{sentinel3D.InitializeRuntime()}catch(h){}spacediv=document.createElement("div");spacediv.id="MSVE_spacediv";spacediv.className="MSVE_SLMap";spacediv.style.position="relative";spacediv.style.height="100%";spacediv.style.overflow="hidden";spacecontrol=document.createElement("object");var b=a.cameraLatlong==null?a.latlong:a.cameraLatlong;AddView3DParameter(spacecontrol,"StartLongitude",b.longitude);AddView3DParameter(spacecontrol,"StartLatitude",b.latitude);AddView3DParameter(spacecontrol,"StartPitch",a.GetTilt());AddView3DParameter(spacecontrol,"StartHeading",-a.GetDirection());var f=Get3dMarket();if(f)AddView3DParameter(spacecontrol,"CurrentLocale",f);var e=a.GetAltitude();if(e>-1000)AddView3DParameter(spacecontrol,"StartAltitude",e);else AddView3DParameter(spacecontrol,"StartZoomLevel",a.zoomLevel);spacediv.appendChild(spacecontrol);try{if(window.navigator.userAgent.indexOf("MSIE")!=-1)spacecontrol.classid="clsid:68BFC611-B963-4e8c-B0FE-0DD4FB832796";else spacecontrol.type="application/x-virtual-earth-3d"}catch(h){View3DUnavailable();spacecontrol=false;return false}var c=GetScriptVersion();spacecontrol.ControlId=init3dparam;spacecontrol.ScriptVersion=c;AttachEvent("onresize",ResizeControl);p_elSource.appendChild(spacediv);ResizeControl();setStyle=false;var g=ValidateControl();if(g){IterativeCameraRefinement();spacecontrol.ControlId=init3dparam;spacecontrol.ScriptVersion=c;if((typeof Msn.VE.API=="undefined"||Msn.VE.API==null)&&spacecontrol.VersionUpdated)VE_Help.OpenSized(L_VE3D_VersionUpgradedDialogTitle,Get3DUpdatedUrl(sentinel3D.CurrentVersion),550,280)}if(typeof state!="undefined"&&state!=null)state.Set3DViewInstallInProgress("");return g}function View3DUnavailable(){if(IsEventAttached("onmodenotavailable"))Fire("onmodenotavailable",Msn.VE.MapActionMode.Mode3D);else if(typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null)if(sentinel3D!=null)window.open(Get3dHelpUrl("View3DUnavailable.htm"),"_blank","width=600,height=550,menubar=0,resizeable=0,status=0,titlebar=0,toolbar=0,scrollbars=0");else if(window.navigator.userAgent.indexOf("MSIE")!=-1)window.open(Get3dInstallUrl(),"_blank","width=650,height=520,menubar=0,resizeable=0,status=0,titlebar=0,toolbar=0,scrollbars=0");else if(window.navigator.userAgent.indexOf("Windows")!=-1)window.open(Get3dInstallUrl(),"_blank","width=760,height=580,menubar=0,resizeable=0,status=0,titlebar=0,toolbar=0,scrollbars=0")}function CallIterativeCameraRefinement(){var a=GetMapControlInstance(null);if(a)a.IterativeCameraRefinement()}function IterativeCameraRefinement(){if(cameraUpdateCount>0)return;if(IsModeEnabled(Msn.VE.MapActionMode.Mode3D)&&spacecontrol)if(!spacecontrol.AllTilesLoaded)setTimeout(CallIterativeCameraRefinement,1000);else{var a=false,c=currentView.GetAltitude(),d=initial3dView.GetAltitude();if(d>-1000&&c>-1000)a=Math.abs(c-d)>1;else a=currentView.GetZoomLevel()!=initial3dView.GetZoomLevel();if(a){var b=initial3dView.MakeCopy();b.SetMapStyle(currentView.mapStyle);SetView3D(b,true)}}}function ValidateControl(){if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)if(0==spacecontrol.HardwareClassificationLevel)setStyle=true;var a=false,b=300;if(spacecontrol.Created){while(!spacecontrol.FirstFrameRendered&&!spacecontrol.LoadFailed&&!spacecontrol.AlreadyLoaded&&b>0){b--;spacecontrol.ProcessEvents()}a=spacecontrol.FirstFrameRendered}if(spacecontrol.Created&&!spacecontrol.HardwareAccelerationEnabled&&spacecontrol.LoadFailed){if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null){window.setTimeout(DelayedHWDialog,2759);window.setTimeout(OnHardwareAccelHelpFired,4000)}else if(IsEventAttached("onmodenotavailable"))Fire("onmodenotavailable",Msn.VE.MapActionMode.Mode3D);if(mode==Msn.VE.MapActionMode.Mode3D)EnableMode(Msn.VE.MapActionMode.Mode2D);return false}else if(!spacecontrol.Created||!spacecontrol.Enabled||!spacecontrol.IsHandleCreated||!a&&!spacecontrol.AlreadyLoaded){View3DUnavailable();spacecontrol=false;return false}else{spacecontrol.focus();view3DCreated=true;return true}}function ResizeControl(){if(spacecontrol){spacecontrol.style.height=spacediv.offsetHeight+"px";spacecontrol.style.width=spacediv.offsetWidth+"px"}RepositionShims()}function SetView3D(a,g){currentMode.ValidateZoomLevel(a);a.Resolve(orthoMode,width,height);preferredView.Copy(a);if(!view3DCreated&&!spacecontrol){var l=CreateView3DControl(a);if(setStyle){a.mapStyle="h";previousMapStyle="h"}if(!l)return false;if(a.GetTilt()!=-90&&a.cameraLatlong==null){a.Resolve(orthoMode,width,height);cameraUpdateCount=-1}else{cameraUpdateCount=0;a._supressFlyToCall=true}p_elSource.style.backgroundColor="#e9e7d4";originX=0;originY=0;offsetX=0;offsetY=0;UpdateFromParent()}if(!g&&a.Equals(currentView)){if(!spaceCameraIsFlying)ProcessQueuedRequest(null,null);return false}var c=false;if(a.GetAltitude()>-1000)c=Math.abs(a.GetAltitude()-currentView.GetAltitude())>1e-4;else c=currentView.zoomLevel!=a.zoomLevel;currentView.Destroy();currentView=a;if(view3DCreated){if(previousMapStyle){if(currentView.mapStyle!=null&&previousMapStyle!=currentView.mapStyle){var b="http://go.microsoft.com/fwlink/?LinkID=98770";if(currentView.mapStyle=="a"){b="http://go.microsoft.com/fwlink/?LinkID=98771";spacecontrol.ShowAtmosphere=true}if(currentView.mapStyle=="h"){b="http://go.microsoft.com/fwlink/?LinkID=98772";spacecontrol.ShowAtmosphere=true}if(currentView.mapStyle=="r"){spacecontrol.TexturesVisible=false;if(spacecontrol.HardwareClassificationLevel<3)b="http://go.microsoft.com/fwlink/?LinkID=98769";spacecontrol.ShowAtmosphere=false}else spacecontrol.TexturesVisible=true;spacecontrol.AddImageSource("Terrain","Texture",GetManifestUrl(b),0,1);Fire("onchangemapstyle");previousMapStyle=currentView.mapStyle}}else previousMapStyle=currentView.mapStyle;var d=a.cameraLatlong,i=a.zoomLevel,j=a.GetAltitude(),k=a.GetTilt(),h=a.GetDirection(),e=a._needsPivotOperation;if(c)Fire("onstartzoom");if(a._supressFlyToCall)a._supressFlyToCall=false;else{var f=spacecontrol.FlyTo(d.latitude,d.longitude,i,j,k,h,e?1:0);if(!f&&!spaceCameraIsFlying)ProcessQueuedRequest(null,null)}if(a.sceneId&&a.sceneId!=-1){ProcessPhotoPluginActionIn3D("PhotosEnabled","enabled=1"+";labels="+(a.mapStyle==Msn.VE.MapStyle.Road||a.mapStyle==Msn.VE.MapStyle.Hybrid||a.mapStyle==Msn.VE.MapStyle.ObliqueHybrid?"1":"0"),spacecontrol);ProcessPhotoPluginActionIn3D("SelectSceneId","SceneId="+a.sceneId+";X="+a.photoX+";Y="+a.photoY+";Scale="+a.photoScale,spacecontrol,null)}if(c)Fire("onendzoom");if(copyright)copyright.Update();return true}return false}var on3DAnimationInterruptedCallback=null;function SetOn3DAnimationInterruptedCallback(a){on3DAnimationInterruptedCallback=a}function GetOn3DAnimationInterruptedCallback(){return on3DAnimationInterruptedCallback}function SetViewport(b,d,c,e){Sync3dView();var a=preferredView.MakeCopy();a.sceneId=null;a.SetLatLongRectangle(new Msn.VE.LatLongRectangle(new Msn.VE.LatLong(ClipLatitude(b),ClipLongitude(d)),new Msn.VE.LatLong(ClipLatitude(c),ClipLongitude(e))));a.SetTilt(-90);a.SetDirection(0);return SetView(a)}function SetBestMapView(b){var a=GetBestMapViewBounds(b);if(!a||a.constructor!=Array)return false;if(a.length==4)return SetViewport(a[0],a[1],a[2],a[3])}function GetBestMapViewBounds(a){var b=[];if(!a||a.constructor!=Array)return null;var c=a[0].latitude,d=a[0].longitude,f=c,g=d;for(var e=1;eb)return b;return a}function SetZoom(b){Sync3dView();var a=preferredView.MakeCopy();a.SetZoomLevel(b);SetView(a)}function ZoomIn(){Sync3dView();var a=preferredView.MakeCopy();a.SetZoomLevel(currentView.zoomLevel+1);SetView(a)}function ZoomOut(){Sync3dView();var a=preferredView.MakeCopy();a.SetZoomLevel(currentView.zoomLevel-1);SetView(a)}function SetCenterAndZoom(d,b,c){Sync3dView();var a=preferredView.MakeCopy();a.sceneId=null;a.SetCenterLatLong(new Msn.VE.LatLong(d,b));a.SetZoomLevel(c);SetView(a)}function GetCurrentViewMaxZoomLevel(b){var a=b;if(typeof a=="undefined"||a==null)a=preferredView;if(!currentMode)return tileLayerManager.GetMaxTileZoom();return currentMode.GetCurrentMaxZoomLevel(a)}function ObliqueMode(){var r=false,a=null,t=null,b=false,h=false,y=null,z=null,l=false,n=false,k=null,c=null,g=-1,e=null,p=true,m=null,s=null,f=['02010130313','02010130321','02010130323','02010130330','02010130331','02010130332','02010130333','02010131202','02010131220','02010131221','02010131222','02010131223','02010131232','02010132110','02010132111','02010133000','02010133001','02010133003','02010133010','02010133012','02121131200','02121131201','02121131202','02121131203','02121131210','02121131211','02121131212','02121131213','02121131220','02121131221','02121131222','02121131223','02121131230','02121131231','02121131232','02121131233','02121131300','02121131302','02121222032','02121222033','02121222122','02121222210','02121222211','02121222212','02121222213','02121222230','02121222231','02121222233','02121222300','02121222301','02121222302','02121222303','02121222310','02121222311','02121222312','02121222313','02121222320','02121222321','02121222322','02121222323','02121222330','02121222331','02121222332','02121222333','02121223200','02121223202','02121223203','02121223210','02121223212','02121223213','02121223220','02121223221','02121223222','02121223223','02121223230','02121223231','02121223232','02121311002','02121311003','02121311020','02121311021','02121312131','02121312132','02121312133','02121312301','02121312303','02121312310','02121312311','02121312312','02121312313','02121312330','02121312331','02121312333','02121313022','02121313200','02121313202','02121313220','02121313222','02121322231','02121322233','02121322320','02121322321','02121322322','02121322323','02121322330','02121322332','02121330111','02121333101','02121333103','02121333110','02121333112','02121333130','02122313101','02122313103','02122313110','02122313112','02123000003','02123000012','02123000021','02123000022','02123000023','02123000030','02123000032','02123000101','02123000103','02123000110','02123000111','02123000112','02123000113','02123000121','02123000123','02123000130','02123000131','02123000132','02123000133','02123000200','02123000201','02123000210','02123000301','02123000303','02123000310','02123000311','02123000312','02123000313','02123000321','02123000330','02123000331','02123000332','02123000333','02123001000','02123001001','02123001002','02123001003','02123001010','02123001011','02123001012','02123001013','02123001020','02123001021','02123001022','02123001023','02123001030','02123001031','02123001032','02123001033','02123001102','02123001103','02123001112','02123001120','02123001121','02123001122','02123001123','02123001130','02123001132','02123001200','02123001201','02123001202','02123001203','02123001210','02123001211','02123001212','02123001213','02123001220','02123001221','02123001222','02123001223','02123001230','02123001231','02123001232','02123001233','02123001300','02123001301','02123001302','02123001303','02123001320','02123001321','02123001322','02123001323','02123002103','02123002110','02123002111','02123002112','02123002113','02123002121','02123002123','02123002130','02123002131','02123002132','02123002133','02123002233','02123002301','02123002303','02123002310','02123002311','02123002312','02123002313','02123002320','02123002321','02123002322','02123002323','02123002330','02123002331','02123002332','02123002333','02123003000','02123003001','02123003002','02123003003','02123003010','02123003011','02123003012','02123003013','02123003020','02123003021','02123003022','02123003023','02123003030','02123003031','02123003032','02123003033','02123003100','02123003101','02123003102','02123003103','02123003112','02123003113','02123003120','02123003121','02123003122','02123003123','02123003130','02123003131','02123003132','02123003133','02123003200','02123003201','02123003202','02123003203','02123003210','02123003211','02123003212','02123003213','02123003220','02123003221','02123003222','02123003223','02123003230','02123003231','02123003232','02123003233','02123003300','02123003301','02123003302','02123003303','02123003310','02123003312','02123003320','02123003321','02123003322','02123003323','02123003330','02123003332','02123020011','02123020013','02123020031','02123020100','02123020101','02123020102','02123020103','02123020110','02123020111','02123020112','02123020113','02123020120','02123021000','02123021001','02123021002','02123021100','02123021101','02123022103','02123022112','02123022113','02123022121','02123022122','02123022123','02123022130','02123022131','02123022132','02123022133','02123022211','02123022233','02123022300','02123022301','02123022302','02123022303','02123022310','02123022311','02123022312','02123022313','02123022320','02123022321','02123022322','02123022323','02123022330','02123022331','02123023022','02123023200','02123023202','02123023220','02123030020','02123030021','02123030022','02123030023','02123030030','02123030032','02123030033','02123030200','02123030201','02123030210','02123030211','02123030212','02123030213','02123030231','02123030300','02123030302','02123030303','02123030312','02123030320','02123030321','02123030323','02123030330','02123030331','02123030332','02123030333','02123031031','02123031033','02123031120','02123031122','02123031202','02123031203','02123031212','02123031220','02123031221','02123031223','02123031230','02123031231','02123031232','02123031233','02123031332','02123031333','02123032021','02123032023','02123032030','02123032031','02123032032','02123032033','02123032102','02123032103','02123032120','02123032121','02123032122','02123032123','02123032201','02123032203','02123032210','02123032211','02123032212','02123032213','02123032221','02123032223','02123032230','02123032231','02123032232','02123032233','02123032300','02123032301','02123032302','02123032303','02123032320','02123032321','02123032322','02123032323','02123032330','02123032332','02123033010','02123033011','02123033101','02123033110','02123033111','02123100010','02123100011','02123100012','02123100013','02123100030','02123100031','02123100033','02123100100','02123100101','02123100102','02123100103','02123100110','02123100112','02123100120','02123100121','02123100122','02123100123','02123100130','02123100132','02123100211','02123100213','02123100231','02123100233','02123100300','02123100301','02123100302','02123100303','02123100310','02123100312','02123100320','02123100321','02123100322','02123100323','02123100330','02123100332','02123100333','02123101222','02123101223','02123102011','02123102012','02123102013','02123102030','02123102031','02123102032','02123102033','02123102100','02123102101','02123102102','02123102103','02123102110','02123102111','02123102112','02123102113','02123102120','02123102121','02123102122','02123102123','02123102130','02123102131','02123102132','02123102133','02123102210','02123102211','02123102301','02123102303','02123102310','02123102311','02123102312','02123102313','02123102321','02123102323','02123102330','02123102331','02123102332','02123102333','02123103000','02123103001','02123103002','02123103003','02123103010','02123103012','02123103020','02123103021','02123103022','02123103023','02123103030','02123103031','02123103032','02123103033','02123103120','02123103122','02123103200','02123103201','02123103202','02123103203','02123103210','02123103212','02123103213','02123103220','02123103221','02123103222','02123103223','02123103230','02123103231','02123103232','02123120110','02123120111','02123121000','02123121001','02123121010','02123130110','02123130111','02123130112','02123130113','02123130130','02123130131','02123131000','02123131002','02123200011','02123200013','02123200031','02123200033','02123200100','02123200101','02123200102','02123200103','02123200120','02123200121','02123200122','02123200223','02123200230','02123200231','02123200232','02123200233','02123200322','02123200323','02123201303','02123201312','02123201320','02123201321','02123201323','02123201330','02123201331','02123201332','02123202001','02123202010','02123202011','02123202013','02123202031','02123202100','02123202101','02123202102','02123202120','02123202130','02123202131','02123203101','02123203102','02123203103','02123203110','02123203112','02123203120','02123203121','02123203122','02123203123','02123210010','02123210011','02123210100','02123210101','02123210110','02123220122','02123220123','02123220210','02123220211','02123220212','02123220213','02123220300','02123220301','02123220302','02123220303','02123220320','02123220321','02123220323','02123220330','02123220332','02123223233','02123223322','02123231323','02123233010','02123233011','02123233012','02123233013','02123233030','02123233031','02123233032','02123233033','02123233100','02123233101','02123233102','02123233103','02123233110','02123233111','02123233112','02123233113','02123233120','02123233121','02123233122','02123233123','02123233130','02123233131','02123233132','02123233133','02123233201','02123233203','02123233210','02123233211','02123233212','02123233213','02123233230','02123233231','02123233232','02123233300','02123233301','02123233302','02123233303','02123233310','02123233311','02123233312','02123233313','02123233330','02123233331','02123233332','02123233333','02123301203','02123301210','02123301211','02123301212','02123301213','02123301221','02123301222','02123301223','02123301230','02123301231','02123301232','02123301233','02123302103','02123302111','02123302112','02123302113','02123302121','02123302123','02123302130','02123302131','02123302132','02123302133','02123302310','02123302311','02123302313','02123303000','02123303001','02123303002','02123303003','02123303010','02123303012','02123303013','02123303020','02123303021','02123303022','02123303023','02123303030','02123303031','02123303032','02123303033','02123303200','02123303201','02123303202','02123303203','02123303210','02123303211','02123303220','02123303221','02123320223','02123320232','02123322001','02123322003','02123322010','02123322012','02123322020','02123322021','02123322022','02123322023','02123322030','02123322032','02123322033','02123322122','02123322200','02123322201','02123322202','02123322203','02123322210','02123322211','02123322212','02123322213','02123322221','02123322222','02123322223','02123322230','02123322231','02123322232','02123322233','02123322300','02123322302','02123322303','02123322312','02123322313','02123322320','02123322321','02123322322','02123322323','02123322330','02123322331','02123322332','02123323011','02123323013','02123323100','02123323102','02123323110','02123323111','02123323112','02123323113','02123323120','02123323323','02123323332','02123330233','02123331111','02123331112','02123331113','02123331131','02123332011','02123332221','02123332223','02123332230','02123332232','02123332312','02123332330','02130221203','02130221212','02130221221','02130221230','02130231032','02130231033','02130231210','02130231211','02130300020','02130300021','02130300022','02130300023','02130300030','02130300032','02130300200','02130300201','02130300210','02130313022','02130313023','02130313200','02130313201','02130320130','02130320131','02130320132','02130320133','02130321020','02130321022','02130321102','02130321103','02130321120','02130321121','02130321122','02130321123','02130332002','02130332003','02130332020','02130332021','02130332303','02130332312','02130332321','02130332330','02132032103','02132032112','02132032113','02132032120','02132032121','02132032122','02132032123','02132032130','02132032131','02132032132','02132101113','02132101131','02132101133','02132101311','02132101313','02132101331','02132101333','02132103111','02132110002','02132110003','02132110012','02132110013','02132110020','02132110021','02132110022','02132110023','02132110030','02132110031','02132110032','02132110033','02132110102','02132110103','02132110112','02132110120','02132110121','02132110122','02132110123','02132110130','02132110131','02132110132','02132110133','02132110200','02132110201','02132110202','02132110203','02132110210','02132110211','02132110212','02132110213','02132110220','02132110221','02132110222','02132110223','02132110230','02132110231','02132110232','02132110233','02132110300','02132110301','02132110302','02132110303','02132110310','02132110311','02132110312','02132110313','02132110320','02132110321','02132110322','02132110323','02132110330','02132110331','02132110332','02132110333','02132111010','02132111011','02132111012','02132111013','02132111030','02132111031','02132111032','02132111033','02132111102','02132111120','02132111122','02132111123','02132111132','02132111133','02132111211','02132111213','02132111233','02132111300','02132111301','02132111302','02132111303','02132111310','02132111311','02132111312','02132111313','02132111320','02132111321','02132111322','02132111323','02132111330','02132111331','02132111332','02132111333','02132112000','02132112001','02132112010','02132112011','02132113100','02132113101','02132113102','02132113103','02132113110','02132113111','02132113112','02132113113','02132213301','02132213303','02132213310','02132213312','02132220000','02132220001','02132220002','02132220003','02132220012','02132220020','02132220021','02132220022','02132220023','02132220030','02132220031','02132220032','02132220033','02132220122','02132220123','02132220132','02132220200','02132220201','02132220202','02132220203','02132220210','02132220211','02132220212','02132220213','02132220223','02132220230','02132220231','02132220300','02132220301','02132220303','02132220310','02132220311','02132220312','02132220313','02132220321','02132220322','02132220323','02132220330','02132220331','02132220332','02132220333','02132221200','02132221202','02132221220','02132221222','02132222001','02132222002','02132222003','02132222010','02132222011','02132222012','02132222013','02132222020','02132222021','02132222022','02132222023','02132222030','02132222031','02132222032','02132222033','02132222100','02132222101','02132222102','02132222103','02132222110','02132222111','02132222120','02132222121','02132222122','02132222123','02132222130','02132222132','02132222201','02132222202','02132222203','02132222210','02132222211','02132222212','02132222213','02132222220','02132222221','02132222222','02132222223','02132222230','02132222231','02132222232','02132222233','02132222300','02132222301','02132222302','02132222303','02132222310','02132222312','02132222320','02132222321','02132222330','02132223000','02132231133','02132231311','02132231313','02132310210','02132310211','02132310212','02132310213','02132310230','02132310231','02132310233','02132310300','02132310302','02132310320','02132310321','02132310322','02132310323','02132310330','02132310332','02132312011','02132312013','02132312031','02132312100','02132312101','02132312102','02132312103','02132312110','02132320003','02132320012','02132320013','02132320021','02132320022','02132320023','02132320030','02132320031','02132320032','02132320033','02132320102','02132320103','02132320112','02132320120','02132320121','02132320122','02132320123','02132320130','02132320131','02132320132','02132320133','02132320200','02132320201','02132320202','02132320210','02132320211','02132320300','02132320301','02132320302','02132320303','02132320310','02132320311','02132320312','02132320313','02132320330','02132320331','02132321020','02132321021','02132321022','02132321023','02132321200','02132321201','02132321202','02132321203','02132321220','02132321221','02132322231','02132322233','02132322320','02132322321','02132322322','02132322323','02132322330','02132322331','02132322332','02132322333','02132323220','02132323221','02132323222','02132323223','02132323230','02132323231','02132323232','02132323233','02132323320','02132323322','02133000022','02133000023','02133000200','02133000201','02133000202','02133000203','02133000220','02133000221','02133000222','02133000223','02133000230','02133000232','02133002000','02133002001','02133002002','02133002003','02133002010','02133030110','02133030111','02133030112','02133030113','02133031000','02133031001','02133031002','02133031003','02133031012','02133031020','02133031021','02133031232','02133031233','02133031322','02133031323','02133031332','02133031333','02133033010','02133033011','02133033012','02133033013','02133033020','02133033021','02133033022','02133033023','02133033030','02133033031','02133033032','02133033033','02133033100','02133033101','02133033102','02133033103','02133033110','02133033111','02133033112','02133033113','02133033120','02133033121','02133033122','02133033123','02133033130','02133033131','02133033132','02133033133','02133033200','02133033201','02133033203','02133033210','02133033211','02133033212','02133033213','02133033230','02133033231','02133033233','02133033300','02133033301','02133033302','02133033303','02133033310','02133033311','02133033312','02133033313','02133033320','02133033321','02133033322','02133033323','02133033332','02133103133','02133103213','02133103231','02133103233','02133103302','02133103311','02133103313','02133103320','02133103322','02133111212','02133111213','02133111230','02133111231','02133111232','02133111233','02133111320','02133111321','02133111322','02133111323','02133111330','02133111331','02133111332','02133111333','02133112022','02133112023','02133112032','02133112033','02133112200','02133112201','02133112210','02133112211','02133113003','02133113010','02133113011','02133113012','02133113013','02133113021','02133113023','02133113030','02133113031','02133113032','02133113033','02133113100','02133113101','02133113102','02133113103','02133113110','02133113111','02133113112','02133113113','02133113120','02133113121','02133113122','02133113123','02133113130','02133113131','02133113201','02133113210','02133113211','02133113232','02133113233','02133120012','02133120013','02133120030','02133120031','02133120032','02133120033','02133120102','02133120103','02133120112','02133120113','02133120120','02133120121','02133120122','02133120123','02133120130','02133120131','02133120132','02133120133','02133120210','02133120211','02133120212','02133120213','02133120222','02133120223','02133120230','02133120231','02133120232','02133120233','02133120300','02133120301','02133120302','02133120303','02133120310','02133120311','02133120312','02133120313','02133120320','02133120321','02133120322','02133120323','02133120330','02133120331','02133120332','02133120333','02133121002','02133121003','02133121012','02133121020','02133121021','02133121022','02133121023','02133121030','02133121032','02133121200','02133121201','02133121202','02133121203','02133121210','02133121212','02133121220','02133121221','02133121222','02133121223','02133121230','02133121232','02133121310','02133121311','02133121312','02133121313','02133121330','02133121331','02133121332','02133121333','02133122000','02133122001','02133122002','02133122003','02133122010','02133122011','02133122012','02133122013','02133122020','02133122021','02133122022','02133122023','02133122030','02133122031','02133122032','02133122033','02133122100','02133122101','02133122102','02133122103','02133122110','02133122111','02133122112','02133122113','02133122120','02133122121','02133122122','02133122123','02133122130','02133122131','02133122132','02133122133','02133122200','02133122201','02133122202','02133122203','02133122210','02133122211','02133122212','02133122213','02133122221','02133122223','02133122230','02133122231','02133122232','02133122233','02133122300','02133122301','02133122302','02133122303','02133122310','02133122311','02133122312','02133122313','02133122320','02133122321','02133122322','02133122323','02133122330','02133122331','02133122332','02133122333','02133123000','02133123001','02133123002','02133123003','02133123010','02133123012','02133123020','02133123021','02133123022','02133123023','02133123030','02133123031','02133123032','02133123033','02133123101','02133123103','02133123110','02133123111','02133123112','02133123113','02133123120','02133123121','02133123122','02133123123','02133123130','02133123131','02133123132','02133123133','02133123200','02133123201','02133123202','02133123203','02133123210','02133123211','02133123212','02133123213','02133123220','02133123221','02133123222','02133123223','02133123230','02133123231','02133123232','02133123233','02133123300','02133123301','02133123302','02133123303','02133123310','02133123311','02133123312','02133123313','02133123320','02133123321','02133123322','02133123323','02133123330','02133123331','02133123332','02133123333','02133130013','02133130021','02133130023','02133130030','02133130031','02133130032','02133130033','02133130102','02133130112','02133130113','02133130120','02133130121','02133130122','02133130123','02133130130','02133130131','02133130132','02133130133','02133130200','02133130201','02133130202','02133130203','02133130210','02133130211','02133130212','02133130213','02133130220','02133130221','02133130222','02133130223','02133130230','02133130231','02133130232','02133130233','02133130300','02133130301','02133130302','02133130303','02133130310','02133130311','02133130312','02133130313','02133130320','02133130321','02133130322','02133130323','02133130330','02133130331','02133130332','02133130333','02133131000','02133131001','02133131002','02133131003','02133131010','02133131011','02133131012','02133131013','02133131020','02133131021','02133131022','02133131023','02133131030','02133131031','02133131032','02133131033','02133131122','02133131123','02133131132','02133131200','02133131201','02133131202','02133131203','02133131210','02133131211','02133131212','02133131220','02133131221','02133131222','02133131223','02133131230','02133131232','02133131300','02133131301','02133131302','02133131303','02133131310','02133131311','02133131312','02133131313','02133131320','02133131321','02133131323','02133131330','02133131331','02133131332','02133131333','02133132000','02133132001','02133132002','02133132003','02133132010','02133132011','02133132012','02133132013','02133132020','02133132021','02133132022','02133132023','02133132030','02133132031','02133132032','02133132033','02133132100','02133132101','02133132102','02133132103','02133132110','02133132111','02133132112','02133132113','02133132120','02133132121','02133132122','02133132123','02133132130','02133132131','02133132132','02133132133','02133132202','02133132220','02133132222','02133132330','02133132331','02133132332','02133132333','02133133100','02133133101','02133133102','02133133103','02133133110','02133133111','02133133112','02133133113','02133133120','02133133121','02133133122','02133133123','02133133130','02133133131','02133133132','02133133133','02133133211','02133133212','02133133213','02133133220','02133133221','02133133222','02133133223','02133133230','02133133231','02133133232','02133133233','02133133300','02133133301','02133133302','02133133303','02133133310','02133133311','02133133312','02133133313','02133133320','02133133321','02133133322','02133133323','02133133330','02133133331','02133133332','02133133333','02133210110','02133210111','02133210112','02133210113','02133210130','02133210131','02133210311','02133210313','02133210331','02133210333','02133211000','02133211002','02133211011','02133211013','02133211031','02133211100','02133211101','02133211102','02133211103','02133211110','02133211111','02133211112','02133211113','02133211120','02133211121','02133211123','02133211130','02133211132','02133211133','02133211200','02133211201','02133211202','02133211203','02133211210','02133211211','02133211212','02133211213','02133211220','02133211221','02133211222','02133211223','02133211230','02133211231','02133211232','02133211233','02133211301','02133211303','02133211310','02133211311','02133211312','02133211313','02133211320','02133211321','02133211322','02133211323','02133211330','02133211331','02133211332','02133211333','02133212102','02133212103','02133212112','02133212113','02133212120','02133212121','02133212122','02133212123','02133212130','02133212131','02133212132','02133212133','02133212300','02133212301','02133212302','02133212303','02133212310','02133212311','02133212312','02133212313','02133212320','02133212321','02133212322','02133212323','02133212330','02133212331','02133212332','02133212333','02133213000','02133213001','02133213002','02133213003','02133213010','02133213011','02133213012','02133213013','02133213020','02133213021','02133213022','02133213023','02133213030','02133213031','02133213032','02133213033','02133213100','02133213101','02133213102','02133213103','02133213200','02133213201','02133213202','02133213203','02133213210','02133213211','02133213212','02133213213','02133213223','02133213230','02133213231','02133213232','02133213233','02133213300','02133213301','02133213302','02133213303','02133213310','02133213312','02133213320','02133213321','02133213322','02133213323','02133213330','02133213331','02133213332','02133213333','02133223332','02133223333','02133230100','02133230101','02133230102','02133230103','02133230110','02133230111','02133230112','02133230113','02133230120','02133230121','02133230130','02133230131','02133231001','02133231003','02133231010','02133231011','02133231012','02133231013','02133231021','02133231023','02133231030','02133231031','02133231032','02133231033','02133231100','02133231101','02133231102','02133231103','02133231110','02133231111','02133231112','02133231113','02133231122','02133231123','02133231132','02133231133','02133231201','02133231210','02133231211','02133231213','02133231231','02133231233','02133231300','02133231301','02133231302','02133231303','02133231310','02133231311','02133231312','02133231313','02133231320','02133231321','02133231322','02133231323','02133231330','02133231331','02133231332','02133231333','02133232222','02133232223','02133233011','02133233100','02133233101','02133233102','02133233103','02133233110','02133233111','02133233112','02133233113','02133233121','02133233123','02133233130','02133233131','02133233132','02133233133','02133233210','02133233211','02133233212','02133233213','02133233222','02133233223','02133233231','02133233232','02133233233','02133233300','02133233301','02133233302','02133233303','02133233310','02133233311','02133233312','02133233313','02133233320','02133233321','02133233322','02133233323','02133233330','02133233331','02133233332','02133233333','02133300001','02133300002','02133300003','02133300010','02133300011','02133300012','02133300013','02133300020','02133300021','02133300022','02133300023','02133300030','02133300031','02133300032','02133300033','02133300100','02133300101','02133300102','02133300103','02133300110','02133300111','02133300112','02133300113','02133300120','02133300121','02133300122','02133300123','02133300130','02133300132','02133300200','02133300201','02133300202','02133300203','02133300210','02133300211','02133300212','02133300213','02133300220','02133300221','02133300222','02133300223','02133300230','02133300231','02133300232','02133300233','02133300300','02133300301','02133300302','02133300303','02133300310','02133300312','02133300320','02133300321','02133300322','02133300323','02133300330','02133300331','02133300332','02133300333','02133301000','02133301001','02133301002','02133301003','02133301010','02133301011','02133301012','02133301013','02133301020','02133301021','02133301022','02133301023','02133301030','02133301031','02133301032','02133301033','02133301100','02133301101','02133301102','02133301103','02133301110','02133301111','02133301112','02133301113','02133301120','02133301121','02133301122','02133301123','02133301130','02133301131','02133301132','02133301133','02133301201','02133301203','02133301210','02133301211','02133301212','02133301213','02133301220','02133301221','02133301222','02133301223','02133301230','02133301231','02133301232','02133301233','02133301300','02133301301','02133301302','02133301303','02133301310','02133301311','02133301312','02133301313','02133301320','02133301321','02133301322','02133301323','02133301330','02133301331','02133301332','02133301333','02133302000','02133302001','02133302002','02133302003','02133302010','02133302011','02133302012','02133302013','02133302020','02133302021','02133302030','02133302031','02133302100','02133302102','02133302103','02133302111','02133302112','02133302113','02133302120','02133302121','02133302122','02133302123','02133302130','02133302131','02133302132','02133302133','02133302211','02133302213','02133302220','02133302221','02133302222','02133302223','02133302230','02133302231','02133302232','02133302233','02133302300','02133302301','02133302302','02133302303','02133302310','02133302311','02133302312','02133302313','02133302320','02133302321','02133302322','02133302330','02133303000','02133303001','02133303002','02133303003','02133303010','02133303012','02133303013','02133303020','02133303021','02133303022','02133303023','02133303030','02133303031','02133303032','02133303033','02133303100','02133303101','02133303102','02133303103','02133303110','02133303111','02133303112','02133303113','02133303120','02133303121','02133303122','02133303123','02133303130','02133303131','02133303132','02133303200','02133303201','02133303203','02133303210','02133303211','02133303212','02133303213','02133303221','02133303223','02133303230','02133303231','02133303232','02133303233','02133303300','02133303301','02133303302','02133303303','02133303310','02133303312','02133303320','02133303321','02133303322','02133303323','02133303330','02133303332','02133310000','02133310002','02133310020','02133310022','02133310110','02133310111','02133310112','02133310113','02133310130','02133310131','02133310132','02133310133','02133310200','02133310220','02133310221','02133310222','02133310223','02133310230','02133310231','02133310232','02133310233','02133310310','02133310311','02133310320','02133310321','02133310322','02133310323','02133310330','02133310332','02133310333','02133311000','02133311001','02133311002','02133311003','02133311010','02133311011','02133311012','02133311020','02133311021','02133311022','02133311023','02133311030','02133311032','02133311100','02133311101','02133311103','02133311110','02133311111','02133311112','02133311113','02133311130','02133311132','02133311133','02133311200','02133311201','02133311210','02133311222','02133311223','02133311232','02133312000','02133312001','02133312002','02133312003','02133312010','02133312011','02133312012','02133312013','02133312020','02133312021','02133312023','02133312030','02133312031','02133312032','02133312033','02133312100','02133312101','02133312102','02133312103','02133312110','02133312111','02133312112','02133312113','02133312120','02133312121','02133312122','02133312123','02133312130','02133312131','02133312132','02133312133','02133312201','02133312210','02133312211','02133312221','02133312223','02133312230','02133312231','02133312232','02133312233','02133312300','02133312301','02133312302','02133312303','02133312310','02133312311','02133312312','02133312313','02133312320','02133312321','02133312322','02133312323','02133312330','02133312331','02133312332','02133312333','02133313000','02133313001','02133313002','02133313003','02133313010','02133313012','02133313020','02133313021','02133313022','02133313023','02133313030','02133313032','02133313200','02133313201','02133313222','02133313223','02133320000','02133320001','02133320002','02133320003','02133320010','02133320011','02133320012','02133320013','02133320021','02133320023','02133320030','02133320031','02133320032','02133320033','02133320100','02133320101','02133320102','02133320103','02133320110','02133320111','02133320112','02133320113','02133320120','02133320121','02133320122','02133320123','02133320130','02133320131','02133320132','02133320133','02133320201','02133320203','02133320210','02133320211','02133320212','02133320213','02133320220','02133320221','02133320222','02133320223','02133320230','02133320231','02133320232','02133320233','02133320300','02133320301','02133320302','02133320303','02133320310','02133320311','02133320312','02133320313','02133320320','02133320321','02133320322','02133320323','02133320330','02133320331','02133320332','02133320333','02133321000','02133321001','02133321002','02133321003','02133321010','02133321011','02133321012','02133321013','02133321020','02133321021','02133321022','02133321023','02133321033','02133321100','02133321101','02133321102','02133321103','02133321110','02133321112','02133321122','02133321123','02133321132','02133321133','02133321200','02133321201','02133321202','02133321203','02133321211','02133321213','02133321220','02133321221','02133321222','02133321223','02133321230','02133321231','02133321232','02133321233','02133321300','02133321301','02133321302','02133321303','02133321310','02133321311','02133321312','02133321313','02133321320','02133321321','02133321322','02133321323','02133321330','02133321331','02133321332','02133321333','02133322000','02133322001','02133322002','02133322003','02133322010','02133322011','02133322012','02133322013','02133322020','02133322021','02133322022','02133322023','02133322030','02133322031','02133322032','02133322033','02133322100','02133322101','02133322102','02133322103','02133322110','02133322111','02133322112','02133322113','02133322122','02133322123','02133322131','02133322133','02133322200','02133322201','02133322202','02133322203','02133322210','02133322211','02133322212','02133322213','02133322220','02133322221','02133322222','02133322223','02133322230','02133322231','02133322232','02133322233','02133322300','02133322301','02133322302','02133322303','02133322311','02133322320','02133322321','02133322322','02133322323','02133322330','02133322331','02133322332','02133322333','02133323000','02133323001','02133323002','02133323003','02133323010','02133323011','02133323012','02133323013','02133323020','02133323021','02133323022','02133323023','02133323030','02133323031','02133323032','02133323033','02133323100','02133323101','02133323102','02133323103','02133323110','02133323111','02133323112','02133323113','02133323120','02133323121','02133323122','02133323123','02133323130','02133323131','02133323132','02133323133','02133323200','02133323201','02133323210','02133323211','02133323212','02133323220','02133323221','02133323222','02133323223','02133323230','02133323231','02133323232','02133323233','02133323300','02133323301','02133323302','02133323303','02133323310','02133323311','02133323312','02133323313','02133323320','02133323321','02133323322','02133323323','02133323330','02133323331','02133323332','02133323333','02133330001','02133330003','02133330010','02133330011','02133330012','02133330013','02133330022','02133330023','02133330031','02133330032','02133330033','02133330100','02133330101','02133330102','02133330103','02133330110','02133330111','02133330112','02133330113','02133330120','02133330121','02133330122','02133330123','02133330130','02133330131','02133330132','02133330133','02133330200','02133330201','02133330202','02133330203','02133330210','02133330211','02133330212','02133330213','02133330220','02133330221','02133330222','02133330230','02133330231','02133330232','02133330233','02133330300','02133330301','02133330302','02133330303','02133330310','02133330311','02133330312','02133330313','02133330320','02133330321','02133330322','02133330323','02133330330','02133330331','02133330332','02133330333','02133331000','02133331001','02133331002','02133331003','02133331012','02133331020','02133331021','02133331022','02133331023','02133331030','02133331031','02133331032','02133331033','02133331200','02133331201','02133331202','02133331203','02133331212','02133331213','02133331220','02133331221','02133331222','02133331223','02133331230','02133331231','02133331232','02133331233','02133332000','02133332002','02133332010','02133332011','02133332012','02133332013','02133332020','02133332022','02133332030','02133332031','02133332032','02133332033','02133332100','02133332101','02133332102','02133332103','02133332110','02133332111','02133332112','02133332113','02133332120','02133332121','02133332122','02133332123','02133332130','02133332131','02133332132','02133332133','02133332200','02133332202','02133332210','02133332211','02133332212','02133332213','02133332220','02133332221','02133332222','02133332223','02133332230','02133332231','02133332232','02133332233','02133332300','02133332301','02133332302','02133332303','02133332310','02133332311','02133332320','02133332321','02133332322','02133332330','02133332331','02133332332','02133332333','02133333000','02133333001','02133333002','02133333003','02133333010','02133333011','02133333012','02133333013','02133333020','02133333022','02133333030','02133333031','02133333032','02133333033','02133333102','02133333103','02133333112','02133333120','02133333121','02133333122','02133333123','02133333130','02133333131','02133333132','02133333133','02133333200','02133333201','02133333203','02133333210','02133333211','02133333212','02133333213','02133333220','02133333222','02133333223','02133333232','02133333300','02133333301','02133333302','02133333303','02133333310','02133333311','02221111013','02221111031','02221111033','02221111102','02221111103','02221111112','02221111120','02221111121','02221111122','02221111123','02221111130','02221111131','02221111132','02221111133','02221111300','02221111301','02221111310','02221111311','02230000201','02230000203','02230000210','02230000212','02230000213','02230000231','02230000233','02230000302','02230000303','02230000312','02230000313','02230000320','02230000321','02230000323','02230000330','02230000331','02230000332','02230001220','02230001222','02230002101','02230002110','02230002313','02230003003','02230003020','02230003021','02230003022','02230003023','02230003030','02230003031','02230003032','02230003033','02230003120','02230003122','02230003123','02230003200','02230003201','02230003202','02230003203','02230003210','02230003211','02230003212','02230003213','02230003220','02230003221','02230003222','02230003223','02230003230','02230003231','02230003233','02230003300','02230003301','02230003302','02230003303','02230003310','02230003312','02230003320','02230003321','02230003322','02230003323','02230003330','02230003331','02230003332','02230003333','02230021000','02230021001','02230021002','02230021003','02230021010','02230021011','02230021012','02230021013','02230021021','02230021030','02230021031','02230021100','02230021101','02230021102','02230021110','02301000113','02301000131','02301000133','02301000311','02301001002','02301001011','02301001013','02301001020','02301001022','02301001100','02301001200','02301002223','02301002232','02301002233','02301002322','02301002323','02301002332','02301003010','02301003011','02301003012','02301003013','02301003031','02301003033','02301003100','02301003102','02301003120','02301003121','02301003122','02301003123','02301003211','02301003323','02301003332','02301003333','02301010323','02301010332','02301011020','02301011021','02301011022','02301011023','02301011100','02301011101','02301011102','02301011103','02301011110','02301011111','02301011112','02301011223','02301011230','02301011232','02301011233','02301011333','02301012100','02301012101','02301012103','02301012110','02301012111','02301012112','02301012113','02301012121','02301012123','02301012130','02301012131','02301012132','02301012133','02301012301','02301012303','02301012310','02301012311','02301012312','02301012313','02301012321','02301012323','02301012330','02301012331','02301012332','02301012333','02301013000','02301013002','02301013003','02301013010','02301013011','02301013012','02301013013','02301013020','02301013021','02301013022','02301013023','02301013030','02301013031','02301013032','02301013033','02301013102','02301013103','02301013111','02301013112','02301013113','02301013120','02301013121','02301013122','02301013123','02301013130','02301013131','02301013132','02301013200','02301013201','02301013210','02301013211','02301013213','02301013300','02301013301','02301013302','02301013303','02301013312','02301013313','02301013323','02301013330','02301013331','02301013332','02301020001','02301020003','02301020010','02301020011','02301020012','02301020013','02301020030','02301020031','02301020033','02301020100','02301020101','02301020102','02301020103','02301020110','02301020112','02301020113','02301020120','02301020121','02301020122','02301020123','02301020130','02301020131','02301020132','02301020133','02301020211','02301020300','02301020301','02301020302','02301020303','02301020310','02301020311','02301020312','02301020313','02301020321','02301020330','02301020331','02301020332','02301020333','02301021001','02301021003','02301021010','02301021011','02301021012','02301021013','02301021020','02301021021','02301021022','02301021023','02301021030','02301021031','02301021032','02301021033','02301021100','02301021101','02301021102','02301021103','02301021110','02301021111','02301021112','02301021113','02301021120','02301021121','02301021122','02301021123','02301021130','02301021131','02301021132','02301021133','02301021200','02301021201','02301021202','02301021203','02301021210','02301021211','02301021212','02301021213','02301021220','02301021221','02301021222','02301021223','02301021230','02301021231','02301021232','02301021233','02301021300','02301021301','02301021302','02301021303','02301021310','02301021311','02301021312','02301021313','02301021320','02301021321','02301021322','02301021323','02301021330','02301021331','02301021332','02301021333','02301022110','02301022111','02301022112','02301022113','02301022131','02301023000','02301023001','02301023002','02301023003','02301023010','02301023011','02301023012','02301023013','02301023020','02301023021','02301023022','02301023023','02301023030','02301023031','02301023032','02301023033','02301023100','02301023101','02301023102','02301023103','02301023110','02301023111','02301023112','02301023113','02301023120','02301023121','02301023122','02301023130','02301023131','02301023133','02301023200','02301023201','02301023202','02301023203','02301023210','02301023211','02301023212','02301023213','02301023223','02301023230','02301023231','02301023232','02301023233','02301023300','02301023302','02301023320','02301023322','02301030110','02301030111','02301030113','02301030200','02301030202','02301030220','02301030222','02301030223','02301030232','02301030233','02301030322','02301031000','02301031001','02301031002','02301031031','02301031032','02301031033','02301031101','02301031102','02301031103','02301031110','02301031112','02301031120','02301031121','02301031122','02301031123','02301031130','02301031131','02301031132','02301031133','02301031310','02301031311','02301032000','02301032001','02301032002','02301032003','02301032010','02301032011','02301032012','02301032013','02301032020','02301032021','02301032022','02301032023','02301032030','02301032031','02301032032','02301032033','02301032100','02301032101','02301032102','02301032103','02301032120','02301032122','02301032123','02301032131','02301032133','02301032200','02301032201','02301032210','02301032211','02301032212','02301032230','02301032231','02301032232','02301032233','02301032300','02301032301','02301032302','02301032303','02301032312','02301032313','02301032320','02301032321','02301032322','02301032323','02301032330','02301032331','02301032332','02301032333','02301033220','02301033222','02301033223','02301100000','02301100001','02301100002','02301100003','02301100010','02301100011','02301100012','02301100013','02301100031','02301100100','02301100101','02301100102','02301100103','02301100110','02301100112','02301100113','02301100120','02301100121','02301100130','02301100131','02301100132','02301100133','02301100222','02301100223','02301100232','02301101002','02301101003','02301101013','02301101020','02301101021','02301101022','02301101023','02301101031','02301101100','02301101101','02301101102','02301101103','02301101110','02301101112','02301101113','02301101120','02301101121','02301101130','02301101131','02301101200','02301101201','02301101202','02301101203','02301101220','02301101221','02301102000','02301102001','02301102002','02301102003','02301102010','02301102012','02301102013','02301102020','02301102021','02301102022','02301102023','02301102030','02301102031','02301102032','02301102120','02301102121','02301102122','02301102123','02301102130','02301102132','02301102200','02301102201','02301102202','02301102203','02301102301','02301102303','02301102310','02301102312','02301103013','02301103031','02301103033','02301103100','02301103101','02301103102','02301103103','02301103120','02301103121','02301103122','02301110112','02301110113','02301110130','02301110131','02301112023','02301112032','02301112033','02301112201','02301112210','02301112211','02301112212','02301112213','02301112221','02301112223','02301112230','02301112231','02301112312','02301112313','02301112330','02301112331','02301112332','02301112333','02301120020','02301120022','02301120200','02301130001','02301132111','02301132113','02301132131','02301132133','02301132311','02301132313','02301133000','02301133001','02301133002','02301133003','02301133010','02301133012','02301133013','02301133020','02301133021','02301133022','02301133023','02301133030','02301133031','02301133032','02301133033','02301133102','02301133103','02301133120','02301133121','02301133122','02301133123','02301133200','02301133201','02301133202','02301133203','02301133210','02301133211','02301133212','02301133213','02301133300','02301133301','02301133302','02301133303','02301201001','02301201010','02301201011','02301201013','02301201100','02301201101','02301201103','02301201110','02301201112','02301201121','02301201130','02301201131','02301201132','02301201133','02301210011','02301210030','02301210031','02301210032','02301210033','02301210100','02301210101','02301210103','02301210110','02301210111','02301210112','02301210113','02301210120','02301210121','02301210122','02301210123','02301211000','02301211001','02301211002','02301211003','02301211010','02301211012','02301211020','02301211021','02301211022','02301211023','02301211030','02301211032','02301211033','02301211201','02301211202','02301211203','02301211210','02301211211','02301211212','02301211220','02301211221','02301211222','02301211223','02301211230','02301211232','02301211233','02301212003','02301212012','02301212021','02301212023','02301212030','02301212032','02301212033','02301212210','02301212211','02301212213','02301212302','02301212303','02301212320','02301212321','02301212323','02301212330','02301212331','02301212332','02301212333','02301213000','02301213001','02301213002','02301213010','02301213011','02301213012','02301213013','02301213020','02301213021','02301213022','02301213031','02301213100','02301213102','02301213120','02301213211','02301213213','02301213220','02301213221','02301213222','02301213223','02301213230','02301213231','02301213232','02301213233','02301213300','02301213301','02301213302','02301213303','02301213310','02301213311','02301213312','02301213313','02301213320','02301213321','02301213322','02301213323','02301213330','02301213331','02301213332','02301213333','02301231000','02301231001','02301231003','02301231010','02301231011','02301231012','02301231013','02301231030','02301231031','02301231100','02301231101','02301231102','02301231103','02301231110','02301231111','02301231112','02301231113','02301231120','02301231121','02301231123','02301231130','02301231131','02301231132','02301231133','02301231303','02301231310','02301231311','02301231312','02301231321','02301231323','02301231330','02301231331','02301231332','02301231333','02301300230','02301300231','02301300232','02301300233','02301300302','02301300320','02301301113','02301301131','02301301133','02301301311','02301301332','02301301333','02301302123','02301302132','02301302133','02301302200','02301302201','02301302202','02301302203','02301302210','02301302211','02301302212','02301302213','02301302220','02301302221','02301302222','02301302223','02301302230','02301302231','02301302232','02301302233','02301302300','02301302301','02301302302','02301302303','02301302310','02301302311','02301302312','02301302313','02301302320','02301302321','02301302322','02301302323','02301302330','02301302331','02301302332','02301302333','02301303021','02301303022','02301303110','02301303111','02301303200','02301303201','02301310002','02301310020','02301310021','02301310022','02301310023','02301310030','02301310032','02301310033','02301310200','02301310201','02301310210','02301310211','02301310212','02301310213','02301312013','02301312031','02301312033','02301312102','02301312103','02301312112','02301312113','02301312120','02301312122','02301312130','02301312131','02301312211','02301312300','02301312302','02301312320','02301312321','02301312323','02301312330','02301312332','02301320000','02301320001','02301320002','02301320003','02301320010','02301320011','02301320012','02301320013','02301320020','02301320021','02301320022','02301320023','02301320030','02301320031','02301320032','02301320033','02301320100','02301320101','02301320102','02301320103','02301320110','02301320111','02301320112','02301320113','02301320120','02301320121','02301320122','02301320123','02301320130','02301320131','02301320132','02301320133','02301320200','02301320201','02301320203','02301320210','02301320211','02301320212','02301320213','02301320230','02301320231','02301320300','02301320301','02301320302','02301320303','02301320310','02301320311','02301320312','02301320320','02301320321','02301320322','02301320323','02301320330','02301320332','02301321001','02301321002','02301321003','02301321010','02301321011','02301321012','02301321013','02301321020','02301321021','02301321022','02301321023','02301321030','02301321032','02301321033','02301321100','02301321101','02301321102','02301321103','02301321200','02301321201','02301321210','02301321211','02301321212','02301321213','02301321332','02301321333','02301322100','02301322101','02301322102','02301322103','02301322110','02301322111','02301322112','02301322113','02301322120','02301322121','02301322122','02301322123','02301322130','02301322131','02301322132','02301322133','02301322301','02301322310','02301323000','02301323002','02301323020','02301323103','02301323110','02301323111','02301323112','02301323113','02301323121','02301323130','02301323131','02301323132','02301323133','02301330011','02301330100','02301330101','02301330102','02301330103','02301330110','02301331310','02301331311','02301331312','02301331313','02301331321','02301331330','02301331331','02301331332','02301332031','02301332033','02301332120','02301332121','02301332122','02301332123','02301332210','02301332211','02301333301','02301333303','02301333310','02301333312','02310000003','02310000010','02310000011','02310000012','02310000013','02310000021','02310000023','02310000030','02310000031','02310000032','02310000033','02310000100','02310000102','02310000103','02310000120','02310000121','02310000122','02310000123','02310000201','02310000203','02310000210','02310000211','02310000212','02310000213','02310000230','02310000231','02310000232','02310000233','02310000300','02310000301','02310000302','02310000303','02310000310','02310000312','02310000320','02310000321','02310000322','02310000323','02310000330','02310000332','02310002001','02310002010','02310002011','02310002100','02310002101','02310002110','02310002111','02310002112','02310002113','02310002131','02310002132','02310002133','02310002310','02310002311','02310002312','02310002313','02310002330','02310002331','02310002332','02310002333','02310003000','02310003001','02310003002','02310003003','02310003010','02310003011','02310003012','02310003013','02310003020','02310003021','02310003022','02310003023','02310003030','02310003031','02310003032','02310003033','02310003100','02310003101','02310003102','02310003103','02310003110','02310003111','02310003112','02310003113','02310003120','02310003121','02310003122','02310003123','02310003130','02310003132','02310003200','02310003201','02310003202','02310003203','02310003210','02310003211','02310003212','02310003213','02310003220','02310003221','02310003222','02310003230','02310003231','02310003232','02310003233','02310003300','02310003301','02310003302','02310003303','02310003310','02310003312','02310003320','02310003321','02310003322','02310003323','02310003330','02310003332','02310012300','02310012301','02310012302','02310012303','02310012312','02310012313','02310012321','02310012330','02310012331','02310012333','02310013202','02310021000','02310021001','02310021002','02310021003','02310021010','02310021011','02310021012','02310021020','02310021021','02310021030','02310021100','02310021101','02310021102','02310021103','02310021110','02310021112','02310021121','02310021130','02310022303','02310022312','02310022321','02310022330','02310030211','02310030213','02310030231','02310030233','02310030300','02310030301','02310030302','02310030303','02310030310','02310030311','02310030312','02310030313','02310030320','02310030321','02310030322','02310030323','02310030330','02310030331','02310030332','02310030333','02310031200','02310031201','02310031202','02310031203','02310031210','02310031212','02310031213','02310031220','02310031221','02310031222','02310031223','02310031230','02310031231','02310031232','02310031233','02310032211','02310032213','02310032231','02310032233','02310032300','02310032301','02310032302','02310032303','02310032310','02310032311','02310032312','02310032313','02310032320','02310032321','02310032322','02310032323','02310032330','02310032331','02310032332','02310032333','02310033200','02310033201','02310033202','02310033203','02310033210','02310033211','02310033212','02310033213','02310033220','02310033221','02310033222','02310033223','02310033230','02310033231','02310033232','02310033233','02310033300','02310033302','02310033303','02310033320','02310100011','02310100013','02310100100','02310100101','02310100102','02310100103','02310100110','02310100111','02310100112','02310100113','02310100120','02310100121','02310100122','02310100123','02310100130','02310100131','02310100132','02310100133','02310100232','02310100233','02310100301','02310100310','02310100311','02310100312','02310100313','02310100330','02310100331','02310100332','02310100333','02310101000','02310101001','02310101002','02310101003','02310101010','02310101011','02310101012','02310101013','02310101020','02310101021','02310101022','02310101023','02310101030','02310101031','02310101032','02310101033','02310101100','02310101102','02310101120','02310101122','02310101200','02310101201','02310101202','02310101203','02310101210','02310101211','02310101212','02310101213','02310101220','02310101221','02310101222','02310101223','02310101230','02310101231','02310101232','02310101233','02310101300','02310101301','02310101320','02310101321','02310101322','02310101323','02310101332','02310101333','02310102010','02310102011','02310102012','02310102013','02310102031','02310102033','02310102100','02310102102','02310102103','02310102110','02310102111','02310102112','02310102113','02310102120','02310102121','02310102122','02310102123','02310102130','02310102131','02310102132','02310102133','02310102211','02310102300','02310102301','02310103000','02310103001','02310103002','02310103003','02310103010','02310103011','02310103012','02310103013','02310103020','02310103021','02310103022','02310103023','02310103030','02310103031','02310103032','02310103033','02310103100','02310103101','02310103102','02310103103','02310103110','02310103111','02310103112','02310103113','02310103120','02310103121','02310103122','02310103130','02310103131','02310103200','02310103201','02310103202','02310103203','02310103210','02310103211','02310103212','02310103213','02310103220','02310103221','02310103230','02310103231','02310103233','02310103300','02310103302','02310103320','02310103322','02310110221','02310110222','02310110223','02310110232','02310112000','02310112001','02310112002','02310112003','02310112010','02310112012','02310112020','02310112021','02310112030','02310121011','02310121033','02310121100','02310121102','02310121122','02310121123','02310121211','02310121300','02310121301','02310200132','02310200133','02310202033','02310202102','02310202103','02310202120','02310202121','02310202122','02310202211','02310202300','02310210011','02310210013','02310210031','02310210033','02310210100','02310210101','02310210102','02310210103','02310210110','02310210111','02310210112','02310210113','02310210120','02310210121','02310210122','02310210123','02310210130','02310210131','02310210132','02310210133','02310210211','02310210231','02310210233','02310210300','02310210301','02310210310','02310210311','02310210320','02310210321','02310210322','02310210323','02310210330','02310210332','02310210333','02310211000','02310211001','02310211002','02310211003','02310211010','02310211011','02310211012','02310211013','02310211020','02310211021','02310211022','02310211023','02310211030','02310211031','02310211032','02310211033','02310211200','02310211201','02310211202','02310211203','02310211210','02310211211','02310211212','02310211213','02310211220','02310211221','02310211222','02310211223','02310211230','02310211231','02310211232','02310211233','02310211302','02310211303','02310211320','02310211321','02310211322','02310212011','02310212013','02310212100','02310212101','02310212102','02310212103','02310212110','02310212111','02310212112','02310212113','02310212121','02310212130','02310212131','02310212132','02310213000','02310213001','02310213002','02310213003','02310213010','02310213011','02310213012','02310213100','02310213112','02310213113','02310213130','02310213131','02310213132','02310213133','02310213310','02310213311','02310220021','02310220022','02310220023','02310220030','02310220031','02310220032','02310220033','02310220122','02310220200','02310220201','02310220202','02310220203','02310220210','02310220211','02310220212','02310220213','02310220220','02310220221','02310220223','02310220230','02310220231','02310220232','02310220233','02310220300','02310220301','02310220302','02310220303','02310220320','02310220321','02310220322','02310220323','02310220330','02310222310','02310222311','02310222312','02310222313','02310222330','02310222331','02310222332','02310222333','02310223200','02310223201','02310223202','02310223203','02310223210','02310223212','02310223220','02310223221','02310223222','02310223223','02310223230','02310223232','02310233121','02310233123','02310233130','02310233131','02310233132','02310233133','02310233310','02310233311','02310233313','02310233331','02310300110','02310300111','02310300112','02310300113','02310300122','02310300123','02310300130','02310300131','02310300300','02310300301','02310300302','02310300303','02310300320','02310300321','02310300322','02310300323','02310302002','02310302003','02310302012','02310302013','02310302020','02310302021','02310302022','02310302023','02310302030','02310302031','02310302032','02310302033','02310302101','02310302120','02310302121','02310302122','02310302123','02310302200','02310302201','02310302210','02310302211','02310302212','02310302213','02310302230','02310302231','02310302232','02310302233','02310302300','02310302301','02310302302','02310302320','02310311230','02310311231','02310311232','02310311233','02310311320','02310311321','02310311322','02310311323','02310311330','02310311332','02310313010','02310313011','02310313012','02310313013','02310313030','02310313031','02310313032','02310313033','02310313100','02310313101','02310313102','02310313103','02310313110','02310313112','02310313120','02310313121','02310313122','02310313123','02310313130','02310313132','02310313210','02310313211','02310313212','02310313213','02310313300','02310313301','02310313302','02310313303','02310313310','02310313312','02310322022','02310322023','02310322200','02310322201','02310322202','02310322203','02310322210','02310322212','02310322220','02310322221','02310322222','02310322223','02310322230','02310322232','02310322233','02310322322','02310322323','02310322332','02310322333','02310323013','02310323031','02310323100','02310323101','02310323102','02310323103','02310323110','02310323112','02310323113','02310323120','02310323121','02310323123','02310323130','02310323131','02310323132','02310323133','02310323222','02310323223','02310323232','02310323233','02310323301','02310323303','02310323310','02310323311','02310323312','02310323313','02310323320','02310323321','02310323322','02310323323','02310323330','02310323331','02310323332','02310331030','02310331031','02310331032','02310331033','02310331120','02310331121','02310331122','02310331123','02310331130','02310331132','02310331210','02310331211','02310331212','02310331213','02310331230','02310331231','02310331300','02310331301','02310331302','02310331303','02310331310','02310331312','02310331320','02310331321','02310331330','02310332002','02310332003','02310332020','02310332021','02310332022','02310332023','02310332121','02310332130','02310332131','02310332133','02310332200','02310332201','02310332202','02310332203','02310332210','02310332220','02310332330','02310332331','02310332332','02310332333','02310333002','02310333020','02310333022','02310333031','02310333033','02310333120','02310333122','02310333123','02310333130','02310333131','02310333202','02310333212','02310333213','02310333220','02310333221','02310333222','02310333223','02310333230','02310333231','02310333232','02310333233','02310333301','02310333302','02310333303','02310333320','02310333321','02310333322','02310333323','02310333331','02310333333','02311001110','02311001111','02311001112','02311001113','02311001130','02311001131','02311003131','02311003133','02311003311','02311003313','02311010000','02311010001','02311010002','02311010003','02311010020','02311010021','02311010301','02311010303','02311010310','02311010311','02311010312','02311010313','02311010321','02311010323','02311010330','02311010331','02311010332','02311010333','02311011000','02311011001','02311011002','02311011003','02311011010','02311011011','02311011012','02311011013','02311011020','02311011021','02311011022','02311011023','02311011030','02311011031','02311011032','02311011033','02311011100','02311011101','02311011200','02311011201','02311011202','02311011203','02311011220','02311011221','02311011222','02311011223','02311012020','02311012021','02311012022','02311012023','02311012030','02311012031','02311012032','02311012033','02311012200','02311012201','02311012202','02311012203','02311012210','02311012211','02311012212','02311012213','02311013303','02311013312','02311013313','02311013321','02311013323','02311013330','02311013331','02311013332','02311013333','02311023021','02311023023','02311023030','02311023031','02311023032','02311023033','02311023120','02311023122','02311023201','02311023203','02311023210','02311023211','02311023212','02311023213','02311023300','02311023302','02311030103','02311030112','02311030113','02311030121','02311030123','02311030130','02311030131','02311030132','02311030133','02311030231','02311030233','02311030310','02311030311','02311030313','02311030320','02311030321','02311030322','02311030323','02311030330','02311030331','02311030332','02311030333','02311031002','02311031003','02311031020','02311031021','02311031022','02311031023','02311031200','02311031201','02311031202','02311031203','02311032011','02311032013','02311032031','02311032033','02311032100','02311032101','02311032102','02311032103','02311032110','02311032111','02311032112','02311032113','02311032120','02311032121','02311032122','02311032123','02311032130','02311032131','02311032132','02311032133','02311032211','02311032213','02311032223','02311032232','02311032233','02311032300','02311032301','02311032302','02311032303','02311032310','02311032311','02311032312','02311032313','02311032322','02311032323','02311033002','02311033003','02311033012','02311033013','02311033020','02311033021','02311033022','02311033023','02311033030','02311033031','02311033032','02311033033','02311033121','02311033123','02311033130','02311033131','02311033132','02311033133','02311033200','02311033201','02311033202','02311033203','02311033210','02311033211','02311033212','02311033213','02311033301','02311033303','02311033310','02311033311','02311033312','02311033313','02311033321','02311033323','02311033330','02311033331','02311033332','02311033333','02311100000','02311100001','02311100003','02311100010','02311100011','02311100012','02311100013','02311100100','02311100102','02311100110','02311100111','02311100112','02311100231','02311100233','02311100320','02311100321','02311100322','02311100323','02311101000','02311101001','02311101003','02311101010','02311101011','02311101012','02311101013','02311101100','02311101101','02311101103','02311101110','02311101111','02311101112','02311101113','02311101130','02311101131','02311101132','02311101133','02311102011','02311102012','02311102013','02311102030','02311102031','02311102032','02311102033','02311102100','02311102101','02311102102','02311102103','02311102110','02311102112','02311102120','02311102121','02311102122','02311102123','02311102130','02311102131','02311102132','02311102133','02311102202','02311102210','02311102211','02311102212','02311102213','02311102220','02311102221','02311102222','02311102223','02311102230','02311102231','02311102232','02311102233','02311102300','02311102301','02311102302','02311102303','02311102310','02311102311','02311102312','02311102313','02311102320','02311102321','02311102322','02311102323','02311102330','02311102331','02311102332','02311102333','02311103020','02311103022','02311103200','02311103202','02311103220','02311103222','02311103231','02311103233','02311103320','02311103321','02311103322','02311103323','02311103330','02311103332','02311103333','02311110000','02311110001','02311110002','02311110003','02311110010','02311110011','02311110012','02311110013','02311110020','02311110021','02311110022','02311110023','02311110030','02311110031','02311110032','02311110033','02311110100','02311110102','02311110110','02311110111','02311110112','02311110113','02311110120','02311110122','02311111000','02311111001','02311111002','02311111003','02311111010','02311111012','02311111020','02311111021','02311111113','02311111303','02311111312','02311111313','02311111320','02311111321','02311111322','02311111323','02311111330','02311111331','02311111332','02311111333','02311112002','02311112003','02311112012','02311112020','02311112021','02311112022','02311112023','02311112030','02311112031','02311112032','02311112033','02311112122','02311112123','02311112132','02311112133','02311112200','02311112201','02311112203','02311112210','02311112211','02311112212','02311112213','02311112221','02311112223','02311112230','02311112231','02311112232','02311112233','02311112300','02311112301','02311112302','02311112303','02311112310','02311112311','02311112312','02311112313','02311112320','02311112321','02311112330','02311112331','02311113011','02311113013','02311113100','02311113101','02311113102','02311113103','02311113110','02311113111','02311113112','02311113113','02311113120','02311113121','02311113122','02311113123','02311113130','02311113131','02311113132','02311113133','02311113200','02311113202','02311113220','02311113232','02311113233','02311113321','02311113322','02311113323','02311113330','02311113331','02311113332','02311113333','02311120010','02311120011','02311120012','02311120013','02311120100','02311120101','02311120102','02311120103','02311120110','02311120111','02311120112','02311120113','02311120121','02311120130','02311120131','02311121000','02311121002','02311121011','02311121013','02311121020','02311121031','02311121100','02311121101','02311121102','02311121103','02311121110','02311121111','02311121112','02311121113','02311121120','02311121121','02311121130','02311122020','02311122022','02311122121','02311122123','02311122130','02311122131','02311122132','02311122133','02311122200','02311122202','02311122211','02311122213','02311122231','02311122233','02311122300','02311122301','02311122302','02311122303','02311122310','02311122311','02311122312','02311122313','02311122320','02311122321','02311122322','02311122323','02311123013','02311123020','02311123021','02311123022','02311123023','02311123031','02311123033','02311123102','02311123103','02311123112','02311123120','02311123121','02311123122','02311123123','02311123130','02311123132','02311123200','02311123201','02311123202','02311123203','02311123211','02311123213','02311123300','02311123301','02311123302','02311123303','02311123310','02311123311','02311123312','02311123313','02311123320','02311123321','02311123322','02311123323','02311123330','02311123331','02311123332','02311123333','02311130010','02311130011','02311130020','02311130021','02311130022','02311130023','02311130030','02311130032','02311130033','02311130200','02311130201','02311130202','02311130203','02311130210','02311130211','02311130212','02311130213','02311130221','02311130222','02311130223','02311130230','02311130231','02311131002','02311131003','02311131010','02311131011','02311131012','02311131013','02311131021','02311131023','02311131030','02311131031','02311131032','02311131033','02311131100','02311131101','02311131102','02311131103','02311131110','02311131111','02311131112','02311131113','02311131120','02311131121','02311131122','02311131123','02311131130','02311131131','02311131132','02311131133','02311131201','02311131203','02311131210','02311131211','02311131212','02311131213','02311131221','02311131223','02311131230','02311131231','02311131232','02311131233','02311131300','02311131301','02311131302','02311131303','02311131310','02311131311','02311131312','02311131313','02311131320','02311131321','02311131322','02311131323','02311131330','02311131331','02311131332','02311131333','02311132000','02311132001','02311132002','02311132003','02311132011','02311132012','02311132013','02311132020','02311132021','02311132022','02311132023','02311132030','02311132031','02311132032','02311132033','02311132100','02311132101','02311132102','02311132103','02311132110','02311132112','02311132120','02311132121','02311132122','02311132123','02311132130','02311132132','02311132200','02311132201','02311132210','02311132211','02311132212','02311132213','02311132220','02311132222','02311132300','02311132301','02311132302','02311132303','02311132310','02311132312','02311133000','02311133001','02311133002','02311133003','02311133010','02311133011','02311133012','02311133013','02311133020','02311133021','02311133023','02311133030','02311133031','02311133032','02311133033','02311133100','02311133101','02311133102','02311133103','02311133110','02311133111','02311133112','02311133113','02311133120','02311133121','02311133122','02311133123','02311133130','02311133131','02311133132','02311133133','02311133200','02311133201','02311133202','02311133203','02311133210','02311133211','02311133212','02311133213','02311133220','02311133221','02311133223','02311133230','02311133231','02311133232','02311133233','02311133300','02311133301','02311133302','02311133303','02311133310','02311133311','02311133312','02311133313','02311133320','02311133321','02311133322','02311133323','02311133330','02311133331','02311133332','02311133333','02311203123','02311203132','02311203133','02311203301','02311203303','02311203310','02311203311','02311203312','02311203313','02311203321','02311203330','02311203331','02311203332','02311203333','02311210001','02311210003','02311210010','02311210011','02311210012','02311210013','02311210021','02311210023','02311210030','02311210031','02311210032','02311210033','02311210100','02311210101','02311210102','02311210103','02311210120','02311210121','02311210122','02311210123','02311210130','02311210131','02311210132','02311210133','02311210231','02311210232','02311210233','02311210301','02311210302','02311210303','02311210310','02311210311','02311210312','02311210313','02311210320','02311210321','02311210322','02311210323','02311210330','02311210331','02311210332','02311210333','02311211020','02311211021','02311211022','02311211023','02311211030','02311211031','02311211032','02311211033','02311211101','02311211103','02311211110','02311211111','02311211112','02311211113','02311211120','02311211121','02311211122','02311211123','02311211130','02311211131','02311211132','02311211133','02311211200','02311211201','02311211202','02311211203','02311211210','02311211211','02311211212','02311211300','02311211301','02311211302','02311211303','02311211310','02311211311','02311211312','02311211313','02311211321','02311211323','02311211330','02311211331','02311211332','02311212001','02311212003','02311212010','02311212011','02311212012','02311212013','02311212021','02311212022','02311212023','02311212030','02311212031','02311212032','02311212033','02311212100','02311212101','02311212102','02311212103','02311212110','02311212111','02311212112','02311212113','02311212120','02311212121','02311212122','02311212123','02311212130','02311212131','02311212132','02311212133','02311212200','02311212201','02311212202','02311212203','02311212210','02311212211','02311212212','02311212213','02311212220','02311212221','02311212222','02311212223','02311212230','02311212231','02311212232','02311212233','02311212300','02311212301','02311212302','02311212303','02311212310','02311212311','02311212312','02311212313','02311212320','02311212321','02311212322','02311212323','02311212330','02311212331','02311212332','02311212333','02311213020','02311213022','02311213023','02311213032','02311213033','02311213103','02311213112','02311213113','02311213121','02311213123','02311213130','02311213131','02311213132','02311213133','02311213200','02311213201','02311213202','02311213203','02311213210','02311213211','02311213212','02311213213','02311213220','02311213221','02311213222','02311213223','02311213230','02311213231','02311213232','02311213233','02311213300','02311213301','02311213302','02311213303','02311213310','02311213311','02311213312','02311213313','02311213320','02311213321','02311213322','02311213323','02311213330','02311213331','02311220313','02311220331','02311221010','02311221011','02311221012','02311221013','02311221100','02311221101','02311221102','02311221103','02311221110','02311221111','02311221112','02311221113','02311221120','02311221121','02311221122','02311221123','02311221130','02311221131','02311221132','02311221133','02311221202','02311221220','02311221222','02311222002','02311222003','02311222012','02311222013','02311222020','02311222021','02311222022','02311222023','02311222030','02311222031','02311222032','02311222033','02311222102','02311222112','02311222120','02311222121','02311222122','02311222123','02311222131','02311222132','02311222133','02311222200','02311222201','02311222210','02311222211','02311222220','02311222221','02311222222','02311222223','02311222230','02311222231','02311222232','02311222233','02311222300','02311222301','02311222303','02311222310','02311222311','02311222312','02311222313','02311222320','02311222321','02311222322','02311222323','02311222330','02311222331','02311222332','02311222333','02311223000','02311223002','02311223013','02311223022','02311223023','02311223030','02311223031','02311223032','02311223033','02311223100','02311223101','02311223102','02311223103','02311223110','02311223111','02311223112','02311223113','02311223120','02311223121','02311223122','02311223123','02311223130','02311223131','02311223132','02311223133','02311223200','02311223201','02311223202','02311223203','02311223211','02311223220','02311223221','02311223222','02311223223','02311223233','02311223300','02311223301','02311223303','02311223310','02311223311','02311223312','02311223313','02311223322','02311223323','02311223330','02311223331','02311223332','02311223333','02311230001','02311230002','02311230003','02311230010','02311230011','02311230012','02311230013','02311230020','02311230021','02311230022','02311230030','02311230031','02311230032','02311230033','02311230100','02311230101','02311230102','02311230103','02311230110','02311230111','02311230112','02311230113','02311230120','02311230121','02311230122','02311230123','02311230130','02311230131','02311230132','02311230133','02311230212','02311230213','02311230230','02311230231','02311230232','02311230233','02311230301','02311230302','02311230303','02311230310','02311230311','02311230312','02311230313','02311230320','02311230321','02311230322','02311230323','02311230330','02311230331','02311230332','02311230333','02311231000','02311231001','02311231002','02311231003','02311231010','02311231011','02311231012','02311231013','02311231020','02311231021','02311231022','02311231023','02311231030','02311231031','02311231032','02311231033','02311231100','02311231101','02311231102','02311231103','02311231110','02311231112','02311231120','02311231121','02311231122','02311231123','02311231130','02311231131','02311231132','02311231133','02311231200','02311231201','02311231202','02311231203','02311231210','02311231211','02311231212','02311231213','02311231220','02311231221','02311231222','02311231223','02311231230','02311231231','02311231232','02311231233','02311231300','02311231301','02311231302','02311231303','02311231310','02311231311','02311231312','02311231313','02311231320','02311231321','02311231322','02311231323','02311231330','02311231331','02311231332','02311231333','02311232000','02311232001','02311232002','02311232003','02311232010','02311232011','02311232012','02311232013','02311232020','02311232021','02311232022','02311232023','02311232030','02311232031','02311232032','02311232033','02311232100','02311232101','02311232102','02311232103','02311232110','02311232111','02311232112','02311232113','02311232120','02311232121','02311232122','02311232123','02311232130','02311232131','02311232132','02311232133','02311232200','02311232201','02311232202','02311232203','02311232210','02311232211','02311232212','02311232213','02311232220','02311232221','02311232222','02311232223','02311232230','02311232231','02311232232','02311232233','02311232300','02311232301','02311232302','02311232303','02311232310','02311232311','02311232312','02311232313','02311232320','02311232321','02311232322','02311232323','02311232330','02311232331','02311232332','02311232333','02311233000','02311233001','02311233002','02311233003','02311233010','02311233011','02311233012','02311233013','02311233020','02311233021','02311233022','02311233023','02311233030','02311233031','02311233032','02311233033','02311233100','02311233101','02311233102','02311233103','02311233110','02311233111','02311233112','02311233113','02311233120','02311233121','02311233122','02311233123','02311233130','02311233131','02311233132','02311233133','02311233200','02311233201','02311233202','02311233203','02311233210','02311233211','02311233212','02311233213','02311233220','02311233221','02311233222','02311233223','02311233230','02311233231','02311233300','02311233301','02311233302','02311233303','02311233310','02311233311','02311233312','02311233313','02311233331','02311300000','02311300001','02311300002','02311300003','02311300010','02311300011','02311300012','02311300013','02311300020','02311300021','02311300022','02311300023','02311300030','02311300031','02311300032','02311300033','02311300100','02311300101','02311300102','02311300103','02311300110','02311300111','02311300112','02311300113','02311300120','02311300121','02311300122','02311300123','02311300130','02311300131','02311300132','02311300133','02311300200','02311300201','02311300202','02311300203','02311300210','02311300211','02311300212','02311300213','02311300220','02311300221','02311300223','02311300230','02311300231','02311300232','02311300233','02311300300','02311300301','02311300302','02311300303','02311300310','02311300311','02311300312','02311300313','02311300320','02311300321','02311300322','02311300330','02311300331','02311300332','02311300333','02311301000','02311301001','02311301002','02311301003','02311301010','02311301011','02311301012','02311301013','02311301020','02311301021','02311301022','02311301023','02311301030','02311301031','02311301032','02311301033','02311301100','02311301101','02311301102','02311301103','02311301110','02311301111','02311301112','02311301113','02311301120','02311301121','02311301122','02311301123','02311301130','02311301131','02311301132','02311301133','02311301200','02311301201','02311301202','02311301203','02311301212','02311301220','02311301221','02311301222','02311301223','02311301230','02311301232','02311301233','02311301311','02311301322','02311302000','02311302001','02311302002','02311302003','02311302010','02311302011','02311302013','02311302020','02311302021','02311302022','02311302023','02311302031','02311302033','02311302100','02311302101','02311302102','02311302103','02311302110','02311302111','02311302112','02311302113','02311302120','02311302121','02311302122','02311302123','02311302130','02311302131','02311302132','02311302133','02311302200','02311302202','02311302211','02311302213','02311302220','02311302231','02311302300','02311302301','02311302302','02311302303','02311302310','02311302311','02311302312','02311302320','02311302321','02311302330','02311303000','02311303001','02311303002','02311303003','02311303010','02311303011','02311303012','02311303013','02311303020','02311303021','02311303022','02311303023','02311303030','02311303031','02311303032','02311303033','02311303100','02311303101','02311303102','02311303103','02311303120','02311303121','02311303133','02311303311','02311310000','02311310001','02311310002','02311310003','02311310010','02311310011','02311310012','02311310013','02311310020','02311310021','02311310022','02311310023','02311310030','02311310031','02311310032','02311310033','02311310200','02311310201','02311310210','02311310211','02311310302','02311310320','02311311001','02311311003','02311311010','02311311011','02311311012','02311311100','02311311101','02311311110','02311311111','02311311232','02311311233','02311311322','02311311323','02311311333','02311312022','02311312023','02311312030','02311312031','02311312032','02311312033','02311312120','02311312122','02311312200','02311312201','02311312202','02311312203','02311312210','02311312211','02311312212','02311312213','02311312221','02311312230','02311312231','02311312232','02311312233','02311312300','02311312302','02311312320','02311312322','02311313001','02311313003','02311313010','02311313011','02311313012','02311313013','02311313021','02311313030','02311313031','02311313100','02311313101','02311313102','02311313103','02311313110','02311313111','02311313112','02311313113','02311313120','02311313121','02311313123','02311313130','02311313131','02311313132','02311313133','02311313233','02311313301','02311313303','02311313310','02311313311','02311313312','02311313313','02311313320','02311313321','02311313322','02311313323','02311313330','02311313331','02311313332','02311313333','02311320020','02311320021','02311320022','02311320023','02311320030','02311320031','02311320032','02311320033','02311320120','02311320122','02311320123','02311320130','02311320131','02311320132','02311320133','02311320200','02311320201','02311320202','02311320203','02311320210','02311320211','02311320212','02311320213','02311320220','02311320221','02311320222','02311320223','02311320230','02311320231','02311320232','02311320233','02311320300','02311320301','02311320302','02311320303','02311320310','02311320311','02311320312','02311320313','02311320320','02311320321','02311320322','02311320323','02311320330','02311320331','02311320332','02311320333','02311321012','02311321013','02311321021','02311321022','02311321023','02311321030','02311321031','02311321032','02311321033','02311321120','02311321122','02311321200','02311321201','02311321202','02311321203','02311321210','02311321211','02311321212','02311321213','02311321220','02311321221','02311321222','02311321223','02311321230','02311321231','02311321232','02311321233','02311321300','02311321302','02311321320','02311321330','02311321331','02311321332','02311321333','02311322000','02311322001','02311322002','02311322003','02311322010','02311322011','02311322012','02311322013','02311322020','02311322022','02311322023','02311322030','02311322031','02311322032','02311322033','02311322100','02311322101','02311322102','02311322103','02311322110','02311322111','02311322112','02311322113','02311322120','02311322121','02311322122','02311322123','02311322130','02311322131','02311322132','02311322133','02311322200','02311322201','02311322202','02311322203','02311322210','02311322211','02311322212','02311322213','02311322220','02311322221','02311322222','02311322223','02311322230','02311322231','02311322232','02311322233','02311322300','02311322301','02311322302','02311322303','02311322310','02311322311','02311322312','02311322313','02311322320','02311322321','02311322322','02311322323','02311322330','02311322331','02311322332','02311322333','02311323000','02311323001','02311323002','02311323003','02311323010','02311323011','02311323012','02311323013','02311323020','02311323021','02311323022','02311323023','02311323030','02311323031','02311323032','02311323033','02311323100','02311323102','02311323110','02311323111','02311323112','02311323113','02311323120','02311323122','02311323131','02311323133','02311323200','02311323201','02311323202','02311323203','02311323210','02311323211','02311323212','02311323213','02311323220','02311323221','02311323222','02311323223','02311323230','02311323231','02311323300','02311323302','02311323311','02311323313','02311323320','02311323321','02311323322','02311323323','02311323330','02311323331','02311323332','02311323333','02311330032','02311330033','02311330122','02311330123','02311330202','02311330210','02311330211','02311330212','02311330213','02311330220','02311330221','02311330222','02311330223','02311330230','02311330231','02311330232','02311330233','02311330300','02311330301','02311330302','02311330303','02311330312','02311330313','02311330320','02311330321','02311330322','02311330323','02311330330','02311330331','02311330332','02311330333','02311331011','02311331013','02311331031','02311331033','02311331100','02311331101','02311331102','02311331103','02311331110','02311331111','02311331112','02311331113','02311331120','02311331121','02311331122','02311331123','02311331130','02311331131','02311331132','02311331133','02311331201','02311331203','02311331210','02311331211','02311331212','02311331213','02311331221','02311331230','02311331231','02311331232','02311331233','02311331300','02311331301','02311331302','02311331303','02311331310','02311331311','02311331312','02311331313','02311331320','02311331321','02311331322','02311331323','02311331330','02311331331','02311331332','02311331333','02311332000','02311332001','02311332002','02311332003','02311332010','02311332011','02311332012','02311332013','02311332020','02311332021','02311332022','02311332023','02311332030','02311332031','02311332032','02311332033','02311332100','02311332101','02311332102','02311332103','02311332110','02311332111','02311332112','02311332113','02311332120','02311332121','02311332122','02311332123','02311332130','02311332131','02311332132','02311332133','02311332200','02311332201','02311332202','02311332203','02311332210','02311332211','02311332212','02311332213','02311332220','02311332221','02311332222','02311332223','02311332230','02311332231','02311332232','02311332233','02311332300','02311332301','02311332302','02311332303','02311332310','02311332311','02311332312','02311332313','02311332320','02311332321','02311332322','02311332323','02311332330','02311332331','02311332332','02311332333','02311333000','02311333001','02311333002','02311333003','02311333010','02311333011','02311333012','02311333013','02311333020','02311333021','02311333022','02311333023','02311333030','02311333031','02311333032','02311333033','02311333100','02311333101','02311333102','02311333103','02311333110','02311333111','02311333112','02311333113','02311333120','02311333121','02311333122','02311333123','02311333130','02311333131','02311333132','02311333133','02311333200','02311333201','02311333202','02311333203','02311333210','02311333211','02311333212','02311333213','02311333220','02311333221','02311333222','02311333223','02311333230','02311333231','02311333232','02311333233','02311333300','02311333301','02311333302','02311333303','02311333310','02311333311','02311333312','02311333313','02311333320','02311333321','02311333322','02311333323','02311333330','02311333331','02311333332','02311333333','02312000110','02312000111','02312000113','02312000130','02312000131','02312001000','02312001001','02312001002','02312001003','02312001010','02312001012','02312100000','02312100001','02312100002','02312100003','02312100010','02312100011','02312100012','02312100013','02312100030','02312100031','02312100033','02312100100','02312100101','02312100102','02312100103','02312100110','02312100111','02312100112','02312100113','02312100120','02312100121','02312100122','02312100123','02312100130','02312100131','02312100132','02312100133','02312100300','02312100301','02312100303','02312100310','02312100311','02312100312','02312100313','02312100330','02312100331','02312100333','02312101000','02312101002','02312101003','02312101010','02312101011','02312101012','02312101013','02312101020','02312101021','02312101022','02312101023','02312101030','02312101031','02312101032','02312101033','02312101200','02312101201','02312101202','02312101203','02312101210','02312101211','02312101212','02312101213','02312101220','02312101221','02312101222','02312101223','02312101230','02312101231','02312101232','02312101233','02312101312','02312101313','02312101322','02312101323','02312101330','02312101331','02312101332','02312101333','02312103000','02312103001','02312103010','02312103011','02312103012','02312103013','02312103031','02312103033','02312103100','02312103101','02312103102','02312103103','02312103110','02312103111','02312103112','02312103113','02312103120','02312103121','02312103122','02312103123','02312103130','02312103131','02312103132','02312103133','02312103300','02312103301','02312103302','02312103303','02312103310','02312103311','02312103312','02312103313','02312103320','02312103321','02312103323','02312103330','02312103331','02312103332','02312103333','02312110012','02312110013','02312110023','02312110030','02312110031','02312110032','02312110033','02312110101','02312110102','02312110103','02312110110','02312110111','02312110112','02312110113','02312110120','02312110121','02312110122','02312110123','02312110130','02312110131','02312110132','02312110133','02312110201','02312110202','02312110210','02312110211','02312110213','02312110220','02312110221','02312110222','02312110223','02312110230','02312110231','02312110232','02312110233','02312110300','02312110301','02312110302','02312110303','02312110310','02312110311','02312110312','02312110313','02312110320','02312110321','02312110322','02312110323','02312110330','02312110331','02312110332','02312110333','02312111000','02312111001','02312111002','02312111003','02312111010','02312111011','02312111012','02312111013','02312111020','02312111021','02312111022','02312111023','02312111030','02312111031','02312111100','02312111101','02312111102','02312111103','02312111110','02312111111','02312111112','02312111113','02312111120','02312111121','02312111122','02312111123','02312111130','02312111131','02312111132','02312111133','02312111200','02312111201','02312111202','02312111203','02312111211','02312111212','02312111213','02312111220','02312111221','02312111222','02312111223','02312111230','02312111231','02312111232','02312111233','02312111300','02312111301','02312111302','02312111303','02312111310','02312111311','02312111312','02312111313','02312111320','02312111321','02312111322','02312111323','02312111330','02312111331','02312111332','02312111333','02312112000','02312112001','02312112002','02312112003','02312112010','02312112011','02312112012','02312112013','02312112020','02312112021','02312112022','02312112023','02312112030','02312112031','02312112032','02312112033','02312112100','02312112101','02312112102','02312112103','02312112110','02312112111','02312112112','02312112113','02312112120','02312112121','02312112122','02312112123','02312112130','02312112131','02312112132','02312112133','02312112200','02312112201','02312112202','02312112203','02312112210','02312112211','02312112212','02312112213','02312112220','02312112221','02312112222','02312112223','02312112230','02312112231','02312112232','02312112233','02312112300','02312112301','02312112302','02312112303','02312112310','02312112311','02312112312','02312112313','02312112320','02312112321','02312112322','02312112323','02312112330','02312112331','02312112332','02312112333','02312113000','02312113001','02312113002','02312113003','02312113010','02312113011','02312113012','02312113013','02312113020','02312113021','02312113022','02312113023','02312113100','02312113101','02312113103','02312113110','02312113111','02312113112','02312113113','02312113120','02312113121','02312113122','02312113123','02312113130','02312113131','02312113132','02312113133','02312113200','02312113201','02312113202','02312113203','02312113212','02312113220','02312113221','02312113222','02312113230','02312121101','02312121110','02312121111','02312121113','02312130000','02312130001','02312130002','02312130003','02312130010','02312130011','02312130012','02312130013','02312130021','02312130030','02312130031','02312130033','02312130100','02312130101','02312130102','02312130110','02312130111','02312130112','02312130113','02312130120','02312130121','02312130122','02312130123','02312130130','02312130132','02312130301','02313000000','02313000001','02313000002','02313000003','02313000010','02313000011','02313000012','02313000013','02313000020','02313000021','02313000022','02313000023','02313000030','02313000031','02313000032','02313000033','02313000100','02313000101','02313000102','02313000103','02313000113','02313000120','02313000121','02313000122','02313000123','02313000130','02313000131','02313000132','02313000133','02313000200','02313000201','02313000202','02313000203','02313000210','02313000211','02313000212','02313000213','02313000220','02313000221','02313000222','02313000223','02313000230','02313000231','02313000232','02313000233','02313000300','02313000301','02313000302','02313000303','02313000310','02313000311','02313000312','02313000313','02313000320','02313000321','02313000322','02313000323','02313000330','02313000331','02313000332','02313000333','02313001010','02313001011','02313001012','02313001013','02313001020','02313001021','02313001022','02313001023','02313001030','02313001031','02313001032','02313001033','02313001100','02313001101','02313001102','02313001103','02313001110','02313001111','02313001112','02313001113','02313001120','02313001121','02313001122','02313001123','02313001130','02313001200','02313001201','02313001202','02313001203','02313001210','02313001211','02313001212','02313001213','02313001220','02313001221','02313001222','02313001223','02313001230','02313001231','02313001232','02313001233','02313001300','02313001302','02313001313','02313001320','02313001321','02313001322','02313001323','02313001331','02313001333','02313002000','02313002001','02313002002','02313002003','02313002010','02313002011','02313002012','02313002013','02313002020','02313002021','02313002022','02313002023','02313002030','02313002031','02313002032','02313002033','02313002100','02313002101','02313002102','02313002103','02313002110','02313002111','02313002112','02313002113','02313002120','02313002121','02313002122','02313002123','02313002130','02313002131','02313002132','02313002133','02313002210','02313002211','02313002212','02313002213','02313002230','02313002231','02313002232','02313002233','02313002300','02313002301','02313002302','02313002303','02313002310','02313002311','02313002312','02313002313','02313002320','02313002321','02313002322','02313002323','02313002330','02313002331','02313002332','02313002333','02313003000','02313003001','02313003002','02313003003','02313003010','02313003011','02313003012','02313003013','02313003020','02313003021','02313003022','02313003023','02313003030','02313003031','02313003032','02313003033','02313003100','02313003101','02313003102','02313003103','02313003111','02313003112','02313003113','02313003120','02313003121','02313003122','02313003123','02313003130','02313003131','02313003132','02313003133','02313003200','02313003201','02313003202','02313003203','02313003210','02313003211','02313003212','02313003213','02313003220','02313003221','02313003222','02313003223','02313003230','02313003231','02313003232','02313003300','02313003301','02313003302','02313003303','02313003310','02313003311','02313003312','02313003313','02313003320','02313003321','02313003322','02313003323','02313003330','02313003331','02313003332','02313003333','02313010000','02313010001','02313010010','02313010013','02313010021','02313010023','02313010030','02313010031','02313010033','02313010101','02313010102','02313010103','02313010110','02313010111','02313010112','02313010113','02313010120','02313010121','02313010122','02313010123','02313010130','02313010131','02313010132','02313010133','02313010201','02313010202','02313010203','02313010212','02313010213','02313010220','02313010221','02313010222','02313010223','02313010230','02313010231','02313010232','02313010233','02313010301','02313010302','02313010303','02313010310','02313010311','02313010312','02313010313','02313010320','02313010321','02313010322','02313010323','02313010330','02313010331','02313010332','02313010333','02313011000','02313011001','02313011002','02313011003','02313011020','02313011021','02313011022','02313011023','02313011032','02313011200','02313011201','02313011202','02313011203','02313011210','02313011212','02313011220','02313011221','02313011222','02313011223','02313011230','02313011232','02313011333','02313012000','02313012001','02313012002','02313012003','02313012010','02313012011','02313012012','02313012013','02313012020','02313012021','02313012022','02313012023','02313012030','02313012031','02313012032','02313012033','02313012100','02313012101','02313012102','02313012103','02313012110','02313012111','02313012112','02313012113','02313012120','02313012121','02313012122','02313012123','02313012130','02313012131','02313012132','02313012133','02313012200','02313012201','02313012202','02313012203','02313012210','02313012211','02313012212','02313012213','02313012220','02313012221','02313012222','02313012223','02313012230','02313012231','02313012232','02313012233','02313012300','02313012301','02313012302','02313012310','02313012311','02313012312','02313012313','02313012320','02313012321','02313012322','02313012323','02313012330','02313012331','02313012332','02313012333','02313013000','02313013001','02313013002','02313013003','02313013010','02313013020','02313013021','02313013022','02313013023','02313013030','02313013031','02313013032','02313013033','02313013103','02313013110','02313013111','02313013112','02313013113','02313013120','02313013121','02313013122','02313013123','02313013130','02313013131','02313013132','02313013133','02313013200','02313013201','02313013202','02313013203','02313013210','02313013211','02313013212','02313013213','02313013220','02313013221','02313013222','02313013223','02313013230','02313013231','02313013232','02313013233','02313013300','02313013301','02313013302','02313013303','02313013310','02313013311','02313013312','02313013313','02313013320','02313013321','02313013322','02313013323','02313013330','02313013331','02313013332','02313013333','02313020001','02313020003','02313020010','02313020012','02313020033','02313020102','02313020103','02313020113','02313020120','02313020121','02313020122','02313020130','02313020131','02313020132','02313020133','02313020211','02313020213','02313020300','02313020302','02313020303','02313020310','02313020311','02313020312','02313020313','02313020320','02313020321','02313020330','02313020331','02313020332','02313020333','02313021002','02313021003','02313021020','02313021021','02313021022','02313021023','02313021030','02313021032','02313021100','02313021101','02313021102','02313021103','02313021110','02313021111','02313021112','02313021113','02313021120','02313021121','02313021123','02313021130','02313021131','02313021132','02313021133','02313021200','02313021201','02313021202','02313021203','02313021210','02313021212','02313021213','02313021220','02313021221','02313021222','02313021223','02313021230','02313021231','02313021232','02313021233','02313021301','02313021302','02313021303','02313021310','02313021311','02313021312','02313021313','02313021320','02313021321','02313021322','02313021323','02313021330','02313021332','02313022101','02313022103','02313022110','02313022111','02313022112','02313022113','02313022130','02313022131','02313022133','02313023000','02313023001','02313023002','02313023003','02313023010','02313023011','02313023012','02313023013','02313023020','02313023021','02313023022','02313023023','02313023030','02313023031','02313023032','02313023033','02313023100','02313023101','02313023102','02313023103','02313023110','02313023112','02313023120','02313023121','02313023122','02313023123','02313023130','02313023132','02313023200','02313023201','02313023203','02313023210','02313023211','02313023212','02313023213','02313023221','02313023230','02313023231','02313023232','02313023233','02313023300','02313023301','02313023302','02313023303','02313023310','02313023312','02313023313','02313023320','02313023321','02313023322','02313023323','02313023330','02313023331','02313023332','02313023333','02313030000','02313030001','02313030002','02313030003','02313030010','02313030011','02313030012','02313030013','02313030020','02313030021','02313030022','02313030023','02313030031','02313030033','02313030100','02313030101','02313030102','02313030103','02313030110','02313030111','02313030112','02313030113','02313030120','02313030121','02313030122','02313030123','02313030130','02313030131','02313030132','02313030133','02313030200','02313030201','02313030202','02313030203','02313030210','02313030211','02313030212','02313030213','02313030220','02313030221','02313030231','02313030300','02313030301','02313030302','02313030303','02313030310','02313030311','02313030312','02313030313','02313030320','02313030321','02313030322','02313030323','02313030330','02313030331','02313030332','02313030333','02313031000','02313031001','02313031002','02313031003','02313031010','02313031011','02313031012','02313031013','02313031020','02313031021','02313031022','02313031023','02313031030','02313031031','02313031032','02313031033','02313031100','02313031101','02313031102','02313031103','02313031110','02313031111','02313031112','02313031113','02313031120','02313031121','02313031122','02313031123','02313031130','02313031131','02313031132','02313031133','02313031200','02313031201','02313031202','02313031203','02313031210','02313031211','02313031212','02313031213','02313031220','02313031221','02313031222','02313031223','02313031230','02313031231','02313031232','02313031233','02313031300','02313031301','02313031302','02313031303','02313031310','02313031311','02313031312','02313031313','02313031320','02313031321','02313031322','02313031330','02313032013','02313032030','02313032031','02313032032','02313032033','02313032102','02313032111','02313032112','02313032113','02313032120','02313032121','02313032122','02313032123','02313032130','02313032131','02313032132','02313032133','02313032210','02313032211','02313032213','02313032222','02313032300','02313032301','02313032302','02313032303','02313032310','02313032311','02313032312','02313032313','02313033000','02313033001','02313033002','02313033003','02313033010','02313033011','02313033020','02313033021','02313033022','02313100011','02313100013','02313100031','02313100033','02313100100','02313100101','02313100102','02313100103','02313100110','02313100111','02313100112','02313100113','02313100120','02313100122','02313100123','02313100130','02313100131','02313100132','02313100211','02313100213','02313100221','02313100222','02313100223','02313100230','02313100231','02313100232','02313100233','02313100300','02313100301','02313100302','02313100303','02313100310','02313100311','02313100312','02313100313','02313100320','02313100321','02313100322','02313100323','02313100330','02313100331','02313100332','02313100333','02313101000','02313101001','02313101002','02313101003','02313101010','02313101011','02313101012','02313101013','02313101020','02313101021','02313101030','02313101031','02313101032','02313101033','02313101100','02313101101','02313101102','02313101103','02313101110','02313101111','02313101112','02313101113','02313101120','02313101121','02313101122','02313101123','02313101130','02313101131','02313101132','02313101133','02313101201','02313101202','02313101203','02313101210','02313101211','02313101212','02313101213','02313101220','02313101221','02313101222','02313101223','02313101230','02313101231','02313101232','02313101233','02313101300','02313101301','02313101302','02313101310','02313101311','02313101313','02313101320','02313101330','02313101331','02313101332','02313101333','02313102000','02313102001','02313102002','02313102003','02313102010','02313102011','02313102012','02313102013','02313102020','02313102021','02313102022','02313102023','02313102030','02313102031','02313102032','02313102033','02313102100','02313102101','02313102102','02313102103','02313102110','02313102112','02313102113','02313102120','02313102121','02313102122','02313102123','02313102130','02313102131','02313102132','02313102133','02313102200','02313102201','02313102202','02313102203','02313102210','02313102211','02313102212','02313102213','02313102220','02313102221','02313102222','02313102223','02313102230','02313102231','02313102232','02313102233','02313102300','02313102301','02313102302','02313102303','02313102310','02313102311','02313102312','02313102313','02313102320','02313102321','02313102322','02313102323','02313102330','02313102331','02313102332','02313102333','02313103000','02313103001','02313103002','02313103003','02313103010','02313103011','02313103012','02313103013','02313103020','02313103021','02313103022','02313103023','02313103030','02313103031','02313103032','02313103033','02313103102','02313103103','02313103110','02313103111','02313103112','02313103120','02313103121','02313103122','02313103123','02313103130','02313103131','02313103132','02313103133','02313103200','02313103201','02313103202','02313103203','02313103210','02313103211','02313103212','02313103213','02313103220','02313103221','02313103223','02313103230','02313103232','02313103300','02313103301','02313103302','02313103303','02313103310','02313103311','02313103312','02313103313','02313103320','02313103321','02313103330','02313110000','02313110001','02313110002','02313110003','02313110010','02313110011','02313110012','02313110013','02313110020','02313110022','02313110023','02313110030','02313110031','02313110032','02313110033','02313110100','02313110101','02313110102','02313110103','02313110110','02313110111','02313110112','02313110113','02313110120','02313110121','02313110122','02313110123','02313110130','02313110131','02313110132','02313110133','02313110200','02313110201','02313110202','02313110203','02313110210','02313110211','02313110212','02313110213','02313110220','02313110221','02313110222','02313110223','02313110230','02313110231','02313110232','02313110233','02313110300','02313110301','02313110302','02313110303','02313110310','02313110311','02313110312','02313110313','02313110320','02313110321','02313110322','02313110323','02313110330','02313110331','02313110332','02313110333','02313111000','02313111001','02313111002','02313111003','02313111010','02313111011','02313111012','02313111020','02313111021','02313111022','02313111023','02313111030','02313111031','02313111032','02313111033','02313111101','02313111102','02313111103','02313111110','02313111111','02313111112','02313111113','02313111120','02313111121','02313111122','02313111123','02313111130','02313111131','02313111132','02313111133','02313111200','02313111201','02313111202','02313111203','02313111210','02313111211','02313111212','02313111213','02313111220','02313111221','02313111222','02313111223','02313111230','02313111231','02313111232','02313111233','02313111300','02313111301','02313111302','02313111303','02313111310','02313111311','02313111312','02313111313','02313111320','02313111321','02313111330','02313111331','02313111332','02313111333','02313112000','02313112001','02313112002','02313112003','02313112010','02313112011','02313112012','02313112031','02313112032','02313112033','02313112101','02313112103','02313112110','02313112111','02313112112','02313112113','02313112120','02313112121','02313112122','02313112123','02313112130','02313112131','02313112133','02313112210','02313112211','02313112300','02313112301','02313112302','02313112303','02313112310','02313112311','02313112312','02313113000','02313113001','02313113002','02313113003','02313113010','02313113011','02313113012','02313113013','02313113020','02313113021','02313113022','02313113023','02313113030','02313113031','02313113032','02313113033','02313113100','02313113101','02313113102','02313113103','02313113110','02313113111','02313113112','02313113113','02313113120','02313113121','02313113122','02313113123','02313113130','02313113131','02313113132','02313113133','02313113200','02313113201','02313113202','02313113203','02313113210','02313113211','02313113212','02313113213','02313113230','02313113231','02313113232','02313113233','02313113300','02313113301','02313113302','02313113303','02313113310','02313113311','02313113312','02313113313','02313113320','02313113321','02313113322','02313113323','02313113330','02313113331','02313113332','02313113333','02313120000','02313120001','02313120002','02313120003','02313120010','02313120011','02313120012','02313120013','02313120020','02313120021','02313120022','02313120023','02313120030','02313120031','02313120032','02313120033','02313120100','02313120101','02313120102','02313120103','02313120110','02313120111','02313120120','02313120200','02313120201','02313120202','02313120210','02313131100','02313131101','02313131103','02313131110','02313131111','02313131112','02313131113','02313131121','02313131130','02313131131','02313131132','02313131133','02313201010','02313201011','02313201012','02313201013','02313201031','02313201033','02313201100','02313201101','02313201102','02313201103','02313201110','02313201111','02313201112','02313201113','02313201120','02313201121','02313201122','02313201123','02313201130','02313201131','02313201132','02313201133','02313201300','02313201301','02313201310','02313201311','02313201312','02313201313','02313210000','02313210002','02313210020','02313210022','02313210023','02313210032','02313210123','02313210132','02313210200','02313210201','02313210202','02313210203','02313210210','02313210211','02313210212','02313210213','02313210220','02313210221','02313210230','02313210231','02313210300','02313210301','02313210302','02313210303','02313210310','02313210311','02313210312','02313210313','02313210320','02313210321','02313210322','02313210323','02313210330','02313210331','02313210332','02313210333','02313212101','02313212110','03022000220','03022000222','03022000223','03022000232','03022000233','03022002000','03022002001','03022002002','03022002003','03022002010','03022002011','03022020202','03022020220','03022020222','03022022000','03022022002','03022023330','03022023331','03022023332','03022023333','03022032201','03022032202','03022032203','03022032210','03022032212','03022032220','03022032221','03022032222','03022032223','03022032230','03022200000','03022200001','03022200002','03022200003','03022200010','03022200012','03022200021','03022200030','03022200132','03022200133','03022200210','03022200211','03022200310','03022200311','03022200312','03022200313','03022200330','03022200331','03022200332','03022200333','03022201022','03022201023','03022201032','03022201033','03022201102','03022201103','03022201110','03022201111','03022201112','03022201113','03022201120','03022201121','03022201122','03022201123','03022201130','03022201131','03022201132','03022201133','03022201200','03022201201','03022201202','03022201203','03022201210','03022201211','03022201212','03022201213','03022201220','03022201221','03022201222','03022201223','03022201230','03022201231','03022201232','03022201233','03022201300','03022201301','03022201302','03022201303','03022201310','03022201311','03022201312','03022201320','03022201321','03022201322','03022201330','03022202110','03022202111','03022202112','03022202113','03022202130','03022202131','03022202132','03022202133','03022202203','03022202212','03022202213','03022202220','03022202221','03022202222','03022202223','03022202230','03022202231','03022202232','03022202233','03022202302','03022202303','03022202310','03022202311','03022202320','03022202321','03022202322','03022202323','03022202330','03022202331','03022202332','03022202333','03022203000','03022203001','03022203002','03022203003','03022203010','03022203012','03022203013','03022203020','03022203021','03022203022','03022203023','03022203030','03022203031','03022203032','03022203033','03022203102','03022203103','03022203120','03022203121','03022203122','03022203123','03022203200','03022203201','03022203202','03022203203','03022203210','03022203211','03022203212','03022203213','03022203220','03022203221','03022203222','03022203223','03022203230','03022203231','03022203232','03022203233','03022203300','03022203301','03022203302','03022203320','03022203322','03022210000','03022210001','03022210002','03022210020','03022212211','03022212213','03022212300','03022212301','03022212302','03022212303','03022212310','03022212312','03022212313','03022212320','03022212321','03022212322','03022212323','03022212330','03022212331','03022212332','03022212333','03022213202','03022213203','03022213212','03022213220','03022213221','03022213222','03022213223','03022213230','03022213231','03022213232','03022213233','03022213311','03022213313','03022213331','03022213333','03022220000','03022220001','03022220002','03022220003','03022220010','03022220011','03022220012','03022220013','03022220020','03022220021','03022220030','03022220031','03022220033','03022220100','03022220101','03022220102','03022220103','03022220110','03022220111','03022220112','03022220113','03022220120','03022220121','03022220122','03022220123','03022220130','03022220131','03022220132','03022220133','03022220211','03022220213','03022220231','03022220233','03022220300','03022220301','03022220302','03022220303','03022220310','03022220311','03022220312','03022220313','03022220320','03022220321','03022220322','03022220323','03022220330','03022220331','03022220332','03022220333','03022221000','03022221001','03022221002','03022221003','03022221010','03022221011','03022221012','03022221013','03022221020','03022221021','03022221022','03022221023','03022221030','03022221031','03022221032','03022221033','03022221100','03022221102','03022221120','03022221121','03022221122','03022221200','03022221201','03022221202','03022221203','03022221210','03022221211','03022221212','03022221213','03022221220','03022221221','03022221222','03022221223','03022221230','03022221231','03022221232','03022221233','03022221300','03022221302','03022221320','03022221322','03022221323','03022222011','03022222100','03022222111','03022222113','03022222122','03022222123','03022222131','03022222132','03022222133','03022222300','03022222301','03022222302','03022222303','03022222310','03022222311','03022222312','03022222313','03022222321','03022222330','03022222331','03022222332','03022222333','03022223000','03022223001','03022223002','03022223003','03022223010','03022223011','03022223012','03022223013','03022223020','03022223021','03022223022','03022223023','03022223030','03022223031','03022223032','03022223033','03022223100','03022223101','03022223102','03022223103','03022223120','03022223121','03022223122','03022223123','03022223130','03022223131','03022223132','03022223133','03022223200','03022223201','03022223202','03022223203','03022223210','03022223211','03022223212','03022223213','03022223220','03022223221','03022223222','03022223223','03022223230','03022223231','03022223232','03022223233','03022223300','03022223301','03022223302','03022223303','03022223310','03022223311','03022223312','03022223313','03022223320','03022223321','03022223322','03022223323','03022223330','03022223331','03022223332','03022223333','03022230100','03022230101','03022230103','03022230110','03022230111','03022230112','03022230113','03022230121','03022230123','03022230130','03022230131','03022230132','03022230133','03022230233','03022230300','03022230301','03022230302','03022230303','03022230310','03022230311','03022230312','03022230313','03022230320','03022230321','03022230322','03022230323','03022230330','03022230331','03022230332','03022230333','03022231000','03022231001','03022231002','03022231003','03022231010','03022231011','03022231012','03022231013','03022231020','03022231021','03022231022','03022231023','03022231030','03022231031','03022231033','03022231113','03022231120','03022231121','03022231122','03022231123','03022231130','03022231131','03022231132','03022231133','03022231200','03022231201','03022231202','03022231203','03022231210','03022231211','03022231212','03022231213','03022231220','03022231221','03022231222','03022231223','03022231230','03022231231','03022231232','03022231233','03022231300','03022231301','03022231302','03022231303','03022231310','03022231311','03022231312','03022231313','03022231321','03022231322','03022231323','03022231330','03022231331','03022231332','03022231333','03022232002','03022232003','03022232010','03022232011','03022232012','03022232013','03022232020','03022232021','03022232022','03022232023','03022232030','03022232031','03022232032','03022232033','03022232100','03022232101','03022232102','03022232103','03022232110','03022232111','03022232112','03022232113','03022232120','03022232121','03022232122','03022232123','03022232130','03022232131','03022232132','03022232133','03022232200','03022232201','03022232202','03022232203','03022232210','03022232211','03022232212','03022232220','03022232221','03022232222','03022232223','03022232230','03022232300','03022232301','03022232310','03022232311','03022232312','03022232313','03022232330','03022232331','03022232332','03022232333','03022233000','03022233001','03022233002','03022233003','03022233010','03022233011','03022233012','03022233013','03022233020','03022233021','03022233022','03022233023','03022233030','03022233031','03022233100','03022233101','03022233102','03022233103','03022233111','03022233113','03022233120','03022233121','03022233123','03022233130','03022233131','03022233132','03022233133','03022233200','03022233201','03022233202','03022233212','03022233213','03022233220','03022233222','03022233223','03022233230','03022233231','03022233232','03022233233','03022233301','03022233302','03022233303','03022233310','03022233311','03022233320','03022233321','03022233322','03022233323','03022302001','03022302003','03022302010','03022302012','03022302021','03022302022','03022302023','03022302030','03022302032','03022302033','03022302200','03022302201','03022302202','03022302203','03022302210','03022302211','03022302212','03022302213','03022302220','03022302221','03022302222','03022302223','03022302230','03022302231','03022302232','03022302233','03022302302','03022302320','03022302321','03022302322','03022302323','03022302332','03022302333','03022303220','03022303221','03022303222','03022303223','03022303230','03022303232','03022303233','03022313011','03022313012','03022313013','03022313021','03022313023','03022313030','03022313031','03022313032','03022313033','03022313100','03022313102','03022313103','03022313112','03022313113','03022313120','03022313121','03022313122','03022313123','03022313130','03022313131','03022313201','03022313210','03022313211','03022313300','03022313312','03022313313','03022313321','03022313323','03022313330','03022313331','03022313332','03022313333','03022320002','03022320003','03022320010','03022320011','03022320012','03022320013','03022320020','03022320021','03022320022','03022320023','03022320030','03022320031','03022320032','03022320033','03022320100','03022320101','03022320102','03022320103','03022320111','03022320112','03022320113','03022320120','03022320121','03022320122','03022320123','03022320130','03022320131','03022320132','03022320133','03022320200','03022320201','03022320202','03022320203','03022320210','03022320211','03022320212','03022320213','03022320220','03022320221','03022320222','03022320223','03022320230','03022320231','03022320232','03022320233','03022320300','03022320301','03022320302','03022320303','03022320310','03022320311','03022320312','03022320313','03022320320','03022320321','03022320322','03022320323','03022320330','03022320331','03022320332','03022320333','03022321000','03022321001','03022321002','03022321003','03022321010','03022321011','03022321012','03022321013','03022321020','03022321021','03022321022','03022321023','03022321030','03022321031','03022321032','03022321200','03022321201','03022321202','03022321210','03022321220','03022322000','03022322001','03022322002','03022322003','03022322010','03022322011','03022322012','03022322013','03022322020','03022322021','03022322022','03022322030','03022322031','03022322032','03022322033','03022322103','03022322110','03022322120','03022322121','03022322122','03022322123','03022322130','03022322131','03022322132','03022322133','03022322200','03022322210','03022322211','03022322212','03022322213','03022322230','03022322231','03022322300','03022322301','03022322302','03022322303','03022322312','03022322313','03022322320','03022322321','03022322323','03022322330','03022322331','03022322332','03022322333','03022323021','03022323022','03022323023','03022323122','03022323123','03022323132','03022323133','03022323200','03022323201','03022323202','03022323203','03022323210','03022323211','03022323212','03022323213','03022323220','03022323221','03022323222','03022323223','03022323231','03022323232','03022323233','03022323300','03022323301','03022323302','03022323303','03022323310','03022323311','03022323312','03022323313','03022323320','03022323321','03022323322','03022323323','03022323330','03022323331','03022323332','03022323333','03022330323','03022330331','03022330332','03022330333','03022331101','03022331110','03022331111','03022331112','03022331113','03022331121','03022331123','03022331130','03022331131','03022331132','03022331133','03022331203','03022331211','03022331212','03022331213','03022331220','03022331221','03022331222','03022331223','03022331230','03022331231','03022331232','03022331233','03022331300','03022331301','03022331302','03022331303','03022331310','03022331311','03022331312','03022331313','03022331320','03022331321','03022331322','03022331323','03022331330','03022331332','03022332002','03022332003','03022332010','03022332011','03022332012','03022332013','03022332020','03022332021','03022332022','03022332023','03022332030','03022332031','03022332032','03022332033','03022332100','03022332101','03022332102','03022332103','03022332110','03022332111','03022332112','03022332113','03022332120','03022332121','03022332122','03022332123','03022332130','03022332132','03022332133','03022332200','03022332201','03022332202','03022332203','03022332210','03022332211','03022332212','03022332213','03022332220','03022332221','03022332222','03022332223','03022332230','03022332231','03022332232','03022332233','03022332300','03022332301','03022332302','03022332303','03022332310','03022332311','03022332312','03022332313','03022332320','03022332321','03022332322','03022332323','03022332330','03022332331','03022332332','03022332333','03022333000','03022333001','03022333002','03022333003','03022333010','03022333011','03022333012','03022333013','03022333022','03022333100','03022333101','03022333110','03022333200','03022333202','03022333220','03022333221','03022333222','03022333223','03022333230','03022333232','03023023313','03023023331','03023023333','03023032200','03023032201','03023032202','03023032203','03023032210','03023032211','03023032212','03023032213','03023032220','03023032221','03023032222','03023032223','03023032230','03023033033','03023033120','03023033121','03023033122','03023033123','03023033130','03023033132','03023033210','03023033211','03023033212','03023033213','03023033230','03023033231','03023033300','03023033301','03023033302','03023033303','03023033310','03023033312','03023033320','03023033321','03023033330','03023121001','03023121003','03023121010','03023121011','03023121012','03023121013','03023121021','03023121023','03023121030','03023121031','03023121032','03023121033','03023201313','03023201330','03023201331','03023201332','03023201333','03023202202','03023202203','03023202212','03023202213','03023202220','03023202221','03023202222','03023202223','03023202230','03023202231','03023202232','03023202233','03023202302','03023202303','03023202312','03023202313','03023202320','03023202321','03023202322','03023202323','03023202330','03023202331','03023202332','03023202333','03023203110','03023203111','03023203112','03023203113','03023203130','03023203131','03023203132','03023203133','03023203202','03023203203','03023203211','03023203212','03023203213','03023203220','03023203221','03023203222','03023203223','03023203230','03023203231','03023203232','03023203233','03023203300','03023203301','03023203302','03023203303','03023203310','03023203311','03023203312','03023203313','03023203320','03023203321','03023203322','03023203323','03023203330','03023203331','03023203332','03023203333','03023210023','03023210030','03023210031','03023210032','03023210033','03023210101','03023210103','03023210110','03023210111','03023210112','03023210113','03023210120','03023210121','03023210122','03023210123','03023210131','03023210132','03023210133','03023210201','03023210202','03023210210','03023210212','03023210213','03023210220','03023210221','03023210222','03023210223','03023210230','03023210231','03023210232','03023210233','03023210300','03023210311','03023210313','03023210322','03023210323','03023210331','03023210333','03023211000','03023211001','03023211002','03023211003','03023211010','03023211011','03023211012','03023211013','03023211020','03023211021','03023211022','03023211023','03023211030','03023211031','03023211032','03023211033','03023211100','03023211101','03023211102','03023211103','03023211110','03023211111','03023211112','03023211113','03023211120','03023211121','03023211122','03023211123','03023211130','03023211131','03023211132','03023211133','03023211200','03023211201','03023211202','03023211203','03023211210','03023211211','03023211212','03023211213','03023211220','03023211221','03023211222','03023211223','03023211230','03023211231','03023211232','03023211233','03023211300','03023211301','03023211302','03023211303','03023211310','03023211311','03023211312','03023211313','03023211320','03023211321','03023211322','03023211323','03023211330','03023211331','03023211332','03023212000','03023212001','03023212002','03023212003','03023212010','03023212011','03023212012','03023212013','03023212020','03023212021','03023212022','03023212023','03023212030','03023212031','03023212032','03023212033','03023212100','03023212102','03023212111','03023212120','03023212122','03023212200','03023212201','03023212202','03023212203','03023212210','03023212211','03023212212','03023212213','03023212220','03023212221','03023212222','03023212223','03023212230','03023212231','03023212232','03023212233','03023212300','03023212302','03023212303','03023212312','03023212313','03023212320','03023212322','03023212330','03023212331','03023212332','03023212333','03023213000','03023213001','03023213002','03023213003','03023213010','03023213011','03023213012','03023213013','03023213021','03023213030','03023213031','03023213100','03023213101','03023213102','03023213103','03023213110','03023213112','03023213120','03023213121','03023213123','03023213130','03023213132','03023213133','03023213203','03023213212','03023213213','03023213220','03023213221','03023213222','03023213223','03023213230','03023213231','03023213232','03023213233','03023213300','03023213301','03023213302','03023213303','03023213310','03023213311','03023213312','03023213313','03023213320','03023213321','03023213322','03023213323','03023213330','03023213331','03023213332','03023213333','03023220000','03023220001','03023220002','03023220003','03023220010','03023220011','03023220012','03023220013','03023220020','03023220021','03023220022','03023220023','03023220030','03023220031','03023220032','03023220033','03023220100','03023220101','03023220102','03023220103','03023220110','03023220111','03023220112','03023220113','03023220120','03023220121','03023220122','03023220123','03023220130','03023220131','03023220132','03023220133','03023220200','03023220201','03023220202','03023220210','03023220211','03023220212','03023220213','03023220230','03023220231','03023220232','03023220233','03023220300','03023220301','03023220302','03023220303','03023220310','03023220311','03023220312','03023220313','03023220320','03023220321','03023220322','03023220323','03023220330','03023220331','03023220332','03023220333','03023221000','03023221001','03023221002','03023221003','03023221010','03023221011','03023221012','03023221013','03023221020','03023221021','03023221022','03023221023','03023221030','03023221031','03023221032','03023221033','03023221100','03023221101','03023221102','03023221103','03023221110','03023221111','03023221112','03023221113','03023221120','03023221121','03023221122','03023221123','03023221130','03023221131','03023221132','03023221200','03023221201','03023221202','03023221203','03023221210','03023221211','03023221212','03023221213','03023221220','03023221221','03023221222','03023221223','03023221230','03023221231','03023221232','03023221233','03023221300','03023221301','03023221302','03023221303','03023221310','03023221311','03023221312','03023221313','03023221320','03023221321','03023221322','03023221323','03023221330','03023221331','03023221332','03023221333','03023222010','03023222011','03023222100','03023222101','03023222110','03023222111','03023222231','03023222233','03023222302','03023222320','03023222321','03023222322','03023222323','03023222330','03023222332','03023222333','03023223000','03023223001','03023223010','03023223011','03023223012','03023223013','03023223030','03023223031','03023223033','03023223100','03023223101','03023223102','03023223103','03023223110','03023223111','03023223112','03023223113','03023223120','03023223121','03023223122','03023223123','03023223130','03023223131','03023223132','03023223133','03023223222','03023223223','03023223300','03023223301','03023223302','03023223303','03023223310','03023223311','03023223312','03023223313','03023223321','03023223323','03023223330','03023223331','03023223332','03023223333','03023230000','03023230001','03023230002','03023230003','03023230010','03023230011','03023230012','03023230013','03023230020','03023230021','03023230022','03023230023','03023230030','03023230031','03023230100','03023230102','03023230110','03023230111','03023230112','03023230113','03023230120','03023230131','03023230132','03023230133','03023230200','03023230202','03023230203','03023230212','03023230213','03023230220','03023230221','03023230222','03023230223','03023230230','03023230231','03023230232','03023230233','03023230300','03023230301','03023230302','03023230303','03023230310','03023230311','03023230312','03023230313','03023230320','03023230321','03023230322','03023230323','03023230330','03023230331','03023230332','03023230333','03023231000','03023231001','03023231002','03023231003','03023231010','03023231011','03023231012','03023231013','03023231020','03023231021','03023231023','03023231030','03023231031','03023231032','03023231033','03023231100','03023231101','03023231102','03023231103','03023231110','03023231111','03023231112','03023231113','03023231120','03023231121','03023231122','03023231123','03023231130','03023231131','03023231132','03023231133','03023231200','03023231201','03023231202','03023231203','03023231210','03023231211','03023231212','03023231213','03023231220','03023231221','03023231222','03023231223','03023231230','03023231231','03023231232','03023231233','03023231300','03023231301','03023231302','03023231303','03023231310','03023231311','03023231312','03023231313','03023231320','03023231321','03023231322','03023231323','03023231330','03023231331','03023231332','03023231333','03023232000','03023232001','03023232002','03023232003','03023232010','03023232011','03023232013','03023232020','03023232021','03023232022','03023232023','03023232032','03023232100','03023232101','03023232102','03023232103','03023232110','03023232111','03023232112','03023232113','03023232120','03023232121','03023232122','03023232123','03023232130','03023232131','03023232132','03023232133','03023232200','03023232201','03023232202','03023232203','03023232210','03023232212','03023232213','03023232220','03023232221','03023232222','03023232223','03023232230','03023232231','03023232232','03023232233','03023232301','03023232302','03023232310','03023232311','03023232312','03023232313','03023232320','03023232321','03023232322','03023232323','03023232331','03023232332','03023232333','03023233000','03023233001','03023233002','03023233003','03023233010','03023233011','03023233012','03023233013','03023233020','03023233021','03023233022','03023233023','03023233030','03023233031','03023233032','03023233033','03023233100','03023233101','03023233102','03023233103','03023233110','03023233111','03023233112','03023233113','03023233120','03023233121','03023233122','03023233123','03023233130','03023233131','03023233132','03023233133','03023233200','03023233201','03023233202','03023233203','03023233210','03023233211','03023233212','03023233213','03023233220','03023233221','03023233222','03023233223','03023233230','03023233231','03023233232','03023233233','03023233300','03023233301','03023233302','03023233303','03023233310','03023233311','03023233312','03023233313','03023233320','03023233321','03023233322','03023233323','03023233330','03023233331','03023233332','03023233333','03023300020','03023300022','03023300023','03023300200','03023300201','03023300202','03023300203','03023300210','03023300212','03023300220','03023300221','03023300222','03023300223','03023301313','03023301322','03023301323','03023301330','03023301331','03023301332','03023301333','03023302120','03023302121','03023302122','03023302123','03023302211','03023302213','03023302231','03023302300','03023302301','03023302302','03023302303','03023302310','03023302311','03023302312','03023302313','03023302320','03023302321','03023302323','03023302330','03023302331','03023302332','03023302333','03023303100','03023303101','03023303102','03023303103','03023303110','03023303111','03023303112','03023303113','03023303120','03023303121','03023303122','03023303123','03023303130','03023303131','03023303132','03023303133','03023303200','03023303201','03023303202','03023303203','03023303212','03023303213','03023303220','03023303221','03023303222','03023303223','03023303230','03023303231','03023303232','03023303233','03023303300','03023303301','03023303302','03023303303','03023303310','03023303311','03023303312','03023303313','03023303320','03023303321','03023303322','03023303323','03023303330','03023303331','03023303332','03023310023','03023310031','03023310032','03023310033','03023310120','03023310122','03023310123','03023310200','03023310201','03023310202','03023310203','03023310210','03023310211','03023310212','03023310213','03023310220','03023310221','03023310222','03023310223','03023310230','03023310231','03023310232','03023310233','03023310300','03023310301','03023310302','03023310303','03023310320','03023310322','03023312000','03023312001','03023312002','03023312003','03023312010','03023312011','03023312012','03023312013','03023312020','03023312021','03023312022','03023312200','03023312202','03023320020','03023320021','03023320022','03023320023','03023320030','03023320031','03023320032','03023320033','03023320101','03023320103','03023320110','03023320111','03023320112','03023320113','03023320120','03023320121','03023320122','03023320123','03023320130','03023320131','03023320132','03023320133','03023320200','03023320201','03023320202','03023320203','03023320210','03023320211','03023320212','03023320213','03023320220','03023320221','03023320222','03023320223','03023320230','03023320231','03023320232','03023320233','03023320300','03023320301','03023320302','03023320303','03023320310','03023320311','03023320312','03023320313','03023320320','03023320321','03023320322','03023320323','03023320330','03023320331','03023320332','03023320333','03023321000','03023321001','03023321002','03023321003','03023321010','03023321011','03023321012','03023321013','03023321020','03023321021','03023321022','03023321023','03023321030','03023321031','03023321032','03023321033','03023321100','03023321101','03023321102','03023321103','03023321110','03023321120','03023321121','03023321122','03023321123','03023321130','03023321132','03023321200','03023321201','03023321202','03023321203','03023321210','03023321211','03023321212','03023321213','03023321220','03023321221','03023321222','03023321223','03023321230','03023321231','03023321232','03023321233','03023321300','03023321301','03023321302','03023321303','03023321310','03023321320','03023321321','03023321322','03023321323','03023321330','03023321332','03023322000','03023322001','03023322002','03023322003','03023322010','03023322011','03023322012','03023322013','03023322020','03023322021','03023322022','03023322023','03023322030','03023322031','03023322032','03023322033','03023322100','03023322101','03023322102','03023322103','03023322110','03023322111','03023322112','03023322113','03023322120','03023322121','03023322122','03023322123','03023322130','03023322131','03023322132','03023322133','03023322200','03023322201','03023322202','03023322203','03023322210','03023322211','03023322212','03023322213','03023322220','03023322221','03023322222','03023322223','03023322230','03023322231','03023322232','03023322233','03023322300','03023322301','03023322302','03023322303','03023322310','03023322311','03023322312','03023322313','03023322320','03023322321','03023322322','03023322323','03023322330','03023322331','03023322332','03023322333','03023323000','03023323001','03023323002','03023323003','03023323010','03023323011','03023323012','03023323013','03023323020','03023323021','03023323022','03023323023','03023323030','03023323031','03023323032','03023323033','03023323100','03023323101','03023323102','03023323103','03023323110','03023323111','03023323112','03023323113','03023323120','03023323121','03023323122','03023323123','03023323130','03023323131','03023323132','03023323133','03023323200','03023323201','03023323202','03023323203','03023323210','03023323211','03023323220','03023323221','03023323222','03023323223','03023323300','03023323301','03023323302','03023323303','03023323310','03023323311','03023323312','03023323313','03023323320','03023323321','03023330222','03023330223','03023332000','03023332001','03023332002','03023332003','03023332010','03023332012','03023332020','03023332021','03023332022','03023332023','03023332030','03023332032','03023332200','03023332201','03023332202','03023332203','03023332210','03023332212','03023332220','03023332221','03023332230','03032021332','03032021333','03032022100','03032022101','03032022102','03032022103','03032022331','03032022333','03032023110','03032023111','03032023202','03032023220','03032023222','03032030222','03032031220','03032031221','03032032000','03032121220','03032121221','03032121222','03032121223','03032121232','03032123001','03032210103','03032210112','03032210121','03032210123','03032210130','03032210131','03032210132','03032210133','03032210301','03032210310','03032210311','03033012031','03033012032','03033012033','03033012120','03033012122','03033012201','03033012210','03033012211','03033012212','03033012213','03033012300','03033012302','03113321330','03113321331','03113321332','03113321333','03113322302','03113322303','03113322320','03113322321','03113322323','03113322330','03113322331','03113322332','03113322333','03113323110','03113323111','03113323112','03113323113','03113323203','03113323212','03113323213','03113323220','03113323221','03113323222','03113323223','03113323231','03113323232','03113323233','03113323300','03113323302','03113323303','03113323312','03113323320','03113323321','03113323322','03113323323','03113323330','03113323331','03113323332','03113330011','03113330013','03113330031','03113330102','03113330120','03113330202','03113330203','03113330212','03113330220','03113330221','03113330222','03113330223','03113330230','03113332000','03113332001','03113332002','03131010323','03131010332','03131012101','03131012103','03131012110','03131012112','03131012121','03131012132','03131012302','03131012320','03131012321','03131012323','03131012332','03131013023','03131013032','03131013121','03131013123','03131013130','03131013131','03131013132','03131013133','03131013200','03131013201','03131013203','03131013210','03131013211','03131013212','03131013213','03131013221','03131013230','03131013233','03131013300','03131013301','03131013302','03131013310','03131013311','03131013322','03131023011','03131023100','03131023312','03131023313','03131023330','03131023331','03131031011','03131031100','03131031201','03131031203','03131031210','03131031212','03131031231','03131031232','03131031233','03131031320','03131031321','03131031322','03131031323','03131031332','03131033010','03131033011','03131033100','03131033101','03131033102','03131033103','03131033110','03131033200','03131100110','03131100111','03131100121','03131100123','03131100130','03131100132','03131101000','03131101001','03131101010','03131102020','03131102022','03131103110','03131103111','03131103112','03131103113','03131110323','03131110332','03131110333','03131111222','03131112101','03131112103','03131112110','03131112111','03131112112','03131112113','03131112310','03131112311','03131113000','03131113002','03131113020','03131113021','03131113022','03131113023','03131113200','03131113201','03131113321','03131113323','03131121111','03131121113','03131121130','03131121131','03131121132','03131121133','03131121310','03131121311','03131121312','03131121313','03131121321','03131121322','03131121323','03131121330','03131121331','03131121332','03131121333','03131123011','03131123100','03131123101','03131123110','03131123111','03131123112','03131123113','03131123130','03131123131','03131123313','03131123331','03131130000','03131130002','03131130022','03131130023','03131130031','03131130032','03131130033','03131130112','03131130113','03131130121','03131130122','03131130123','03131130130','03131130131','03131130132','03131130133','03131130200','03131130201','03131130202','03131130203','03131130210','03131130211','03131130212','03131130213','03131130220','03131130221','03131130222','03131130223','03131130230','03131130231','03131130232','03131130233','03131130300','03131130301','03131130302','03131130303','03131130310','03131130311','03131130312','03131130313','03131130320','03131130322','03131130331','03131130333','03131131003','03131131012','03131131020','03131131021','03131131022','03131131030','03131131123','03131131132','03131131200','03131131202','03131131203','03131131211','03131131212','03131131213','03131131220','03131131221','03131131222','03131131230','03131131231','03131131300','03131131301','03131131302','03131131310','03131131313','03131131320','03131131331','03131132000','03131132001','03131132002','03131132003','03131132010','03131132011','03131132012','03131132021','03131132030','03131132031','03131132032','03131132033','03131132100','03131132111','03131132113','03131132120','03131132122','03131132132','03131132133','03131132202','03131132203','03131132211','03131132212','03131132213','03131132220','03131132221','03131132230','03131132231','03131132233','03131132300','03131132302','03131132310','03131132311','03131132312','03131132320','03131132321','03131132322','03131132323','03131132330','03131132331','03131132332','03131132333','03131133000','03131133002','03131133003','03131133020','03131133021','03131133022','03131133023','03131133030','03131133032','03131133100','03131133101','03131133102','03131133103','03131133200','03131133201','03131133202','03131133203','03131133210','03131133212','03131133220','03131133221','03131133222','03131133223','03131133230','03131133232','03131133321','03131133323','03131133330','03131133331','03131133332','03131133333','03131201311','03131201313','03131201331','03131210202','03131211012','03131211013','03131301222','03131301223','03131301232','03131301323','03131301330','03131301331','03131301332','03131301333','03131303000','03131303001','03131303010','03131303100','03131303101','03131303102','03131303103','03131303110','03131303111','03131303112','03131303113','03131303120','03131303121','03131303130','03131303131','03131303133','03131303233','03131303311','03131303312','03131303322','03131310010','03131310011','03131310012','03131310013','03131310022','03131310023','03131310031','03131310033','03131310100','03131310101','03131310102','03131310103','03131310110','03131310111','03131310112','03131310113','03131310120','03131310121','03131310123','03131310130','03131310131','03131310132','03131310200','03131310201','03131310211','03131310212','03131310213','03131310230','03131310231','03131310300','03131310302','03131310323','03131310332','03131311000','03131311001','03131311002','03131311003','03131311011','03131311012','03131311013','03131311030','03131311031','03131311032','03131311033','03131311100','03131311102','03131311113','03131311120','03131311121','03131311122','03131311123','03131311131','03131311210','03131311211','03131311213','03131311220','03131311221','03131311222','03131311223','03131311231','03131311232','03131311233','03131311300','03131311301','03131311302','03131311303','03131311310','03131311312','03131311313','03131311320','03131311321','03131311322','03131311323','03131311330','03131311331','03131311332','03131311333','03131312000','03131312001','03131312002','03131312003','03131312010','03131312012','03131312013','03131312020','03131312021','03131312022','03131312030','03131312031','03131312101','03131312103','03131312110','03131312112','03131312200','03131312223','03131312232','03131312312','03131312313','03131312322','03131312323','03131312330','03131312331','03131312332','03131312333','03131313001','03131313002','03131313003','03131313010','03131313011','03131313012','03131313013','03131313020','03131313021','03131313023','03131313030','03131313031','03131313032','03131313033','03131313100','03131313101','03131313102','03131313103','03131313110','03131313111','03131313112','03131313113','03131313120','03131313121','03131313122','03131313123','03131313130','03131313131','03131313132','03131313133','03131313202','03131313203','03131313210','03131313211','03131313212','03131313220','03131313221','03131313222','03131313223','03131313230','03131313232','03131313233','03131313300','03131313301','03131313310','03131313311','03131313312','03131313313','03131313320','03131313321','03131313322','03131313323','03131313330','03131313331','03131313332','03131313333','03131320131','03131320133','03131321011','03131321013','03131321020','03131321021','03131321022','03131321023','03131321031','03131321033','03131321100','03131321102','03131321120','03131330001','03131330003','03131330010','03131330012','03131330100','03131330101','03131330110','03131330111','03131333303','03131333312','03131333321','03131333330','03133101222','03133101223','03133103000','03133103001','03133103102','03133103103','03133103120','03133103121','03133110323','03133110330','03133110332','03133111233','03133112213','03133112230','03133112231','03133112312','03133112313','03133112330','03133112331','03133112332','03133112333','03133113122','03133113123','03133113232','03133113233','03133113300','03133113301','03133131010','03133131011','03133131222','03133131223','03133131303','03133131321','03133203313','03133203331','03133212200','03133212201','03133212202','03133212220','03133212322','03133212323','03133213123','03133213132','03133213133','03133213301','03133213310','03133213311','03133213312','03133213313','03133213330','03133213331','03133221113','03133221310','03133221311','03133221312','03133221313','03133221321','03133221330','03133221331','03133221332','03133223133','03133223311','03133223312','03133223313','03133223330','03133223331','03133223332','03133223333','03133230002','03133230100','03133230101','03133230212','03133230213','03133230231','03133231032','03133231133','03133231210','03133232022','03133232200','03133232201','03133233133','03133233310','03133233311','03133233333','03133302200','03133303201','03133303202','03133303203','03133303210','03133303212','03133303220','03133303221','03133303312','03133303313','03133303330','03133303331','03133311102','03133311103','03133311120','03133311121','03133312212','03133312213','03133312221','03133312223','03133312230','03133312231','03133312232','03133312233','03133312302','03133312303','03133312312','03133312320','03133312321','03133312322','03133312323','03133312330','03133313303','03133313312','03133313321','03133313330','03133320022','03133320323','03133320332','03133321212','03133321213','03133322101','03133322110','03133322120','03133322121','03133322122','03133322123','03133322222','03133323222','03133330001','03133330002','03133330003','03133330010','03133330011','03133330012','03133330020','03133330021','03133330100','03133330112','03133330130','03133330201','03133330210','03133330211','03133330212','03133331321','03133331323','03133331332','03133332003','03133332012','03133332021','03133332030','03133333021','03133333023','03133333030','03133333031','03133333032','03133333033','03200000001','03200000002','03200000003','03200000010','03200000011','03200000012','03200000013','03200000020','03200000021','03200000022','03200000023','03200000030','03200000032','03200000033','03200000103','03200000112','03200000113','03200000120','03200000121','03200000122','03200000123','03200000130','03200000131','03200000132','03200000133','03200000202','03200000220','03200000222','03200000232','03200000233','03200000300','03200000301','03200000302','03200000303','03200000310','03200000311','03200000312','03200000313','03200000320','03200000321','03200000322','03200000323','03200000330','03200000331','03200000332','03200000333','03200001001','03200001002','03200001010','03200001011','03200001020','03200001022','03200001100','03200001101','03200001103','03200001110','03200001111','03200001112','03200001113','03200001121','03200001123','03200001130','03200001131','03200001132','03200001133','03200001200','03200001202','03200001203','03200001210','03200001212','03200001220','03200001221','03200001223','03200001230','03200001231','03200001232','03200001310','03200001311','03200001312','03200001313','03200001330','03200001331','03200001332','03200001333','03200002000','03200002001','03200002002','03200002003','03200002010','03200002011','03200002012','03200002013','03200002020','03200002021','03200002022','03200002030','03200002100','03200002101','03200002102','03200002103','03200002110','03200002111','03200002112','03200002113','03200002120','03200002121','03200002130','03200002131','03200002220','03200002222','03200003002','03200003003','03200003012','03200003013','03200003020','03200003021','03200003022','03200003023','03200003030','03200003031','03200003032','03200003033','03200003121','03200003123','03200003130','03200003131','03200003132','03200003133','03200003200','03200003201','03200003210','03200003211','03200003301','03200003310','03200003311','03200003312','03200003313','03200003330','03200003331','03200003333','03200010000','03200010001','03200010002','03200010003','03200010020','03200010021','03200010022','03200010023','03200010030','03200010032','03200010120','03200010121','03200010122','03200010123','03200010130','03200010131','03200010132','03200010133','03200010200','03200010201','03200010202','03200010203','03200010210','03200010212','03200010213','03200010220','03200010221','03200010222','03200010230','03200010231','03200010232','03200010233','03200010300','03200010301','03200010302','03200010303','03200010310','03200010311','03200010312','03200010313','03200010320','03200010321','03200010322','03200010323','03200010330','03200010331','03200010332','03200010333','03200011000','03200011001','03200011002','03200011003','03200011010','03200011011','03200011012','03200011013','03200011020','03200011021','03200011022','03200011023','03200011030','03200011031','03200011032','03200011033','03200011100','03200011101','03200011102','03200011111','03200011113','03200011120','03200011122','03200011131','03200011200','03200011201','03200011202','03200011203','03200011210','03200011211','03200011212','03200011213','03200011220','03200011221','03200011222','03200011223','03200011230','03200011231','03200011232','03200011233','03200011313','03200011322','03200011323','03200011331','03200011332','03200011333','03200012010','03200012011','03200012012','03200012013','03200012020','03200012022','03200012030','03200012031','03200012032','03200012033','03200012100','03200012101','03200012102','03200012103','03200012110','03200012111','03200012112','03200012113','03200012120','03200012121','03200012122','03200012123','03200012130','03200012131','03200012132','03200012133','03200012200','03200012201','03200012202','03200012203','03200012210','03200012211','03200012212','03200012213','03200012220','03200012221','03200012222','03200012223','03200012230','03200012231','03200012232','03200012233','03200012300','03200012301','03200012302','03200012303','03200012310','03200012311','03200012320','03200012321','03200012322','03200012323','03200012332','03200012333','03200013000','03200013001','03200013002','03200013003','03200013010','03200013011','03200013012','03200013013','03200013021','03200013022','03200013023','03200013030','03200013032','03200013100','03200013101','03200013102','03200013103','03200013110','03200013111','03200013112','03200013113','03200013121','03200013123','03200013130','03200013131','03200013132','03200013133','03200013200','03200013201','03200013202','03200013203','03200013210','03200013211','03200013212','03200013213','03200013220','03200013221','03200013222','03200013223','03200013230','03200013231','03200013232','03200013233','03200013300','03200013301','03200013302','03200013303','03200013310','03200013311','03200013312','03200013313','03200013320','03200013321','03200013322','03200013323','03200013330','03200013331','03200013332','03200013333','03200020000','03200020001','03200020002','03200020003','03200020010','03200020012','03200020020','03200020021','03200020022','03200020023','03200020200','03200020201','03200020202','03200020220','03200020221','03200020222','03200020223','03200020230','03200020232','03200021111','03200021113','03200021131','03200021133','03200021231','03200021232','03200021233','03200021300','03200021301','03200021302','03200021303','03200021310','03200021311','03200021312','03200021313','03200021320','03200021321','03200021322','03200021323','03200021330','03200021331','03200021332','03200021333','03200022000','03200022001','03200022002','03200022003','03200022010','03200022011','03200022012','03200022013','03200022020','03200022021','03200022022','03200022023','03200022030','03200022031','03200022032','03200022033','03200022121','03200022123','03200022130','03200022131','03200022132','03200022133','03200022200','03200022201','03200022202','03200022203','03200022210','03200022211','03200022212','03200022213','03200022221','03200022222','03200022223','03200022230','03200022231','03200022232','03200022300','03200022301','03200022302','03200022310','03200022311','03200022312','03200022313','03200023010','03200023011','03200023012','03200023013','03200023020','03200023022','03200023031','03200023100','03200023101','03200023102','03200023103','03200023110','03200023111','03200023112','03200023113','03200023120','03200023121','03200023122','03200023123','03200023130','03200023131','03200023132','03200023133','03200023200','03200023202','03200023300','03200023301','03200023302','03200023303','03200023310','03200023311','03200023312','03200023313','03200023320','03200023321','03200023322','03200023323','03200023330','03200023331','03200023332','03200023333','03200030000','03200030001','03200030002','03200030003','03200030020','03200030021','03200030022','03200030100','03200030101','03200030102','03200030103','03200030110','03200030111','03200030112','03200030113','03200030120','03200030121','03200030122','03200030123','03200030130','03200030131','03200030132','03200030133','03200030200','03200030201','03200030202','03200030203','03200030211','03200030212','03200030213','03200030220','03200030221','03200030222','03200030223','03200030230','03200030231','03200030232','03200030233','03200030300','03200030301','03200030302','03200030303','03200030310','03200030311','03200030312','03200030313','03200030320','03200030321','03200030322','03200030323','03200030330','03200030331','03200030332','03200030333','03200031000','03200031001','03200031002','03200031003','03200031010','03200031011','03200031012','03200031013','03200031020','03200031021','03200031022','03200031023','03200031030','03200031031','03200031032','03200031033','03200031100','03200031101','03200031102','03200031103','03200031110','03200031111','03200031112','03200031113','03200031120','03200031121','03200031122','03200031123','03200031130','03200031131','03200031132','03200031133','03200031200','03200031201','03200031202','03200031203','03200031210','03200031211','03200031212','03200031213','03200031220','03200031221','03200031222','03200031223','03200031230','03200031231','03200031232','03200031233','03200031300','03200031301','03200031302','03200031303','03200031310','03200031311','03200031312','03200031313','03200031320','03200031321','03200031322','03200031323','03200031330','03200031331','03200031332','03200031333','03200032000','03200032001','03200032002','03200032003','03200032010','03200032011','03200032012','03200032013','03200032020','03200032021','03200032022','03200032023','03200032030','03200032031','03200032032','03200032033','03200032100','03200032101','03200032102','03200032103','03200032110','03200032111','03200032112','03200032113','03200032130','03200032131','03200032200','03200032201','03200032202','03200032203','03200032210','03200032211','03200032213','03200032222','03200032231','03200032300','03200032301','03200032302','03200032303','03200032320','03200033000','03200033001','03200033002','03200033003','03200033010','03200033011','03200033012','03200033013','03200033021','03200033030','03200033031','03200033100','03200033101','03200033102','03200033103','03200033110','03200033111','03200033112','03200033113','03200033120','03200033121','03200033122','03200033123','03200033130','03200033131','03200033132','03200033133','03200033300','03200033301','03200033302','03200033303','03200033310','03200033311','03200033312','03200033313','03200033330','03200033331','03200100000','03200100001','03200100002','03200100003','03200100010','03200100011','03200100012','03200100020','03200100021','03200100023','03200100030','03200100031','03200100032','03200100033','03200100100','03200100101','03200100102','03200100103','03200100110','03200100111','03200100112','03200100113','03200100120','03200100121','03200100122','03200100123','03200100130','03200100131','03200100132','03200100133','03200100201','03200100202','03200100203','03200100210','03200100211','03200100212','03200100213','03200100220','03200100221','03200100222','03200100223','03200100230','03200100231','03200100232','03200100233','03200100300','03200100301','03200100302','03200100303','03200100310','03200100311','03200100312','03200100313','03200100320','03200100321','03200100322','03200100323','03200100330','03200100331','03200100332','03200100333','03200101000','03200101001','03200101002','03200101003','03200101010','03200101011','03200101012','03200101013','03200101020','03200101021','03200101022','03200101031','03200101033','03200101100','03200101101','03200101102','03200101103','03200101110','03200101111','03200101112','03200101113','03200101120','03200101121','03200101122','03200101123','03200101130','03200101131','03200101132','03200101133','03200101200','03200101201','03200101202','03200101203','03200101211','03200101212','03200101213','03200101220','03200101221','03200101222','03200101223','03200101230','03200101231','03200101232','03200101233','03200101300','03200101301','03200101302','03200101303','03200101310','03200101311','03200101312','03200101313','03200101320','03200101321','03200101322','03200101323','03200101330','03200101331','03200101332','03200101333','03200102000','03200102001','03200102002','03200102003','03200102010','03200102011','03200102012','03200102013','03200102020','03200102021','03200102022','03200102023','03200102030','03200102031','03200102032','03200102033','03200102100','03200102101','03200102102','03200102103','03200102110','03200102111','03200102112','03200102113','03200102120','03200102121','03200102122','03200102123','03200102130','03200102131','03200102132','03200102133','03200102200','03200102201','03200102202','03200102203','03200102210','03200102211','03200102212','03200102213','03200102220','03200102221','03200102222','03200102223','03200102230','03200102231','03200102232','03200102300','03200102301','03200102302','03200102303','03200102310','03200102311','03200102312','03200102313','03200102320','03200102321','03200102330','03200103000','03200103001','03200103002','03200103003','03200103010','03200103011','03200103012','03200103013','03200103020','03200103021','03200103022','03200103023','03200103030','03200103031','03200103100','03200103101','03200103102','03200103103','03200103110','03200103111','03200103112','03200103113','03200103120','03200103121','03200103122','03200103123','03200103130','03200103131','03200103132','03200103133','03200103200','03200103201','03200103202','03200103203','03200103212','03200103213','03200103220','03200103221','03200103222','03200103223','03200103230','03200103231','03200103232','03200103233','03200103310','03200103311','03200103312','03200103313','03200103320','03200103321','03200103322','03200103323','03200103330','03200103331','03200103332','03200103333','03200110000','03200110001','03200110002','03200110003','03200110010','03200110011','03200110012','03200110013','03200110020','03200110021','03200110022','03200110023','03200110030','03200110031','03200110032','03200110033','03200110100','03200110101','03200110102','03200110103','03200110110','03200110111','03200110112','03200110113','03200110120','03200110121','03200110122','03200110123','03200110130','03200110131','03200110132','03200110133','03200110200','03200110201','03200110202','03200110203','03200110210','03200110211','03200110212','03200110213','03200110220','03200110221','03200110222','03200110223','03200110230','03200110231','03200110300','03200110301','03200110302','03200110303','03200110310','03200110311','03200110312','03200110313','03200110320','03200110321','03200110322','03200110323','03200110330','03200110331','03200110332','03200110333','03200111000','03200111001','03200111002','03200111003','03200111010','03200111012','03200111020','03200111021','03200111022','03200111023','03200111030','03200111031','03200111032','03200111033','03200111113','03200111122','03200111123','03200111131','03200111132','03200111133','03200111200','03200111201','03200111202','03200111203','03200111210','03200111211','03200111212','03200111213','03200111220','03200111221','03200111222','03200111223','03200111230','03200111231','03200111232','03200111233','03200111300','03200111301','03200111302','03200111303','03200111310','03200111311','03200111312','03200111313','03200111320','03200111321','03200111322','03200111323','03200111330','03200112000','03200112001','03200112002','03200112011','03200112013','03200112020','03200112022','03200112023','03200112030','03200112031','03200112032','03200112033','03200112100','03200112101','03200112102','03200112103','03200112110','03200112111','03200112112','03200112113','03200112120','03200112121','03200112122','03200112123','03200112130','03200112131','03200112132','03200112133','03200112200','03200112201','03200112202','03200112203','03200112210','03200112211','03200112212','03200112213','03200112220','03200112221','03200112222','03200112223','03200112230','03200112231','03200112232','03200112233','03200112300','03200112301','03200112302','03200112303','03200112310','03200112311','03200112312','03200112313','03200112320','03200112321','03200112322','03200112323','03200112330','03200112331','03200112332','03200112333','03200113000','03200113001','03200113002','03200113003','03200113010','03200113011','03200113012','03200113013','03200113020','03200113021','03200113022','03200113023','03200113030','03200113031','03200113032','03200113033','03200113100','03200113102','03200113111','03200113113','03200113122','03200113123','03200113131','03200113132','03200113133','03200113200','03200113201','03200113202','03200113203','03200113210','03200113211','03200113212','03200113213','03200113220','03200113221','03200113222','03200113223','03200113230','03200113231','03200113232','03200113233','03200113300','03200113301','03200113302','03200113303','03200113310','03200113311','03200113312','03200113313','03200113320','03200113321','03200113322','03200113323','03200113330','03200113331','03200113332','03200113333','03200120000','03200120001','03200120002','03200120003','03200120010','03200120020','03200120021','03200120022','03200120023','03200120120','03200120121','03200120122','03200120123','03200120132','03200120200','03200120201','03200120202','03200120203','03200120210','03200120211','03200120212','03200120213','03200120220','03200120221','03200120222','03200120223','03200120230','03200120231','03200120232','03200120233','03200120300','03200120301','03200120302','03200120303','03200120310','03200120311','03200120312','03200120320','03200120321','03200120322','03200121001','03200121003','03200121010','03200121011','03200121012','03200121013','03200121020','03200121021','03200121022','03200121023','03200121030','03200121031','03200121032','03200121033','03200121100','03200121101','03200121102','03200121103','03200121110','03200121111','03200121112','03200121113','03200121120','03200121121','03200121122','03200121123','03200121130','03200121131','03200121132','03200121133','03200121200','03200121201','03200121203','03200121210','03200121211','03200121212','03200121213','03200121221','03200121222','03200121223','03200121230','03200121231','03200121232','03200121233','03200121300','03200121301','03200121302','03200121303','03200121310','03200121311','03200121312','03200121313','03200121320','03200121321','03200121322','03200121323','03200121330','03200121331','03200121332','03200121333','03200122000','03200122001','03200122002','03200122003','03200122010','03200122011','03200122022','03200122100','03200122120','03200122121','03200122122','03200122123','03200122130','03200122132','03200122133','03200122200','03200122202','03200122300','03200122301','03200122302','03200122303','03200122310','03200122311','03200122312','03200122313','03200122320','03200122321','03200122330','03200123000','03200123001','03200123002','03200123003','03200123010','03200123011','03200123012','03200123013','03200123020','03200123021','03200123022','03200123023','03200123030','03200123031','03200123032','03200123033','03200123100','03200123101','03200123102','03200123103','03200123110','03200123111','03200123112','03200123113','03200123120','03200123121','03200123122','03200123123','03200123130','03200123131','03200123132','03200123133','03200123200','03200123201','03200123202','03200123203','03200123210','03200123211','03200123212','03200123213','03200123230','03200123231','03200123233','03200123300','03200123301','03200123302','03200123303','03200123310','03200123311','03200123312','03200123313','03200123320','03200123321','03200123322','03200123323','03200123330','03200130000','03200130001','03200130002','03200130003','03200130010','03200130011','03200130012','03200130013','03200130020','03200130021','03200130022','03200130023','03200130030','03200130031','03200130032','03200130033','03200130100','03200130101','03200130102','03200130103','03200130110','03200130111','03200130112','03200130113','03200130120','03200130121','03200130122','03200130123','03200130130','03200130131','03200130132','03200130133','03200130200','03200130201','03200130202','03200130203','03200130210','03200130211','03200130212','03200130213','03200130220','03200130221','03200130222','03200130223','03200130230','03200130231','03200130232','03200130233','03200130300','03200130301','03200130302','03200130303','03200130310','03200130311','03200130312','03200130313','03200130320','03200130321','03200130322','03200130323','03200130330','03200130331','03200130332','03200130333','03200131000','03200131001','03200131002','03200131003','03200131010','03200131011','03200131012','03200131013','03200131020','03200131021','03200131022','03200131023','03200131030','03200131031','03200131032','03200131100','03200131101','03200131102','03200131103','03200131110','03200131111','03200131112','03200131120','03200131121','03200131122','03200131123','03200131200','03200131201','03200131202','03200131203','03200131210','03200131220','03200131221','03200131222','03200131311','03200131312','03200131313','03200131321','03200131323','03200131330','03200131331','03200131332','03200131333','03200132000','03200132001','03200132002','03200132003','03200132010','03200132011','03200132012','03200132013','03200132020','03200132021','03200132022','03200132023','03200132030','03200132031','03200132032','03200132033','03200132100','03200132101','03200132102','03200132103','03200132110','03200132111','03200132112','03200132113','03200132120','03200132121','03200132122','03200132123','03200132130','03200132131','03200132132','03200132133','03200132200','03200132301','03200132303','03200132310','03200132311','03200132312','03200132313','03200132331','03200133000','03200133002','03200133011','03200133012','03200133013','03200133020','03200133021','03200133022','03200133023','03200133030','03200133031','03200133032','03200133033','03200133100','03200133102','03200133103','03200133110','03200133111','03200133112','03200133113','03200133120','03200133121','03200133122','03200133123','03200133130','03200133132','03200133133','03200133200','03200133201','03200133202','03200133203','03200133210','03200133211','03200133212','03200133213','03200133220','03200133221','03200133222','03200133223','03200133230','03200133231','03200133232','03200133233','03200133300','03200133301','03200133302','03200133303','03200133310','03200133311','03200133312','03200133313','03200133320','03200133321','03200133322','03200133323','03200133330','03200133331','03200133332','03200133333','03200200000','03200200001','03200200002','03200200003','03200200010','03200200011','03200200012','03200200013','03200200020','03200200021','03200200022','03200200023','03200200030','03200200031','03200200032','03200200033','03200200100','03200200101','03200200102','03200200103','03200200110','03200200111','03200200112','03200200113','03200200120','03200200121','03200200122','03200200123','03200200130','03200200131','03200200132','03200200133','03200200200','03200200201','03200200210','03200200211','03200200213','03200200222','03200200223','03200200300','03200200301','03200200302','03200200303','03200200310','03200200311','03200200312','03200200313','03200200320','03200200321','03200200330','03200201000','03200201001','03200201002','03200201003','03200201010','03200201011','03200201012','03200201013','03200201020','03200201021','03200201022','03200201023','03200201030','03200201031','03200201032','03200201033','03200201101','03200201103','03200201110','03200201111','03200201112','03200201113','03200201121','03200201130','03200201131','03200201133','03200201200','03200201201','03200201202','03200201203','03200201210','03200201211','03200201212','03200201213','03200201223','03200201232','03200201233','03200201311','03200201313','03200201330','03200201331','03200201332','03200201333','03200202000','03200202001','03200202002','03200202003','03200202010','03200202012','03200202020','03200202021','03200202022','03200202023','03200202030','03200202031','03200202032','03200202033','03200202120','03200202121','03200202122','03200202123','03200202130','03200202131','03200202132','03200202133','03200202200','03200202201','03200202202','03200202203','03200202210','03200202211','03200202212','03200202213','03200202220','03200202221','03200202222','03200202223','03200202230','03200202231','03200202232','03200202233','03200202300','03200202301','03200202302','03200202303','03200202310','03200202311','03200202312','03200202313','03200202320','03200202321','03200202322','03200202323','03200202330','03200202331','03200202332','03200202333','03200203000','03200203001','03200203002','03200203003','03200203010','03200203011','03200203012','03200203013','03200203020','03200203021','03200203022','03200203023','03200203030','03200203031','03200203032','03200203033','03200203111','03200203200','03200203201','03200203202','03200203203','03200203210','03200203212','03200203213','03200203220','03200203221','03200203222','03200203223','03200203230','03200203231','03200203232','03200203233','03200203302','03200203303','03200203312','03200203320','03200203321','03200203322','03200203323','03200203330','03200203332','03200203333','03200210000','03200210002','03200210003','03200210010','03200210012','03200210013','03200210020','03200210021','03200210022','03200210023','03200210030','03200210031','03200210032','03200210033','03200210120','03200210122','03200210200','03200210201','03200210202','03200210203','03200210210','03200210211','03200210212','03200210213','03200210220','03200210221','03200210222','03200210223','03200210230','03200210231','03200210232','03200210233','03200210300','03200210301','03200210302','03200210303','03200210310','03200210320','03200210321','03200210322','03200210323','03200211031','03200211032','03200211033','03200211120','03200211121','03200211122','03200211123','03200211131','03200211132','03200211133','03200211210','03200211211','03200211212','03200211213','03200211230','03200211231','03200211233','03200211300','03200211301','03200211302','03200211303','03200211310','03200211311','03200211312','03200211313','03200211320','03200211321','03200211322','03200211323','03200211330','03200211331','03200211332','03200212000','03200212001','03200212010','03200212011','03200212013','03200212030','03200212031','03200212032','03200212033','03200212100','03200212101','03200212102','03200212120','03200212121','03200212122','03200212123','03200212202','03200212203','03200212210','03200212211','03200212212','03200212213','03200212220','03200212221','03200212222','03200212223','03200212230','03200212231','03200212232','03200212233','03200212300','03200212301','03200212302','03200212303','03200212312','03200212313','03200212320','03200212321','03200212322','03200212323','03200212330','03200212331','03200212332','03200212333','03200213003','03200213010','03200213011','03200213012','03200213013','03200213021','03200213022','03200213023','03200213030','03200213031','03200213032','03200213033','03200213100','03200213101','03200213102','03200213103','03200213110','03200213111','03200213112','03200213113','03200213120','03200213121','03200213122','03200213123','03200213130','03200213131','03200213132','03200213133','03200213200','03200213201','03200213202','03200213203','03200213210','03200213211','03200213220','03200213221','03200213222','03200213223','03200213300','03200213330','03200213332','03200213333','03200220000','03200220001','03200220002','03200220003','03200220010','03200220011','03200220012','03200220013','03200220020','03200220021','03200220022','03200220023','03200220030','03200220031','03200220032','03200220033','03200220100','03200220101','03200220102','03200220103','03200220110','03200220111','03200220112','03200220113','03200220120','03200220121','03200220122','03200220123','03200220130','03200220131','03200220132','03200220133','03200220200','03200220201','03200220202','03200220203','03200220210','03200220211','03200220212','03200220213','03200220220','03200220221','03200220222','03200220223','03200220230','03200220231','03200220232','03200220233','03200220300','03200220301','03200220302','03200220303','03200220310','03200220311','03200220312','03200220313','03200220320','03200220321','03200220322','03200220323','03200220330','03200220331','03200220332','03200220333','03200221000','03200221001','03200221002','03200221003','03200221010','03200221011','03200221012','03200221013','03200221020','03200221021','03200221022','03200221023','03200221030','03200221031','03200221032','03200221033','03200221100','03200221101','03200221102','03200221103','03200221110','03200221111','03200221112','03200221113','03200221120','03200221121','03200221122','03200221123','03200221130','03200221131','03200221132','03200221133','03200221200','03200221201','03200221202','03200221203','03200221210','03200221211','03200221212','03200221213','03200221220','03200221221','03200221222','03200221223','03200221230','03200221231','03200221232','03200221233','03200221300','03200221301','03200221302','03200221303','03200221310','03200221311','03200221312','03200221313','03200221320','03200221321','03200221322','03200221323','03200221330','03200221331','03200221332','03200221333','03200222000','03200222001','03200222002','03200222003','03200222010','03200222011','03200222012','03200222013','03200222020','03200222021','03200222022','03200222023','03200222030','03200222031','03200222032','03200222033','03200222100','03200222101','03200222102','03200222103','03200222110','03200222111','03200222112','03200222113','03200222120','03200222121','03200222122','03200222123','03200222130','03200222131','03200222132','03200222133','03200222200','03200222201','03200222202','03200222203','03200222210','03200222211','03200222212','03200222213','03200222220','03200222221','03200222222','03200222223','03200222230','03200222231','03200222232','03200222233','03200222300','03200222301','03200222302','03200222303','03200222310','03200222311','03200222312','03200222313','03200222320','03200222321','03200222322','03200222323','03200222330','03200222331','03200222332','03200222333','03200223000','03200223001','03200223002','03200223003','03200223010','03200223011','03200223012','03200223013','03200223020','03200223021','03200223022','03200223023','03200223100','03200223101','03200223102','03200223103','03200223110','03200223111','03200223112','03200223113','03200223200','03200223201','03200223202','03200223203','03200223220','03200223221','03200230000','03200230001','03200230002','03200230003','03200230010','03200230011','03200230012','03200230013','03200230020','03200230021','03200230022','03200230023','03200230030','03200230031','03200230032','03200230033','03200230100','03200230101','03200230102','03200230103','03200230110','03200230111','03200230112','03200230113','03200230120','03200230121','03200230122','03200230123','03200230130','03200230131','03200230132','03200230133','03200230200','03200230201','03200230202','03200230203','03200230210','03200230211','03200230212','03200230213','03200230220','03200230221','03200230222','03200230223','03200230230','03200230231','03200230232','03200230300','03200230301','03200230302','03200230310','03200230311','03200230312','03200230313','03200231000','03200231002','03200231020','03200231021','03200231022','03200231023','03200231101','03200231103','03200231110','03200231111','03200231112','03200231113','03200231120','03200231121','03200231122','03200231123','03200231130','03200231131','03200231132','03200231133','03200231200','03200231201','03200231202','03200231300','03200231301','03200231302','03200231303','03200231310','03200231311','03200231312','03200231313','03200231321','03200231323','03200231330','03200231331','03200231332','03200231333','03200232000','03200232120','03200232121','03200232122','03200232123','03200232130','03200232131','03200232132','03200232133','03200232211','03200232213','03200232231','03200232233','03200232300','03200232301','03200232302','03200232303','03200232310','03200232311','03200232312','03200232313','03200232320','03200232321','03200232322','03200232323','03200232330','03200232331','03200232332','03200232333','03200233020','03200233021','03200233022','03200233023','03200233030','03200233031','03200233032','03200233033','03200233110','03200233111','03200233112','03200233113','03200233122','03200233123','03200233130','03200233131','03200233132','03200233200','03200233201','03200233203','03200233210','03200233211','03200233212','03200233300','03200233301','03200233302','03200233303','03200233310','03200300003','03200300012','03200300013','03200300020','03200300021','03200300022','03200300023','03200300030','03200300031','03200300032','03200300033','03200300101','03200300102','03200300103','03200300110','03200300112','03200300120','03200300121','03200300122','03200300123','03200300130','03200300200','03200300201','03200300202','03200300203','03200300210','03200300211','03200300212','03200300213','03200300220','03200300221','03200300222','03200300223','03200300230','03200300231','03200300232','03200300233','03200300300','03200300302','03200300312','03200300313','03200300320','03200300321','03200300322','03200300323','03200300330','03200300331','03200300332','03200300333','03200301011','03200301013','03200301023','03200301032','03200301033','03200301100','03200301101','03200301102','03200301122','03200301200','03200301201','03200301202','03200301203','03200301210','03200301211','03200301212','03200301213','03200301220','03200301221','03200301222','03200301223','03200301230','03200301231','03200301232','03200301233','03200301300','03200301301','03200301302','03200301303','03200301310','03200301312','03200301320','03200301321','03200301322','03200301323','03200301330','03200301331','03200301332','03200301333','03200302000','03200302001','03200302002','03200302003','03200302010','03200302011','03200302012','03200302013','03200302020','03200302021','03200302022','03200302023','03200302030','03200302031','03200302032','03200302033','03200302100','03200302101','03200302102','03200302103','03200302110','03200302111','03200302112','03200302113','03200302120','03200302121','03200302122','03200302123','03200302130','03200302131','03200302132','03200302133','03200302201','03200302202','03200302203','03200302210','03200302211','03200302212','03200302213','03200302220','03200302221','03200302222','03200302223','03200302230','03200302231','03200302232','03200302233','03200302301','03200302303','03200302310','03200302311','03200302312','03200302313','03200302320','03200302322','03200302330','03200302331','03200302332','03200302333','03200303000','03200303001','03200303002','03200303003','03200303010','03200303011','03200303012','03200303013','03200303020','03200303021','03200303022','03200303023','03200303030','03200303031','03200303032','03200303033','03200303100','03200303101','03200303102','03200303103','03200303110','03200303111','03200303112','03200303113','03200303120','03200303121','03200303122','03200303123','03200303130','03200303131','03200303132','03200303133','03200303200','03200303201','03200303202','03200303203','03200303210','03200303211','03200303212','03200303213','03200303220','03200303221','03200303222','03200303223','03200303230','03200303231','03200303232','03200303300','03200303301','03200303302','03200303303','03200303310','03200303311','03200303312','03200303321','03200303330','03200310123','03200310130','03200310131','03200310132','03200310133','03200310202','03200310203','03200310212','03200310213','03200310220','03200310221','03200310222','03200310223','03200310230','03200310231','03200310232','03200310233','03200310301','03200310310','03200310311','03200310313','03200310322','03200310323','03200310332','03200310333','03200311000','03200311001','03200311010','03200311011','03200311020','03200311021','03200311022','03200311023','03200311030','03200311031','03200311032','03200311033','03200311100','03200311101','03200311110','03200311111','03200311120','03200311121','03200311122','03200311123','03200311130','03200311131','03200311132','03200311133','03200311200','03200311201','03200311202','03200311203','03200311210','03200311211','03200311212','03200311213','03200311220','03200311221','03200311222','03200311223','03200311230','03200311231','03200311232','03200311233','03200311300','03200311301','03200311302','03200311303','03200311310','03200311311','03200311312','03200311313','03200311320','03200311321','03200311322','03200311323','03200311330','03200311331','03200311332','03200311333','03200312000','03200312001','03200312002','03200312003','03200312010','03200312011','03200312012','03200312013','03200312020','03200312021','03200312022','03200312023','03200312030','03200312031','03200312032','03200312033','03200312100','03200312101','03200312102','03200312103','03200312110','03200312111','03200312112','03200312113','03200312120','03200312121','03200312122','03200312123','03200312130','03200312131','03200312132','03200312133','03200312200','03200312201','03200312210','03200312211','03200312233','03200312300','03200312301','03200312310','03200312311','03200312322','03200312332','03200312333','03200313000','03200313001','03200313002','03200313003','03200313010','03200313011','03200313012','03200313013','03200313020','03200313021','03200313022','03200313023','03200313030','03200313031','03200313032','03200313033','03200313101','03200313102','03200313103','03200313110','03200313111','03200313112','03200313113','03200313120','03200313121','03200313122','03200313123','03200313130','03200313131','03200313132','03200313133','03200313200','03200313201','03200313210','03200313211','03200313212','03200313213','03200313222','03200313231','03200313232','03200313233','03200313300','03200313301','03200313302','03200313310','03200313311','03200313320','03200313322','03200313323','03200320000','03200320001','03200320002','03200320003','03200320010','03200320011','03200320012','03200320013','03200320020','03200320021','03200320022','03200320023','03200320030','03200320031','03200320032','03200320033','03200320100','03200320101','03200320102','03200320103','03200320110','03200320111','03200320112','03200320113','03200320120','03200320121','03200320122','03200320123','03200320130','03200320131','03200320132','03200320200','03200320201','03200320202','03200320203','03200320210','03200320211','03200320212','03200320213','03200320220','03200320221','03200320222','03200320223','03200320230','03200320231','03200320232','03200320300','03200320302','03200320320','03200321002','03200321020','03200321113','03200321131','03200321132','03200321133','03200321201','03200321203','03200321210','03200321211','03200321212','03200321213','03200321223','03200321230','03200321231','03200321232','03200321233','03200321301','03200321302','03200321303','03200321310','03200321311','03200321312','03200321313','03200321320','03200321321','03200321322','03200321323','03200321330','03200321331','03200321332','03200321333','03200322000','03200322001','03200322002','03200322003','03200322012','03200322013','03200322020','03200322021','03200322022','03200322023','03200322030','03200322031','03200322032','03200322033','03200322102','03200322103','03200322120','03200322121','03200322122','03200322130','03200322131','03200322132','03200322133','03200322201','03200322210','03200322211','03200322300','03200322301','03200322310','03200322311','03200322312','03200322313','03200322331','03200322333','03200323001','03200323010','03200323011','03200323012','03200323013','03200323020','03200323021','03200323022','03200323023','03200323030','03200323031','03200323032','03200323100','03200323101','03200323102','03200323103','03200323110','03200323111','03200323112','03200323113','03200323120','03200323123','03200323132','03200323133','03200323200','03200323201','03200323202','03200323203','03200323210','03200323212','03200323220','03200323221','03200323222','03200323301','03200323303','03200323310','03200323311','03200323312','03200323313','03200323321','03200323330','03200323331','03200330000','03200330001','03200330002','03200330003','03200330010','03200330011','03200330012','03200330013','03200330020','03200330021','03200330022','03200330023','03200330030','03200330031','03200330032','03200330033','03200330100','03200330101','03200330102','03200330103','03200330110','03200330111','03200330112','03200330113','03200330120','03200330121','03200330122','03200330123','03200330130','03200330131','03200330132','03200330133','03200330200','03200330201','03200330202','03200330203','03200330210','03200330211','03200330212','03200330213','03200330220','03200330221','03200330223','03200330230','03200330231','03200330232','03200330233','03200330300','03200330301','03200330302','03200330303','03200330310','03200330311','03200330312','03200330313','03200330320','03200330321','03200330322','03200330323','03200330330','03200330331','03200330332','03200330333','03200331000','03200331001','03200331002','03200331003','03200331010','03200331011','03200331012','03200331013','03200331020','03200331021','03200331022','03200331023','03200331030','03200331031','03200331032','03200331033','03200331100','03200331101','03200331102','03200331103','03200331110','03200331120','03200331121','03200331122','03200331123','03200331131','03200331132','03200331133','03200331200','03200331201','03200331202','03200331203','03200331210','03200331211','03200331212','03200331213','03200331220','03200331221','03200331222','03200331223','03200331230','03200331231','03200331232','03200331233','03200331300','03200331301','03200331302','03200331303','03200331310','03200331311','03200331312','03200331313','03200331320','03200331321','03200331322','03200331323','03200331330','03200332000','03200332001','03200332002','03200332010','03200332011','03200332012','03200332013','03200332023','03200332030','03200332031','03200332032','03200332033','03200332100','03200332101','03200332102','03200332103','03200332110','03200332111','03200332112','03200332113','03200332120','03200332121','03200332122','03200332123','03200332130','03200332131','03200332132','03200332133','03200332200','03200332201','03200332202','03200332203','03200332210','03200332211','03200332212','03200332213','03200332220','03200332221','03200332222','03200332223','03200332230','03200332231','03200332232','03200332233','03200332300','03200332301','03200332302','03200332303','03200332310','03200332311','03200332312','03200332320','03200332321','03200332322','03200332330','03200333000','03200333001','03200333002','03200333003','03200333010','03200333011','03200333012','03200333013','03200333020','03200333021','03200333022','03200333023','03200333030','03200333032','03200333100','03200333101','03200333200','03200333201','03201000002','03201000003','03201000010','03201000011','03201000012','03201000013','03201000020','03201000021','03201000022','03201000023','03201000030','03201000031','03201000032','03201000033','03201000100','03201000101','03201000102','03201000103','03201000110','03201000111','03201000112','03201000113','03201000120','03201000121','03201000130','03201000200','03201000201','03201000202','03201000203','03201000210','03201000211','03201000212','03201000220','03201000221','03201000222','03201000223','03201000230','03201000232','03201000233','03201000311','03201000312','03201000313','03201000330','03201000331','03201000332','03201000333','03201001000','03201001001','03201001002','03201001021','03201001023','03201001030','03201001031','03201001032','03201001033','03201001101','03201001103','03201001110','03201001111','03201001112','03201001113','03201001120','03201001121','03201001122','03201001123','03201001130','03201001131','03201001132','03201001133','03201001200','03201001201','03201001202','03201001203','03201001210','03201001211','03201001212','03201001213','03201001220','03201001221','03201001222','03201001223','03201001230','03201001231','03201001232','03201001233','03201001300','03201001301','03201001302','03201001303','03201001310','03201001311','03201001312','03201001313','03201001320','03201001321','03201001322','03201001323','03201001330','03201001331','03201001332','03201001333','03201002000','03201002002','03201002003','03201002012','03201002013','03201002020','03201002021','03201002022','03201002023','03201002030','03201002031','03201002032','03201002033','03201002102','03201002103','03201002110','03201002111','03201002112','03201002113','03201002120','03201002121','03201002122','03201002123','03201002130','03201002131','03201002132','03201002133','03201002200','03201002201','03201002202','03201002203','03201002210','03201002211','03201002212','03201002213','03201002220','03201002221','03201002222','03201002223','03201002230','03201002231','03201002232','03201002233','03201002300','03201002301','03201002302','03201002303','03201002310','03201002311','03201002312','03201002313','03201002320','03201002321','03201002322','03201002323','03201002330','03201002331','03201002332','03201002333','03201003000','03201003001','03201003002','03201003003','03201003010','03201003011','03201003012','03201003013','03201003020','03201003021','03201003022','03201003023','03201003030','03201003031','03201003032','03201003033','03201003100','03201003101','03201003102','03201003103','03201003110','03201003111','03201003112','03201003113','03201003120','03201003121','03201003122','03201003123','03201003130','03201003131','03201003132','03201003133','03201003200','03201003201','03201003202','03201003203','03201003210','03201003211','03201003212','03201003213','03201003220','03201003221','03201003222','03201003223','03201003230','03201003231','03201003232','03201003233','03201003300','03201003301','03201003302','03201003303','03201003310','03201003311','03201003312','03201003320','03201003321','03201003322','03201003323','03201010000','03201010001','03201010002','03201010003','03201010010','03201010011','03201010012','03201010013','03201010020','03201010021','03201010022','03201010023','03201010030','03201010031','03201010032','03201010033','03201010100','03201010101','03201010102','03201010103','03201010110','03201010111','03201010112','03201010113','03201010120','03201010121','03201010122','03201010123','03201010130','03201010131','03201010132','03201010133','03201010200','03201010201','03201010202','03201010203','03201010210','03201010211','03201010212','03201010213','03201010220','03201010221','03201010222','03201010223','03201010230','03201010231','03201010232','03201010233','03201010300','03201010301','03201010302','03201010303','03201010310','03201010311','03201010312','03201010313','03201010320','03201010321','03201010322','03201010323','03201010330','03201010331','03201010332','03201010333','03201011000','03201011001','03201011002','03201011003','03201011010','03201011011','03201011012','03201011013','03201011020','03201011021','03201011022','03201011023','03201011030','03201011031','03201011032','03201011033','03201011100','03201011101','03201011102','03201011103','03201011110','03201011111','03201011112','03201011113','03201011120','03201011121','03201011122','03201011123','03201011130','03201011131','03201011132','03201011133','03201011200','03201011201','03201011202','03201011203','03201011210','03201011211','03201011212','03201011213','03201011220','03201011221','03201011222','03201011223','03201011230','03201011231','03201011232','03201011233','03201012000','03201012001','03201012002','03201012003','03201012010','03201012011','03201012012','03201012013','03201012020','03201012021','03201012022','03201012023','03201012030','03201012031','03201012032','03201012033','03201012100','03201012101','03201012102','03201012103','03201012110','03201012111','03201012112','03201012113','03201012120','03201012121','03201012122','03201012123','03201012130','03201012131','03201012132','03201012133','03201012200','03201012201','03201012202','03201012203','03201012210','03201012211','03201012212','03201012213','03201012220','03201012221','03201012223','03201012230','03201012231','03201012232','03201012233','03201012300','03201012301','03201012302','03201012303','03201012310','03201012311','03201012312','03201012313','03201012321','03201012322','03201012323','03201012330','03201012331','03201012332','03201013000','03201013001','03201013002','03201013003','03201013010','03201013012','03201013020','03201013021','03201013022','03201013023','03201013030','03201013200','03201013201','03201020001','03201020010','03201020011','03201020021','03201020022','03201020023','03201020032','03201020101','03201020103','03201020110','03201020111','03201020112','03201020113','03201020121','03201020123','03201020130','03201020131','03201020132','03201020133','03201020200','03201020201','03201020202','03201020203','03201020210','03201020211','03201020212','03201020213','03201020220','03201020221','03201020222','03201020223','03201020230','03201020231','03201020232','03201020233','03201020310','03201020311','03201020320','03201020332','03201020333','03201021000','03201021001','03201021002','03201021003','03201021010','03201021011','03201021012','03201021013','03201021020','03201021021','03201021022','03201021030','03201021031','03201021100','03201021101','03201021102','03201021120','03201021200','03201022000','03201022001','03201022002','03201022003','03201022010','03201022011','03201022012','03201022013','03201022020','03201022021','03201022022','03201022023','03201022030','03201022031','03201022032','03201022033','03201022100','03201022101','03201022102','03201022103','03201022110','03201022111','03201022112','03201022113','03201022120','03201022121','03201022123','03201022130','03201022131','03201022132','03201022133','03201022200','03201022201','03201022202','03201022203','03201022210','03201022211','03201022212','03201022213','03201022220','03201022221','03201022222','03201022223','03201022230','03201022231','03201022233','03201022300','03201022302','03201022303','03201022310','03201022311','03201022312','03201022320','03201022321','03201022322','03201022323','03201022330','03201022332','03201023000','03201023002','03201023003','03201023011','03201023012','03201023013','03201023020','03201023021','03201023022','03201023030','03201023031','03201023032','03201023033','03201023100','03201023101','03201023102','03201023103','03201023120','03201023121','03201023122','03201023123','03201023132','03201023200','03201023210','03201023211','03201023213','03201023230','03201023231','03201023232','03201023233','03201023300','03201023301','03201023302','03201023303','03201023310','03201023312','03201023313','03201023320','03201023321','03201023322','03201023323','03201023330','03201023331','03201023332','03201023333','03201030001','03201030003','03201030010','03201030011','03201030012','03201030013','03201030021','03201030030','03201030031','03201030032','03201030033','03201030100','03201030101','03201030102','03201030103','03201030120','03201030121','03201030122','03201030123','03201032202','03201032220','03201032222','03201100000','03201100001','03201100002','03201100003','03201100010','03201100011','03201100012','03201100013','03201100020','03201100021','03201100030','03201100100','03201100101','03201100102','03201100110','03201200000','03201200011','03201200020','03201200022','03201200023','03201200032','03201200100','03201200101','03201200200','03201200201','03201200202','03201200203','03201200210','03201200211','03201200212','03201200213','03201200220','03201200221','03201200222','03201200223','03201200230','03201200231','03201200232','03201200233','03201200300','03201200301','03201200302','03201200303','03201200312','03201200313','03201200320','03201200321','03201200322','03201200323','03201200330','03201200331','03201200332','03201200333','03201201010','03201201011','03201201100','03201201101','03201201110','03201201111','03201201112','03201201113','03201201130','03201201131','03201201133','03201201202','03201201220','03201201222','03201202000','03201202001','03201202002','03201202003','03201202010','03201202011','03201202012','03201202013','03201202020','03201202022','03201202023','03201202030','03201202031','03201202100','03201202101','03201202102','03201202103','03201202111','03201202120','03201202121','03201202123','03201202130','03201202131','03201202132','03201202133','03201202200','03201202201','03201202233','03201202301','03201202303','03201202310','03201202311','03201202312','03201202313','03201202322','03201202323','03201202330','03201202331','03201202332','03201202333','03201203000','03201203022','03201203023','03201203031','03201203032','03201203033','03201203120','03201203121','03201203122','03201203123','03201203130','03201203132','03201203200','03201203201','03201203202','03201203203','03201203210','03201203211','03201203212','03201203213','03201203220','03201203221','03201203300','03201203301','03201203302','03201203303','03201203310','03201210000','03201210002','03201210020','03201210021','03201210022','03201210023','03201210200','03201210201','03201210203','03201210210','03201210212','03201210230','03201210232','03201212002','03201212003','03201212010','03201212012','03201220011','03201220020','03201220022','03201220100','03201220101','03201220102','03201220103','03201220110','03201220120','03201220121','03201220200','03202000000','03202000001','03202000002','03202000003','03202000010','03202000011','03202000012','03202000013','03202000020','03202000021','03202000022','03202000023','03202000030','03202000031','03202000032','03202000033','03202000100','03202000101','03202000102','03202000103','03202000110','03202000111','03202000112','03202000113','03202000120','03202000121','03202000122','03202000123','03202000130','03202000131','03202000132','03202000200','03202000201','03202000202','03202000203','03202000210','03202000211','03202000212','03202000213','03202000220','03202000221','03202000222','03202000223','03202000230','03202000231','03202000232','03202000233','03202000300','03202000301','03202000302','03202000303','03202000310','03202000311','03202000312','03202000313','03202000320','03202000321','03202000322','03202000323','03202000330','03202000331','03202000332','03202000333','03202001000','03202001002','03202001020','03202001022','03202001200','03202001201','03202001202','03202001203','03202001212','03202001213','03202001220','03202001221','03202001222','03202001223','03202001230','03202001231','03202001232','03202001233','03202001302','03202001313','03202001320','03202001321','03202001322','03202001323','03202001330','03202001331','03202001332','03202001333','03202002000','03202002001','03202002002','03202002003','03202002010','03202002011','03202002012','03202002013','03202002020','03202002021','03202002022','03202002023','03202002030','03202002031','03202002032','03202002033','03202002100','03202002101','03202002102','03202002103','03202002110','03202002111','03202002112','03202002113','03202002120','03202002121','03202002122','03202002123','03202002130','03202002131','03202002200','03202002201','03202002202','03202002203','03202002210','03202002211','03202002220','03202002222','03202003000','03202003001','03202003002','03202003003','03202003010','03202003011','03202003012','03202003013','03202003020','03202003021','03202003023','03202003030','03202003031','03202003032','03202003033','03202003100','03202003101','03202003102','03202003103','03202003110','03202003111','03202003112','03202003113','03202003120','03202003121','03202003122','03202003123','03202003130','03202003131','03202003132','03202003133','03202010100','03202010101','03202010110','03202010111','03202010202','03202010203','03202010212','03202010220','03202010221','03202010222','03202010223','03202010230','03202010232','03202010333','03202011222','03202011223','03202011232','03202012000','03202012001','03202012002','03202012003','03202012010','03202012012','03202012020','03202012021','03202012022','03202012030','03202012111','03202012113','03202012130','03202012131','03202012132','03202012133','03202012311','03202013000','03202013001','03202013002','03202013003','03202013010','03202013012','03202013020','03202013021','03202013022','03202013023','03202013030','03202013032','03202013111','03202013112','03202013113','03202013121','03202013123','03202013130','03202013131','03202013132','03202013133','03202013200','03202013201','03202013203','03202013210','03202013212','03202020000','03202100002','03202100003','03202100020','03202100021','03202100022','03202100023','03202100030','03202101123','03202101132','03202101133','03202101211','03202101213','03202101231','03202101300','03202101301','03202101302','03202101303','03202101310','03202101311','03202101312','03202101313','03202101320','03202101321','03202101323','03202101330','03202101332','03202101333','03202102000','03202102001','03202102002','03202102003','03202102010','03202102011','03202102012','03202102013','03202102020','03202102021','03202102022','03202102023','03202102030','03202102031','03202102032','03202102033','03202102100','03202102102','03202102201','03202102210','03202102331','03202102333','03202103032','03202103033','03202103101','03202103103','03202103110','03202103111','03202103112','03202103113','03202103120','03202103121','03202103122','03202103123','03202103130','03202103131','03202103132','03202103133','03202103202','03202103203','03202103210','03202103211','03202103212','03202103213','03202103220','03202103221','03202103222','03202103223','03202103230','03202103231','03202103232','03202103233','03202103300','03202103301','03202103302','03202103303','03202103310','03202103311','03202103312','03202103313','03202103320','03202103321','03202103322','03202103323','03202103331','03202110001','03202110003','03202110010','03202110011','03202110012','03202110013','03202110100','03202110200','03202110201','03202110202','03202110203','03202110220','03202110222','03202112000','03202112002','03202112003','03202112020','03202112021','03202112022','03202112023','03202112200','03202112201','03202112202','03202112203','03202112220','03202112221','03202112222','03202112223','03202112230','03202112232','03202121001','03202121010','03202121011','03202121021','03202121022','03202121023','03202121030','03202121031','03202121032','03202121033','03202121100','03202121101','03202121102','03202121111','03202121113','03202121123','03202121131','03202121132','03202121133','03202121201','03202121203','03202121210','03202121211','03202121212','03202121213','03202121221','03202121223','03202121230','03202121231','03202121232','03202121233','03202121300','03202121301','03202121302','03202121303','03202121310','03202121311','03202121312','03202121313','03202121320','03202121321','03202121322','03202121323','03202121330','03202121331','03202121332','03202121333','03202123000','03202123001','03202123002','03202123003','03202123010','03202123011','03202123012','03202123013','03202123020','03202123021','03202123022','03202123023','03202123030','03202123031','03202123032','03202123033','03202123100','03202123101','03202123102','03202123103','03202123110','03202123111','03202123112','03202123113','03202123120','03202123121','03202123122','03202123123','03202123130','03202123131','03202123132','03202123133','03202123201','03202123203','03202123210','03202123211','03202123212','03202123213','03202123221','03202123230','03202123231','03202123232','03202123233','03202123300','03202123301','03202123302','03202123303','03202123310','03202123311','03202123320','03202123321','03202123322','03202123323','03202130000','03202130001','03202130002','03202130003','03202130010','03202130011','03202130012','03202130013','03202130020','03202130021','03202130022','03202130023','03202130030','03202130031','03202130032','03202130033','03202130122','03202130200','03202130201','03202130202','03202130203','03202130210','03202130211','03202130212','03202130213','03202130220','03202130221','03202130222','03202130223','03202130230','03202130231','03202130232','03202130233','03202130300','03202130301','03202130302','03202130320','03202130321','03202130322','03202130323','03202132000','03202132001','03202132002','03202132003','03202132010','03202132011','03202132012','03202132013','03202132020','03202132021','03202132022','03202132023','03202132030','03202132031','03202132032','03202132033','03202132100','03202132101','03202132102','03202132103','03202132112','03202132120','03202132121','03202132122','03202132123','03202132130','03202132132','03202132133','03202132200','03202132201','03202132203','03202132210','03202132211','03202132212','03202132213','03202132230','03202132231','03202132232','03202132233','03202132300','03202132301','03202132302','03202132303','03202132310','03202132311','03202132312','03202132313','03202132320','03202132321','03202132322','03202132323','03202301011','03202301013','03202301031','03202301033','03202301100','03202301101','03202301102','03202301103','03202301110','03202301112','03202301113','03202301120','03202301121','03202301122','03202301123','03202301130','03202301131','03202301132','03202301133','03202301300','03202301301','03202301310','03202301311','03202301312','03202301313','03202301330','03202301331','03202301332','03202301333','03202310002','03202310003','03202310011','03202310012','03202310013','03202310020','03202310021','03202310022','03202310023','03202310030','03202310031','03202310032','03202310033','03202310100','03202310101','03202310102','03202310103','03202310110','03202310111','03202310112','03202310113','03202310120','03202310121','03202310122','03202310123','03202310130','03202310131','03202310132','03202310133','03202310200','03202310201','03202310202','03202310203','03202310210','03202310211','03202310212','03202310213','03202310300','03202310301','03202310310','03202310311','03202310312','03202310313','03202310321','03202310323','03202310330','03202310331','03202310332','03202310333','03202311000','03202311002','03202311020','03202311022','03202311200','03202311202','03202311220','03202311222','03202312100','03202312101','03202312102','03202312103','03202312110','03202312111','03202312112','03202312113','03202312121','03202312123','03202312130','03202312131','03202312132','03202312133','03202313000','03202313002','03311001130','03311001131','03311001132','03311001133','03311001313','03311001331','03311003101','03311003103','03311003110','03311003112','03311003232','03311003233','03311003322','03311003323','03311010202','03311010220','03311011111','03311013031','03311013033','03311013222','03311013233','03311013322','03311021001','03311021003','03311021010','03311021011','03311021012','03311021013','03311021031','03311021100','03311021101','03311021102','03311021103','03311021120','03311021121','03311032210','03311032211','03311032212','03311032213','03311033022','03311033103','03311033112','03311033120','03311033121','03311033123','03311033130','03311033131','03311033132','03311033133','03311033231','03311033233','03311033320','03311033321','03311033322','03311033323','03311100000','03311100121','03311100322','03311101000','03311101012','03311101013','03311101020','03311101021','03311101022','03311101023','03311101030','03311101031','03311101032','03311101033','03311101120','03311101121','03311101122','03311101123','03311101130','03311101200','03311101201','03311101203','03311101210','03311101211','03311101212','03311101213','03311101221','03311101222','03311101223','03311101230','03311101231','03311101233','03311101300','03311101301','03311101302','03311101303','03311101320','03311103000','03311103001','03311103221','03311103223','03311103230','03311103232','03311110231','03311110233','03311110320','03311110322','03311111201','03311111203','03311111210','03311111220','03311111221','03311111222','03311111223','03311111232','03311111333','03311112131','03311112133','03311112321','03311112323','03311113000','03311113001','03311113002','03311113003','03311113010','03311113011','03311113012','03311113013','03311113020','03311113021','03311113022','03311113030','03311113031','03311113032','03311113033','03311113100','03311113101','03311113102','03311113103','03311113110','03311113112','03311113113','03311113120','03311113121','03311113122','03311113123','03311113130','03311113132','03311113203','03311113210','03311113211','03311113212','03311113213','03311113221','03311113230','03311113231','03311113233','03311113300','03311113301','03311113302','03311113303','03311113310','03311113312','03311113320','03311113321','03311113322','03311113323','03311113330','03311113331','03311113332','03311113333','03311120231','03311120233','03311120320','03311120321','03311120322','03311120323','03311121211','03311121212','03311121213','03311121232','03311122033','03311122112','03311122113','03311122120','03311122121','03311122122','03311122123','03311122130','03311122131','03311122132','03311122133','03311122203','03311122210','03311122211','03311122212','03311122213','03311122221','03311122223','03311122230','03311122231','03311122232','03311122233','03311122300','03311122301','03311122302','03311122303','03311122310','03311122311','03311122312','03311122313','03311122320','03311122321','03311122322','03311122323','03311122330','03311122331','03311122332','03311122333','03311123002','03311123020','03311123032','03311123033','03311123200','03311123202','03311123203','03311123210','03311123211','03311123212','03311123220','03311123221','03311123222','03311123223','03311123230','03311123231','03311123232','03311123233','03311123320','03311123322','03311123331','03311123333','03311131011','03311131031','03311131033','03311131100','03311131101','03311131103','03311131112','03311131113','03311131120','03311131121','03311131122','03311131123','03311131130','03311131131','03311131132','03311131202','03311131203','03311131211','03311131212','03311131213','03311131220','03311131221','03311131230','03311131231','03311131300','03311131301','03311131302','03311131320','03311132110','03311132203','03311132212','03311132220','03311132221','03311132222','03311132223','03311132230','03311133001','03311133003','03311133010','03311133012','03311211011','03311211100','03311211102','03311211111','03311211113','03311300000','03311300001','03311300002','03311300003','03311300010','03311300011','03311300012','03311300013','03311300020','03311300021','03311300022','03311300023','03311300030','03311300100','03311300101','03311300102','03311300103','03311300110','03312120230','03312120231','03312120233','03312122002','03312122003','03312122113','03312122131','03312122133','03312123000','03312123002','03312123020','03312123022','03312130032','03312130033','03312130210','10223033301','10223033303','10223033310','10223033312','10223033321','10223033323','10223033330','10223033332','10223103230','10223103231','10223103232','10223103233','10223103320','10223103322','10223121011','10223121100','10223300031','10223300032','10223300033','10223300210','10223300211','10232232221','10232232223','10232232230','10232232231','10232232232','10232232233','12000313012','12000313013','12000313030','12000313031','12000313102','12000320212','12000320213','12000320230','12000320231','12000320302','12000320320','12000321002','12000321003','12000321020','12000321021','12001113013','12001113031','12001113122','12001113123','12001113132','12001113133','12001113300','12001113301','12001113302','12001113303','12001113310','12001113311','12001113312','12001113313','12001113321','12001130332','12001130333','12001131222','12001132110','12001132111','12001132113','12001133000','12001212211','12001212213','12001303030','12001303032','12001303033','12001310032','12001310033','12001310122','12001310210','12001310211','12001310212','12001310213','12001310300','12001310302','12001313201','12001313203','12001313210','12001313211','12001313212','12001313213','12001313230','12001313231','12001320203','12001320212','12001320213','12001320221','12001320230','12001320231','12001320232','12001320233','12002013301','12002013302','12002013303','12002013310','12002013311','12002013312','12002013313','12002013320','12002013321','12002013322','12002013323','12002013330','12002013331','12002013332','12002013333','12002031101','12002031103','12002031110','12002031111','12002031112','12002031113','12002033101','12002033103','12002033110','12002033112','12002033121','12002033130','12002033313','12002033331','12002033333','12002102202','12002102220','12002111322','12002111323','12002113100','12002113101','12002113102','12002113103','12002113110','12002113112','12002113113','12002113120','12002113121','12002122202','12002122203','12002122220','12002122221','12002122222','12002122223','12002122230','12002122232','12002130330','12002130331','12002130332','12002130333','12002131001','12002131003','12002131010','12002131011','12002131012','12002131023','12002131031','12002131032','12002131033','12002131103','12002131120','12002131121','12002131122','12002131123','12002131130','12002131131','12002131132','12002131133','12002131201','12002131202','12002131203','12002131210','12002131211','12002131212','12002131213','12002131221','12002131230','12002131231','12002131300','12002131301','12002131302','12002131303','12002131310','12002131311','12002131312','12002131320','12002131321','12002131323','12002131330','12002132132','12002132133','12002132303','12002132310','12002132311','12002132312','12002132313','12002132321','12002132330','12002132331','12002133023','12002133030','12002133031','12002133032','12002133033','12002133120','12002133121','12002133122','12002133123','12002133130','12002133131','12002133132','12002133133','12002133200','12002133201','12002133202','12002133203','12002133210','12002133211','12002133212','12002133213','12002133220','12002133221','12002133230','12002133301','12002133303','12002133310','12002133311','12002133312','12002133313','12002133321','12002133330','12002133331','12002300000','12002300001','12002301302','12002301303','12002301312','12002301313','12002301320','12002301321','12002301322','12002301323','12002301330','12002301331','12002301332','12002301333','12002303100','12002303101','12002303110','12002310011','12002310012','12002310013','12002310023','12002310030','12002310031','12002310032','12002310033','12002310100','12002310101','12002310102','12002310103','12002310120','12002310200','12002310201','12002310202','12002310203','12002310210','12002310220','12002330131','12002330133','12002331020','12002331021','12002331022','12002331023','12002332032','12002332033','12002332123','12002332132','12002332210','12002332211','12002332301','12002332310','12002332320','12002332322','12002332323','12002332331','12002332333','12002333000','12002333001','12002333002','12002333003','12002333023','12002333032','12002333201','12002333210','12002333220','12002333222','12003000200','12003000201','12003000202','12003000203','12003013022','12003013023','12003013032','12003013200','12003013201','12003013210','12003020020','12003020022','12003020023','12003020032','12003020200','12003020201','12003020202','12003020203','12003020210','12003020220','12003020221','12003022000','12003022002','12003022020','12003022022','12003022200','12003023102','12003023103','12003023120','12003023121','12003031321','12003031323','12003031330','12003031332','12003032112','12003032113','12003032121','12003032123','12003032130','12003032131','12003032132','12003032133','12003033100','12003033101','12003033102','12003033103','12003033110','12003033112','12003033113','12003033120','12003033121','12003033130','12003033131','12003102021','12003102023','12003102030','12003102032','12003111013','12003111102','12003111120','12003111203','12003111210','12003111212','12003111213','12003111221','12003111230','12003111231','12003113300','12003113301','12003113302','12003113303','12003113310','12003113311','12003113312','12003113313','12003113320','12003113321','12003113330','12003113331','12003120033','12003120122','12003120123','12003120211','12003120213','12003120231','12003120300','12003120301','12003120302','12003120303','12003120320','12003120321','12003120322','12003120323','12003120330','12003120332','12003120333','12003121222','12003121223','12003121232','12003121233','12003122033','12003122100','12003122101','12003122102','12003122103','12003122110','12003122111','12003122112','12003122113','12003122120','12003122121','12003122122','12003122123','12003122130','12003122131','12003122132','12003122133','12003122211','12003122300','12003122301','12003122310','12003122311','12003122321','12003122323','12003122330','12003122332','12003123000','12003123001','12003123002','12003123003','12003123010','12003123011','12003123012','12003123020','12003123022','12003123023','12003123200','12003123201','12003130000','12003130001','12003130002','12003130003','12003130021','12003200211','12003200213','12003200300','12003200301','12003200302','12003200303','12003200310','12003200312','12003200321','12003200330','12003201132','12003201133','12003201310','12003201311','12003201312','12003201313','12003202030','12003202031','12003202032','12003202033','12003202120','12003202122','12003202123','12003202210','12003202211','12003202213','12003202231','12003202300','12003202301','12003202302','12003202303','12003202320','12003202321','12003203022','12003203023','12003203032','12003203113','12003203131','12003203133','12003203200','12003203201','12003203210','12003203311','12003210133','12003210311','12003210313','12003211012','12003211013','12003211022','12003211023','12003211030','12003211031','12003211033','12003211102','12003211103','12003211120','12003211121','12003211122','12003211200','12003211201','12003211202','12003211203','12003212001','12003212002','12003212003','12003212010','12003212012','12003212020','12003212021','12003212022','12003212023','12003212200','12003212201','12003220103','12003220112','12003220121','12003220130','12003221220','12003221221','12003221222','12003221223','12003222310','12003222311','12003222312','12003222313','12003222321','12003222323','12003222330','12003222331','12003222332','12003222333','12003223200','12003223202','12003223220','12003223222','12003223313','12003230033','12003230122','12003230211','12003230213','12003230300','12003230302','12003231302','12003231303','12003231320','12003231321','12003231322','12003231323','12003232200','12003232202','12003232220','12003233022','12003233023','12003233200','12003233201','12003302311','12003302313','12003303200','12003303202','12010010001','12010010003','12010010010','12010010011','12010010012','12010010013','12010021133','12010021311','12010030022','12010030023','12010030032','12010030200','12010030201','12010030202','12010030203','12010030210','12010030212','12010033302','12010033303','12010033320','12010033321','12010033322','12010033323','12010033330','12010033332','12010200032','12010200033','12010200103','12010200122','12010200210','12010200211','12010200300','12010211101','12010211110','12010211230','12010211231','12010211232','12010211233','12010213010','12010213011','12010213012','12010213013','12010213131','12010213132','12010213133','12010213311','12010213321','12010213322','12010213323','12010213330','12010213332','12010230203','12010230212','12010230221','12010230222','12010230223','12010230230','12010230232','12010230233','12010231100','12010231101','12010231102','12010231103','12010231110','12010231112','12010231223','12010231230','12010231232','12010231233','12010232000','12010232001','12010232003','12010232010','12010232011','12010232012','12010232013','12010232020','12010232021','12010232022','12010232023','12010232030','12010232031','12010232032','12010233001','12010233010','12010302200','12010321012','12010321013','12010321020','12010321021','12010321022','12010321023','12010321032','12010321200','12010321201','12010321203','12010321210','12010321211','12010321212','12010321230','12010321300','12012000101','12012000103','12012000110','12012000111','12012000112','12012000113','12012000121','12012000130','12012000131','12012000132','12012000133','12012000310','12012000311','12012001000','12012001001','12012001002','12012001003','12012001020','12012001021','12012001022','12012001230','12012001231','12012001232','12012001233','12012002202','12012002211','12012002212','12012002213','12012002220','12012002230','12012002231','12012002233','12012002300','12012002302','12012002303','12012002312','12012002320','12012002321','12012002322','12012002323','12012002330','12012002331','12012002332','12012003230','12012003231','12012003232','12012003233','12012003302','12012003303','12012003312','12012003313','12012003320','12012003321','12012003322','12012003323','12012003330','12012003331','12012003332','12012003333','12012010221','12012010222','12012010223','12012010230','12012010232','12012011313','12012011331','12012011333','12012012203','12012012212','12012012221','12012012222','12012012223','12012012230','12012012232','12012013200','12012013201','12012013202','12012013203','12012013220','12012013221','12012020003','12012020010','12012020011','12012020012','12012020013','12012020021','12012020030','12012020031','12012020100','12012020101','12012020110','12012021010','12012021011','12012021013','12012021100','12012021101','12012021102','12012021103','12012021110','12012021111','12012021112','12012021113','12012021120','12012023011','12012023013','12012023031','12012023100','12012023101','12012023102','12012023103','12012023110','12012023112','12012023120','12012023121','12012030000','12012100202','12012100203','12012100210','12012100211','12012100212','12012100213','12012100220','12012100221','12012100222','12012100230','12012220131','12012220133','12012220311','12012221020','12012221021','12012221022','12012221023','12012221030','12012221032','12012221200','12012221201','12012221202','12012221203','12012221210','12012221212','12020020202','12020020220','12020022203','12020022212','12020022312','12020022313','12020022330','12020022331','12020022332','12020022333','12020023202','12020023220','12020023221','12020023222','12020023223','12020023230','12020023232','12020033032','12020033033','12020033213','12020033223','12020033230','12020033231','12020033232','12020033233','12020033320','12020033321','12020033322','12020033332','12020033333','12020101131','12020101133','12020110020','12020110022','12020110101','12020110102','12020110103','12020110110','12020110111','12020110112','12020110113','12020110121','12020110123','12020110130','12020110131','12020110132','12020110133','12020111030','12020111031','12020111032','12020111033','12020111120','12020111122','12020111210','12020111211','12020112103','12020112112','12020112121','12020112130','12020113203','12020113212','12020113221','12020113223','12020113230','12020113232','12020121222','12020121223','12020121303','12020121312','12020121321','12020121330','12020122000','12020122001','12020122002','12020122003','12020122012','12020122013','12020122030','12020122031','12020122100','12020122101','12020122102','12020122103','12020122121','12020122123','12020122232','12020122233','12020122302','12020122303','12020122311','12020122312','12020122313','12020122321','12020122323','12020123000','12020123001','12020123112','12020123113','12020123130','12020123131','12020123223','12020130020','12020130021','12020130023','12020130202','12020130203','12020130220','12020130221','12020130311','12020130313','12020130331','12020130333','12020131000','12020131001','12020131002','12020131003','12020131022','12020131023','12020131120','12020131121','12020131122','12020131123','12020131200','12020131201','12020131202','12020131203','12020131210','12020131212','12020131220','12020131221','12020131222','12020131223','12020131230','12020132003','12020132012','12020132020','12020132021','12020132022','12020132023','12020132030','12020132031','12020132032','12020132033','12020133010','12020133011','12020133012','12020133013','12020133220','12020133221','12020133222','12020133223','12020200002','12020200003','12020200020','12020200021','12020200022','12020200023','12020200132','12020200133','12020200202','12020200203','12020200220','12020200221','12020200222','12020200223','12020200230','12020200231','12020200232','12020200233','12020200300','12020200301','12020200302','12020200303','12020200310','12020200311','12020200312','12020200320','12020200321','12020200322','12020200330','12020200331','12020201001','12020201010','12020202000','12020202001','12020202002','12020202003','12020202010','12020202011','12020202012','12020202013','12020202020','12020202021','12020202022','12020202023','12020202030','12020202031','12020202032','12020202033','12020202100','12020202101','12020202102','12020202113','12020202120','12020202121','12020202122','12020202123','12020202130','12020202131','12020202132','12020202133','12020202201','12020202223','12020202230','12020202231','12020202232','12020202233','12020202300','12020202301','12020202303','12020202310','12020202311','12020202312','12020202320','12020202322','12020203002','12020203020','12020203212','12020203213','12020203230','12020203231','12020203302','12020203303','12020210133','12020210313','12020211001','12020211003','12020211010','12020211011','12020211012','12020211013','12020211020','12020211021','12020211022','12020211023','12020211030','12020211031','12020211032','12020211033','12020211100','12020211101','12020211102','12020211103','12020211110','12020211111','12020211112','12020211113','12020211120','12020211121','12020211122','12020211123','12020211130','12020211131','12020211132','12020211133','12020211200','12020211201','12020211202','12020211203','12020211210','12020211211','12020211212','12020211213','12020211220','12020211221','12020211230','12020211231','12020211232','12020211233','12020211300','12020211301','12020211311','12020211322','12020211323','12020211331','12020212022','12020212023','12020212032','12020212121','12020212123','12020212130','12020212132','12020212133','12020212210','12020212223','12020212230','12020212231','12020212232','12020212233','12020212300','12020212301','12020212302','12020212303','12020212311','12020212312','12020212313','12020212330','12020212331','12020212333','12020213000','12020213001','12020213002','12020213003','12020213010','12020213011','12020213022','12020213023','12020213032','12020213100','12020213101','12020213102','12020213103','12020213110','12020213111','12020213112','12020213113','12020213130','12020213131','12020213200','12020213201','12020213202','12020213203','12020213212','12020213213','12020213220','12020213221','12020213222','12020213223','12020213230','12020213231','12020213232','12020213233','12020213312','12020213313','12020213330','12020213331','12020213333','12020220001','12020221322','12020221323','12020222020','12020222021','12020222022','12020222023','12020222121','12020222123','12020222130','12020222132','12020222301','12020222310','12020223033','12020223122','12020223233','12020223322','12020223323','12020223332','12020230000','12020230001','12020230002','12020230003','12020230010','12020230011','12020230012','12020230013','12020230111','12020230113','12020230130','12020230131','12020230232','12020230233','12020231000','12020231001','12020231002','12020231020','12020231021','12020231022','12020231023','12020231030','12020231032','12020231110','12020231111','12020231112','12020231113','12020232010','12020232011','12020232310','12020232311','12020232312','12020232313','12020233010','12020233011','12020233012','12020233013','12020300000','12020300002','12020300010','12020300011','12020300012','12020300013','12020300021','12020300022','12020300023','12020300030','12020300031','12020300032','12020300101','12020300103','12020300110','12020300111','12020300112','12020300113','12020300130','12020300131','12020300200','12020300201','12020300202','12020300203','12020300210','12020300220','12020300221','12020300303','12020300312','12020300321','12020300323','12020300330','12020300331','12020300332','12020300333','12020301000','12020301003','12020301012','12020301013','12020301021','12020301030','12020301031','12020301102','12020301103','12020301112','12020301120','12020301121','12020301130','12020301210','12020301211','12020301212','12020301213','12020301220','12020301221','12020301222','12020301223','12020301230','12020301231','12020301232','12020301233','12020301300','12020301302','12020301312','12020301313','12020301320','12020301321','12020301322','12020301323','12020301333','12020302000','12020302002','12020302012','12020302013','12020302030','12020302031','12020302033','12020302100','12020302101','12020302102','12020302103','12020302110','12020302111','12020302112','12020302113','12020302120','12020302121','12020302122','12020302123','12020302130','12020302131','12020302132','12020302133','12020302202','12020302203','12020302211','12020302212','12020302220','12020302221','12020302222','12020302230','12020302231','12020302232','12020302233','12020302300','12020302301','12020302310','12020302311','12020302312','12020302313','12020302320','12020302321','12020302322','12020302323','12020302330','12020302331','12020302332','12020302333','12020303000','12020303001','12020303002','12020303003','12020303010','12020303011','12020303012','12020303013','12020303020','12020303021','12020303022','12020303023','12020303030','12020303031','12020303032','12020303033','12020303100','12020303102','12020303103','12020303112','12020303121','12020303130','12020303200','12020303201','12020303202','12020303203','12020303210','12020303211','12020303212','12020303213','12020303220','12020303221','12020303222','12020303223','12020303303','12020303320','12020303321','12020303322','12020303323','12020303330','12020310012','12020310013','12020310022','12020310023','12020310030','12020310110','12020310111','12020310112','12020310113','12020310123','12020310200','12020310201','12020310210','12020310212','12020310221','12020310223','12020310230','12020310232','12020311000','12020311002','12020311013','12020311031','12020311032','12020311033','12020311100','12020311101','12020311102','12020311120','12020311122','12020311210','12020311211','12020312121','12020312123','12020312130','12020312132','12020312221','12020312223','12020312230','12020312232','12020313000','12020313002','12020313310','12020313312','12020313313','12020313330','12020313331','12020320000','12020320002','12020320003','12020320010','12020320011','12020320100','12020320101','12020320110','12020320111','12020320113','12020321000','12020321001','12020321002','12020321003','12020321021','12020321030','12020321031','12020321032','12020321033','12020321113','12020321211','12020321311','12020321312','12020321313','12020321330','12020321331','12020321332','12020321333','12020322012','12020322013','12020322030','12020322031','12020322101','12020322103','12020322110','12020322212','12020322213','12020322230','12020322231','12020322311','12020322313','12020323022','12020323023','12020323033','12020323113','12020323122','12020323131','12020323132','12020323133','12020323200','12020323201','12020323202','12020323310','12020323311','12020323331','12020323333','12020330001','12020330002','12020330003','12020330112','12020330113','12020330130','12020330131','12020330200','12020330201','12020330202','12020330203','12020330210','12020330212','12020330213','12020330220','12020330221','12020330222','12020330223','12020330230','12020330231','12020330320','12020331203','12020331212','12020331221','12020331222','12020331230','12020331323','12020331332','12020332002','12020332020','12020332021','12020332022','12020332023','12020332200','12020332201','12020332220','12020332222','12020332223','12020332233','12020332302','12020332320','12020332322','12020333000','12020333112','12020333121','12020333123','12020333130','12020333131','12020333132','12020333133','12020333310','12020333311','12021000022','12021000023','12021000100','12021000101','12021000102','12021000103','12021000110','12021000111','12021000112','12021000113','12021000120','12021000121','12021000122','12021000123','12021000130','12021000131','12021000200','12021000201','12021000300','12021000301','12021001000','12021001001','12021001002','12021001003','12021001010','12021001011','12021001012','12021001013','12021001020','12021001021','12021001023','12021001030','12021001032','12021002322','12021002323','12021003203','12021003212','12021003221','12021003223','12021003230','12021003232','12021003301','12021003303','12021003310','12021003321','12021020100','12021020101','12021021011','12021021100','12021021213','12021021231','12021023213','12021023221','12021023223','12021023230','12021023231','12021023232','12021023233','12021023302','12021023320','12021023321','12021023322','12021023323','12021023330','12021023332','12021200021','12021200023','12021200030','12021200032','12021200110','12021200111','12021200112','12021200113','12021200210','12021200302','12021200303','12021200312','12021200320','12021200321','12021200330','12021201001','12021201003','12021201010','12021201011','12021201012','12021201013','12021201100','12021201101','12021201102','12021201103','12021201110','12021202011','12021202013','12021202100','12021202102','12021202103','12021202112','12021202113','12021202120','12021202121','12021202123','12021202130','12021202131','12021202132','12021202202','12021202203','12021202212','12021202220','12021202221','12021202230','12021202320','12021202321','12021202322','12021202323','12021202332','12021202333','12021203221','12021203222','12021203223','12021203301','12021203303','12021203310','12021203312','12021210010','12021210012','12021210221','12021210223','12021210230','12021212123','12021212300','12021212301','12021220102','12021220103','12021220110','12021220111','12021220120','12021220121','12021220221','12021220223','12021220230','12021220232','12021222320','12021222321','12021222322','12021222323','12022000222','12022000223','12022001011','12022001013','12022001100','12022001101','12022001102','12022001103','12022001110','12022001112','12022002000','12022002001','12022002211','12022002213','12022002300','12022002302','12022003010','12022003011','12022003012','12022003013','12022003323','12022010312','12022010313','12022013302','12022013303','12022013320','12022013321','12022020023','12022020032','12022020201','12022020210','12022021003','12022021021','12022022112','12022022113','12022022130','12022022131','12022031013','12022031031','12022032003','12022032012','12022032021','12022032030','12022033013','12022033030','12022033031','12022033033','12022033102','12022033120','12022033122','12022033200','12022033201','12022033202','12022033203','12022100012','12022100013','12022100030','12022100031','12022101031','12022101033','12022101110','12022101112','12022101113','12022101120','12022101122','12022101123','12022101221','12022101223','12022101230','12022101232','12022101300','12022101301','12022101322','12022101331','12022101333','12022102130','12022102131','12022102132','12022102133','12022102212','12022102221','12022102230','12022103003','12022103012','12022103021','12022103030','12022103031','12022103032','12022103033','12022103100','12022103111','12022103210','12022103211','12022103311','12022103313','12022103332','12022103333','12022110001','12022110011','12022110012','12022110013','12022110030','12022110031','12022110033','12022110100','12022110101','12022110102','12022110103','12022110111','12022110112','12022110113','12022110120','12022110121','12022110122','12022110130','12022110131','12022110220','12022110222','12022110223','12022111000','12022111001','12022111002','12022111003','12022111012','12022111021','12022111030','12022111200','12022111201','12022111301','12022111303','12022111310','12022111312','12022112023','12022112031','12022112032','12022112033','12022112112','12022112113','12022112120','12022112121','12022112122','12022112123','12022112130','12022112132','12022112200','12022112201','12022112202','12022112203','12022112210','12022112220','12022112221','12022112300','12022112301','12022112302','12022112303','12022113012','12022113030','12022113331','12022120123','12022120230','12022120231','12022120232','12022120233','12022120300','12022120301','12022120310','12022121001','12022121003','12022121010','12022121012','12022121110','12022121111','12022122023','12022122131','12022122201','12022122210','12022122220','12022122222','12022122223','12022123020','12022123021','12022123022','12022123023','12022123030','12022123031','12022123033','12022123122','12022123123','12022123132','12022123232','12022123233','12022123300','12022123301','12022123310','12022123313','12022123322','12022123331','12022130113','12022130131','12022130333','12022131002','12022131020','12022131222','12022131333','12022132000','12022132001','12022132002','12022132003','12022132012','12022132013','12022132021','12022132030','12022132031','12022132032','12022132102','12022132103','12022132120','12022132121','12022132122','12022132123','12022132130','12022132131','12022132132','12022132133','12022132200','12022132201','12022132202','12022132203','12022132210','12022132211','12022132212','12022132213','12022132220','12022132230','12022132231','12022132233','12022132300','12022132301','12022132302','12022132303','12022132312','12022132320','12022132321','12022132322','12022132330','12022133023','12022133032','12022133111','12022133121','12022133122','12022133123','12022133130','12022133132','12022133133','12022133201','12022133210','12022133222','12022133223','12022133301','12022133303','12022133310','12022133311','12022133312','12022133313','12022133322','12022133323','12022133330','12022133332','12022202111','12022202133','12022202311','12022203022','12022203200','12022211011','12022211013','12022211100','12022211102','12022212123','12022212132','12022212212','12022212230','12022212301','12022212310','12022213002','12022213003','12022213010','12022213011','12022213012','12022213013','12022213020','12022213021','12022213030','12022213032','12022213310','12022213311','12022213312','12022213313','12022213330','12022213331','12022222031','12022222033','12022222122','12022222330','12022222331','12022222332','12022222333','12022223012','12022223030','12022223031','12022223033','12022223111','12022223113','12022223120','12022223121','12022223122','12022223123','12022223132','12022223203','12022223210','12022223211','12022223212','12022223213','12022223220','12022223221','12022223222','12022223230','12022223231','12022223300','12022223301','12022223302','12022223310','12022223320','12022230020','12022230022','12022232000','12022232002','12022232003','12022232021','12022301010','12022301011','12022301013','12022301100','12022301102','12022301112','12022301113','12022301212','12022301213','12022301230','12022301231','12022301331','12022302133','12022302311','12022303000','12022303001','12022303002','12022303003','12022303010','12022303012','12022303020','12022303021','12022303022','12022303023','12022303030','12022303031','12022303102','12022303103','12022303120','12022303200','12022310000','12022310001','12022310002','12022310003','12022310110','12022310111','12022310203','12022310210','12022310211','12022310212','12022310213','12022310220','12022310333','12022311001','12022311011','12022311012','12022311013','12022311021','12022311030','12022311031','12022311032','12022311033','12022311101','12022311110','12022311112','12022311113','12022311120','12022311121','12022311122','12022311123','12022311130','12022311131','12022311132','12022311211','12022311212','12022311213','12022311222','12022311223','12022311300','12022311301','12022311302','12022311310','12022311311','12022311312','12022312111','12022313000','12022313001','12022313003','12022313010','12022313012','12022313013','12022313030','12022313031','12022313032','12022313033','12022313101','12022313102','12022313103','12022313110','12022313112','12022313113','12022313120','12022313121','12022313123','12022313130','12022313131','12022313132','12022313133','12022313210','12022331112','12022331113','12022331130','12022331131','12022332332','12023000002','12023000003','12023000120','12023000121','12023000122','12023000123','12023000203','12023000212','12023000220','12023000221','12023000222','12023000223','12023000230','12023000232','12023001031','12023001033','12023001120','12023001121','12023001122','12023001123','12023001331','12023002100','12023002101','12023002102','12023002103','12023002202','12023002203','12023002220','12023002221','12023003003','12023003012','12023010201','12023010202','12023010203','12023010212','12023010220','12023010221','12023011202','12023011203','12023011213','12023011220','12023011221','12023011231','12023011233','12023011300','12023011301','12023011302','12023011303','12023011312','12023011320','12023011321','12023011322','12023011323','12023011330','12023011332','12023012331','12023012333','12023013222','12023020200','12023020201','12023020202','12023021132','12023021133','12023021232','12023021233','12023021310','12023022022','12023022023','12023022032','12023022111','12023022113','12023022121','12023022123','12023022130','12023022132','12023022200','12023022201','12023022202','12023022210','12023022211','12023022213','12023022232','12023022233','12023022300','12023022301','12023022302','12023022303','12023022310','12023022311','12023022312','12023022321','12023022323','12023022330','12023022332','12023023000','12023023002','12023023010','12023023011','12023023101','12023023102','12023023103','12023023120','12023023121','12023023123','12023023130','12023023132','12023023133','12023030023','12023030032','12023030111','12023031000','12023131220','12023131221','12023131222','12023131223','12023132233','12023132322','12023133002','12023133020','12023133021','12023133022','12023133023','12023200002','12023200003','12023200010','12023200011','12023200012','12023200020','12023200021','12023200030','12023200200','12023200201','12023200202','12023200212','12023200213','12023200230','12023200231','12023200301','12023200303','12023200310','12023200312','12023200320','12023200321','12023200322','12023200323','12023200330','12023200332','12023200333','12023202002','12023202020','12023202022','12023202110','12023202111','12023202112','12023202113','12023202131','12023202133','12023202202','12023202210','12023202211','12023202212','12023202213','12023202220','12023202323','12023202332','12023203000','12023203002','12023203003','12023203012','12023203020','12023203021','12023203022','12023203030','12023203122','12023203123','12023203300','12023203301','12023220101','12023220110','12023220133','12023220230','12023220231','12023220232','12023220233','12023220300','12023220301','12023220302','12023220303','12023220311','12023220323','12023220332','12023220333','12023221000','12023221002','12023221022','12023221102','12023221103','12023221112','12023221121','12023221123','12023221130','12023221132','12023221200','12023221201','12023221202','12023221203','12023221213','12023221222','12023221302','12023221303','12023222101','12023222103','12023222110','12023222111','12023222112','12023222113','12023222121','12023222130','12023222131','12023223000','12023223001','12023223002','12023223003','12023223022','12023223023','12023223031','12023223033','12023223120','12023223122','12023223200','12023223201','12023223203','12023230200','12023230201','12023230202','12023230203','12023232022','12023232023','12023232033','12023232131','12023232221','12023232222','12023232223','12023232231','12023232233','12023232320','12023232322','12023233030','12023233032','12023233200','12023233212','12023233230','12023233302','12023233303','12023233320','12023233321','12023233330','12023233331','12023233332','12023233333','12023310011','12023310012','12023310013','12023310023','12023310030','12023310031','12023310032','12023310033','12023310100','12023310101','12023310102','12023310103','12023310120','12023310121','12023310122','12023310123','12023310132','12023310201','12023310210','12023310211','12023310212','12023310213','12023310230','12023310231','12023310300','12023310301','12023310302','12023310303','12023310310','12023310312','12023310320','12023310321','12023310330','12023322220','12023322222','12030000333','12030001222','12030001223','12030002110','12030002111','12030002112','12030002113','12030003000','12030003001','12030003002','12030003003','12030003112','12030003113','12030003130','12030003131','12030003132','12030003133','12030003310','12030003311','12030012002','12030012020','12030012022','12030012200','12032013320','12032013321','12032013322','12032013323','12032020103','12032020112','12032020113','12032020121','12032020130','12032020131','12032023002','12032023003','12032023020','12032023021','12032032021','12032032023','12032032032','12032032201','12032033310','12032033311','12032033312','12032033313','12032033330','12032033331','12032033332','12032033333','12032122200','12032122202','12032200312','12032200313','12032200330','12032200331','12032201202','12032201220','12032210011','12032210013','12032210100','12032210102','12032210122','12032210123','12032210211','12032210213','12032210300','12032210301','12032210302','12032210303','12032210320','12032210321','12032222323','12032222332','12032223220','12032223221','12032223223','12032300230','12032300231','12032300232','12032300233','12032302010','12032302011','12200002222','12200002331','12200002333','12200003130','12200003131','12200003133','12200003220','12200003222','12200010321','12200010323','12200010330','12200010332','12200010333','12200011222','12200012111','12200013000','12200101131','12200101133','12200110002','12200110003','12200110020','12200110021','12200110101','12200110110','12200110222','12200110223','12200110300','12200110301','12200110302','12200110303','12200112000','12200112001','12200112211','12200112213','12200112300','12200112302','12201001111','12201001113','12201010000','12201010001','12201010002','12201010003','12201010010','12201010011','12201010012','12201010013','12201010030','12201010031','12201010100','12201010102','12201010120','12201011021','12201011030','12201011101','12201011103','12201011110','12201011112','12201011130','12201011223','12201011330','12201011332','12201013001','12201013003','12201013010','12201013012','12201013030','12201013032','12201013033','12201013101','12201013103','12201013110','12201013112','12201013113','12201013121','12201013130','12201013131','12201013211','12201013213','12201013231','12201013233','12201013300','12201013320','12201013321','12201013322','12201013323','12201013330','12201013332','12201013333','12201020313','12201020331','12201020332','12201020333','12201021211','12201021213','12201021300','12201021302','12201023113','12201023120','12201023121','12201023122','12201023123','12201023131','12201030313','12201031003','12201031010','12201031011','12201031012','12201031013','12201031022','12201031023','12201031030','12201031032','12201031100','12201031101','12201031110','12201031112','12201031122','12201031123','12201031130','12201031132','12201031200','12201031201','12201031202','12201031203','12201031211','12201031213','12201031220','12201031221','12201031230','12201031231','12201031300','12201031302','12201032001','12201032002','12201032003','12201032103','12201032112','12201032121','12201032132','12201032200','12201032201','12201032203','12201032212','12201032213','12201032230','12201032231','12201032302','12201032310','12201032311','12201032312','12201032313','12201032320','12201100023','12201100032','12201100121','12201100130','12201100132','12201100133','12201100201','12201100210','12201100310','12201100311','12201100312','12201100313','12201102020','12201102022','12201102023','12201102201','12201102203','12201102220','12201102221','12201102222','12201102223','12201102230','12201111313','12201112112','12201112130','12201113031','12201113113','12201113120','12201113131','12201113333','12201131003','12201131033','12201131122','12201131211','12201131300','12201133301','12201133303','12210000021','12210000030','12210000031','12210000032','12210000033','12210000202','12210001010','12210001011','12210002002','12210002020','12210002032','12210002210','12210020130','12210020311','12210020312','12210020313','12210020321','12210020330','12210020331','12210020332','12210020333','12210021200','12210021202','12210021220','12210021222','12210201222','12210203110','12210203111','12210203112','12210203113','12210312131','12210312133','12210312311','12210313020','12210313022','12210313121','12210313130','12210313132','12210313133','12210313200','12210313202','12210313203','12210313212','12210313213','12210313302','12210313311','12211202023','13211313310','13211313311','13211313312','13211313313','13211313331','13211320122','13211320300','13211320301','13211320302','13211320303','13211320310','13211320312','13300102312','13300102321','13300102323','13300102330','13300120031','13300120033','13300120100','13300120101','13300120102','13300120120','13300120121','13300120122','13300120123','13300202031','13300202032','13300202033','13300202120','13300202122','13300202200','13300202201','13300202202','13300202203','13300202210','13300202211','13300202212','13300202213','13300202220','13300202221','13300202222','13300202223','13300202230','13300202231','13300202232','13300202233','13300202300','13300202302','13300202303','13300203012','13300203013','13300203030','13300203031','13300211022','13300211023','13300211032','13300211033','13300211200','13300211201','13300211202','13300211203','13300211210','13300211211','13300211212','13300211213','13300211220','13300211221','13300211222','13300211223','13300211230','13300211231','13300211232','13300211233','13300211300','13300211301','13300211302','13300211303','13300211312','13300211320','13300211321','13300211322','13300211323','13300211330','13300213000','13300213001','13300213003','13300213010','13300213011','13300213012','13300220001','31030232230','31030232231','31030232232','31030232233','31030232320','31030232322','31032010001','31032010003','31032010010','31032010011','31032010012','31032010013','31032010030','31032010031','31032010032','31032010100','31032010102','31032010120','31032010201','31032010203','31032010210','31032010212','31121301200','31121301201','31121301202','31121301203','31121301220','31121301221','31121301222','31121301223','31122311223','31122311232','31122312102','31122312103','31122312110','31122312111','31122312112','31122312113','31122312120','31122312121','31122312122','31122312123','31122312130','31122312131','31122312132','31122312133','31122312301','31122312310','31122312311','31122313000','31122313001','31122313002','31122313003','31122313010','31122313012','31122313020','31122313021','31122313023','31122313032','31123011012','31123011021','31123011023','31123011030','31123011032','31123013032','31123013033','31123013120','31123013121','31123013122','31123013123','31123013210','31123013211','31123013212','31123013213','31123013223','31123013230','31123013231','31123013232','31123013233','31123013300','31123013301','31123013302','31123013303','31123013320','31123021313','31123021331','31123021333','31123023111','31123030202','31123030220','31123030221','31123030222','31123030223','31123031001','31123031002','31123031003','31123031010','31123031011','31123031012','31123031021','31123031030','31123031102','31123031201','31123032000','31133300003','31133300012','31133300021','31133300030','31133322130','31133322131','31133322132','31133322133','31133322310','31133322311','31301002303','31301002312','31301002321','31301002323','31301002330','31301002331','31301002332','31311030120','31311030121','31311030122','31311030123','31311030130','31311030131','31311030132','31311030133','31311030300','31311030301','31311030310','31311030311','31311030312','31311030313','31311030330','31311030331','31311031200','31311031202','31311031220','31311100003','31311100010','31311100012','31311100013','31311100021','31311100023','31311100030','31311100032'],i=false,d=[];this.Init=function(a){y=a+"/GetBirdsEyeSceneByLocation";z=a+"/GetBirdsEyeSceneById";r=true};this.SetClientToken=function(b){e=b;if(a)a.SetClientToken(e,p)};this.SetUseOriginTiles=function(a){p=a};this.SetGUID=function(b){m=b;if(a)a.SetGUID(m);if(typeof VEMap!="undefined")s=VEMap._GetMapFromGUID(m)};this.Destroy=function(){e=null;r=false};this.RequestPending=function(){return i};function P(c,d,b){return a.IsValidTile(c,d,b)}function N(b,c,d){return a.GetTileFilename(b,c,d,currentView.mapStyle)}this.GetMiddleTileFilename=function(){return a.GetMiddleTileFilename()};function I(e){if(!a)return 0;var b=new VEPixel(MathRound(originX+offsetX+width/2),MathRound(originY+offsetY+height/2)),f=a.PixelToLatLong(b,e);b.x++;var g=a.PixelToLatLong(b,e),h=Math.sin(DegToRad(f.latitude)),i=Math.sin(DegToRad(g.latitude)),c=earthRadius/2*MathAbs(Math.log((1+h)/(1-h))-Math.log((1+i)/(1-i))),d=earthRadius*MathAbs(DegToRad(f.longitude)-DegToRad(g.longitude));return Math.sqrt(d*d+c*c)}function J(c,b){return a?a.PixelToLatLong(c,b):null}function E(c,d,b){if(a)a.PixelToLatLongAsync(c,d,b);else b(null)}function H(c,b){return a?a.LatLongToPixel(c,b):null}function D(c,d,b){if(a)a.LatLongToPixelAsync(c,d,b);else b(null)}function B(){return 2}function G(a){if(a.zoomLevel>=2)tileLayerManager.SetMarketMaxZoom(2);if(a.zoomLevel<1)a.SetZoomLevel(1);else if(a.zoomLevel>2)a.SetZoomLevel(2)}function R(){return a}function Q(){return a.GetBounds()}function O(){return b}function K(){if(!b)return null;var a={};return a}function F(){if(currentView!=null&&!Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)&¤tView.zoomLevel>0)if(currentView.zoomLevel0)A(b)}n=false}function S(a){if(!a||!f||f.length==0)return false;var c=orthoMode.LatLongToPixel(a,f[0].length),b=VEPixelToQuadKey(c,f[0].length);return o(b,0,f.length-1)}function o(a,d,c){if(c=0&&b>=0&&a=k&&f<=i&&g>=l&&g<=j)if(d>=a[b].z1&&d<=a[b].z2||d<=tileLayerManager.GetMaxTileZoom())return a[b]}return a[0]}function c(e){var f=e.center.x+mapCenterOffset.x,g=e.center.y+mapCenterOffset.y,c=0;for(var b=0;b=j&&f<=h&&g>=k&&g<=i)c=Math.max(c,a[b].z2)}c=Math.max(c,tileLayerManager.GetMaxTileZoom());return c}function f(d){var f=d.center.x+mapCenterOffset.x,g=d.center.y+mapCenterOffset.y,c=0;for(var b=0;b=j&&f<=h&&g>=k&&g<=i){c=0;if(a[b].z2>=d.zoomLevel){tileLayerManager.SetMarketMaxZoom(a[b].z2);return}else if(a[b].z2>c){tileLayerManager.SetMarketMaxZoom(a[b].z2);c=a[b].z2;if(c19)a.SetZoomLevel(19)}function _InternalOrthoMode(){return internalOrthoMode}this._InternalOrthoMode=_InternalOrthoMode;this.IsValidTile=IsValidTile;this.GetFilename=GetFilename;this.MetersPerPixel=MetersPerPixel;this.PixelToLatLong=PixelToLatLong;this.PixelToLatLongAsync=PixelToLatLongAsync;this.LatLongToPixel=LatLongToPixel;this.LatLongToPixelAsync=LatLongToPixelAsync;this.GetBounds=GetBounds;this.ValidateZoomLevel=ValidateZoomLevel;this.GetCurrentMaxZoomLevel=GetCurrentMaxZoomLevel}function BoxTool(){var b=document.createElement("div"),a=document.createElement("div"),h,c=0,d=0,e=0,f=0;this.Init=function(){b.className="MSVE_ZoomBox_bg";a.className="MSVE_ZoomBox_fg";b.attachEvent("onmouseup",MouseUp);a.attachEvent("onmouseup",MouseUp);if(map!=null){map.appendChild(b);map.appendChild(a)}};this.Destroy=function(){b.detachEvent("onmouseup",MouseUp);a.detachEvent("onmouseup",MouseUp);if(map!=null){map.removeChild(b);map.removeChild(a)}};function k(i){if(typeof VE_ContextMenu!="undefined"&&VE_ContextMenu!=null){VE_ContextMenu.RemoveContextPin();VE_ContextMenu.CloseMenu()}var b=Gimme.Screen.getMousePosition(i);h=g(p_elSource).getPagePosition();c=e=b.x-h.x+offsetX;d=f=b.y-h.y+offsetY;j(c,d,1,1);o();if(a.setCapture)a.setCapture()}function l(i){var a=Gimme.Screen.getMousePosition(i);e=a.x-h.x+offsetX;f=a.y-h.y+offsetY;var g=e-c,b=f-d;j(Math.min(c,c+g),Math.min(d,d+b),Math.abs(g),Math.abs(b))}function m(j){if(MathAbs(c-e)>1&&MathAbs(d-f)>1){var b=preferredView.MakeCopy();b.SetZoomLevel(currentView.zoomLevel);if(!j.shiftKey)b.SetPixelRectangle(new Msn.VE.PixelRectangle(new VEPixel(originX+c,originY+d),new VEPixel(originX+e,originY+f)));else{var h=width/MathAbs(e-c),i=height/MathAbs(f-d),g=h=d[h].MinZoom&¤tView.zoomLevel<=l)if(d[h].Bounds!="undefined"&&d[h].Bounds!=null)k=tileLayerManager.CheckTilesAvailability(h,g);else k=true;if(k&&b[g].LoadTiles){b[g].isActive=true;for(var p=tileViewportY1;p<=tileViewportY2;p++)for(var o=tileViewportX1;o<=tileViewportX2;o++){var q=RequestTile(o,p,currentView.zoomLevel,currentView.mapStyle,b[g],h,b[g].opacity,b[g].zIndex);c[g].push(q)}}};this.SetViewPort=function(){map.style.top="0px";map.style.left="0px";originX=MathRound(currentView.center.x-width/2);originY=MathRound(currentView.center.y-height/2);offsetX=0;offsetY=0;var a=this.CalculateTileViewPort(true,originX,originY,originX+width,originY+height);tileViewportX1=a[0];tileViewportY1=a[1];tileViewportX2=a[2];tileViewportY2=a[3];tileViewportWidth=a[4];tileViewportHeight=a[5];Fire("onmapoffsetreset")};this.CalculateTileViewPort=function(f,b,d,c,e){var a=[];b=(b-buffer)/tileSize;d=(d-buffer)/tileSize;c=(c+buffer)/tileSize;e=(e+buffer)/tileSize;if(f){b=MathFloor(b);d=MathFloor(d);c=MathFloor(c);e=MathFloor(e)}a[0]=b;a[1]=d;a[2]=c;a[3]=e;a[4]=a[2]-a[0]+1;a[5]=a[3]-a[1]+1;return a};this.GetViewPort=function(){var a=[];a[0]=tileViewportX1;a[1]=tileViewportY1;a[2]=tileViewportX2;a[3]=tileViewportY2;a[4]=tileViewportWidth;a[5]=tileViewportHeight;return a};this.FinalizeView=function(){zooming=false;for(var b=0;b=0)e=b[a[d]].ID==mapTiles||c[a[d]].length>0}return e};this.PanView=function(){if(!i)return;if(zooming)return;var h=originX+offsetX,j=originY+offsetY,k=MathFloor((h-buffer)/tileSize),m=MathFloor((j-buffer)/tileSize),l=MathFloor((h+width+buffer)/tileSize),n=MathFloor((j+height+buffer)/tileSize);while(tileViewportX1=0;e--)for(var d=0;dk){tileViewportX1--;tileViewportWidth++;for(var e=0;em){tileViewportY1--;tileViewportHeight++;for(var f=tileViewportWidth-1;f>=0;f--)for(var d=0;dl){for(var e=tileViewportHeight-1;e>=0;e--)for(var d=0;dn){for(var f=0;fh)h=b.MaxZoom}if(a.GetTilePath!="undefined"&&a.GetTilePath!=null)b.GetTilePath=a.GetTilePath;tileLayerManager.AddTileSource(b)};this.DeleteTileSource=function(f){if(d[f]!=null&&d[f]!="undefined"){d[f]=null;delete d[f]}if(a!=null)for(var e=0;eb.northwest.latitude||a.southeast.longitudeb.southeast.longitude)};this.ShowTrafficLegend=function(a){k=a;Fire("onapitrafficdisplay")};this.HideTrafficLegend=function(){Fire("onapitraffichide")};this.GetTimeStamp=function(){return k};this.GetMaxTileZoom=function(){return h};this.SetMarketMaxZoom=function(a){marketMaxZoom=a;d[mapTiles].MaxZoom=a};this.SetClientToken=function(a,b){g[a]=b;if(d[a])d[a].SetClientToken(b)};this.SetPrintable=function(f){if(f)for(var b=0;b0;b--){c=0;var d=1<=0)b="&";else b="?";a=a.concat(b,Msn.VE.API.Constants.clienttoken,"=",c)}else this.OriginalName=null;this.SourceName=a}}function VETileLayerSpecification(){this.ID="";this.ZIndex=0;this.Opacity=1}function VETileContext(){this.XPos=0;this.YPos=0;this.ZoomLevel=0;this.MapStyle=""}VEAuthenticationCode=function(){};VEAuthenticationCode.None=0;VEAuthenticationCode.NoToken=1;VEAuthenticationCode.TokenValid=2;VEAuthenticationCode.TokenInvalid=3;VEAuthenticationCode.TokenExpired=4;VEAuthenticationCode.TokenIPInvalid=5;VEAuthenticationCode.TokenExpiredAndIPInvalid=6;VEAuthenticationCode.TokenValidButNotAuthorized=7;this.__HandleAuthentication=function(a){if(a&&a.ResponseSummary&&a.ResponseSummary.AuthResultCode){var b=a.ResponseSummary.AuthResultCode;switch(b){case VEAuthenticationCode.TokenExpired:case VEAuthenticationCode.TokenExpiredAndIPInvalid:this.Fire("ontokenexpire");break;case VEAuthenticationCode.TokenInvalid:case VEAuthenticationCode.TokenIPInvalid:case VEAuthenticationCode.TokenValidButNotAuthorized:this.Fire("ontokenerror")}}};this.SetCenter=SetCenter;this.SetCenterAccurate=SetCenterAccurate;this.SetMapStyle=SetMapStyle;this.SetScaleBarDistanceUnit=SetScaleBarDistanceUnit;this.SetScaleBarVisibility=SetScaleBarVisibility;this.OnView3DScaleBarPositionUpdate=OnView3DScaleBarPositionUpdate;this.GetCenterLatitude=GetCenterLatitude;this.GetCenterLongitude=GetCenterLongitude;this.GetLatitude=GetLatitude;this.GetLongitude=GetLongitude;this.GetY=GetY;this.GetX=GetX;this.LatLongToPixel=LatLongToPixel;this.LatLongToPixelAsync=LatLongToPixelAsync;this.PixelToLatLong=PixelToLatLong;this.PixelToLatLongAsync=PixelToLatLongAsync;this.GetZoomLevel=GetZoomLevel;this.GetMapStyle=GetMapStyle;this.GetMapMode=GetMapMode;this.GetMode=GetMode;this.GetAltitude=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?GetAltitude:function(){NotSupportedMethod("VEMapControl","GetAltitude")};this.GetDirection=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?GetDirection:function(){NotSupportedMethod("VEMapControl","GetDirection")};this.GetTilt=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?GetTilt:function(){NotSupportedMethod("VEMapControl","GetTilt")};this.GetMetersPerPixel=GetMetersPerPixel;this.Fill=Fill;this.Resize=Resize;this.PanMap=PanMap;this.ContinuousPan=ContinuousPan;this.StopContinuousPan=StopContinuousPan;this.StopKeyboardPan=StopKeyboardPan;this.PanToLatLong=PanToLatLong;this.PanByPixel=PanByPixel;this.GetPushpins=GetPushpins;this.AddPushpin=AddPushpin;this.RemovePushpin=RemovePushpin;this.ClearPushpins=ClearPushpins;this.GetPushpinMapPixel=GetPushpinMapPixel;this.SetViewport=SetViewport;this.SetBestMapView=SetBestMapView;this.ClipLatitude=ClipLatitude;this.ClipLongitude=ClipLongitude;this.GetBestMapViewBounds=GetBestMapViewBounds;this.IncludePointInViewport=IncludePointInViewport;this.SetZoom=SetZoom;this.SetTilt=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?SetTilt:function(){NotSupportedMethod("VEMapControl","SetTilt")};this.SetDirection=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?SetDirection:function(){NotSupportedMethod("VEMapControl","SetDirection")};this.SetAltitude=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?SetAltitude:function(){NotSupportedMethod("VEMapControl","SetAltitude")};this.ZoomIn=ZoomIn;this.ZoomOut=ZoomOut;this.SetCenterAndZoom=SetCenterAndZoom;this.AddLine=AddLine;this.RemoveLine=RemoveLine;this.ClearLines=ClearLines;this.AttachEvent=AttachEvent;this.DetachEvent=DetachEvent;this.AttachCustomEvent=AttachCustomEvent;this.DetachCustomEvent=DetachCustomEvent;this.FireCustomEvent=FireCustomEvent;this.DisposeAllCustomEvent=DisposeAllCustomEvent();this.CreateEvent=CreateEvent;this.Fire=Fire;this.IsObliqueAvailable=IsObliqueAvailable;this.GetObliqueScene=GetObliqueScene;this.SetAnimationEnabled=SetAnimationEnabled;this.IsAnimationEnabled=IsAnimationEnabled;this.SetObliqueScene=$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)?SetObliqueScene:function(){NotSupportedMethod("VEMapControl","SetObliqueScene")};this.SetObliqueLocation=$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)?SetObliqueLocation:function(){NotSupportedMethod("VEMapControl","SetObliqueLocation")};this.SetObliqueOrientation=$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)?SetObliqueOrientation:function(){NotSupportedMethod("VEMapControl","SetObliqueOrientation")};this.SetView=SetView;this.Debug=Debug;this.GetResponseRangeCounts=GetResponseRangeCounts;this.ResetResponseRangeCounts=ResetResponseRangeCounts;this.GetFailureRate=GetFailureRate;this.SetTrafficView=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?SetTrafficView:function(){NotSupportedMethod("VEMapControl","SetTrafficView")};this.GetTrafficAvailability=GetTrafficAvailability;this.GetMarketsFile=GetMarketsFile;this.GetIncidentsFile=GetIncidentsFile;this.GetSlidingExpirationForAutoRefresh=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?GetSlidingExpirationForAutoRefresh:function(){NotSupportedMethod("VEMapControl","GetSlidingExpirationForAutoRefresh")};this.GetAutoRefreshRate=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?GetAutoRefreshRate:function(){NotSupportedMethod("VEMapControl","GetAutoRefreshRate")};this.GetMapLegend=GetMapLegend;this.SetFocus=SetFocus;this.GetCurrentMode=GetCurrentMode;this.GetObliqueMode=GetObliqueMode;this.GetOrthoMode=GetOrthoMode;this.GetMapWidth=GetMapWidth;this.GetMapHeight=GetMapHeight;this.GetCurrentMapView=GetCurrentMapView;this.SetBaseTileSource=SetBaseTileSource;this.SetTileSource=tileLayerManager.SetTileSource;this.SetTileLayerVisibility=tileLayerManager.SetTileLayerVisibility;this.AddMapServiceLayersTo3D=tileLayerManager.AddMapServiceLayersTo3D;this.DeleteMapServiceLayersFrom3D=tileLayerManager.DeleteMapServiceLayersFrom3D;this.LoadTileLayer=tileLayerManager.LoadTileLayer;this.ClearTileLayer=tileLayerManager.ClearTileLayer;this.ClearTileLayers=tileLayerManager.ClearTileLayers;this.DeleteTileSource=tileLayerManager.DeleteTileSource;this.HideBaseTileLayer=tileLayerManager.HideBaseTileLayer;this.ShowBaseTileLayer=tileLayerManager.ShowBaseTileLayer;this.RefreshTileLayer=tileLayerManager.RefreshTileLayer;this.RefreshTileLayers=tileLayerManager.RefreshTileLayers;this.ShowTrafficLegend=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?tileLayerManager.ShowTrafficLegend:function(){NotSupportedMethod("VEMapControl","ShowTrafficLegend")};this.HideTrafficLegend=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?tileLayerManager.HideTrafficLegend:function(){NotSupportedMethod("VEMapControl","HideTrafficLegend")};this.GetTimeStamp=$MVEM.IsEnabled(MapControl.Features.Traffic.Enabled)?tileLayerManager.GetTimeStamp:function(){NotSupportedMethod("VEMapControl","GetTimeStamp")};this.GetMaxTileZoom=tileLayerManager.GetMaxTileZoom;this.PanView=tileLayerManager.PanView;this.LoadBaseLayer=tileLayerManager.LoadBaseLayer;this.GetCurrentViewMaxZoomLevel=GetCurrentViewMaxZoomLevel;this.SetTilePixelBuffer=SetTilePixelBuffer;this.SetClientToken=SetClientToken;this.SetMapHeight=SetMapHeight;this.GetMapSurface=GetMapSurface;this.EnableMode=EnableMode;this._Enable3DMode=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?_Enable3DMode:function(){NotSupportedMethod("VEMapControl","_Enable3DMode")};this._Disable3DMode=_Disable3DMode;this.ControlReady=ControlReady;this.Get3DVisibleArea=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?Get3DVisibleArea:function(){NotSupportedMethod("VEMapControl","Get3DVisibleArea")};this.Get3DControl=Get3DControl;this.IsModeEnabled=IsModeEnabled;this.Sync3dView=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?Sync3dView:function(){NotSupportedMethod("VEMapControl","Sync3dView")};this.OnBeginCameraUpdate=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?OnBeginCameraUpdate:function(){NotSupportedMethod("VEMapControl","OnBeginCameraUpdate")};this.OnEndCameraUpdate=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?OnEndCameraUpdate:function(){NotSupportedMethod("VEMapControl","OnEndCameraUpdate")};this.IsCameraFlying=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?IsCameraFlying:function(){NotSupportedMethod("VEMapControl","IsCameraFlying")};this.Show3DTraffic=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?Show3DTraffic:function(){NotSupportedMethod("VEMapControl","Show3DTraffic")};this.Remove3DTraffic=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?Remove3DTraffic:function(){NotSupportedMethod("VEMapControl","Remove3DTraffic")};this.Show3DBirdseye=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?Show3DBirdseye:function(){NotSupportedMethod("VEMapControl","Show3DBirdseye")};this.IterativeCameraRefinement=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?IterativeCameraRefinement:function(){NotSupportedMethod("VEMapControl","IterativeCameraRefinement")};this.SetChildDiv=SetChildDiv;this.EnableGeoCommunity=EnableGeoCommunity;this.IsGeoCommunityEnabled=IsGeoCommunityEnabled;this.HijackMouseCursor=HijackMouseCursor;this.IsHijackMouseCursor=IsHijackMouseCursor;this.GetOffsetX=GetOffsetX;this.GetOriginY=GetOriginY;this.GetOriginX=GetOriginX;this.GetOffsetY=GetOffsetY;this.GetCenterOffset=GetCenterOffset;this.SetCenterOffset=SetCenterOffset;this.UpdatePreferredView=UpdatePreferredView;this.GetGraphic=GetGraphic;this.GetCurrentTileViewPort=GetCurrentTileViewPort;this.CalculateTileViewPort=CalculateTileViewPort;this.CreateDashboard=CreateDashboard;this.GetLastViewChangeType=GetLastViewChangeType;this.SetOn3DAnimationInterruptedCallback=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?SetOn3DAnimationInterruptedCallback:function(){NotSupportedMethod("VEMapControl","SetOn3DAnimationInterruptedCallback")};this.GetOn3DAnimationInterruptedCallback=$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)?GetOn3DAnimationInterruptedCallback:function(){NotSupportedMethod("VEMapControl","GetOn3DAnimationInterruptedCallback")};this.SetShowMapModeSwitch=SetShowMapModeSwitch;this.GetObliqueAvailability=GetObliqueAvailability;this.GetTopPx=GetTopPx;this.GetLeftPx=GetLeftPx;this.SetPrintable=SetPrintable;this.CreateMinimap=CreateMinimap;this.IsMapViewOblique=IsMapViewOblique;this.IsMapViewOrtho=IsMapViewOrtho;this.GetTileGeneration=GetTileGeneration;this.IsDragging=function(){return dragging};this.IsZooming=function(){return zooming}};function NotSupportedMethod(a,b){throw new VEException(a,"err_unsupport",L_UnsupportMethod_Text.replace("%1",b))}function NotSupportedClass(a){throw new VEException("","err_unsupport",L_UnsupportClass_Text.replace("%1",a))}Msn.VE.Bounds=function(e,f,a,c,b,d){this.z1=e;this.z2=f;this.x1=a;this.y1=c;this.x2=b;this.y2=d};Msn.VE.DashboardStates=new function(){this.MapMode=new function(){this.Flatland=1;this.View3D=2};this.MapView=new function(){this.Ortho=4;this.Oblique=8;this.StreetSide=16};this.MapStyle=new function(){this.Road=32;this.Shaded=64;this.Aerial=128;this.Hybrid=256}};VEMiniMapSize=function(){};VEMiniMapSize.Small="small";VEMiniMapSize.Large="large";VEMiniMapExpandState=function(){};VEMiniMapExpandState.Collapsed="collapsed";VEMiniMapExpandState.Expanded="expanded";VEMiniMapVersion=function(){};VEMiniMapVersion[5]="MSVE_Minimap_V5";VEMiniMapVersion[6]="MSVE_Minimap_V6";Msn.VE.Minimap=function(bb,m,cb,h){var n=this,db=Msn.VE.Css,U=Msn.VE.Css.Functions,t=Msn.VE.DashboardStates.MapMode.Flatland,e=Msn.VE.DashboardStates.MapView.Ortho,N=false,O=null,A=false,u=false,B=false,k=true,o=null,c=bb,b=null,a=m,i=[];i[VEMiniMapSize.Small]="MSVE_smallMinimap";i[VEMiniMapSize.Large]="MSVE_normalMinimap";var w=[];w[VEMiniMapSize.Small]=L_MinimapLargerToolTip_Text;w[VEMiniMapSize.Large]=L_MinimapSmallerToolTip_Text;var r=[];r[VEMiniMapSize.Small]=138.5;r[VEMiniMapSize.Large]=180.5;if(h!=5&&h!=6)h=5;c.className=VEMiniMapExpandState.Expanded+" "+i[VEMiniMapSize.Small]+" "+VEMiniMapVersion[h];var p=document.createElement("div");p.id="MSVE_minimap_transparency";c.appendChild(p);var f=document.createElement("div");f.id="MSVE_minimap_content";f.title=L_MinimapDragToolTip_Text;p.appendChild(f);var j=document.createElement("span");j.id="MSVE_minimap_glyph";j.title=L_MinimapHideToolTip_Text;if(cb!=false&&Msn.VE.Animation){this.rollInDirection=null;this.rollOutDirection=null;c.appendChild(j);H(this,h)}var d=null,q=false;a.AttachEvent("onchangemapstyle",W);var D=document.createElement("div"),C=document.createElement("div"),l=document.createElement("div");l.id="MSVE_minimap_style_wrapper";f.appendChild(l);switch(h){case 5:var g=document.createElement("div");g.id="MSVE_minimap_resize";g.attachEvent("onclick",L);g.title=L_MinimapLargerToolTip_Text;pseudoHover(g);c.appendChild(g);break;case 6:if($MVEM.IsEnabled(MapControl.Features.Minimap.ShowByDefault))j.title=L_MinimapHideToolTip_Text;else j.title=L_MinimapShowToolTip_Text}function V(){var g={};g.latitude=a.GetCenterLatitude();g.longitude=a.GetCenterLongitude();var h=a.GetZoomLevel()-4;if(h<1)h=1;if(g.latitude==null||g.longitude==null){g.latitude=0;g.longitude=0;h=1}g.zoomlevel=h;g.mapstyle=Msn.VE.MapStyle.Road;g.showScaleBar=false;g.showMapLegend=false;g.showDashboard=false;g.showMinimap=false;g.hideCopyright=true;g.disableLogo=true;g.clientToken=O;b=new Msn.VE.MapControl(f,g);b.Init();b.SetMinimapMode();G(D,"MSVE_minimap_r_style_button","MSVE_minimap_style",L_MinimapRoad_Text,L_MinimapRoadToolTip_Text,J,$MVEM.IsEnabled(MapControl.Features.MapStyle.Road));G(C,"MSVE_minimap_h_style_button","MSVE_minimap_style",L_MinimapHybrid_Text,L_MinimapHybridToolTip_Text,F,$MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid));K();b.AttachEvent("onendpan",S);b.AttachEvent("onclick",x);a.AttachEvent("onendpan",R);a.AttachEvent("onobliquechange",M);a.AttachEvent("onendzoom",P);a.AttachEvent("onchangeview",I);var i=a.IsModeEnabled(Msn.VE.MapActionMode.Mode3D)?Msn.VE.DashboardStates.MapMode.View3D:Msn.VE.DashboardStates.MapMode.Flatland;e=Msn.VE.DashboardStates.MapView.Ortho;if(a.IsMapViewOblique()){b.SetZoom(14);e=Msn.VE.DashboardStates.MapView.Oblique}d=new Msn.VE.CameraRotator(c,this,f);q=true;T(i);y();s()}this.Init=V;this.Destroy=function(){E(D,J);E(C,F);D=C=null;if(d){d.Destroy();d=null}a.DetachEvent("onendpan",R);a.DetachEvent("onobliquechange",M);a.DetachEvent("onendzoom",P);a.DetachEvent("onchangeview",I);if(b){b.DetachEvent("onendpan",S);b.DetachEvent("onclick",x);b.Destroy();b=null}switch(h){case 5:g.detachEvent("onclick",L)}l=null;p=null;f=null;j=null;g=null;n=null};this.IsInitialized=function(){return q};this.SetClientToken=function(a){O=a;if(b)b.SetClientToken(a)};function T(a){t=a}this.SetMapMode=T;function y(){if(!N&&typeof minimapRoller!="undefined"&&minimapRoller!=null&&t==Msn.VE.DashboardStates.MapMode.Flatland)if(e==Msn.VE.DashboardStates.MapView.Oblique){if(!minimapRoller.isExpanded())minimapRoller.rollOut(n.rollOutDirection)}else if(e==Msn.VE.DashboardStates.MapView.Ortho)if(minimapRoller.isExpanded()&&!$MVEM.IsEnabled(MapControl.Features.Minimap.ShowByDefault))minimapRoller.rollIn(n.rollInDirection)}this.SetRollerState=y;this.ChangeOrientation=function(b){if(t==Msn.VE.DashboardStates.MapMode.Flatland)if(e==Msn.VE.DashboardStates.MapView.Oblique)switch(b){case 0:case 360:a.SetObliqueOrientation("East");break;case 270:a.SetObliqueOrientation("South");break;case 90:a.SetObliqueOrientation("North");break;case 180:a.SetObliqueOrientation("West")}};this.SetKeepRollState=function(){N=true};function s(){if(t==Msn.VE.DashboardStates.MapMode.Flatland)if(e==Msn.VE.DashboardStates.MapView.Oblique){var b=a.GetObliqueScene();if(!b)return;var c=b.GetOrientation();d.SetStyle("oblique");switch(c){case "North":d.SetOrientation(90);break;case "South":d.SetOrientation(270);break;case "East":d.SetOrientation(0);break;case "West":d.SetOrientation(180)}d.Show()}else if(e==Msn.VE.DashboardStates.MapView.Ortho){d.SetStyle("ortho");d.Show()}else d.Hide();else d.Hide()}function Z(){u=true;a.PanToLatLong(b.GetCenterLatitude(),b.GetCenterLongitude())}function z(){var c=a.GetCenterLatitude(),d=a.GetCenterLongitude();A=true;b.PanToLatLong(c,d)}this.Hide=function(){c.style.display="none"};this.Show=function(){c.style.display="block"};this.SetPosition=function(a,b){c.style.left=a+"px";c.style.top=b+"px"};this.SetSize=function(a){var d=this.GetSize();if(a!=d){U.removeClass(c,i[d]);U.addClass(c,i[a]);g.title=w[a];if(c.className.indexOf(VEMiniMapExpandState.Expanded)>=0){B=true;b.Resize(r[a],r[a])}}};this.GetSize=function(){return c.className.indexOf(i[VEMiniMapSize.Large])>-1?VEMiniMapSize.Large:VEMiniMapSize.Small};this.SetDoUpdates=function(a){k=a;if(k)Q()};this.GetContainer=function(){return c};function W(){var b=e;e=Msn.VE.DashboardStates.MapView.Ortho;if(a.IsMapViewOblique()){e=Msn.VE.DashboardStates.MapView.Oblique;if(!q)V()}if(q&&e!=b){y();s()}}function S(){if(B){B=false;return}if(!A)Z();else A=false}function L(){var a=n.GetSize()==VEMiniMapSize.Small?VEMiniMapSize.Large:VEMiniMapSize.Small;n.SetSize(a)}function R(){if(!k)return;if(!u){o=v();z()}else u=false}function I(){if(!k)return;var c=v();if(!a.IsMapViewOblique()&&!c.Equals(o)){b.SetView(c);o=null}}function M(){if(!k)return;z();s()}function P(){if(!k)return;o=v();Q()}function v(){var d=b.GetCurrentMapView().MakeCopy(),e=a.GetCurrentMapView();d.SetCenterLatLong(new Msn.VE.LatLong(e.latlong.latitude,e.latlong.longitude));var c=1;if(Msn.VE.MapStyle.IsViewOblique(e.style))c=14;else c=e.GetZoomLevel()-4;if(c<1)c=1;d.SetZoomLevel(c);d.Resolve(b.GetCurrentMode(),b.GetMapWidth(),b.GetMapHeight());return d}function Q(){var c=0;if(a.IsMapViewOblique())c=14;else c=a.GetZoomLevel()-4;if(c<1)c=1;if(b.GetZoomLevel()==c){z();return}b.SetCenterAndZoom(a.GetCenterLatitude(),a.GetCenterLongitude(),c)}function G(a,g,d,f,e,c,b){a.innerText=f;a.id=g;a.title=e;if(typeof b=="undefined"||b==true){a.className=d;a.attachEvent("onclick",c);a.attachEvent("onmousedown",IgnoreEvent)};pseudoHover(a);l.appendChild(a)}function E(a,b){a.detachEvent("onclick",b);a.detachEvent("onmousedown",IgnoreEvent)}function x(){f.title="";b.DetachEvent("onclick",x)}function J(){K()}function F(){X()}function X(){l.className="MSVE_minimap_hybrid_style";b.SetMapStyle("h")}function K(){l.className="MSVE_minimap_road_style";b.SetMapStyle("r")}function ab(){return h}this.GetVersion=ab;function H(b,g){var f=m.IsMapViewOblique()||$MVEM.IsEnabled(MapControl.Features.Minimap.ShowByDefault),d,e,c=$ID("MSVE_minimap"),a=$ID("MSVE_minimap_glyph");if(!a||!c)return;switch(g){case 5:b.rollInDirection=Msn.VE.Animation.RollDirection.RightLeft;b.rollOutDirection=Msn.VE.Animation.RollDirection.LeftRight;d=8;e=0;break;case 6:b.rollInDirection=Msn.VE.Animation.RollDirection.LeftRight|Msn.VE.Animation.RollDirection.BottomUp;b.rollOutDirection=Msn.VE.Animation.RollDirection.RightLeft|Msn.VE.Animation.RollDirection.TopDown;d=a.offsetWidth+1;e=a.offsetHeight;break;default:return}window.minimapRoller=new Msn.VE.Animation.Roller(c);minimapRoller.setAccelerationFunction(AccelerationFunctions.CrazyElevator);minimapRoller.setXLeave(d);minimapRoller.setYLeave(e);pseudoHover(a);Y(c,minimapRoller,"MSVE_minimap_glyph");if(!f)minimapRoller.collapse(b.rollInDirection);a.onclick=function(){var a=m.GetMinimap();a.SetKeepRollState();if(minimapRoller.isExpanded())minimapRoller.rollIn(a.rollInDirection);else minimapRoller.rollOut(a.rollOutDirection)};window.attachEvent("onunload",function(){a=c=null;window.detachEvent("onunload",arguments.callee)})}function Y(a,b,c){b.hookEvent("afterrollin",function(){var d=Msn.VE.Css.Functions,b=m.GetMinimap();d.removeClass(a,"expanded");d.addClass(a,"collapsed");if(b&&b.IsInitialized())b.SetDoUpdates(false);$ID(c).title=L_MinimapShowToolTip_Text});b.hookEvent("afterrollout",function(){var d=Msn.VE.Css.Functions,b=m.GetMinimap();d.removeClass(a,"collapsed");d.addClass(a,"expanded");if(b&&b.IsInitialized()){b.SetDoUpdates(true);s()}$ID(c).title=L_MinimapHideToolTip_Text});b.hookEvent("beforerollout",function(){var a=m.GetMinimap();if(a&&!a.IsInitialized())a.Init()})}this.creatMinimapRoller=H;Msn.VE.CameraRotator=function(g,j,d){var n=Msn.VE.Css,m=j,g=g,d=d,e=0,c="ortho",a=document.createElement("div");a.id="MSVE_cameraPosition";d.appendChild(a);b(90);function i(){a=null}function k(){a.style.display="none"}function l(){a.style.display="block"}function f(a){b(a)}function h(a){switch(a){case "oblique":c="MSVE_direction";b(90);break;case "ortho":c="MSVE_ortho";b(90);break;default:c="MSVE_ortho";b(90)}}function b(b){e=MathFloor((b+45+720)/90)%4;a.className=c+e}this.Hide=k;this.Show=l;this.Destroy=i;this.SetStyle=h;this.SetOrientation=f}};Msn.VE.DashboardSize=new function(){this.Normal="normal";this.Small="small";this.Tiny="tiny"};Msn.VE.NavControlFactory=function(g,i,c,b,e,h,f,d,j){if(typeof c=="undefined"||c==null)c=Msn.VE.DashboardSize.Normal;if(typeof b=="undefined"||b==null)b="MSVE_dashboardId";if(!isFinite(parseInt(d)))d=6;var a;switch(d){case 5:a=new Msn.VE.V5Control(g,i,c,b,e,h,f);break;case 6:default:a=new Msn.VE.V6Control(g,i,c,b,e,h,f,j)}a.version=d;a.GetVersion=function(){return a.version};return a};Msn.VE.V5Control=function(z,a,i,C,x,A){Msn.VE.DashboardStates=new function(){this.MapMode=new function(){this.Flatland=1;this.View3D=2};this.MapView=new function(){this.Ortho=4;this.Oblique=8;this.StreetSide=16};this.MapStyle=new function(){this.Road=32;this.Shaded=64;this.Aerial=128;this.Hybrid=256}};var s={Style:"MSVE_navAction_mapStyleCell",Road:"MSVE_navAction_RoadMapStyle",Aerial:"MSVE_navAction_AerialMapStyle",Hybrid:"MSVE_navAction_HybridMapStyle",Mode:"MSVE_navAction_modeCell",Mode2D:"MSVE_navAction_FlatlandMapMode",Mode3D:"MSVE_navAction_View3DMapMode",View:"MSVE_navAction_mapViewCellInner",Ortho:"MSVE_navAction_OrthoMapView",Oblique:"MSVE_navAction_ObliqueMapView",StreetSide:"MSVE_navAction_StreetSideMapView",ShowLabels:"MSVE_navAction_showLabels",Pan:"MSVE_navAction_panContainer",PanUp:"MSVE_navAction_panUp",PanDown:"MSVE_navAction_panDown",PanLeft:"MSVE_navAction_panLeft",PanRight:"MSVE_navAction_panRight",TinyZoom:"MSVE_TinyZoomBar",OrthoZoom:"MSVE_OrthoZoomBar",ObliqueZoom:"MSVE_ObliqueZoomBar",ObliqueCompass:"MSVE_compassDiv",ObliqueNotification:"MSVE_obliqueNotification",ThreeDUpdatedNotification:"MSVE_threeDUpdatedNotification",Traffic:"MSVE_navAction_traffic"},G="Nav Bar";Msn.VE.CommonControls=function(c,v){function yb(b){var f=document.createElement("div"),e=document.createElement("div"),a=document.createElement("div"),d=document.createElement("div"),w=0,s=0,j=false;this.Init=function(){d.className="MSVE_ZoomBar_minus";d.id="MSVE_navAction_obliqueZoomBar_minus";d.unselectable="on";d.title=L_ZoomBarMinusToolTip_Text;d.attachEvent("onclick",l);pseudoHover(d);a.className="MSVE_ZoomBar_slider";a.id="MSVE_navAction_obliqueZoomBar_slider";a.unselectable="on";a.attachEvent("onmousedown",o);a.attachEvent("onmousemove",p);a.attachEvent("onmouseup",q);a.attachEvent("onclick",IgnoreEvent);pseudoHover(a);e.className="MSVE_ObliqueZoomBar_bar";e.unselectable="on";e.appendChild(a);e.attachEvent("onclick",r);f.className="MSVE_ZoomBar_plus";f.id="MSVE_navAction_obliqueZoomBar_plus";f.title=L_ZoomBarPlusToolTip_Text;f.unselectable="on";f.attachEvent("onclick",m);pseudoHover(f);b.className="MSVE_ZoomBar";b.id="MSVE_ObliqueZoomBar";b.appendChild(d);b.appendChild(e);b.appendChild(f);b.attachEvent("onmousedown",IgnoreEvent);b.attachEvent("onmouseup",IgnoreEvent);b.attachEvent("onclick",IgnoreEvent);b.attachEvent("ondblclick",IgnoreEvent);i()};function v(){b.style.display="block"}function u(){b.style.display="none"}function r(a){a=GetEvent(a);CancelEvent(a);k();n(h(Gimme.Screen.getMousePosition(a).y));return false}function h(b){b-=s+d.offsetHeight+a.offsetHeight;var c=e.offsetHeight-a.offsetHeight;if(b<0)b=0;else if(b>c)b=c;return b}function l(){c.ZoomOut()}function m(){c.ZoomIn()}function t(){d.detachEvent("onclick",l);a.detachEvent("onmousedown",o);a.detachEvent("onmousemove",p);a.detachEvent("onmouseup",q);a.detachEvent("onclick",IgnoreEvent);e.detachEvent("onclick",r);f.detachEvent("onclick",m);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onclick",IgnoreEvent);b.detachEvent("ondblclick",IgnoreEvent);d=a=e=f=null}function o(b){b=GetEvent(b);CancelEvent(b);k();if(a.setCapture)a.setCapture();j=true;return false}function p(b){b=GetEvent(b);CancelEvent(b);if(j)a.style.top=h(Gimme.Screen.getMousePosition(b).y)+"px";return false}function q(b){b=GetEvent(b);CancelEvent(b);if(a.releaseCapture)a.releaseCapture();j=false;n(h(Gimme.Screen.getMousePosition(b).y));i();return false}function k(){var a=g(b).getScreenPosition();w=a.x;s=a.y}function n(f){var b=e.offsetHeight-a.offsetHeight,d=1+MathRound((b-f)/b*1);c.SetZoom(d)}function i(){if(c.GetZoomLevel()==1)a.style.top=e.offsetHeight-a.offsetHeight+"px";else a.style.top="0px"}this.Destroy=t;this.Show=v;this.Hide=u;this.UpdateFromMap=i}function C(z,x,y){var a=document.createElement("div");a.setAttribute("id",z);a.innerHTML=x;var c="MSVE_obliqueCompassPointOff",g=y;a.attachEvent("onmouseover",f);a.attachEvent("onmouseout",h);a.attachEvent("onclick",i);this.onclick=null;this.onmouseover=null;this.onmouseout=null;var e=25,b=this,d=false,j=new v(a,17,17);function f(e){if(d)return;c=a.className;a.className="MSVE_obliqueCompassPointHover";if(b.onmouseover)b.onmouseover(e)}function i(a){if(d)return;f(a);c="MSVE_obliqueCompassPointOn";if(b.onclick)b.onclick(a)}function h(e){if(d)return;a.className=c;if(b.onmouseout)b.onmouseout(e)}function m(){c="MSVE_obliqueCompassPointOn";a.className="MSVE_obliqueCompassPointOn"}function l(){c="MSVE_obliqueCompassPointOff";a.className="MSVE_obliqueCompassPointOff"}function u(){d=true;l()}function k(){d=false;m()}function q(){return a}function n(){return g}function o(a){g=a}function w(){j.Reset();k()}function p(b){a.style.left=b.left;a.style.top=b.top}function v(r,n,o){var g=r,a=0,b=.3,c=0,l=40,k=Math.PI/2,h=true,p=b+.1;function m(a,b,c){if(b>=c-a&&b<=c+a)return true;return false}function i(){a+=b;if(a>Math.PI*2)a-=Math.PI*2;else if(a<0)a+=Math.PI*2;if(m(p,a,c)){b=.3;a=c;d(a);return}d(a);window.setTimeout(i,l)}function d(a){var b=n+e*Math.sin(a),c=o+e*Math.cos(a);g.style.left=b+"px";g.style.top=c+"px"}function f(a){c=a;i()}function j(a,c){h=c;if(!h)b*=-1;f(k*a)}function q(){a=0}this.RotateTo=f;this.RotateToIndex=j;this.Reset=q}function t(){a.detachEvent("onmouseover",f);a.detachEvent("onmouseout",h);a.detachEvent("onclick",i);a=null}function s(a){e=a}function r(){return e}this.SetRadius=s;this.GetRadius=r;this.GetElement=q;this.GetCurrentPositionIndex=n;this.SetCurrentPositionIndex=o;this.SetCurrentPosition=p;this.On=m;this.Off=l;this.RotateToIndex=j.RotateToIndex;this.Reset=w;this.Disable=u;this.Enable=k;this.Destroy=t}function xb(D){var o=[];o.push({"top":"-8px","left":"17px"});o.push({"top":"17px","left":"42px"});o.push({"top":"42px","left":"17px"});o.push({"top":"17px","left":"-8px"});var f=document.createElement("div");f.setAttribute("id","MSVE_obliqueCompassContainer");f.title=L_ObliqueCompassSelectDirection_Text;var a=new C("MSVE_obliqueCompassPointN","N",0),i=a.GetElement();i.attachEvent("onclick",r);i.attachEvent("onmouseover",u);i.attachEvent("onmouseout",h);var d=new C("MSVE_obliqueCompassPointE","E",1),k=d.GetElement();k.attachEvent("onclick",t);k.attachEvent("onmouseover",x);k.attachEvent("onmouseout",h);var b=new C("MSVE_obliqueCompassPointS","S",2),j=b.GetElement();j.attachEvent("onclick",s);j.attachEvent("onmouseover",v);j.attachEvent("onmouseout",h);var e=new C("MSVE_obliqueCompassPointW","W",3),l=e.GetElement();l.attachEvent("onclick",w);l.attachEvent("onmouseover",y);l.attachEvent("onmouseout",h);var m=document.createElement("div");m.id="MSVE_navAction_obliqueCompassArrow";f.appendChild(i);f.appendChild(k);f.appendChild(j);f.appendChild(l);f.appendChild(m);D.appendChild(f);q();function p(a){if(a<0)a=4-Math.abs(a);return a}function n(l,i,k){var c=l.GetCurrentPositionIndex(),h,f=[];f[a.GetCurrentPositionIndex()]=L_North_Text;f[b.GetCurrentPositionIndex()]=L_South_Text;f[d.GetCurrentPositionIndex()]=L_East_Text;f[e.GetCurrentPositionIndex()]=L_West_Text;if(i){h=i==Msn.VE.BirdsEyeSearchSpinDirection.CounterclockwiseSpin;if(c+i!=2){var g;switch(i){case -1:switch(c){case 0:case 2:g=[3];break;case 1:g=[3,2]}break;case 1:switch(c){case 0:case 2:g=[1];break;case 3:g=[1,2]}}if(g){var j=L_ObliqueSkippingOneDirection_Text;if(c==0)j=L_ObliqueNoImageryInRequestedDirection_Text;if(g.length==2)j=L_ObliqueSkippingTwoDirections_Text;if(typeof ShowMessage!="undefined")ShowMessage(j.replace("%1",f[c]).replace("%2",f[g[0]]).replace("%3",f[g[1]]))}}}else{h=c!=3;if(k)if(c==0){if(typeof ShowMessage!="undefined")ShowMessage(L_ObliqueModeImageNotAvailable_Text)}else if(typeof ShowMessage!="undefined")ShowMessage(L_ObliqueNoImageryInRequestedDirection_Text.replace("%1",f[c]).replace("%2",f[0]))}d.SetCurrentPositionIndex(p(d.GetCurrentPositionIndex()-c));e.SetCurrentPositionIndex(p(e.GetCurrentPositionIndex()-c));a.SetCurrentPositionIndex(p(a.GetCurrentPositionIndex()-c));b.SetCurrentPositionIndex(p(b.GetCurrentPositionIndex()-c));a.RotateToIndex(2-a.GetCurrentPositionIndex()<0?a.GetCurrentPositionIndex():2-a.GetCurrentPositionIndex(),h);d.RotateToIndex(2-d.GetCurrentPositionIndex()<0?d.GetCurrentPositionIndex():2-d.GetCurrentPositionIndex(),h);b.RotateToIndex(2-b.GetCurrentPositionIndex()<0?b.GetCurrentPositionIndex():2-b.GetCurrentPositionIndex(),h);e.RotateToIndex(2-e.GetCurrentPositionIndex()<0?e.GetCurrentPositionIndex():2-e.GetCurrentPositionIndex(),h)}function g(a){switch(a){case 0:h();break;case 1:z();break;case 2:A();break;case 3:B()}}function h(){m.className="MSVE_obliqueCompassArrowU"}function A(){m.className="MSVE_obliqueCompassArrowD"}function z(){m.className="MSVE_obliqueCompassArrowR"}function B(){m.className="MSVE_obliqueCompassArrowL"}function s(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(b);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.South)c.SetObliqueOrientation("South",null,true)}function r(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(a);g(0);var b=c.GetObliqueScene();if(b)if(b.GetOrientation()!=Msn.VE.Orientation.North)c.SetObliqueOrientation("North",null,true)}function t(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(d);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.East)c.SetObliqueOrientation("East",null,true)}function w(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(e);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.West)c.SetObliqueOrientation("West",null,true)}function v(){g(b.GetCurrentPositionIndex())}function x(){g(d.GetCurrentPositionIndex())}function y(){g(e.GetCurrentPositionIndex())}function u(){g(a.GetCurrentPositionIndex())}function H(){f.style.display="none"}function I(){f.style.display="block"}function q(k,j){var i=c.GetObliqueScene();if(!i)return;var f=i.GetOrientation(),h;switch(f){case "North":h=a;break;case "South":h=b;break;case "East":h=d;break;case "West":h=e}n(h,k,j);g(0);if(f!=Msn.VE.Orientation.North)a.Enable();else a.Disable();if(f!=Msn.VE.Orientation.South)b.Enable();else b.Disable();if(f!=Msn.VE.Orientation.East)d.Enable();else d.Disable();if(f!=Msn.VE.Orientation.West)e.Enable();else e.Disable()}function G(){a.Destroy();d.Destroy();b.Destroy();e.Destroy();i.detachEvent("onclick",r);i.detachEvent("onmouseover",u);i.detachEvent("onmouseout",h);k.detachEvent("onclick",t);k.detachEvent("onmouseover",x);k.detachEvent("onmouseout",h);j.detachEvent("onclick",s);j.detachEvent("onmouseover",v);j.detachEvent("onmouseout",h);l.detachEvent("onclick",w);l.detachEvent("onmouseover",y);l.detachEvent("onmouseout",h);f=null}function F(c){a.SetRadius(c);b.SetRadius(c);d.SetRadius(c);e.SetRadius(c)}function E(){return a.GetRadius()}this.Hide=H;this.Show=I;this.UpdateFromMap=q;this.SetRadius=F;this.GetRadius=E;this.Destroy=G}function Bb(b){var f=document.createElement("div"),e=document.createElement("div"),a=document.createElement("div"),d=document.createElement("div"),v=0,s=0,j=false;this.Init=function(){d.className="MSVE_ZoomBar_minus";d.id="MSVE_navAction_orthoZoomBar_minus";d.title=L_ZoomBarMinusToolTip_Text;d.unselectable="on";d.attachEvent("onclick",l);pseudoHover(d);a.className="MSVE_ZoomBar_slider";a.id="MSVE_navAction_orthoZoomBar_slider";a.title=L_ZoomBarSliderToolTip_Text;a.unselectable="on";a.attachEvent("onmousedown",o);a.attachEvent("onmousemove",p);a.attachEvent("onmouseup",q);a.attachEvent("onclick",IgnoreEvent);pseudoHover(a);e.className="MSVE_OrthoZoomBar_bar";e.unselectable="on";e.appendChild(a);e.attachEvent("onclick",r);f.className="MSVE_ZoomBar_plus";f.id="MSVE_navAction_orthoZoomBar_plus";f.title=L_ZoomBarPlusToolTip_Text;f.unselectable="on";f.attachEvent("onclick",m);pseudoHover(f);b.className="MSVE_ZoomBar";b.id="MSVE_OrthoZoomBar";b.appendChild(d);b.appendChild(e);b.appendChild(f);b.attachEvent("onmousedown",IgnoreEvent);b.attachEvent("onmouseup",IgnoreEvent);b.attachEvent("onclick",IgnoreEvent);b.attachEvent("ondblclick",IgnoreEvent);i()};this.Destroy=function(){d.detachEvent("onclick",l);a.detachEvent("onmousedown",o);a.detachEvent("onmousemove",p);a.detachEvent("onmouseup",q);a.detachEvent("onclick",IgnoreEvent);e.detachEvent("onclick",r);f.detachEvent("onclick",m);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onclick",IgnoreEvent);b.detachEvent("ondblclick",IgnoreEvent);d=a=e=f=null};function u(){b.style.display="block"}function t(){b.style.display="none"}function k(){var a=g(b).getScreenPosition();v=a.x;s=a.y}function o(b){b=GetEvent(b);CancelEvent(b);k();if(a.setCapture)a.setCapture();j=true;return false}function p(b){b=GetEvent(b);CancelEvent(b);if(j)a.style.top=h(Gimme.Screen.getMousePosition(b).y)+"px";return false}function q(b){b=GetEvent(b);CancelEvent(b);if(a.releaseCapture)a.releaseCapture();j=false;n(h(Gimme.Screen.getMousePosition(b).y));i();return false}function m(){c.ZoomIn()}function l(){c.ZoomOut()}function r(a){a=GetEvent(a);CancelEvent(a);k();n(h(Gimme.Screen.getMousePosition(a).y));return false}function h(b){b-=s+d.offsetHeight+a.offsetHeight;var c=e.offsetHeight-a.offsetHeight;if(b<0)b=0;else if(b>c)b=c;return b}function n(f){var b=e.offsetHeight-a.offsetHeight,d=1+MathRound((b-f)/b*18);c.SetZoom(d)}function i(){var b=e.offsetHeight-a.offsetHeight,d=b-(c.GetZoomLevel()-1)/18*b;a.style.top=d+"px"}this.UpdateFromMap=i;this.Show=u;this.Hide=t}function Eb(){var h=document.createElement("div"),g=document.createElement("div"),f=document.createElement("div"),a=false,d=g,b=f;this.maxZoomLevel=21;this.minZoomLevel=1;this.Init=function(){g.className="MSVE_ZoomBar_plus";g.id="MSVE_navAction_tinyZoomBar_plus";g.title=L_ZoomBarPlusToolTip_Text;g.unselectable="on";f.className="MSVE_ZoomBar_minus";f.id="MSVE_navAction_tinyZoomBar_minus";f.title=L_ZoomBarMinusToolTip_Text;f.unselectable="on";c.AttachEvent("onendzoom",i);h.className="MSVE_ZoomBar";h.id="MSVE_TinyZoomBar";h.appendChild(g);h.appendChild(f);return h};this.HookupPlusMinusEvents=function(b,a){m(b);j(a)};function m(a){if(a)d=a;d.attachEvent("onmousedown",o);d.attachEvent("onmouseup",e);d.attachEvent("onmouseout",e)}this.HookupPlusEvents=m;function j(a){if(a)b=a;b.attachEvent("onmousedown",l);b.attachEvent("onmouseup",e);b.attachEvent("onmouseout",e)}this.HookupMinusEvents=j;function n(){if(d!=null){d.detachEvent("onmousedown",o);d.detachEvent("onmouseup",e);d.detachEvent("onmouseout",e)}if(a=="in")a=false}this.UnhookPlusEvents=n;function k(){if(b!=null){b.detachEvent("onmousedown",l);b.detachEvent("onmouseup",e);b.detachEvent("onmouseout",e)}if(a=="out")a=false}this.UnhookMinusEvents=k;this.Destroy=function(){n();k();c.DetachEvent("onendzoom",i);g=f=d=b=null};function q(){if(c.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return true;else return c.IsAnimationEnabled()}function o(){a="in";c.ZoomIn()}function i(){window.setTimeout(p,q()?1:500)}function p(){if(a=="in"&&c.GetZoomLevel()<21)c.ZoomIn(false);else if(a=="out"&&c.GetZoomLevel()>1)c.ZoomOut(false)}function l(){a="out";c.ZoomOut()}function e(){a=false}this.GetPlus=function(){return g};this.GetMinus=function(){return f}}var a=s,j=[];j[a.Style]={Id:a.Style,InitialClass:null,OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Road,a.Aerial,a.Hybrid],Text:null};j[a.Road]={Id:a.Road,InitialClass:"MSVE_MapStyle",OnClickFunction:sb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:MapControl.Features.MapStyle.Road,Title:L_NavActionRoadToolTip_Text,Children:null,Text:L_NavActionRoad_Text};j[a.Aerial]={Id:a.Aerial,InitialClass:"MSVE_MapStyle",OnClickFunction:mb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:MapControl.Features.MapStyle.Aerial,Title:L_NavActionAerialToolTip_Text,Children:null,Text:L_NavActionAerial_Text};j[a.Hybrid]={Id:a.Hybrid,InitialClass:"MSVE_MapStyle",OnClickFunction:nb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:MapControl.Features.MapStyle.Hybrid,Title:L_NavActionHybridToolTip_Text,Children:null,Text:L_NavActionHybrid_Text};j[a.Mode]={Id:a.Mode,InitialClass:"MSVE_modeCell",OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Mode2D,a.Mode3D],Text:null};j[a.Mode2D]={Id:a.Mode2D,InitialClass:"MSVE_MapMode",OnClickFunction:kb,StyleUpdateEvent:"oninitmode",StyleUpdateFunction:Z,Enabled:true,Title:L_NavActionFlatlandToolTip_Text,Children:null,Text:L_NavActionFlatland_Text};j[a.Mode3D]={Id:a.Mode3D,InitialClass:"MSVE_MapMode",OnClickFunction:qb,StyleUpdateEvent:"oninitmode",StyleUpdateFunction:Z,Enabled:MapControl.Features.MapStyle.View3D,Title:L_NavActionView3DToolTip_Text,Children:null,Text:L_NavActionView3D_Text};j[a.View]={Id:a.View,InitialClass:null,OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Ortho,a.Oblique,a.StreetSide],Text:null};j[a.Ortho]={Id:a.Ortho,InitialClass:"MSVE_MapStyle",OnClickFunction:u,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:true,Title:L_NavActionOrthoToolTip_Text,Children:null,Text:null};j[a.Oblique]={Id:a.Oblique,InitialClass:"MSVE_MapStyle",OnClickFunction:G,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:false,Title:L_NavActionObliqueToolTip_Text,Children:null,Text:null};j[a.StreetSide]={Id:a.StreetSide,InitialClass:"MSVE_MapStyle",OnClickFunction:hb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:false,Title:L_NavActionStreetSideToolTip_Text,Children:null,Text:null};j[a.ShowLabels]={Id:a.ShowLabels,InitialClass:"MSVE_MapStyle",OnClickFunction:vb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:t,Enabled:true,Title:L_NavActionShowLabels_Text,Children:null,Text:L_NavActionLabels_Text};j[a.Traffic]={Id:a.Traffic,InitialClass:"MSVE_MapStyle",OnClickFunction:Ab,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:L_NavActionShowTrafficToolTip_Text,Children:null,Text:L_NavActionTraffic_Text};this.ObliqueFunctions=[];this.ObliqueFunctions.ObliqueImageryIn3D={ObliqueClickFunction:fb,Title:L_NavActionShowObliqueToolTip_Text,DependsOnObliqueAvailability:true};this.ObliqueFunctions.ObliqueTiltIn3D={ObliqueClickFunction:lb,Title:L_NavAction3DObliqueToolTip_Text,DependsOnObliqueAvailability:false};var e=this,b=[],h=Msn.VE.DashboardStates.MapMode.Flatland,d=Msn.VE.DashboardStates.MapView.Ortho,f=Msn.VE.DashboardStates.MapStyle.Road;this.orthoZoom=null;var l;this.obliqueCompass=null;this.obliqueZoom=null;this.displaying3DNotification=false;var z=null;this.Oblique3DFunctionality=this.ObliqueFunctions.ObliqueImageryIn3D;var q=document.createElement("div");q.id="MSVE_navAction_palette";document.body.appendChild(q);var I=false,ab=false,S=19,Q=1,k=true,R=false,r=Msn.VE.BirdsEyeSearchSpinDirection.NoSpin,N;for(N in v)if(v.hasOwnProperty(N))M(v[N]);function Ib(){var d=$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(c.IsObliqueAvailable()||c.IsMapViewOblique());if(d){i(a.Oblique,true);if(b[a.ObliqueNotification]&&!c.IsMapViewOblique()&&!g(b[a.Oblique]).hasClass("MSVE_selected"))x()}else{i(a.Oblique,false);if(b[a.ObliqueNotification])p()}W();if(c.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))U();else T()}function Hb(){var a;for(a in v)if(v.hasOwnProperty(a))J(v[a]);document.body.removeChild(q);q=null}function M(f){switch(f){case a.OrthoZoom:b[f]=document.createElement("div");e.orthoZoom=new Bb(b[f]);e.orthoZoom.Init();c.AttachEvent("onendzoom",w);q.appendChild(b[f]);w();return;case a.ObliqueZoom:b[f]=document.createElement("div");ab=true;b[f].id=f;q.appendChild(b[f]);return;case a.TinyZoom:l=new Eb;b[f]=l.Init();c.AttachEvent("onendzoom",w);w();return;case a.ObliqueCompass:b[f]=document.createElement("div");b[f].id=f;I=true;return;case a.ObliqueNotification:db();return;case a.ThreeDUpdatedNotification:cb();return;case a.Oblique:c.AttachEvent("onve3dphotostatechanged",rb)}var d=j[f],g=document.createElement("div");b[d.Id]=g;g.id=d.Id;g.enabled=d.Enabled;g.classRecipients=[g];if(d.Text!=null)g.innerText=d.Text;if(d.OnClickFunction!=null&&d.Enabled==true)g.attachEvent("onclick",d.OnClickFunction);if(d.StyleUpdateEvent!=null&&d.StyleUpdateFunction!=null)c.AttachEvent(d.StyleUpdateEvent,d.StyleUpdateFunction);if(d.InitialClass){g.className=d.InitialClass;if(!g.enabled)g.className+="_disabled"}if(d.Children!=null){var h;for(h in d.Children)if(d.Children.hasOwnProperty(h))g.appendChild(M(d.Children[h]))}else pseudoHover(g);switch(f){case a.Oblique:case a.ObliqueCompass:c.AttachEvent("onobliqueenter",zb);c.AttachEvent("onobliqueleave",K);c.AttachEvent("onendmapstyleoblique",pb);c.AttachEvent("onobliquechange",wb);c.AttachEvent("obliquerequestunavailable",eb);break;case a.Traffic:c.AttachEvent("onchangetraffic",A);A()}return g}function J(f){switch(f){case a.OrthoZoom:e.orthoZoom.Destroy();b[f]=null;c.DetachEvent("onendzoom",w);try{q.removeChild(b[f])}catch(k){}return;case a.ObliqueZoom:try{q.removeChild(b[f])}catch(k){}if(e.obliqueZoom){e.obliqueZoom.Destroy();e.obliqueZoom=null}case a.TinyZoom:l.Destroy();b[f]=null;return;case a.ObliqueCompass:if(I&&e.obliqueCompass){e.obliqueCompass.onclick=null;e.obliqueCompass.Destroy();e.obliqueCompass=null}return;case a.ObliqueNotification:b[a.ObliqueNotification].detachEvent("onclick",P);return;case a.ThreeDUpdatedNotification:b[a.ThreeDUpdatedNotification]=null;return;case a.Traffic:c.DetachEvent("onchangetraffic",A)}var i=b[f];if(i==null)return;var d=j[f];if(d.Children!=null){var g,h;for(h in d.Children)if(d.Children.hasOwnProperty(h)){g=d.Children[h];try{i.removeChild(b[g])}catch(k){}J(g)}}if(d.OnClickFunction!=null)i.detachEvent("onclick",d.OnClickFunction);try{if(c&&d.StyleUpdateEvent!=null&&d.StyleUpdateFunction!=null)c.DetachEvent(d.StyleUpdateEvent,d.StyleUpdateFunction)}catch(k){}b[d.Id]=null}function db(){b[a.ObliqueNotification]=document.createElement("div");b[a.ObliqueNotification].id=a.ObliqueNotification;b[a.ObliqueNotification].attachEvent("onclick",P);b[a.ObliqueNotification].innerHTML+='
'+' '+'
'+L_DashboardBirdsEyeText_Text+"
"+'
'+"
"}function cb(){b[a.ThreeDUpdatedNotification]=document.createElement("div");b[a.ThreeDUpdatedNotification].id=a.ThreeDUpdatedNotification;b[a.ThreeDUpdatedNotification].innerHTML+='
'+L_Dashboard3DInstalled_Text+"
"}function sb(){B()}function B(){if(f==Msn.VE.DashboardStates.MapStyle.Road&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Road;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function mb(){if(b[a.ShowLabels]){i(a.ShowLabels,true);if(k)Y();else X()}else X()}function X(){if(f==Msn.VE.DashboardStates.MapStyle.Aerial&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Aerial;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function nb(){Y()}function Y(){if(f==Msn.VE.DashboardStates.MapStyle.Hybrid&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Hybrid;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function u(){if(d==Msn.VE.DashboardStates.MapView.Ortho&&h==Msn.VE.DashboardStates.MapMode.Flatland)return;d=Msn.VE.DashboardStates.MapView.Ortho;if(h==Msn.VE.DashboardStates.MapMode.Flatland)switch(f){case Msn.VE.DashboardStates.MapStyle.Aerial:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Aerial))m(h+d+f);else B();break;case Msn.VE.DashboardStates.MapStyle.Hybrid:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid))m(h+d+f);else B();break;default:m(h+d+f)}else m(h+d);o()}function P(c){if(h==Msn.VE.DashboardStates.MapMode.View3D&&g(b[a.Oblique]).hasClass("MSVE_selected")){p();c.cancelBubble=true;return}G()}function G(){if(typeof b[a.ObliqueNotification]!="undefined"&&b[a.ObliqueNotification])p();if(h==Msn.VE.DashboardStates.MapMode.View3D)e.Oblique3DFunctionality.ObliqueClickFunction();else tb()}var L=null;function fb(){var e=new Date;if(L!=null)if(e.getTime()-L.getTime()<1000)return;L=e;var d=!g(b[a.Oblique]).hasClass("MSVE_selected");c.Show3DBirdseye(d,f==Msn.VE.DashboardStates.MapStyle.Road||k);var h=d?"RequestLayerBirdsEyeOn":"RequestLayerBirdsEyeOff"}var n;function tb(){if(d===Msn.VE.DashboardStates.MapView.Oblique)return;d=Msn.VE.DashboardStates.MapView.Oblique;y();if(k)f=Msn.VE.DashboardStates.MapStyle.Hybrid;else f=Msn.VE.DashboardStates.MapStyle.Aerial;if(typeof Msn.VE.API=="undefined")ob();else F()}function ob(){if(!n){var a=$ID("msve_mapContainer");n=document.createElement("div");n.id="animator";a.appendChild(n)}n.style.display="block";n.className="zoom_animation";window.setTimeout(F,2000)}function F(){if(n){n.parentNode.removeChild(n);n=null}if(c.IsDragging()||c.IsZooming()){window.setTimeout(F,250);return}m(h+d+f)}function lb(){Gb(Msn.VE.DashboardStates.MapMode.View3D+Msn.VE.DashboardStates.MapView.Oblique)}function hb(){if(d==Msn.VE.DashboardStates.MapView.StreetSide&&h==Msn.VE.DashboardStates.MapMode.Flatland)return;d=Msn.VE.DashboardStates.MapView.StreetSide;m(h+d);jb()}function vb(){if(f==Msn.VE.DashboardStates.MapStyle.Aerial){k=true;f=Msn.VE.DashboardStates.MapStyle.Hybrid}else if(f==Msn.VE.DashboardStates.MapStyle.Hybrid){k=false;f=Msn.VE.DashboardStates.MapStyle.Aerial}m(h+d+f)}function kb(){c.EnableMode(Msn.VE.MapActionMode.Mode2D)}function qb(){if(typeof b[a.ThreeDUpdatedNotification]!="undefined"&&b[a.ThreeDUpdatedNotification])E();if(!c.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))if(typeof ShowMessage!="undefined"){ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}else c.EnableMode(Msn.VE.MapActionMode.Mode3D)}function A(){if(VE_TrafficManager.turnedOn){g(b[a.Traffic]).addClass("MSVE_selected");b[a.Traffic].title=L_NavActionHideTrafficToolTip_Text}else{g(b[a.Traffic]).removeClass("MSVE_selected");b[a.Traffic].title=L_NavActionShowTrafficToolTip_Text}}function Ab(){if(VE_TrafficManager.turnedOn)VE_TrafficManager.ClearTraffic();else{for(var a in Msn.VE.API.Globals.vemapinstances)if(Msn.VE.API.Globals.vemapinstances[a]instanceof VEMap&&Msn.VE.API.Globals.vemapinstances[a].vemapcontrol){VE_TrafficManager.m_vemap=Msn.VE.API.Globals.vemapinstances[a];break}VE_TrafficManager.turnedOn=true;VE_TrafficManager.showTrafficFlow=true;VE_TrafficManager.showIncidents=true;VE_TrafficManager.showConstructionIncidents=true;VE_TrafficManager.markets=[];VE_TrafficManager.incidents=[];VE_TrafficManager.m_vemap.ShowTrafficLegend();VE_TrafficManager.m_vemap.SetTrafficLegendText(L_MapLegendAndPopupLink_Text);window.setTimeout(VE_TrafficManager.GetMarkets,100)}A()}function rb(c){if(c.enabled=="1"){g(b[a.Oblique]).addClass("MSVE_selected");b[a.Oblique].title=L_NavActionHideObliqueToolTip_Text}else{g(b[a.Oblique]).removeClass("MSVE_selected");b[a.Oblique].title=L_NavActionShowObliqueToolTip_Text}}function t(a){W(a.view.mapStyle)}function Z(a){if(a==Msn.VE.MapActionMode.Mode3D)U();else T()}function U(){if(h==Msn.VE.DashboardStates.MapMode.View3D)return;h=Msn.VE.DashboardStates.MapMode.View3D;if(typeof b[a.View]!="undefined"&&b[a.View]!=null)g(b[a.View].classRecipients).removeClass("MSVE_FlatlandMapMode").addClass("MSVE_View3DMapMode");i(a.StreetSide,true);i(a.Road,true);i(a.Aerial,true);i(a.Hybrid,true);if(!e.Oblique3DFunctionality.DependsOnObliqueAvailability)i(a.Oblique,true);else{if(b[a.ObliqueNotification]!=null&&b[a.ObliqueNotification].enabled&&!g(b[a.Oblique]).hasClass("MSVE_selected"))x();o()}if(typeof b[a.Ortho]!="undefined"&&b[a.Ortho]!=null)b[a.Ortho].title=L_NavAction3DOrthoToolTip_Text;if(typeof b[a.Oblique]!="undefined"&&b[a.Oblique]!=null){b[a.Oblique].title=e.Oblique3DFunctionality.Title;if(b[a.Oblique].enabled&&!g(b[a.Oblique]).hasClass("MSVE_selected"))x()}if(typeof b[a.StreetSide]!="undefined"&&b[a.StreetSide]!=null)b[a.StreetSide].title=L_NavAction3DStreetSideToolTip_Text;var f=c.GetDashboard().GetShimmedElements(),d;for(d=0;d '+L_Dashboard3DText_Text+"
";j.attachEvent("onclick",u);window.setTimeout(w,6000);e.displaying3DNotification=true}else j.style.display="none"}function B(a){r(a);h=document.createElement("a");h.className="MSVE_toggleGlyph";h.title=L_NavActionHideToolTip_Text;f.appendChild(h)}function r(a){if($MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)&&a!=false){if(!k){e.Create(b.Mode);f.appendChild(d[b.Mode]);v();k=true}f.className="MSVE_header MSVE_with3D"}else{f.className="MSVE_header MSVE_no3D";k=false}}function y(){if(k){e.DestroyControl(b.Mode);if(d[b.Mode]!=null)f.removeChild(d[b.Mode]);k=false}f.removeChild(h);c.removeChild(f);h=f=null}function u(){j.style.display="none";e.displaying3DNotification=false;if(!a.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))if(typeof ShowMessage!="undefined"){ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}else a.EnableMode(Msn.VE.MapActionMode.Mode3D)}function w(){if(j){j.style.display="none";e.displaying3DNotification=false}if(a!=null&&!a.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))if(a.IsObliqueAvailable()&&$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye))e.DisplayObliqueNotification()}this.SetX=function(a){c.style.left=a+"px"};this.GetElement=function(){return c};this.GetShimmedElements=function(){return [c]};this.GetHeader=function(){return f};this.GetY=function(){return g(c).getScreenPosition().y};this.GetHeight=function(){return c.offsetHeight};this.ShowToggleGlyph=function(){if(h!=null&&h!="undefined")h.style.display="block"};this.HideToggleGlyph=function(){if(h!=null&&h!="undefined")h.style.display="none"};this.SetShowMapModeSwitch=function(a){if(a!=k){if(!a){e.DestroyControl(b.Mode);f.removeChild(d[b.Mode]);k=false}r(a)}};function t(){var b=a.GetDashboard().GetHeader().lastChild;a.GetDashboard().ShowToggleGlyph();window.dbRoller=new Msn.VE.Animation.Roller(a.GetDashboard().GetElement());dbRoller.setAccelerationFunction(AccelerationFunctions.CrazyElevator);dbRoller.setYLeave(32);dbRoller.hookEvent("beforerollin",function(){dbRoller.setYLeave(a.GetDashboard().GetHeader().offsetHeight);if(a.GetMinimap()){a.GetMinimap().Hide();if(a.GetMinimap().IsInitialized())a.GetMinimap().SetDoUpdates(false)}});dbRoller.hookEvent("afterrollin",function(){a.GetDashboard().GetElement().className=a.GetDashboard().GetElement().className.replace(/\s*expanded/g,"");a.GetDashboard().GetElement().className+=" collapsed";a.GetDashboard().GetHeader().lastChild.title=L_NavActionShowToolTip_Text});dbRoller.hookEvent("beforerollout",function(){a.GetDashboard().GetElement().className=a.GetDashboard().GetElement().className.replace(/\s*collapsed/g,"");a.GetDashboard().GetElement().className+=" expanded"});dbRoller.hookEvent("afterrollout",function(){if(a.GetMinimap()){a.GetMinimap().Show();if(minimapRoller&&minimapRoller.isExpanded()&&a.GetMinimap().IsInitialized())a.GetMinimap().SetDoUpdates(true)}a.GetDashboard().GetHeader().lastChild.title=L_NavActionHideToolTip_Text});dbRoller.hookEvent("roll",RollShim);b.onclick=function(){if(dbRoller.isExpanded())dbRoller.rollIn(Msn.VE.Animation.RollDirection.BottomUp);else dbRoller.rollOut(Msn.VE.Animation.RollDirection.TopDown);return false};b=null}this.Hide=function(){if(c)c.style.display="none"};this.Show=function(){if(c)c.style.display="block"};this.Init=E;this.Destroy=D;this.createRoller=t};function DashboardContainerMouseMoveEvent(a){a=GetEvent(a);return false}Msn.VE.V6Control=function(L,e,mb,jb,D,ab,W,E){Msn.VE.DashboardStates=new function(){this.MapMode=new function(){this.Flatland=1;this.View3D=2};this.MapView=new function(){this.Ortho=4;this.Oblique=8;this.StreetSide=16};this.MapStyle=new function(){this.Road=32;this.Shaded=64;this.Aerial=128;this.Hybrid=256}};var H={Style:"MSVE_navAction_mapStyleCell",Road:"MSVE_navAction_RoadMapStyle",Aerial:"MSVE_navAction_AerialMapStyle",Hybrid:"MSVE_navAction_HybridMapStyle",Mode:"MSVE_navAction_modeCell",Mode2D:"MSVE_navAction_FlatlandMapMode",Mode3D:"MSVE_navAction_View3DMapMode",View:"MSVE_navAction_mapViewCellInner",Ortho:"MSVE_navAction_OrthoMapView",Oblique:"MSVE_navAction_ObliqueMapView",StreetSide:"MSVE_navAction_StreetSideMapView",ShowLabels:"MSVE_navAction_showLabels",Pan:"MSVE_navAction_panContainer",PanUp:"MSVE_navAction_panUp",PanDown:"MSVE_navAction_panDown",PanLeft:"MSVE_navAction_panLeft",PanRight:"MSVE_navAction_panRight",TinyZoom:"MSVE_TinyZoomBar",OrthoZoom:"MSVE_OrthoZoomBar",ObliqueZoom:"MSVE_ObliqueZoomBar",ObliqueCompass:"MSVE_compassDiv",ObliqueNotification:"MSVE_obliqueNotification",ThreeDUpdatedNotification:"MSVE_threeDUpdatedNotification",Traffic:"MSVE_navAction_traffic"},kb="Nav Bar";Msn.VE.CommonControls=function(c,u){function yb(b){var f=document.createElement("div"),e=document.createElement("div"),a=document.createElement("div"),d=document.createElement("div"),w=0,s=0,j=false;this.Init=function(){d.className="MSVE_ZoomBar_minus";d.id="MSVE_navAction_obliqueZoomBar_minus";d.unselectable="on";d.title=L_ZoomBarMinusToolTip_Text;d.attachEvent("onclick",l);pseudoHover(d);a.className="MSVE_ZoomBar_slider";a.id="MSVE_navAction_obliqueZoomBar_slider";a.unselectable="on";a.attachEvent("onmousedown",o);a.attachEvent("onmousemove",p);a.attachEvent("onmouseup",q);a.attachEvent("onclick",IgnoreEvent);pseudoHover(a);e.className="MSVE_ObliqueZoomBar_bar";e.unselectable="on";e.appendChild(a);e.attachEvent("onclick",r);f.className="MSVE_ZoomBar_plus";f.id="MSVE_navAction_obliqueZoomBar_plus";f.title=L_ZoomBarPlusToolTip_Text;f.unselectable="on";f.attachEvent("onclick",m);pseudoHover(f);b.className="MSVE_ZoomBar";b.id="MSVE_ObliqueZoomBar";b.appendChild(d);b.appendChild(e);b.appendChild(f);b.attachEvent("onmousedown",IgnoreEvent);b.attachEvent("onmouseup",IgnoreEvent);b.attachEvent("onclick",IgnoreEvent);b.attachEvent("ondblclick",IgnoreEvent);i()};function v(){b.style.display="block"}function u(){b.style.display="none"}function r(a){a=GetEvent(a);CancelEvent(a);k();n(h(Gimme.Screen.getMousePosition(a).y));return false}function h(b){b-=s+d.offsetHeight+a.offsetHeight;var c=e.offsetHeight-a.offsetHeight;if(b<0)b=0;else if(b>c)b=c;return b}function l(){c.ZoomOut()}function m(){c.ZoomIn()}function t(){d.detachEvent("onclick",l);a.detachEvent("onmousedown",o);a.detachEvent("onmousemove",p);a.detachEvent("onmouseup",q);a.detachEvent("onclick",IgnoreEvent);e.detachEvent("onclick",r);f.detachEvent("onclick",m);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onclick",IgnoreEvent);b.detachEvent("ondblclick",IgnoreEvent);d=a=e=f=null}function o(b){b=GetEvent(b);CancelEvent(b);k();if(a.setCapture)a.setCapture();j=true;return false}function p(b){b=GetEvent(b);CancelEvent(b);if(j)a.style.top=h(Gimme.Screen.getMousePosition(b).y)+"px";return false}function q(b){b=GetEvent(b);CancelEvent(b);if(a.releaseCapture)a.releaseCapture();j=false;n(h(Gimme.Screen.getMousePosition(b).y));i();return false}function k(){var a=g(b).getScreenPosition();w=a.x;s=a.y}function n(f){var b=e.offsetHeight-a.offsetHeight,d=1+MathRound((b-f)/b*1);c.SetZoom(d)}function i(){if(c.GetZoomLevel()==1)a.style.top=e.offsetHeight-a.offsetHeight+"px";else a.style.top="0px"}this.Destroy=t;this.Show=v;this.Hide=u;this.UpdateFromMap=i}function B(z,x,y){var a=document.createElement("div");a.setAttribute("id",z);a.innerHTML=x;var c="MSVE_obliqueCompassPointOff",g=y;a.attachEvent("onmouseover",f);a.attachEvent("onmouseout",h);a.attachEvent("onclick",i);this.onclick=null;this.onmouseover=null;this.onmouseout=null;var e=25,b=this,d=false,j=new v(a,17,17);function f(e){if(d)return;c=a.className;a.className="MSVE_obliqueCompassPointHover";if(b.onmouseover)b.onmouseover(e)}function i(a){if(d)return;f(a);c="MSVE_obliqueCompassPointOn";if(b.onclick)b.onclick(a)}function h(e){if(d)return;a.className=c;if(b.onmouseout)b.onmouseout(e)}function m(){c="MSVE_obliqueCompassPointOn";a.className="MSVE_obliqueCompassPointOn"}function l(){c="MSVE_obliqueCompassPointOff";a.className="MSVE_obliqueCompassPointOff"}function u(){d=true;l()}function k(){d=false;m()}function q(){return a}function n(){return g}function o(a){g=a}function w(){j.Reset();k()}function p(b){a.style.left=b.left;a.style.top=b.top}function v(r,n,o){var g=r,a=0,b=.3,c=0,l=40,k=Math.PI/2,h=true,p=b+.1;function m(a,b,c){if(b>=c-a&&b<=c+a)return true;return false}function i(){a+=b;if(a>Math.PI*2)a-=Math.PI*2;else if(a<0)a+=Math.PI*2;if(m(p,a,c)){b=.3;a=c;d(a);return}d(a);window.setTimeout(i,l)}function d(a){var b=n+e*Math.sin(a),c=o+e*Math.cos(a);g.style.left=b+"px";g.style.top=c+"px"}function f(a){c=a;i()}function j(a,c){h=c;if(!h)b*=-1;f(k*a)}function q(){a=0}this.RotateTo=f;this.RotateToIndex=j;this.Reset=q}function t(){a.detachEvent("onmouseover",f);a.detachEvent("onmouseout",h);a.detachEvent("onclick",i);a=null}function s(a){e=a}function r(){return e}this.SetRadius=s;this.GetRadius=r;this.GetElement=q;this.GetCurrentPositionIndex=n;this.SetCurrentPositionIndex=o;this.SetCurrentPosition=p;this.On=m;this.Off=l;this.RotateToIndex=j.RotateToIndex;this.Reset=w;this.Disable=u;this.Enable=k;this.Destroy=t}function xb(D){var o=[];o.push({"top":"-8px","left":"17px"});o.push({"top":"17px","left":"42px"});o.push({"top":"42px","left":"17px"});o.push({"top":"17px","left":"-8px"});var f=document.createElement("div");f.setAttribute("id","MSVE_obliqueCompassContainer");f.title=L_ObliqueCompassSelectDirection_Text;var a=new B("MSVE_obliqueCompassPointN","N",0),i=a.GetElement();i.attachEvent("onclick",r);i.attachEvent("onmouseover",u);i.attachEvent("onmouseout",h);var d=new B("MSVE_obliqueCompassPointE","E",1),k=d.GetElement();k.attachEvent("onclick",t);k.attachEvent("onmouseover",x);k.attachEvent("onmouseout",h);var b=new B("MSVE_obliqueCompassPointS","S",2),j=b.GetElement();j.attachEvent("onclick",s);j.attachEvent("onmouseover",v);j.attachEvent("onmouseout",h);var e=new B("MSVE_obliqueCompassPointW","W",3),l=e.GetElement();l.attachEvent("onclick",w);l.attachEvent("onmouseover",y);l.attachEvent("onmouseout",h);var m=document.createElement("div");m.id="MSVE_navAction_obliqueCompassArrow";f.appendChild(i);f.appendChild(k);f.appendChild(j);f.appendChild(l);f.appendChild(m);D.appendChild(f);q();function p(a){if(a<0)a=4-Math.abs(a);return a}function n(l,i,k){var c=l.GetCurrentPositionIndex(),h,f=[];f[a.GetCurrentPositionIndex()]=L_North_Text;f[b.GetCurrentPositionIndex()]=L_South_Text;f[d.GetCurrentPositionIndex()]=L_East_Text;f[e.GetCurrentPositionIndex()]=L_West_Text;if(i){h=i==Msn.VE.BirdsEyeSearchSpinDirection.CounterclockwiseSpin;if(c+i!=2){var g;switch(i){case -1:switch(c){case 0:case 2:g=[3];break;case 1:g=[3,2]}break;case 1:switch(c){case 0:case 2:g=[1];break;case 3:g=[1,2]}}if(g){var j=L_ObliqueSkippingOneDirection_Text;if(c==0)j=L_ObliqueNoImageryInRequestedDirection_Text;if(g.length==2)j=L_ObliqueSkippingTwoDirections_Text;if(typeof ShowMessage!="undefined")ShowMessage(j.replace("%1",f[c]).replace("%2",f[g[0]]).replace("%3",f[g[1]]))}}}else{h=c!=3;if(k)if(c==0){if(typeof ShowMessage!="undefined")ShowMessage(L_ObliqueModeImageNotAvailable_Text)}else if(typeof ShowMessage!="undefined")ShowMessage(L_ObliqueNoImageryInRequestedDirection_Text.replace("%1",f[c]).replace("%2",f[0]))}d.SetCurrentPositionIndex(p(d.GetCurrentPositionIndex()-c));e.SetCurrentPositionIndex(p(e.GetCurrentPositionIndex()-c));a.SetCurrentPositionIndex(p(a.GetCurrentPositionIndex()-c));b.SetCurrentPositionIndex(p(b.GetCurrentPositionIndex()-c));a.RotateToIndex(2-a.GetCurrentPositionIndex()<0?a.GetCurrentPositionIndex():2-a.GetCurrentPositionIndex(),h);d.RotateToIndex(2-d.GetCurrentPositionIndex()<0?d.GetCurrentPositionIndex():2-d.GetCurrentPositionIndex(),h);b.RotateToIndex(2-b.GetCurrentPositionIndex()<0?b.GetCurrentPositionIndex():2-b.GetCurrentPositionIndex(),h);e.RotateToIndex(2-e.GetCurrentPositionIndex()<0?e.GetCurrentPositionIndex():2-e.GetCurrentPositionIndex(),h)}function g(a){switch(a){case 0:h();break;case 1:z();break;case 2:A();break;case 3:C()}}function h(){m.className="MSVE_obliqueCompassArrowU"}function A(){m.className="MSVE_obliqueCompassArrowD"}function z(){m.className="MSVE_obliqueCompassArrowR"}function C(){m.className="MSVE_obliqueCompassArrowL"}function s(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(b);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.South)c.SetObliqueOrientation("South",null,true)}function r(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(a);g(0);var b=c.GetObliqueScene();if(b)if(b.GetOrientation()!=Msn.VE.Orientation.North)c.SetObliqueOrientation("North",null,true)}function t(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(d);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.East)c.SetObliqueOrientation("East",null,true)}function w(){if(c.GetDashboard()&&c.GetDashboard().SetLastRotationDirection)c.GetDashboard().SetLastRotationDirection(Msn.VE.BirdsEyeSearchSpinDirection.NoSpin);n(e);g(0);var a=c.GetObliqueScene();if(a)if(a.GetOrientation()!=Msn.VE.Orientation.West)c.SetObliqueOrientation("West",null,true)}function v(){g(b.GetCurrentPositionIndex())}function x(){g(d.GetCurrentPositionIndex())}function y(){g(e.GetCurrentPositionIndex())}function u(){g(a.GetCurrentPositionIndex())}function H(){f.style.display="none"}function I(){f.style.display="block"}function q(k,j){var i=c.GetObliqueScene();if(!i)return;var f=i.GetOrientation(),h;switch(f){case "North":h=a;break;case "South":h=b;break;case "East":h=d;break;case "West":h=e}n(h,k,j);g(0);if(f!=Msn.VE.Orientation.North)a.Enable();else a.Disable();if(f!=Msn.VE.Orientation.South)b.Enable();else b.Disable();if(f!=Msn.VE.Orientation.East)d.Enable();else d.Disable();if(f!=Msn.VE.Orientation.West)e.Enable();else e.Disable()}function G(){a.Destroy();d.Destroy();b.Destroy();e.Destroy();i.detachEvent("onclick",r);i.detachEvent("onmouseover",u);i.detachEvent("onmouseout",h);k.detachEvent("onclick",t);k.detachEvent("onmouseover",x);k.detachEvent("onmouseout",h);j.detachEvent("onclick",s);j.detachEvent("onmouseover",v);j.detachEvent("onmouseout",h);l.detachEvent("onclick",w);l.detachEvent("onmouseover",y);l.detachEvent("onmouseout",h);f=null}function F(c){a.SetRadius(c);b.SetRadius(c);d.SetRadius(c);e.SetRadius(c)}function E(){return a.GetRadius()}this.Hide=H;this.Show=I;this.UpdateFromMap=q;this.SetRadius=F;this.GetRadius=E;this.Destroy=G}function Bb(b){var f=document.createElement("div"),e=document.createElement("div"),a=document.createElement("div"),d=document.createElement("div"),v=0,s=0,j=false;this.Init=function(){d.className="MSVE_ZoomBar_minus";d.id="MSVE_navAction_orthoZoomBar_minus";d.title=L_ZoomBarMinusToolTip_Text;d.unselectable="on";d.attachEvent("onclick",l);pseudoHover(d);a.className="MSVE_ZoomBar_slider";a.id="MSVE_navAction_orthoZoomBar_slider";a.title=L_ZoomBarSliderToolTip_Text;a.unselectable="on";a.attachEvent("onmousedown",o);a.attachEvent("onmousemove",p);a.attachEvent("onmouseup",q);a.attachEvent("onclick",IgnoreEvent);pseudoHover(a);e.className="MSVE_OrthoZoomBar_bar";e.unselectable="on";e.appendChild(a);e.attachEvent("onclick",r);f.className="MSVE_ZoomBar_plus";f.id="MSVE_navAction_orthoZoomBar_plus";f.title=L_ZoomBarPlusToolTip_Text;f.unselectable="on";f.attachEvent("onclick",m);pseudoHover(f);b.className="MSVE_ZoomBar";b.id="MSVE_OrthoZoomBar";b.appendChild(d);b.appendChild(e);b.appendChild(f);b.attachEvent("onmousedown",IgnoreEvent);b.attachEvent("onmouseup",IgnoreEvent);b.attachEvent("onclick",IgnoreEvent);b.attachEvent("ondblclick",IgnoreEvent);i()};this.Destroy=function(){d.detachEvent("onclick",l);a.detachEvent("onmousedown",o);a.detachEvent("onmousemove",p);a.detachEvent("onmouseup",q);a.detachEvent("onclick",IgnoreEvent);e.detachEvent("onclick",r);f.detachEvent("onclick",m);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onmousedown",IgnoreEvent);b.detachEvent("onclick",IgnoreEvent);b.detachEvent("ondblclick",IgnoreEvent);d=a=e=f=null};function u(){b.style.display="block"}function t(){b.style.display="none"}function k(){var a=g(b).getScreenPosition();v=a.x;s=a.y}function o(b){b=GetEvent(b);CancelEvent(b);k();if(a.setCapture)a.setCapture();j=true;return false}function p(b){b=GetEvent(b);CancelEvent(b);if(j)a.style.top=h(Gimme.Screen.getMousePosition(b).y)+"px";return false}function q(b){b=GetEvent(b);CancelEvent(b);if(a.releaseCapture)a.releaseCapture();j=false;n(h(Gimme.Screen.getMousePosition(b).y));i();return false}function m(){c.ZoomIn()}function l(){c.ZoomOut()}function r(a){a=GetEvent(a);CancelEvent(a);k();n(h(Gimme.Screen.getMousePosition(a).y));return false}function h(b){b-=s+d.offsetHeight+a.offsetHeight;var c=e.offsetHeight-a.offsetHeight;if(b<0)b=0;else if(b>c)b=c;return b}function n(f){var b=e.offsetHeight-a.offsetHeight,d=1+MathRound((b-f)/b*18);c.SetZoom(d)}function i(){var b=e.offsetHeight-a.offsetHeight,d=b-(c.GetZoomLevel()-1)/18*b;a.style.top=d+"px"}this.UpdateFromMap=i;this.Show=u;this.Hide=t}function Eb(){var h=document.createElement("div"),g=document.createElement("div"),f=document.createElement("div"),a=false,d=g,b=f;this.maxZoomLevel=21;this.minZoomLevel=1;this.Init=function(){g.className="MSVE_ZoomBar_plus";g.id="MSVE_navAction_tinyZoomBar_plus";g.title=L_ZoomBarPlusToolTip_Text;g.unselectable="on";f.className="MSVE_ZoomBar_minus";f.id="MSVE_navAction_tinyZoomBar_minus";f.title=L_ZoomBarMinusToolTip_Text;f.unselectable="on";c.AttachEvent("onendzoom",i);h.className="MSVE_ZoomBar";h.id="MSVE_TinyZoomBar";h.appendChild(g);h.appendChild(f);return h};this.HookupPlusMinusEvents=function(b,a){m(b);j(a)};function m(a){if(a)d=a;d.attachEvent("onmousedown",o);d.attachEvent("onmouseup",e);d.attachEvent("onmouseout",e)}this.HookupPlusEvents=m;function j(a){if(a)b=a;b.attachEvent("onmousedown",l);b.attachEvent("onmouseup",e);b.attachEvent("onmouseout",e)}this.HookupMinusEvents=j;function n(){if(d!=null){d.detachEvent("onmousedown",o);d.detachEvent("onmouseup",e);d.detachEvent("onmouseout",e)}if(a=="in")a=false}this.UnhookPlusEvents=n;function k(){if(b!=null){b.detachEvent("onmousedown",l);b.detachEvent("onmouseup",e);b.detachEvent("onmouseout",e)}if(a=="out")a=false}this.UnhookMinusEvents=k;this.Destroy=function(){n();k();c.DetachEvent("onendzoom",i);g=f=d=b=null};function q(){if(c.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return true;else return c.IsAnimationEnabled()}function o(){a="in";c.ZoomIn()}function i(){window.setTimeout(p,q()?1:500)}function p(){if(a=="in"&&c.GetZoomLevel()<21)c.ZoomIn(false);else if(a=="out"&&c.GetZoomLevel()>1)c.ZoomOut(false)}function l(){a="out";c.ZoomOut()}function e(){a=false}this.GetPlus=function(){return g};this.GetMinus=function(){return f}}var a=H,j=[];j[a.Style]={Id:a.Style,InitialClass:null,OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Road,a.Aerial,a.Hybrid],Text:null};j[a.Road]={Id:a.Road,InitialClass:"MSVE_MapStyle",OnClickFunction:sb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:MapControl.Features.MapStyle.Road,Title:L_NavActionRoadToolTip_Text,Children:null,Text:L_NavActionRoad_Text};j[a.Aerial]={Id:a.Aerial,InitialClass:"MSVE_MapStyle",OnClickFunction:mb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:MapControl.Features.MapStyle.Aerial,Title:L_NavActionAerialToolTip_Text,Children:null,Text:L_NavActionAerial_Text};j[a.Hybrid]={Id:a.Hybrid,InitialClass:"MSVE_MapStyle",OnClickFunction:nb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:MapControl.Features.MapStyle.Hybrid,Title:L_NavActionHybridToolTip_Text,Children:null,Text:L_NavActionHybrid_Text};j[a.Mode]={Id:a.Mode,InitialClass:"MSVE_modeCell",OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Mode2D,a.Mode3D],Text:null};j[a.Mode2D]={Id:a.Mode2D,InitialClass:"MSVE_MapMode",OnClickFunction:kb,StyleUpdateEvent:"oninitmode",StyleUpdateFunction:Z,Enabled:true,Title:L_NavActionFlatlandToolTip_Text,Children:null,Text:L_NavActionFlatland_Text};j[a.Mode3D]={Id:a.Mode3D,InitialClass:"MSVE_MapMode",OnClickFunction:qb,StyleUpdateEvent:"oninitmode",StyleUpdateFunction:Z,Enabled:MapControl.Features.MapStyle.View3D,Title:L_NavActionView3DToolTip_Text,Children:null,Text:L_NavActionView3D_Text};j[a.View]={Id:a.View,InitialClass:null,OnClickFunction:null,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:null,Children:[a.Ortho,a.Oblique,a.StreetSide],Text:null};j[a.Ortho]={Id:a.Ortho,InitialClass:"MSVE_MapStyle",OnClickFunction:t,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:true,Title:L_NavActionOrthoToolTip_Text,Children:null,Text:null};j[a.Oblique]={Id:a.Oblique,InitialClass:"MSVE_MapStyle",OnClickFunction:F,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:false,Title:L_NavActionObliqueToolTip_Text,Children:null,Text:null};j[a.StreetSide]={Id:a.StreetSide,InitialClass:"MSVE_MapStyle",OnClickFunction:hb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:false,Title:L_NavActionStreetSideToolTip_Text,Children:null,Text:null};j[a.ShowLabels]={Id:a.ShowLabels,InitialClass:"MSVE_MapStyle",OnClickFunction:vb,StyleUpdateEvent:"onchangemapstyle",StyleUpdateFunction:s,Enabled:true,Title:L_NavActionShowLabels_Text,Children:null,Text:L_NavActionLabels_Text};j[a.Traffic]={Id:a.Traffic,InitialClass:"MSVE_MapStyle",OnClickFunction:Ab,StyleUpdateEvent:null,StyleUpdateFunction:null,Enabled:true,Title:L_NavActionShowTrafficToolTip_Text,Children:null,Text:L_NavActionTraffic_Text};this.ObliqueFunctions=[];this.ObliqueFunctions.ObliqueImageryIn3D={ObliqueClickFunction:fb,Title:L_NavActionShowObliqueToolTip_Text,DependsOnObliqueAvailability:true};this.ObliqueFunctions.ObliqueTiltIn3D={ObliqueClickFunction:lb,Title:L_NavAction3DObliqueToolTip_Text,DependsOnObliqueAvailability:false};var e=this,b=[],h=Msn.VE.DashboardStates.MapMode.Flatland,d=Msn.VE.DashboardStates.MapView.Ortho,f=Msn.VE.DashboardStates.MapStyle.Road;this.orthoZoom=null;var l;this.obliqueCompass=null;this.obliqueZoom=null;this.displaying3DNotification=false;var y=null;this.Oblique3DFunctionality=this.ObliqueFunctions.ObliqueImageryIn3D;var q=document.createElement("div");q.id="MSVE_navAction_palette";document.body.appendChild(q);var I=false,ab=false,S=19,Q=1,k=true,R=false,r=Msn.VE.BirdsEyeSearchSpinDirection.NoSpin,N;for(N in u)if(u.hasOwnProperty(N))M(u[N]);function Ib(){var d=$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(c.IsObliqueAvailable()||c.IsMapViewOblique());if(d){i(a.Oblique,true);if(b[a.ObliqueNotification]&&!c.IsMapViewOblique()&&!g(b[a.Oblique]).hasClass("MSVE_selected"))w()}else{i(a.Oblique,false);if(b[a.ObliqueNotification])p()}W();if(c.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))U();else T()}function Hb(){var a;for(a in u)if(u.hasOwnProperty(a))J(u[a]);document.body.removeChild(q);q=null}function M(f){switch(f){case a.OrthoZoom:b[f]=document.createElement("div");e.orthoZoom=new Bb(b[f]);e.orthoZoom.Init();c.AttachEvent("onendzoom",v);q.appendChild(b[f]);v();return;case a.ObliqueZoom:b[f]=document.createElement("div");ab=true;b[f].id=f;q.appendChild(b[f]);return;case a.TinyZoom:l=new Eb;b[f]=l.Init();c.AttachEvent("onendzoom",v);v();return;case a.ObliqueCompass:b[f]=document.createElement("div");b[f].id=f;I=true;return;case a.ObliqueNotification:db();return;case a.ThreeDUpdatedNotification:cb();return;case a.Oblique:c.AttachEvent("onve3dphotostatechanged",rb)}var d=j[f],g=document.createElement("div");b[d.Id]=g;g.id=d.Id;g.enabled=d.Enabled;g.classRecipients=[g];if(d.Text!=null)g.innerText=d.Text;if(d.OnClickFunction!=null&&d.Enabled==true)g.attachEvent("onclick",d.OnClickFunction);if(d.StyleUpdateEvent!=null&&d.StyleUpdateFunction!=null)c.AttachEvent(d.StyleUpdateEvent,d.StyleUpdateFunction);if(d.InitialClass){g.className=d.InitialClass;if(!g.enabled)g.className+="_disabled"}if(d.Children!=null){var h;for(h in d.Children)if(d.Children.hasOwnProperty(h))g.appendChild(M(d.Children[h]))}else pseudoHover(g);switch(f){case a.Oblique:case a.ObliqueCompass:c.AttachEvent("onobliqueenter",zb);c.AttachEvent("onobliqueleave",K);c.AttachEvent("onendmapstyleoblique",pb);c.AttachEvent("onobliquechange",wb);c.AttachEvent("obliquerequestunavailable",eb);break;case a.Traffic:c.AttachEvent("onchangetraffic",z);z()}return g}function J(f){switch(f){case a.OrthoZoom:e.orthoZoom.Destroy();b[f]=null;c.DetachEvent("onendzoom",v);try{q.removeChild(b[f])}catch(k){}return;case a.ObliqueZoom:try{q.removeChild(b[f])}catch(k){}if(e.obliqueZoom){e.obliqueZoom.Destroy();e.obliqueZoom=null}case a.TinyZoom:l.Destroy();b[f]=null;return;case a.ObliqueCompass:if(I&&e.obliqueCompass){e.obliqueCompass.onclick=null;e.obliqueCompass.Destroy();e.obliqueCompass=null}return;case a.ObliqueNotification:b[a.ObliqueNotification].detachEvent("onclick",P);return;case a.ThreeDUpdatedNotification:b[a.ThreeDUpdatedNotification]=null;return;case a.Traffic:c.DetachEvent("onchangetraffic",z)}var i=b[f];if(i==null)return;var d=j[f];if(d.Children!=null){var g,h;for(h in d.Children)if(d.Children.hasOwnProperty(h)){g=d.Children[h];try{i.removeChild(b[g])}catch(k){}J(g)}}if(d.OnClickFunction!=null)i.detachEvent("onclick",d.OnClickFunction);try{if(c&&d.StyleUpdateEvent!=null&&d.StyleUpdateFunction!=null)c.DetachEvent(d.StyleUpdateEvent,d.StyleUpdateFunction)}catch(k){}b[d.Id]=null}function db(){b[a.ObliqueNotification]=document.createElement("div");b[a.ObliqueNotification].id=a.ObliqueNotification;b[a.ObliqueNotification].attachEvent("onclick",P);b[a.ObliqueNotification].innerHTML+='
'+' '+'
'+L_DashboardBirdsEyeText_Text+"
"+'
'+"
"}function cb(){b[a.ThreeDUpdatedNotification]=document.createElement("div");b[a.ThreeDUpdatedNotification].id=a.ThreeDUpdatedNotification;b[a.ThreeDUpdatedNotification].innerHTML+='
'+L_Dashboard3DInstalled_Text+"
"}function sb(){A()}function A(){if(f==Msn.VE.DashboardStates.MapStyle.Road&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Road;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function mb(){if(b[a.ShowLabels]){i(a.ShowLabels,true);if(k)Y();else X()}else X()}function X(){if(f==Msn.VE.DashboardStates.MapStyle.Aerial&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Aerial;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function nb(){Y()}function Y(){if(f==Msn.VE.DashboardStates.MapStyle.Hybrid&&d==Msn.VE.DashboardStates.MapView.Ortho)return;f=Msn.VE.DashboardStates.MapStyle.Hybrid;d=Msn.VE.DashboardStates.MapView.Ortho;m(h+d+f)}function t(){if(d==Msn.VE.DashboardStates.MapView.Ortho&&h==Msn.VE.DashboardStates.MapMode.Flatland)return;d=Msn.VE.DashboardStates.MapView.Ortho;if(h==Msn.VE.DashboardStates.MapMode.Flatland)switch(f){case Msn.VE.DashboardStates.MapStyle.Aerial:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Aerial))m(h+d+f);else A();break;case Msn.VE.DashboardStates.MapStyle.Hybrid:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid))m(h+d+f);else A();break;default:m(h+d+f)}else m(h+d);o()}function P(c){if(h==Msn.VE.DashboardStates.MapMode.View3D&&g(b[a.Oblique]).hasClass("MSVE_selected")){p();c.cancelBubble=true;return}F()}function F(){if(typeof b[a.ObliqueNotification]!="undefined"&&b[a.ObliqueNotification])p();if(h==Msn.VE.DashboardStates.MapMode.View3D)e.Oblique3DFunctionality.ObliqueClickFunction();else tb()}var L=null;function fb(){var e=new Date;if(L!=null)if(e.getTime()-L.getTime()<1000)return;L=e;var d=!g(b[a.Oblique]).hasClass("MSVE_selected");c.Show3DBirdseye(d,f==Msn.VE.DashboardStates.MapStyle.Road||k);var h=d?"RequestLayerBirdsEyeOn":"RequestLayerBirdsEyeOff"}var n;function tb(){if(d===Msn.VE.DashboardStates.MapView.Oblique)return;d=Msn.VE.DashboardStates.MapView.Oblique;x();if(k)f=Msn.VE.DashboardStates.MapStyle.Hybrid;else f=Msn.VE.DashboardStates.MapStyle.Aerial;if(typeof Msn.VE.API=="undefined")ob();else E()}function ob(){if(!n){var a=$ID("msve_mapContainer");n=document.createElement("div");n.id="animator";a.appendChild(n)}n.style.display="block";n.className="zoom_animation";window.setTimeout(E,2000)}function E(){if(n){n.parentNode.removeChild(n);n=null}if(c.IsDragging()||c.IsZooming()){window.setTimeout(E,250);return}m(h+d+f)}function lb(){Gb(Msn.VE.DashboardStates.MapMode.View3D+Msn.VE.DashboardStates.MapView.Oblique)}function hb(){if(d==Msn.VE.DashboardStates.MapView.StreetSide&&h==Msn.VE.DashboardStates.MapMode.Flatland)return;d=Msn.VE.DashboardStates.MapView.StreetSide;m(h+d);jb()}function vb(){if(f==Msn.VE.DashboardStates.MapStyle.Aerial){k=true;f=Msn.VE.DashboardStates.MapStyle.Hybrid}else if(f==Msn.VE.DashboardStates.MapStyle.Hybrid){k=false;f=Msn.VE.DashboardStates.MapStyle.Aerial}m(h+d+f)}function kb(){c.EnableMode(Msn.VE.MapActionMode.Mode2D)}function qb(){if(typeof b[a.ThreeDUpdatedNotification]!="undefined"&&b[a.ThreeDUpdatedNotification])D();if(!c.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))if(typeof ShowMessage!="undefined"){ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}else c.EnableMode(Msn.VE.MapActionMode.Mode3D)}function z(){if(VE_TrafficManager.turnedOn){g(b[a.Traffic]).addClass("MSVE_selected");b[a.Traffic].title=L_NavActionHideTrafficToolTip_Text}else{g(b[a.Traffic]).removeClass("MSVE_selected");b[a.Traffic].title=L_NavActionShowTrafficToolTip_Text}}function Ab(){if(VE_TrafficManager.turnedOn)VE_TrafficManager.ClearTraffic();else{for(var a in Msn.VE.API.Globals.vemapinstances)if(Msn.VE.API.Globals.vemapinstances[a]instanceof VEMap&&Msn.VE.API.Globals.vemapinstances[a].vemapcontrol){VE_TrafficManager.m_vemap=Msn.VE.API.Globals.vemapinstances[a];break}VE_TrafficManager.turnedOn=true;VE_TrafficManager.showTrafficFlow=true;VE_TrafficManager.showIncidents=true;VE_TrafficManager.showConstructionIncidents=true;VE_TrafficManager.markets=[];VE_TrafficManager.incidents=[];VE_TrafficManager.m_vemap.ShowTrafficLegend();VE_TrafficManager.m_vemap.SetTrafficLegendText(L_MapLegendAndPopupLink_Text);window.setTimeout(VE_TrafficManager.GetMarkets,100)}z()}function rb(c){if(c.enabled=="1"){g(b[a.Oblique]).addClass("MSVE_selected");b[a.Oblique].title=L_NavActionHideObliqueToolTip_Text}else{g(b[a.Oblique]).removeClass("MSVE_selected");b[a.Oblique].title=L_NavActionShowObliqueToolTip_Text}}function s(a){W(a.view.mapStyle)}function Z(a){if(a==Msn.VE.MapActionMode.Mode3D)U();else T()}function U(){if(h==Msn.VE.DashboardStates.MapMode.View3D)return;h=Msn.VE.DashboardStates.MapMode.View3D;if(typeof b[a.View]!="undefined"&&b[a.View]!=null)g(b[a.View].classRecipients).removeClass("MSVE_FlatlandMapMode").addClass("MSVE_View3DMapMode");i(a.StreetSide,true);i(a.Road,true);i(a.Aerial,true);i(a.Hybrid,true);if(!e.Oblique3DFunctionality.DependsOnObliqueAvailability)i(a.Oblique,true);else{if(b[a.ObliqueNotification]!=null&&b[a.ObliqueNotification].enabled&&!g(b[a.Oblique]).hasClass("MSVE_selected"))w();o()}if(typeof b[a.Ortho]!="undefined"&&b[a.Ortho]!=null)b[a.Ortho].title=L_NavAction3DOrthoToolTip_Text;if(typeof b[a.Oblique]!="undefined"&&b[a.Oblique]!=null){b[a.Oblique].title=e.Oblique3DFunctionality.Title;if(b[a.Oblique].enabled&&!g(b[a.Oblique]).hasClass("MSVE_selected"))w()}if(typeof b[a.StreetSide]!="undefined"&&b[a.StreetSide]!=null)b[a.StreetSide].title=L_NavAction3DStreetSideToolTip_Text;var f=c.GetDashboard().GetShimmedElements(),d;for(d=0;d div");B.addEvent("mousedown",IgnoreEvent);B.addEvent("mouseup",IgnoreEvent);B.addEvent("mousemove",DashboardContainerMouseMoveEvent);B.addEvent("mousewheel",IgnoreEvent);B.addEvent("dblclick",IgnoreEvent);B.addEvent("contextmenu",IgnoreEvent);B.addEvent("keydown",IgnoreEvent);B.addEvent("keyup",IgnoreEvent);B.addEvent("click",IgnoreEvent);h=[];for(s=0;s<5;s++){h[s]=document.createElement("div");h[s].className="MSVE_navAction_separator";h[s].id="MSVE_navAction_separator"+s}y=document.createElement("div");y.id="MSVE_navAction_toggleGlyphInner";y.className="MSVE_navAction_toggleGlyph";j.appendChild(y);b[a.Road].title=L_NavActionRoadToolTip_Text;b[a.Aerial].title=L_NavActionAerialToolTip_Text;b[a.Hybrid].title=L_NavActionHybridToolTip_Text;b[a.Mode2D].title=L_NavActionFlatlandToolTip_Text;b[a.Mode3D].title=L_NavActionView3DToolTip_Text;i.appendChild(b[a.Road]);i.appendChild(b[a.Aerial]);i.appendChild(h[1]);i.appendChild(b[a.Oblique]);if(D){d.appendChild(b[a.Mode]);d.appendChild(h[0])}d.appendChild(i);d.appendChild(h[2]);f.SetLabelsState(W!=false);d.appendChild(b[a.ShowLabels]);d.appendChild(h[3]);if(b[a.Traffic]!=null){b[a.Traffic].title=L_NavActionShowTrafficToolTip_Text;d.appendChild(b[a.Traffic]);d.appendChild(h[4])}else C.addClass("notraffic");if(!ab){var G=parseInt(C.getStyle("width"))-parseInt(g(b[a.Oblique]).getStyle("width"));c.style.width=G+"px";b[a.Oblique].style.display="none"}r=document.createElement("div");r.id="MSVE_navAction_compassWrapper";q.appendChild(r);z=new bb(r);z.Init();pseudoHover(z.GetElement());b[a.ObliqueCompass].radius=31;r.appendChild(b[a.ObliqueCompass]);var F=f.GetTinyZoom();m.appendChild(b[a.TinyZoom]);p=document.createElement("div");p.id="MSVE_navAction_zoomPlusWrapper";pseudoHover(p);p.appendChild(F.GetPlus());b[a.TinyZoom].appendChild(p);o=document.createElement("div");o.id="MSVE_navAction_zoomMinusWrapper";pseudoHover(o);o.appendChild(F.GetMinus());b[a.TinyZoom].appendChild(o);F.HookupPlusMinusEvents(p,o);n=document.createElement("div");n.id="MSVE_navAction_rotatorContainer";u=document.createElement("div");u.id="MSVE_navAction_ccw";u.title=L_NavActionObliqueRotationToolTip_CCW_Text;u.className="MSVE_navAction_rotator";v=document.createElement("div");v.id="MSVE_navAction_cw";v.title=L_NavActionObliqueRotationToolTip_CW_Text;v.className="MSVE_navAction_rotator";k=document.createElement("div");k.id="MSVE_navAction_ccwWrapper";pseudoHover(k);k.appendChild(u);l=document.createElement("div");l.id="MSVE_navAction_cwWrapper";pseudoHover(l);l.appendChild(v);g(k).addEvent("click",O);g(l).addEvent("click",Q);n.appendChild(k);n.appendChild(l);m.appendChild(n);d.appendChild(b[a.ObliqueNotification]);d.appendChild(b[a.ThreeDUpdatedNotification]);f.Init();e.AttachEvent("oninitmode",Y);if(Msn.VE.Animation)J();f.UpdateZoom()}function cb(){d.removeChild(b[a.ObliqueNotification]);d.removeChild(b[a.ThreeDUpdatedNotification]);g(k).removeEvent("click",O);g(l).removeEvent("click",Q);k.removeChild(u);l.removeChild(v);n.removeChild(k);n.removeChild(l);m.removeChild(n);var s=f.GetTinyZoom();if(s){var A=s.GetMinus();if(A)o.removeChild(A);var E=s.GetPlus();if(E)p.removeChild(E);b[a.TinyZoom].removeChild(o);b[a.TinyZoom].removeChild(p);m.removeChild(b[a.TinyZoom])}z.Destroy();q.removeChild(r);r.removeChild(b[a.ObliqueCompass]);if(b[a.Traffic]!=null){d.removeChild(b[a.Traffic]);d.removeChild(h[4])}d.removeChild(b[a.ShowLabels]);d.removeChild(h[3]);i.removeChild(b[a.Road]);i.removeChild(b[a.Aerial]);i.removeChild(h[1]);i.removeChild(b[a.Oblique]);if(D){d.removeChild(b[a.Mode]);d.removeChild(h[0])}d.removeChild(i);d.removeChild(h[2]);j.removeChild(y);var G=g(c),e=G.select("> div");e.removeEvent("mouseleave",B);e.removeEvent("mouseenter",C);e.removeEvent("mousedown",IgnoreEvent);e.removeEvent("mouseup",IgnoreEvent);e.removeEvent("mousemove",DashboardContainerMouseMoveEvent);e.removeEvent("mousewheel",IgnoreEvent);e.removeEvent("dblclick",IgnoreEvent);e.removeEvent("contextmenu",IgnoreEvent);e.removeEvent("keydown",IgnoreEvent);e.removeEvent("keyup",IgnoreEvent);e.removeEvent("click",IgnoreEvent);c.removeChild(x);c.removeChild(w);c.removeChild(t);c.removeChild(q);c.removeChild(m);c.removeChild(d);c.removeChild(j);L.removeChild(c);f.Destroy();if(Msn.VE.Animation)F().onclick=null}function B(){Gimme.Animation.end("MSVE_NAVACTION_FADEIN");g(c).select("div.MSVE_navAction_background").fadeTo(null,G,K,"MSVE_NAVACTION_FADEOUT")}function C(){Gimme.Animation.end("MSVE_NAVACTION_FADEOUT");g(c).select("div.MSVE_navAction_background").fadeTo(null,X,K,"MSVE_NAVACTION_FADEIN")}function Y(a){if(a==Msn.VE.MapActionMode.Mode3D){Z();if(e.Get3DControl())if(g(N()).hasClass("collapsed"))e.Get3DControl().ShowNavigationControl=false;else e.Get3DControl().ShowNavigationControl=true}else P()}function P(){var a=g(c),b=a.select("> div");a.select("div.MSVE_navAction_background").setStyle("opacity",G);b.addEvent("mouseleave",B);b.addEvent("mouseenter",C)}function Z(){var a=g(c),b=a.select("> div");b.removeEvent("mouseleave",B);b.removeEvent("mouseenter",C);a.select("div.MSVE_navAction_background").setStyle("opacity",M)}function O(){I(Msn.VE.BirdsEyeSearchSpinDirection.CounterclockwiseSpin)}function Q(){I(Msn.VE.BirdsEyeSearchSpinDirection.ClockwiseSpin)}function I(a){f.SetLastRotationDirection(a);var b=e.GetObliqueScene();if(b){var d=R[b.GetOrientation()],c=U[(d+a+4)%4];e.SetObliqueOrientation(c,a,true);f.obliqueCompass.UpdateFromMap()}}function N(){return c}function T(){return f.GetObliqueNotifierShimmedElements().concat([t])}function F(){return j}function db(){return f.GetMapModeState()}function gb(){if(c)c.style.display="block"}function eb(){if(c)c.style.display="none"}function J(){if(!e.GetDashboard().GetToggleGlyph())return;e.GetDashboard().GetToggleGlyph().onclick=function(){var a=e.GetDashboard();if(g(a.GetElement()).hasClass("collapsed")){g(a.GetElement()).removeClass("collapsed");a.GetToggleGlyph().title=L_NavActionHideToolTip_Text;if(e.Get3DControl())e.Get3DControl().ShowNavigationControl=true}else{g(a.GetElement()).addClass("collapsed");a.GetToggleGlyph().title=L_NavActionShowToolTip_Text;if(e.Get3DControl())e.Get3DControl().ShowNavigationControl=false}var c=e.GetDashboard().GetShimmedElements(),b;for(b=0;b=a.longitude&&c.latitude>=b.latitude&&c.longitude<=b.longitude};this.ContainsRectangle=function(a){return a.southeast.latitude>=this.southeast.latitude&&a.southeast.longitude<=this.southeast.longitude&&a.northwest.latitude<=this.northwest.latitude&&a.northwest.longitude>=this.northwest.longitude}};Msn.VE.MapStyle=new function(){this.Road="r";this.Shaded="s";this.Aerial="a";this.Hybrid="h";this.Oblique="o";this.ObliqueHybrid="b"};Msn.VE.MapStyle.IsViewOblique=function(a){return a==Msn.VE.MapStyle.ObliqueHybrid||a==Msn.VE.MapStyle.Oblique};Msn.VE.MapStyle.IsViewOrtho=function(a){return a==Msn.VE.MapStyle.Road||a==Msn.VE.MapStyle.Shaded||a==Msn.VE.MapStyle.Hybrid||a==Msn.VE.MapStyle.Aerial};Msn.VE.MapViewType=function(){};Msn.VE.MapViewType.Pixel="pixel";Msn.VE.MapViewType.PixelRect="pixelRect";Msn.VE.MapViewType.LatLong="latlong";Msn.VE.MapViewType.LatLongAccurate="latlongaccurate";Msn.VE.MapViewType.LatLongRect="latlongRect";Msn.VE.MapView=function(map){this.zoomLevel=0;this.mapStyle=null;this.doRoadShading=false;this.tilt=-90;this.direction=0;this.altitude=-1000;this.center=new VEPixel;this.latlong=new Msn.VE.LatLong;this.cameraLatlong=null;this.pixelRect=new Msn.VE.PixelRectangle;this.latlongRect=new Msn.VE.LatLongRectangle;this.sceneId=null;this.sceneOrientation=null;this.bySceneId=false;this.callback=null;this.photoX=null;this.photoY=null;this.photoScale=null;this._supressFlyToCall=false;this._needsPivotOperation=true;var mapInstance=map,p_this=this,viewType=Msn.VE.MapViewType.Pixel;this.Destroy=function(){this.center=this.latlong=p_this=mapInstance=null};this.GetViewType=function(){return viewType};this.GetMap=function(){return mapInstance};this.SetMap=function(a){mapInstance=a};function MakeCopy(){var a=new Msn.VE.MapView;a.Copy(p_this);return a}function Copy(a){p_this.zoomLevel=a.zoomLevel;p_this.mapStyle=a.mapStyle;p_this.doRoadShading=a.doRoadShading;p_this.tilt=a.tilt;p_this.direction=a.direction;p_this.altitude=a.altitude;p_this.center.Copy(a.center);if(a.cameraLatlong!=null){p_this.cameraLatlong=new Msn.VE.LatLong;p_this.cameraLatlong.Copy(a.cameraLatlong)}p_this.latlong.Copy(a.latlong);p_this.pixelRect.Copy(a.pixelRect);p_this.latlongRect.Copy(a.latlongRect);p_this.sceneId=a.sceneId;p_this.sceneOrientation=a.sceneOrientation;p_this.photoX=a.photoX;p_this.photoY=a.photoY;p_this.photoScale=a.photoScale;p_this.SetMap(a.GetMap());viewType=a.GetViewType()}function Equals(a){return a!=null&&p_this.zoomLevel==a.zoomLevel&&p_this.mapStyle==a.mapStyle&&MathAbs(p_this.tilt-a.tilt)<1e-6&&MathAbs(p_this.direction-a.direction)<1e-6&&MathAbs(p_this.altitude-a.altitude)<1e-6&&MathAbs(p_this.center.x-a.center.x)<1e-6&&MathAbs(p_this.center.y-a.center.y)<1e-6&&p_this.sceneId==a.sceneId&&p_this.GetMap()==a.GetMap()&&p_this.sceneOrientation==a.sceneOrientation}function ToString(){return "("+p_this.latlong.ToString()+", "+p_this.zoomLevel+", "+p_this.mapStyle+")"}function SetCenter(a){if(!a)return;p_this.center=a;viewType=Msn.VE.MapViewType.Pixel}function SetCenterLatLong(a){if(!a)return;p_this.latlong=a;p_this.cameraLatlong=null;viewType=Msn.VE.MapViewType.LatLong}function SetCenterLatLongAccurate(a){if(a){p_this.latlong=a;p_this.cameraLatlong=null;if(Msn.VE.MapStyle.IsViewOblique(p_this.mapStyle))viewType=Msn.VE.MapViewType.LatLongAccurate;else viewType=Msn.VE.MapViewType.LatLong}}function SetPixelRectangle(a){p_this.pixelRect=a;p_this.cameraLatlong=null;p_this.tilt=-90;p_this.direction=0;viewType=Msn.VE.MapViewType.PixelRect}function SetLatLongRectangle(a){p_this.latlongRect=a;p_this.cameraLatlong=null;p_this.tilt=-90;p_this.direction=0;viewType=Msn.VE.MapViewType.LatLongRect}function SetZoomLevel(a){if(a<=0)a=1;var c=mapInstance.GetCenterOffset().x,d=mapInstance.GetCenterOffset().y;switch(viewType){case Msn.VE.MapViewType.Pixel:var b=Math.pow(2,a-p_this.zoomLevel);p_this.center.x=(p_this.center.x+c)*b-c;p_this.center.y=(p_this.center.y+d)*b-d;break;case Msn.VE.MapViewType.PixelRect:var b=Math.pow(2,a-p_this.zoomLevel);p_this.pixelRect.topLeft.x=p_this.pixelRect.topLeft.x*b;p_this.pixelRect.topLeft.y=p_this.pixelRect.topLeft.y*b;p_this.pixelRect.bottomRight.x=p_this.pixelRect.bottomRight.x*b;p_this.pixelRect.bottomRight.y=p_this.pixelRect.bottomRight.y*b}if(p_this.zoomLevel!=a){p_this.altitude=-1000;if(p_this.zoomLevel!=0)p_this.cameraLatlong=null}p_this.zoomLevel=a}function SetMapStyle(a,c,b,e,d){var f=p_this.mapStyle;p_this.mapStyle=a;if(viewType==Msn.VE.MapViewType.Pixel)viewType=Msn.VE.MapViewType.LatLong;if(!Msn.VE.MapStyle.IsViewOblique(a)){p_this.sceneId=null;p_this.sceneOrientation=null;p_this.bySceneId=false}else{p_this.sceneId=c;if(b)p_this.sceneOrientation=b;p_this.spinDirection=f==a?e:null;p_this.preserveScene=d;if(c)p_this.bySceneId=true;else p_this.bySceneId=false}}function SetTilt(a){if(a>=269.99999)a=a-360;if(a<-90)a=-90;if(a>90)a=90;p_this.tilt=a;p_this._needsPivotOperation=true}function SetDirection(a){if(a<0||a>=360){a=a%360;if(a<0)a=360+a}p_this.direction=a;p_this._needsPivotOperation=true}function SetAltitude(a){if(a<-1000||a>15000000)a=-1000;p_this.altitude=a}function GetTilt(){return p_this.tilt}function GetDirection(){return p_this.direction}function GetAltitude(){return p_this.altitude}function ScaleCoord(a,b){if(b)a=a*Math.pow(2,b-p_this.zoomLevel);return a}function GetX(a){return ScaleCoord(p_this.center.x,a)}function GetY(a){return ScaleCoord(p_this.center.y,a)}function GetCenter(a){var b=ScaleCoord(p_this.center.x+mapInstance.GetCenterOffset().x,a),c=ScaleCoord(p_this.center.y+mapInstance.GetCenterOffset().y,a);return new VEPixel(b,c)}function GetZoomLevel(){return p_this.zoomLevel}function GetLatLongRectangle(){return p_this.latlongRect}function GetPixelRectangle(){return p_this.pixelRect}function GetCenterLatLong(){var b=p_this.center.x+mapInstance.GetCenterOffset().x,c=p_this.center.y+mapInstance.GetCenterOffset().y,a=mapInstance.GetCurrentMode().PixelToLatLong(new VEPixel(b,c),p_this.zoomLevel);return a==null?p_this.latlong:a}function Resolve(b,d,c,a){if(viewType==Msn.VE.MapViewType.LatLongAccurate)ResolveAsync(b,d,c,a);else ResolveSync(b,d,c,a)}function ResolveAsync(b,e,d,a){function c(c){if(c!=null&&typeof c!="undefined"&&c.length==1)p_this.center=c[0];if(p_this.cameraLatlong==null)if(!p_this._UpdateCamera(b)){p_this.tilt=-90;p_this.cameraLatlong=p_this.latlong}viewType=Msn.VE.MapViewType.Pixel;if(a!=null&&typeof a=="function")a()}b.LatLongToPixelAsync([p_this.latlong],p_this.zoomLevel,c)}function ResolveSync(a,e,c,b){switch(viewType){case Msn.VE.MapViewType.Pixel:p_this.latlong=a.PixelToLatLong(p_this.center,p_this.zoomLevel);break;case Msn.VE.MapViewType.LatLong:p_this.center=a.LatLongToPixel(p_this.latlong,p_this.zoomLevel);if(p_this.center!=null){p_this.center.x-=mapInstance.GetCenterOffset().x;p_this.center.y-=mapInstance.GetCenterOffset().y}break;case Msn.VE.MapViewType.PixelRect:ResolveRectangle(a,e,c);break;case Msn.VE.MapViewType.LatLongRect:if(Msn.VE.MapStyle.IsViewOblique(p_this.mapStyle)){p_this.zoomLevel=1;var d=a.GetScene();if(!d||!d.ContainsLatLong(p_this.latlongRect.northwest)||!d.ContainsLatLong(p_this.latlongRect.southeast)){p_this.latlong=p_this.latlongRect.Center();p_this.center=a.LatLongToPixel(p_this.latlong,p_this.zoomLevel)}else{p_this.pixelRect.topLeft=a.LatLongToPixel(p_this.latlongRect.northwest,p_this.zoomLevel);p_this.pixelRect.bottomRight=a.LatLongToPixel(p_this.latlongRect.southeast,p_this.zoomLevel);ResolveRectangle(a,e,c)}}else{p_this.zoomLevel=12;p_this.altitude=-1000;p_this.pixelRect.topLeft=a.LatLongToPixel(p_this.latlongRect.northwest,p_this.zoomLevel);p_this.pixelRect.bottomRight=a.LatLongToPixel(p_this.latlongRect.southeast,p_this.zoomLevel);ResolveRectangle(a,e,c)}}if(p_this.cameraLatlong==null)if(!p_this._UpdateCamera(a)){p_this.tilt=-90;p_this.cameraLatlong=p_this.latlong}viewType=Msn.VE.MapViewType.Pixel;if(b!=null&&typeof b=="function")b()}function ResolveRectangle(i,k,j){var c=19,a=Math.pow(2,c-p_this.zoomLevel),g=MathMax(1,MathAbs(p_this.pixelRect.topLeft.x-p_this.pixelRect.bottomRight.x)*a),f=MathMax(1,MathAbs(p_this.pixelRect.topLeft.y-p_this.pixelRect.bottomRight.y)*a),d=Math.log(2),e=c-Math.ceil(Math.log(g/k)/d),h=c-Math.ceil(Math.log(f/j)/d),b=MathMin(e,h);if(b<=0)b=1;a=Math.pow(2,b-p_this.zoomLevel);p_this.center.x=.5*(p_this.pixelRect.topLeft.x+p_this.pixelRect.bottomRight.x)*a-mapInstance.GetCenterOffset().x;p_this.center.y=.5*(p_this.pixelRect.topLeft.y+p_this.pixelRect.bottomRight.y)*a-mapInstance.GetCenterOffset().y;p_this.zoomLevel=b;p_this.altitude=-1000;p_this.latlong=i.PixelToLatLong(p_this.center,p_this.zoomLevel)}function _UpdateCamera(viewMode){if(p_this.latlong==null)if(p_this.center!=null&&p_this.zoomLevel!=null&&typeof viewMode._InternalOrthoMode=="function"){var orthoMode=viewMode._InternalOrthoMode();p_this.latlong=orthoMode.PixelToLatLong(p_this.center,p_this.zoomLevel);if(p_this.latlong!=null){p_this.tilt=-90;p_this.direction=0}}if(p_this.latlong==null)return false;p_this._needsPivotOperation=false;if(mapInstance.IsModeEnabled(Msn.VE.MapActionMode.Mode3D)){var control=mapInstance.Get3DControl();if(control!=null){var cam=control.CameraPositionGivenTarget(p_this.latlong.latitude,p_this.latlong.longitude,p_this.altitude,p_this.zoomLevel,p_this.tilt,p_this.direction);if(cam!=null){var lat,lon,alt;eval(cam);p_this.cameraLatlong=new Msn.VE.LatLong;p_this.cameraLatlong.latitude=lat;p_this.cameraLatlong.longitude=lon;p_this.altitude=alt}else return false}}return true}this.MakeCopy=MakeCopy;this.Copy=Copy;this.Equals=Equals;this.ToString=ToString;this.SetCenter=SetCenter;this.SetCenterLatLong=SetCenterLatLong;this.SetCenterLatLongAccurate=SetCenterLatLongAccurate;this.SetPixelRectangle=SetPixelRectangle;this.SetLatLongRectangle=SetLatLongRectangle;this.SetZoomLevel=SetZoomLevel;this.SetMapStyle=SetMapStyle;this.SetTilt=SetTilt;this.SetDirection=SetDirection;this.SetAltitude=SetAltitude;this.GetTilt=GetTilt;this.GetDirection=GetDirection;this.GetAltitude=GetAltitude;this.ScaleCoord=ScaleCoord;this.GetX=GetX;this.GetY=GetY;this.GetCenter=GetCenter;this.Resolve=Resolve;this.SetZoomLevel=SetZoomLevel;this.GetZoomLevel=GetZoomLevel;this.GetLatLongRectangle=GetLatLongRectangle;this.GetPixelRectangle=GetPixelRectangle;this.GetCenterLatLong=GetCenterLatLong;this._UpdateCamera=_UpdateCamera};Msn.VE.ViewChangeType=function(){};Msn.VE.ViewChangeType.Zoom=1;Msn.VE.ViewChangeType.Pan=2;Msn.VE.ViewChangeType.Hybrid=3;Msn.VE.ViewChangeType.IsValid=function(a){return typeof a=="number"&&a>0&&a<4};Msn.VE.ObliqueScene=function(e,J,C,F,H,O,b,d,v,u,I){var c=null,a="",g=null,h=null,f={};f[Msn.VE.MapStyle.Oblique]="2981";f[Msn.VE.MapStyle.ObliqueHybrid]="2981";var i={};i[Msn.VE.MapStyle.Oblique]="%0t%3.ssl.ak.tiles.virtualearth.net/tiles/o%4-%5-%6-%7.jpeg?g=%8";i[Msn.VE.MapStyle.ObliqueHybrid]="%0t%3.ssl.ak.tiles.virtualearth.net/tiles/cmd/ObliqueHybrid?a=%4-%5-%6-%7&g=%8";var w=Msn.VE.MapStyle.Oblique,j=null,N=null,o=null;if(Msn.VE.API==null)j="__obliqueCalcServiceUrl__";else o=Msn.VE.API.Constants.imageryurl+"/ConvertLatLongToPixelInBirdsEye";var r=new _xz1,q=256,M=this,K=new Msn.VE.Bounds(1,2,0,0,b/2,d/2);function B(d,e){var c=Math.pow(2,e-2),f=[[d.x/c],[d.y/c],[1]],a=MatrixMultiply(v,f),b=new Msn.VE.LatLong;b.longitude=a[0][0]/a[2][0];b.latitude=a[1][0]/a[2][0];return b}function y(d,g,f){var b=[];for(var a=0;a=0&&d>=0&&c0;c--){var b=0,e=1<this.topLeft.x&&a.y>this.topLeft.y&&a.x0){g[i]=Math.floor(c%d);c=Math.floor(c/d);--i}for(var b=0;b=a&&d<=c){var e=(d-a)/(c-a),f=e*b+.5;return Math.min(Math.floor(f),b)}else throw L_floatintegermapencodingoutofrange_text};this.IntToFloat=function(d){if(d<=b){var f=d/b,e=a+f*(c-a);return e}else throw L_floatintegermapencodingoutofrange_text}}var L_velatlongencodinginvalidstringlength_text="_xz1: Invalid string length";function _xz1(b){var i=-90,h=90,g=-180,f=180,j="0123456789bcdfghjkmnpqrstvwxyz",e=6;if(b!=null&&typeof b!="undefined")e=b;var a=new VEIntegerEncoding(j,e),d=new VEFloatIntegerMap(i,h,a.MaxValue()),c=new VEFloatIntegerMap(g,f,a.MaxValue());this.Encode=function(e,b){var f=a.Encode(d.FloatToInt(e))+a.Encode(c.FloatToInt(b));return f};this.Decode=function(f){if(f.length==2*a.ValueLength()){var e=a.ValueLength(),j=f.substr(0,e),h=f.substr(e,e),i=a.Decode(j),g=a.Decode(h),b=[];b[0]=d.IntToFloat(i);b[1]=c.IntToFloat(g);return b}else throw L_velatlongencodinginvalidstringlength_text}}function _xz1ForMobile(){_xz1.call(this,5)}var Shims=["help","msve_ScratchPad","VE_MessageControl","contextMenu","MSVE_dashboardId"],vedomain="http://ecn.dev.virtualearth.net/mapcontrol/v6.3",_entityIdShapePostfix="_Shape",_hackUniqueLayerId="UniqueLayer_Hack";function GetManifestUrl(a){return a.indexOf("http")==0?a:vedomain+a}function Get3dMarket(){if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)return window.locale;else return Msn.VE.API.Globals.locale}function Get3dInstallMarket(){if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)return window.locale;else return Msn.VE.API.Globals.resourcelocale}function Get3dInstallUrl(b,a){if(typeof a=="undefined"||a==null)a=Get3dInstallMarket();if(typeof b=="undefined"||b==null){b="Default.aspx?action=install";if(a)b+="&mkt={0}"}var c="http://www.bing.com/maps/Help/VE3DInstall/"+b;c=c.replace("{0}",a);return c}function Get3dHelpUrl(c,a){var b="http://www.bing.com/maps/Help/{0}/"+c;if(typeof a=="undefined"||a==null)a=Get3dMarket();b=b.replace("{0}",a);return b}function initShimElements(){for(var a=0;a=0;function SetShimPosition(a,b){var c=g(b).getRelativePosition(a.parentNode);a.style.top=c.y+"px";a.style.left=c.x+"px";a.width=b.offsetWidth;a.height=b.offsetHeight;if(UseClipToSize)ConvertClipToSize(a,b);else a.style.clip=b.style.clip}function UpdateIFrameShim(c,e,d){var a=typeof c=="object"?c:$ID(c);if(!a)return;if(!a.shimElement)addIFrameShim(a,e,d);var b=a.shimElement;SetShimPosition(b,a);if(Msn.VE.Css.Functions.getComputedStyle(a,"display")=="none"||Msn.VE.Css.Functions.getComputedStyle(a,"visibility")=="hidden")b.style.display="none";else b.style.display="block"}function RepositionShims(){if(!view3DMode)return;for(var b=0;b=0)a.style.zIndex=e;else a.style.zIndex="1";a.style.backgroundColor="white";b.shimElement=a;HideShim(b);var c=f;if(c==null)c=b;var d=c.parentNode;if(d==null)d=document.body;d.insertBefore(a,c);if(b.id=="msve_ScratchPad"||b.id&&b.id.indexOf("_vefindcontrolinput")>0)hookResizeEvent(b);return a}function destroyIFrameShim(b){var a=$ID(b);DestroyShim(a)}function ShowShim(a,b){UpdateIFrameShim(a,b);if(a!=null&&a.shimElement)a.shimElement.style.display="block"}function HideShim(a){if(a!=null&&a.shimElement)a.shimElement.style.display="none"}function DestroyShim(a){if(a!=null&&a.shimElement){a.shimElement.parentNode.removeChild(a.shimElement);a.shimElement=null}}function RollShim(b){var a=b.Recipient;if(a.shimElement)if(UseClipToSize)ConvertClipToSize(a.shimElement,a);else a.shimElement.style.clip=a.style.clip}function OnView3DKeyDown(d,c){var b=parseInt(d);CloseContextMenu(b);ero.hide();var a=GetMapControlInstance(c);if(a==null)return;switch(b){case 65:a.SetMapStyle("a");break;case 72:a.SetMapStyle("h");break;case 82:case 86:a.SetMapStyle("r");break;case 50:case 98:window.setTimeout(function(){a.EnableMode(Msn.VE.MapActionMode.Mode2D)},10);break;case 66:case 79:a.GetDashboard().Oblique3DToggle()}}function OnNavigationHelpFired(){VE_Help.OpenLiveHelp("wl_local","topic","WL_LOCAL_PROC_3D_NavigateMap.htm")}function OnHardwareAccelHelpFired(){VE_Help.OpenLiveHelp("wl_local","topic","WL_LOCAL_TROU_3D_VideoAcceleration.htm")}var __shapeIdBeingDragged=null;function Deserialize3DMessage(message){var messageObject;if(typeof Sys!="undefined"&&Sys!=null&&Sys.Serialization!=null)messageObject=Sys.Serialization.JavaScriptSerializer.deserialize(message);else eval("messageObject = "+message+";");return messageObject}function OnView3DMouseDown(b){var a=Deserialize3DMessage(b);if(a.button=="Left"){__shapeIdBeingDragged=a.shapeId;window.setTimeout(BeginDragPin3D,300)}CloseContextMenu();ero.hide();if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)VE_MapDispatch.ClickedEntity=null}function BeginDragPin3D(){if(__shapeIdBeingDragged!=null){var d=true,b=VE_MapManager.GetCollectionByAnId(__shapeIdBeingDragged);if(b!=null){var c=VE_MapManager.GetSelectedCollection();if(c!=null&&c.GetId()!=b.GetId())return}else return;var a=VE_MapManager.GetAnnotationInCollectionById(b,__shapeIdBeingDragged);if(typeof a!="undefined"&&a!=null&&a.GetType()==MC_GEO_TYPE_POINT){VE_Annotations.EnterMovePushpinMode(__shapeIdBeingDragged,true);View3DMovePin(__shapeIdBeingDragged)}}}function OnView3DDropGeometry(b){var a=Deserialize3DMessage(b);if(!a.pushpinId)return;var c=VE_MapManager.GetAnnotationById(a.pushpinId);if(c)VE_Annotations.MovePushpin(null,new Msn.VE.LatLong(a.lat,a.lon))}function OnView3DLatLonAltClicked(b){var a=Deserialize3DMessage(b);VE_MapUpdateView_AutoSaveEntity();if(VE_EditControl.GetMode()==MC_DRAW_MODEL)VE_MapDispatch.OnCreateModel(a.lat,a.lon,a.alt);else VE_EditControl.AddPoint(null,a.lat,a.lon,a.alt)}function OnBeginFlyTo(c,b){ero.hide();var a=GetMapControlInstance(b);if(a!=null)a.OnBeginCameraUpdate()}function OnView3DUpdateViewpoint(k,l){var b=Deserialize3DMessage(k),c=GetMapControlInstance(l);if(c==null)return;c.OnEndCameraUpdate();var f=1e-6,e=.1,j=.01,a=c.GetCurrentMapView(),h=Math.abs(b.heading-a.GetDirection())0){VE_MapManager.SetHighlightEntity(entity,isCV);return}if(!isCV)VE_MapViewPreUpdate.ShowEro(pushpinId,VE_Directions.EntryPoint.Scratchpad,rect);else VE_MapViewPreUpdate.Viewer.ShowEroToItem(null,pushpinId,rect,null)}}catch(a){}return}}var ddERO=$find(pushpinId+"_ero");if(ddERO){CloseContextMenu();var content=ddERO.get_Content();ero.clearActions();var ddActionNames=eval(ddERO.get_ActionNames()),ddActionValues=eval(ddERO.get_ActionValues());g(ddActionNames).forEach(function(a,b){ero.addAction(''+a+" ")});ero.setContent(content);ero.dockToRect(rect,null,-1);return}result=pushpinId.match(/pin_traffic_market_(.*)/);if(result!=null&&result.length>=2){var entity=VE_TrafficManager.GetEntity(pushpinId);if(entity!=null){var content=VE_TrafficManager.CreateZoomPopupContent(entity);if(content!=null&&content!=""&&content!="undefined"){CloseContextMenu();ero.setContent(content);ero.dockToRect(rect,null,-1);return}}}result=pushpinId.match(/pin_traffic_incident_(.*)/);if(result!=null&&result.length>=2){var entity=VE_TrafficManager.GetEntity(pushpinId);if(entity!=null){var content=VE_TrafficManager.CreatePopupContent(entity,true);if(content!=null&&content!=""&&content!="undefined"){CloseContextMenu();ero.setContent(content);ero.dockToRect(rect,null,-1);return}}}if(pushpinId=="autolocate"){var pushpins=mapcontrol.GetPushpins();if(pushpins)for(var i=0;i=2){var entityID=result[1],r=VE_SearchManager.GetEntity(entityID);if(r===null){entityID=result[0];r=VE_SearchManager.GetEntity(entityID);if(r===null){var correspondingItem=Gimme.id(entityID+"_number");entityID=correspondingItem&&correspondingItem.parentNode.id.replace(/_pin$/,"");r=VE_SearchManager.GetEntity(entityID)}}if(r!==null){CloseContextMenu();VE_SearchManager.SetLatLong(r.latitude,r.longitude);if(r.type!=VE_SearchType.Collection){var content=VE_SearchManager.CreatePopupContent(r,true);ero.setContent(content);ero.dockToRect(rect,null,-1)}else ShowCollectionPopup(new VE_CollectionSearchEroData(r),rect,null)}return}}function OnHardwareCapabilitiesUpdate(){if(typeof view3DMode!="undefined"&&view3DMode){map.Setup3DManifests();var b="3D performance option � ",a=map.Get3DControl().HardwareClassificationLevel;if(typeof a!="undefined"&&a!=null){switch(a){case 3:b+="Quality";break;case 2:b+="Balanced";break;case 1:b+="Performance"}UpdateStreetLevelGeometryState(map.Get3DControl());UpdateHiResModelsState(map.Get3DControl());UpdateWeatherPluginState(map.Get3DControl())}}}function View3DMovePin(a){map.Get3DControl().PickupGeometry("UniqueLayer_Hack",a)}Msn.VE.FFSentinel=function(a){this.CurrentVersion=a};function BrowserSupports3D(){var a=window.navigator.userAgent;return a.indexOf("Windows")!=-1&&(a.indexOf("MSIE")!=-1||a.indexOf("Firefox")!=-1)}function GetSentinel(){if(BrowserSupports3D()){if(window.navigator.userAgent.indexOf("MSIE")!=-1){var b;try{b=new ActiveXObject("Microsoft.SentinelVirtualEarth3DProxy.SentinelVE3DProxy")}catch(f){try{b=new ActiveXObject("Microsoft.SentinelVirtualEarth3D.SentinelVE3D")}catch(g){b=null}}return b}else if(typeof navigator.plugins!=undefined)for(var a=0;a=0){var e=navigator.plugins[a].name.indexOf("plugin"),d=parseFloat(navigator.plugins[a].name.substring(c+17,e-1));return new Msn.VE.FFSentinel(d)}}}else if(typeof navigator.plugins!=undefined)for(var a=0;a=0){var e=navigator.plugins[a].name.indexOf("plugin"),d=parseFloat(navigator.plugins[a].name.substring(c+17,e-1));return new Msn.VE.FFSentinel(d)}}return null}function HandleModeNotInstalled(b){if(b==Msn.VE.MapActionMode.Mode3D){map.EnableMode(Msn.VE.MapActionMode.Mode2D);if(BrowserSupports3D()){var a=GetSentinel();if(a!=null)View3DDamaged();else View3DInstall()}else if(typeof ShowMessage!="undefined")ShowMessage(L_BrowserNotSupported3D_Text)}}function View3DInstall(){try{if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)state.Set3DViewInstallInProgress("true");if(window.navigator.userAgent.indexOf("MSIE")!=-1)VE_Help.OpenSized(L_View3DHelpWindowTitle_Text,Get3dInstallUrl(),650,520);else VE_Help.OpenSized(L_View3DHelpWindowTitle_Text,Get3dInstallUrl(),680,540);var a=VE_Help.helpPanel.onCloseClick;VE_Help.helpPanel.onCloseClick=function(){a();VE_Help.helpPanel.onCloseClick=a}}catch(b){}}function View3DUpgrade(c){try{var b=Get3dInstallUrl("Default.aspx?v="+c+"&mkt={0}");if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)state.Set3DViewInstallInProgress("true");if(typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null)window.open(b,"_blank","width=600,height=320,menubar=0,resizeable=0,status=0,titlebar=0,toolbar=0,scrollbars=0");else{VE_Help.OpenSized(L_View3DHelpWindowTitle_Text,b,600,320);var a=VE_Help.helpPanel.onCloseClick;VE_Help.helpPanel.onCloseClick=function(){a();VE_Help.helpPanel.onCloseClick=a}}}catch(d){}}function View3DDamaged(){try{VE_Help.Open("",Get3dHelpUrl("View3DUnavailable.htm"))}catch(a){}}function View3DSwitch(){if(map)map.EnableMode(Msn.VE.MapActionMode.Mode3D)}function Start3DView(){if(map){if(typeof ShowMessage!="undefined")ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}}function Start3DViewWhenUpgradeComplete(){if(map){var a=GetSentinel();if(a.CurrentVersion>=4.0){if(typeof ShowMessage!="undefined")ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}else setTimeout(Start3DViewWhenUpgradeComplete,1500);a=null}}function NotifyWhen3DUpgraded(){if(map){var a=GetSentinel();if(a.CurrentVersion>=4.0)if(map.GetDashboard()&&map.GetDashboard().DisplayThreeDUpdatedNotification)map.GetDashboard().DisplayThreeDUpdatedNotification();else{if(typeof ShowMessage!="undefined")ShowMessage(L_3DLoading_Text);window.setTimeout(View3DSwitch,200)}else setTimeout(NotifyWhen3DUpgraded,1500);a=null}}function PushpinURL(d,c){var a=vedomain+"/i/bin/"+window.buildVersion+"/";if(typeof d=="undefined"||d==null||!d)return a+"pins/red_circ7px.gif";var b=Msn.VE.PushPinTypes;switch(d){case b.Annotation:if(c=="shared")return a+"pins/poi_viewer.gif";else return a+"pins/poi_usergenerated.gif";case b.Overlay:if(c=="shared")return a+"pins/poi_cruncher_viewer.gif";else return a+"pins/poi_cruncher.gif";case b.SearchResultPrecise:if(c=="model"||c=="sharemodel")return a+"pins/modelpoi.gif";else if(c=="shared")return a+"pins/poi_title_viewer.gif";return a+"pins/poi_"+c+".gif";case b.SearchResultNonprecise:if(c=="model"||c=="sharemodel")return a+"pins/modelpoi.gif";else if(c=="shared")return a+"pins/poi_title_viewer.gif";return a+"pins/poi_search_nonprecise.gif";case b.Collection:return a+"pins/poi_"+c+".gif";case b.AdSponsor:return a+"pins/poi_search.gif";case b.DirectionStep:return a+"pins/poi_direction_step.png";case b.Direction:return a+"blue_pushpin.png";case b.DirectionTemp:return a+"pins/mapicon_"+c+".gif";case b.TrafficOthers:return a+"Traffic/Traffic"+c+".gif";case b.YouAreHere:return a+"pins/poi_youarehere.gif";case b.Default:return a+"pins/"+c;case b.Context:return a+"pins/red_circ7px.gif";case b.AdRoofStandard:case b.AdRoofWide:case b.AdStandard:case b.AdWide:case b.AdCategory:return c}return a+"pins/poi_usergenerated.gif"}function _VEExtractImgUrlFromHtml(d){var b=null,a=document.createElement("div");a.innerHTML=d;var c=a.getElementsByTagName("img");if(c.length>=1)b=c[0].getAttribute("src");a=null;return b}var _VEHtmlToImgUrlHash=[];function TranslatePushpinURL(d,f,g){var a=Msn.VE.PushPinTypes,h,c=null;switch(g){case a.DirectionTemp:var e=/mapicon_(start|end).gif/g,b=e.exec(f);if(b!=null&&b.length>=2){c=b[1];break}else return vedomain+_VEExtractImgUrlFromHtml(f);case a.SearchResultPrecise:case a.SearchResultNonprecise:case a.Collection:var e=/VE_Pushpin VE_Pushpin_(.*)/g,b=e.exec(d);if(b!=null&&b.length>=2)c=b[1];break;case a.TrafficOthers:if(typeof _VEHtmlToImgUrlHash[d]=="string")c=_VEHtmlToImgUrlHash[d];else{var e=new RegExp(/VE_Pushpin VE_Traffic_(.*)/g),b=e.exec(d);if(b!=null&&b.length>=2){c=b[1];_VEHtmlToImgUrlHash[d]=c}e=null}break;case a.AdRoofStandard:case a.AdRoofWide:case a.AdStandard:case a.AdWide:case a.AdCategory:c=_VEExtractImgUrlFromHtml(f)}var h=PushpinURL(g,c);return h}var _VE_previousShapeId=null;function RaiseMouseEvent3D(g,d,b){try{var a=Deserialize3DMessage(g);if(a.shapeId!=null){var e=typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null;if(b=="onclick"||!e&&b=="onmouseover"&&a.shapeId.indexOf(_entityIdShapePostfix)>0&&_VE_previousShapeId!=a.shapeId){if(typeof VE_Annotations!="undefined")if(VE_Annotations.PanelOpen)return;_VE_previousShapeId=a.shapeId;Process3DPushpinHover(a.layerId,a.shapeId,a.rX1,a.rY1,a.rX2,a.rY2,d)}else if(!e&&b=="onmouseout"&&a.shapeId.indexOf(_entityIdShapePostfix)>0){VE_MapManager.HighlightEntity(false);_VE_previousShapeId=null}}var c=GetMapControlInstance(d);if(c==null)return;var f=c.CreateEvent(a.lat==null||a.lon==null?null:new Msn.VE.LatLong(a.lat,a.lon),null,null,null,a.shapeId,a.button,a.alt);c.Fire(b,f)}catch(h){}}function OnMouseDown3D(b,a){RaiseMouseEvent3D(b,a,"onmousedown")}function OnMouseUp3D(b,a){__shapeIdBeingDragged=null;RaiseMouseEvent3D(b,a,"onmouseup")}function OnClick3D(b,a){RaiseMouseEvent3D(b,a,"onclick")}function OnMouseOver3D(b,a){RaiseMouseEvent3D(b,a,"onmouseover")}function OnMouseOut3D(b,a){ero.hide();RaiseMouseEvent3D(b,a,"onmouseout")}function OnDoubleClick3D(b,a){RaiseMouseEvent3D(b,a,"ondoubleclick")}function OnChangeMapStyle3D(){var b=GetMapControlInstance();if(b){var a=b.Get3DControl();UpdateStreetLevelGeometryState(a);UpdateHiResModelsState(a);UpdateWeatherPluginState(a)}}function GetMapControlInstance(b){if(typeof Msn.VE.API=="undefined"||Msn.VE.API==null)return map;var a=GetVEMapInstance(b);if(a==null)return null;return a.vemapcontrol}function GetVEMapInstance(a){if(typeof a=="undefined"||a==null){if(Msn.VE.API==null||Msn.VE.API=="undefined"||Msn.VE.API.Globals.vemapinstances==null||Msn.VE.API.Globals.vemapinstances=="undefined")return null;var c=0;for(var b in Msn.VE.API.Globals.vemapinstances)if(Msn.VE.API.Globals.vemapinstances[b]instanceof VEMap&&Msn.VE.API.Globals.vemapinstances[b].GetMapMode()==VEMapMode.Mode3D){c++;a=b}if(c!=1)return null}return VEMap._GetMapFromGUID(a)}function Get3DHardwareClassification(b){var a=b.HardwareClassificationLevel;if(a==3)a="Quality";else if(a==2)a="Balanced";else if(a==1)a="Performance";else a="Unknown";return a}VE_3DPlugin={MovieRecorderGuid:"791BC97B-7526-4C74-85DB-8CC220E3A65E",PhotoGuid:"B1FC67C1-F8CE-4CA5-A957-B5FF2215037B",PhotoManifest:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=99342"),PhotoUrl:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=98905"),HiResModelsGuid:"5D4BE259-4D19-492F-8D6B-830833E2EAD9",HiResModelsManifest:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=124117"),HiResModelsUrl:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=124119"),WeatherPluginGuid:"A020A315-34D9-4357-94AD-97F909E96B22",WeatherPluginManifest:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=124118"),WeatherPluginUrl:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=124120"),GeoCommunityGuid:"49D0BC0C-67A7-44CD-93BA-C7CF6F20EAB9",GeoCommunityManifest:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=99343"),GeoCommunityUrl:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=98904"),StreetLevelGeometryGuid:"C9F0B259-0B78-464A-BEC4-B4E90CF0BC8D",StreetLevelGeometryManifest:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=111353"),StreetLevelGeometryUrl:GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=109495")};var VE_3DPhotoPluginObj=0,VE_3DHiResModelsPluginObj=0,VE_3DWeatherPluginObj=0,VE_3DGeoCommunityPluginObj=0,VE_3DStreetLevelGeometryObj=0,PluginEventRegistered=0,PhotoPluginEventRegistered=0,GeoCommunityPluginEventRegistered=0,StreetLevelGeometryEventRegistered=0,VE3DVIASavedAction=0;function GetVE3DVIAInstallState(a){if(!a){a=map.Get3DControl();if(!a)return 0}return a.GetComponentInstallState("EE3B731B-969E-4cb6-8949-ADFDC763A547")}function OnVE3DVIAInstallEnd(){if(VE3DVIASavedAction!=0){ProcessModelIn3DEx(VE3DVIASavedAction.actionType,VE3DVIASavedAction.properties,VE3DVIASavedAction.control,L_PluginFeatureNotAvailable_Text);VE3DVIASavedAction=0}}function ProcessModelRequire3DVIA(b,c,a){if(typeof b=="undefined"||b==null)return;if(!a){a=map.Get3DControl();if(!a)return}if(GetVE3DVIAInstallState()==2)ProcessModelIn3DEx(b,c,a,L_PluginFeatureNotAvailable_Text);else{if(!VE3DVIASavedAction)VE3DVIASavedAction={};VE3DVIASavedAction.actionType=b;VE3DVIASavedAction.properties=c;VE3DVIASavedAction.control=a;OnSetupVE3DVIA()}}function ProcessModelIn3D(b,c,d){var a=L_UnableToDisplay3DVIAModel_Text;if(VE_ModelActionType.DeleteModel==b)a="";ProcessModelIn3DEx(b,c,d,a)}function ProcessModelIn3DEx(b,e,a,d){if(typeof b=="undefined"||b==null)return;if(!a){var c=GetMapControlInstance();if(c)a=c.Get3DControl();if(!a)return}if(!VE_3DGeoCommunityPluginObj)VE_3DGeoCommunityPluginObj=CreatePluginObj(a,VE_3DPlugin.GeoCommunityGuid,VE_3DPlugin.GeoCommunityManifest,VE_3DPlugin.GeoCommunityUrl);if(!GeoCommunityPluginEventRegistered){a.AttachPlugInEvent(VE_3DPlugin.GeoCommunityGuid,"OnRefreshModel","OnRefreshModel");a.AttachPlugInEvent(VE_3DPlugin.GeoCommunityGuid,"OnLaunchVE3DVIA","OnLaunchVE3DVIA");a.AttachPlugInEvent(VE_3DPlugin.GeoCommunityGuid,"LoadModelFileStatus","VE_OnLoadModelFileStatus");GeoCommunityPluginEventRegistered=1}FirePluginEventIn3D(VE_3DGeoCommunityPluginObj,b,e,a,d)}function ProcessPhotoPluginActionIn3D(b,c,a){if(typeof b=="undefined"||b==null)return;if(!a){a=map.Get3DControl();if(!a)return}if(!VE_3DPhotoPluginObj)VE_3DPhotoPluginObj=CreatePluginObj(a,VE_3DPlugin.PhotoGuid,VE_3DPlugin.PhotoManifest,VE_3DPlugin.PhotoUrl);if(!PhotoPluginEventRegistered){a.AttachPlugInEvent(VE_3DPlugin.PhotoGuid,"OnSelectPhoto","OnSelectPhoto");a.AttachPlugInEvent(VE_3DPlugin.PhotoGuid,"OnActivate","OnActivate");a.AttachPlugInEvent(VE_3DPlugin.PhotoGuid,"OnCameraPan","OnPhotoCameraPan");a.AttachPlugInEvent(VE_3DPlugin.PhotoGuid,"OnCameraZoom","OnPhotoCameraZoom");a.AttachPlugInEvent(VE_3DPlugin.PhotoGuid,"OnPhotoStateChanged","OnPhotoStateChanged");PhotoPluginEventRegistered=1}FirePluginEventIn3D(VE_3DPhotoPluginObj,b,c,a,null)}function AllowWeatherPlugin(a){if(!a)return false;var c=GetMapControlInstance(null),d=a.HardwareClassificationLevel,b=c.GetMapStyle();return d==3&&(b=="a"||b=="h")}function AllowHiResModels(a){if(!a)return false;var c=GetMapControlInstance(null),b=a.HardwareClassificationLevel;return b==3}function AllowStreetLevelDetail(a){if(!a)return false;var c=GetMapControlInstance(null),d=a.HardwareClassificationLevel,b=c.GetMapStyle();return d==3&&(b=="a"||b=="h")}function LoadWeatherPlugin(a){if(!VE_3DWeatherPluginObj)if(a&&AllowWeatherPlugin(a)){VE_3DWeatherPluginObj=CreatePluginObj(a,VE_3DPlugin.WeatherPluginGuid,VE_3DPlugin.WeatherPluginManifest,VE_3DPlugin.WeatherPluginUrl);if(VE_3DWeatherPluginObj){VE_3DWeatherPluginObj.Loading=1;a.LoadPlugInDll(VE_3DWeatherPluginObj.Url)}}}function OnHiResModelViewed(){}function LoadHiResModelsPlugin(a){if(!VE_3DHiResModelsPluginObj)if(a&&AllowHiResModels(a)){VE_3DHiResModelsPluginObj=CreatePluginObj(a,VE_3DPlugin.HiResModelsGuid,VE_3DPlugin.HiResModelsManifest,VE_3DPlugin.HiResModelsUrl);if(VE_3DHiResModelsPluginObj){a.AttachPlugInEvent(VE_3DPlugin.HiResModelsGuid,"OnHiResModelViewed","OnHiResModelViewed");VE_3DHiResModelsPluginObj.Loading=1;a.LoadPlugInDll(VE_3DHiResModelsPluginObj.Url)}}}function LoadStreetLevelGeometry(a){if(!VE_3DStreetLevelGeometryObj)if(a&&AllowStreetLevelDetail(a)){VE_3DStreetLevelGeometryObj=CreatePluginObj(a,VE_3DPlugin.StreetLevelGeometryGuid,VE_3DPlugin.StreetLevelGeometryManifest,VE_3DPlugin.StreetLevelGeometryUrl);if(VE_3DStreetLevelGeometryObj){VE_3DStreetLevelGeometryObj.Loading=1;a.LoadPlugInDll(VE_3DStreetLevelGeometryObj.Url)}}}function ActivateStreetLevelGeometry(a){if(AllowStreetLevelDetail(a))if(!VE_3DStreetLevelGeometryObj)LoadStreetLevelGeometry(a);else if(VE_3DStreetLevelGeometryObj.Loaded&&!VE_3DStreetLevelGeometryObj.Activated)if(a)a.ActivatePlugIn(VE_3DStreetLevelGeometryObj.Guid,VE_3DStreetLevelGeometryObj.Manifest)}function DeactivateStreetLevelGeometry(a){if(VE_3DStreetLevelGeometryObj)if(VE_3DStreetLevelGeometryObj.Loaded&&VE_3DStreetLevelGeometryObj.Activated&&!AllowStreetLevelDetail(a))if(a)a.DeactivatePlugIn(VE_3DStreetLevelGeometryObj.Guid)}function UpdateStreetLevelGeometryState(a){var b=AllowStreetLevelDetail(a);if(b){if(!VE_3DStreetLevelGeometryObj.Activated)ActivateStreetLevelGeometry(a)}else if(VE_3DStreetLevelGeometryObj.Activated)DeactivateStreetLevelGeometry(a)}function ActivateWeatherPlugin(a){if(AllowWeatherPlugin(a))if(!VE_3DWeatherPluginObj)LoadWeatherPlugin(a);else if(VE_3DWeatherPluginObj.Loaded&&!VE_3DWeatherPluginObj.Activated)if(a)a.ActivatePlugIn(VE_3DWeatherPluginObj.Guid,VE_3DWeatherPluginObj.Manifest)}function DeactivateWeatherPlugin(a){if(VE_3DWeatherPluginObj)if(VE_3DWeatherPluginObj.Loaded&&VE_3DWeatherPluginObj.Activated&&!AllowWeatherPlugin(a))if(a)a.DeactivatePlugIn(VE_3DWeatherPluginObj.Guid)}function UpdateWeatherPluginState(a){var b=AllowWeatherPlugin(a);if(b){if(!VE_3DWeatherPluginObj.Activated)ActivateWeatherPlugin(a)}else if(VE_3DWeatherPluginObj.Activated)DeactivateWeatherPlugin(a)}function ActivateHiResModelsPlugin(a){if(AllowHiResModels(a))if(!VE_3DHiResModelsPluginObj)LoadHiResModelsPlugin(a);else if(VE_3DHiResModelsPluginObj.Loaded&&!VE_3DHiResModelsPluginObj.Activated)if(a)a.ActivatePlugIn(VE_3DHiResModelsPluginObj.Guid,VE_3DHiResModelsPluginObj.Manifest)}function DeactivateHiResModelsPlugin(a){if(VE_3DHiResModelsPluginObj)if(VE_3DHiResModelsPluginObj.Loaded&&VE_3DHiResModelsPluginObj.Activated&&!AllowHiResModels(a))if(a)a.DeactivatePlugIn(VE_3DHiResModelsPluginObj.Guid)}function UpdateHiResModelsState(a){var b=AllowHiResModels(a);if(b){if(!VE_3DHiResModelsPluginObj.Activated)ActivateHiResModelsPlugin(a)}else if(VE_3DHiResModelsPluginObj.Activated)DeactivateHiResModelsPlugin(a)}function CreatePluginObj(b,d,c,e){if(!PluginEventRegistered){b.AttachEvent("OnPlugInLoaded","On3DPlugInLoaded");b.AttachEvent("OnPlugInActivated","On3DPlugInActivated");b.AttachEvent("OnPlugInDeactivated","On3DPlugInDeactivated");PluginEventRegistered=1}var a={};a.Loaded=0;a.Loading=0;a.Activated=0;a.actionCounter=0;a.actionType=[];a.properties=[];a.control=[];a.errorMessage=[];a.Guid=d.toUpperCase();a.Manifest=c;a.Url=e;return a}function FirePluginEventIn3D(a,c,d,b,e){if(a.Activated)b.RaiseEvent(a.Guid,c,d);else{if(!a.Loaded&&!a.Loading){a.Loading=1;b.LoadPlugInDll(a.Url)}QueuePluginEvent(a,c,d,b,e)}}function QueuePluginEvent(a,c,d,e,b){a.actionType[a.actionCounter]=c;a.properties[a.actionCounter]=d;a.control[a.actionCounter]=e;a.errorMessage[a.actionCounter]=b;a.actionCounter=a.actionCounter+1}function FireErrorMessage(b){var a,c;for(a=0;a=500};Web.Browser.AttachSafariCompatibility=function(a){if(Web.Browser.isSafari2())try{document.getElementsByTagName("HTML")[0]}catch(s){}a.CollectGarbage=function(){};Web.Browser.Button={LEFT:0,RIGHT:2,MIDDLE:1};function i(a){window.event=a}function q(b,c,d){var a=c.slice(2);if(a!=="mouseenter"&&a!=="mouseleave")b.addEventListener(a,i,true);else{b.addEventListener("mouseover",i,true);b.addEventListener("mouseout",i,true)}b.addEventListener(a,d,false)}function p(d,b,c){var a=b.slice(2);if(b==="mousewheel")a="DOMMouseScroll";d.removeEventListener(a,c,false)}function j(a,b){if(a==="onclick")a="onmouseup";q(this,a,b)}function k(a,b){if(a==="onclick")a="onmouseup";p(this,a,b)}if(Web.Browser.isSafari2())if(typeof a["[[DOMDocument.prototype]]"]==="undefined"||typeof a["[[DOMElement.prototype]]"]==="undefined"){Object.prototype.attachEvent=j;Object.prototype.detachEvent=k}else{a.attachEvent=a["[[DOMDocument.prototype]]"].attachEvent=a["[[DOMElement.prototype]]"].attachEvent=j;a.detachEvent=a["[[DOMDocument.prototype]]"].detachEvent=a["[[DOMElement.prototype]]"].detachEvent=k}else if(Web.Browser.isSafari3()){a.attachEvent=a.HTMLDocument.prototype.attachEvent=a.HTMLElement.prototype.attachEvent=j;a.detachEvent=a.HTMLDocument.prototype.detachEvent=a.HTMLElement.prototype.detachEvent=k}var g=false;function c(a){if(g){a.preventDefault();a.returnValue=false;document.removeEventListener(a.type,c,true);a.capturedTarget=a.target;g.dispatchEvent(a);delete a.captureTarget;if(g)document.addEventListener(a.type,c,true);a.stopPropagation()}}function b(a){a.stopPropagation();a.preventDefault()}function o(){g=this;document.addEventListener("mousemove",c,true);document.addEventListener("mouseover",b,true);document.addEventListener("mouseout",b,true);document.addEventListener("mouseenter",b,true);document.addEventListener("mouseleave",b,true);document.addEventListener("mouseup",c,true)}function m(){g=null;document.removeEventListener("mousemove",c,true);document.removeEventListener("mouseover",b,true);document.removeEventListener("mouseout",b,true);document.removeEventListener("mouseenter",b,true);document.removeEventListener("mouseleave",b,true);document.removeEventListener("mouseup",c,true)}if(Web.Browser.isSafari2()){var n=0;function l(){if(typeof a["[[DOMElement.prototype]]"]==="undefined"){if(n<100){n++;setTimeout(l,100)}}else{a["[[DOMElement.prototype]]"].setCapture=o;a["[[DOMElement.prototype]]"].releaseCapture=m}}l()}else if(Web.Browser.isSafari3()){a.HTMLElement.prototype.setCapture=o;a.HTMLElement.prototype.releaseCapture=m}function h(){}function d(){}var f=null,e=null;if(Web.Browser.isSafari2()){h=function(e,c,b){var a=d(e,c,b);if(a.length>0)return a[0];else return null};d=function(g,e,d){var c=d.getElementsByTagName(e),b=[],a,f=c.length;for(a=0;a0)return b[0];else return null};d=function(b,f,e){var d=b.evaluate(f,e,b.createNSResolver(b.documentElement),XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,null),c=[],a,g=d.snapshotLength;for(a=0;a1){a=parseInt(a);if(a===NaN)a=.3;else a/=100}return a}}}var windowWidth=0,windowHeight=0,scrollbarWidth=null;function $ID(a){var b=document;return b.getElementById(a)}function $CE(a){var b=document;return b.createElement(a)}function $CENS(a){var b=document;return b.createElementNS(a)}function GetWindowWidth(){var a=0;if(typeof window.innerWidth=="number")a=window.innerWidth;else if(document.documentElement&&document.documentElement.clientWidth)a=document.documentElement.clientWidth;else if(document.body&&document.body.clientWidth)a=document.body.clientWidth;if(!a||a<100)a=100;return a}function GetWindowHeight(){var a=0;if(typeof window.innerHeight=="number")a=window.innerHeight;else if(document.documentElement&&document.documentElement.clientHeight)a=document.documentElement.clientHeight;else if(document.body&&document.body.clientHeight)a=document.body.clientHeight;if(!a||a<100)a=100;return a}function GetScrollbarWidth(){if(scrollbarWidth)return scrollbarWidth;if(navigator.userAgent.indexOf("IE")>=0){var a=document.createElement("div"),b=null;a.style.visible="hidden";a.style.overflowY="scroll";a.style.position="absolute";a.style.width=0;document.body.insertAdjacentElement("afterBegin",a);b=a.offsetWidth;a.parentNode.removeChild(a);if(!b)b=16;scrollbarWidth=b;return b}else return 0}function GetUrlPrefix(){var a=window.location.pathname.lastIndexOf("/"),b=window.location.protocol+"//"+window.location.hostname+window.location.pathname.substring(0,a+1);return b}function GetUrlParameterString(){var a=window.location.search;if(a.length==0||a.indexOf("?")==-1)return "";return a.substr(a.indexOf("?")+1)}function CheckWipExistence(){var a=GetUrlParameterString();if(a!=""&&a.indexOf("wip=")>-1)return true;return false}function GetUrlParameters(){var b=[],d=GetUrlParameterString();if(!d)return b;var e=d.split("&");for(var c=0;c1)c=h.elem;if(i.initialCollection!==null)elems=j(i.initialCollection,b[b.length-1]);else elems=m(b[b.length-1],c);if(b.length===1)return elems;if(b.length===3)if(h.isIdeal)return elems;var s=0,k,g,t=elems.length,r=a.combinator,l,p,f,e,n=null,o=[];a:for(k=0;k0&&!g["."].processFn(b,j)||i.length>0&&!g["["].processFn(b,i)||l.length>0&&!g[":"].processFn(b,l))return false;var h,e,k=d.exProps;for(h in f){e=f[h].name;if(k[e]&&!f[h].processFn(b,k[e]))return false}return true}function m(h,f){f=f||document.documentElement;var l=0,d,j,c,a=h.inProps,m=h.exProps;if(a.id){c=[$ID(a.id)];delete a.id}else{var e=a.pseudos[a.pseudos.length-1];if(e&&e.name==="nth-child"){c=k(e.param.a,e.param.b,a.tag);a.pseudos=a.pseudos.splice(a.pseudos.length,1)}else c=f.getElementsByTagName(a.tag||"*");if(m.isEmpty&&a.classes.length<1&&a.attributes.length<1&&a.pseudos.length<1)return g(c);delete a.tag}var i=[];j=c.length;for(d=0;d=0&&g%j===0&&(b&&a.tagName!==b?false:true)){if(h)d.push(a);d[c(a)]=true}}return d}function i(c,d,f){var b=c+"n+"+d,a=e[b];if(!a)a=e[b]=l(c,d);return a[f]===true}},d=new function(){var d=null,f=null,c="";this.setRules=function(b){d=b;var a;for(a in d.combinator)if(d.combinator.hasOwnProperty(a))c+=a;f=new RegExp("\\s*(["+c+"])\\s*","g")};this.parseSelector=function(l){l=e(l).replace(f,"$1");var i=null,k=[],n=new b,m={anchor:new g,isPartialQuery:false,initialCollection:null},h=m.anchor,p=h,s,t,v,q,r,u,d,j=0,o="",w=l.length;while(j"&&h.elem&&h.elem!==-1&&h.index===k.length-2?h.elem.childNodes:null}else{i=a.inRules["tag"];continue}j++}k.push(n);h.isIdeal=h.elem!==-1&&k.length-3===h.index;m.anchor=h;return {selectors:k,hints:m}};this.parseAttribute=function(c){var d=/\=|\^=|\$=|\*=|\|=|~=|!=/,a=c.match(d);a=a&&a[0];var b=c.split(a),f=b[0]&&e(b[0].replace(/[\[\]"]/g,"")),g=b[1]&&e(b[1].replace(/[\[\]"]/g,""));return {name:f,delim:a,val:g}};this.parsePseudo=function(f){var d=/(.*)\((.*)\)/,b=f.match(d),g=b&&b[1]||f,a=b&&b[2],c,h,e;if(g==="nth-child")if(a==="even")a={wholeValue:a,a:2,b:0};else if(a==="odd")a={wholeValue:a,a:2,b:1};else{d=/([+-]?\d+)?(n)?([+-]?\d+)?/;b=a.match(d);c=parseInt(b[1])||1;e=b[2]?1:0;h=c&&!e?c:parseInt(b[3])||0;a={wholeValue:a,a:c*e,b:h}}return {name:g,param:a}};this.createReferenceSelector=function(a){return new b(a)};function b(e){this.cursor=null;this.refersTo=e;this.inProps={id:null,tag:null,classes:[],attributes:[],pseudos:[]};this.exProps={isEmpty:true};var d,b,c=a.exRules;for(d in c)if(c.hasOwnProperty(d)){delete this.exProps.isEmpty;b=c[d];switch(b.objType){case "array":this.exProps[b.name]=[];break;case "null":default:this.exProps[b.name]=null}}}b.prototype.addPart=function(a,c){var b=c.name,f=c.preFn,e=c.hintFn,g=-1;if(typeof f==="function")a=f(a);var d=typeof this.inProps[b]!=="undefined"?this.inProps:this.exProps;d[b]instanceof Array?d[b].push(a):(d[b]=a);if(typeof e==="function")g=e(a);return g};function g(b,a,c){this.index=b===0?0:b||NaN;this.elem=a===null?null:a||-1;this.isIdeal=c||false}},a={inRules:{"tag":{name:"tag",endsWith:"#.[:",preFn:function(a){return a.toUpperCase()},hintFn:function(a){return a==="BODY"||a==="HTML"?document.getElementsByTagName(a)[0]:-1},processFn:function(a,b){return a.tagName===b}},"#":{name:"id",endsWith:"#.[:",startSkip:1,preFn:null,hintFn:function(a){return $ID(a)},processFn:function(a,b){return a.id===b}},".":{name:"classes",endsWith:".[:",startSkip:1,objType:"array",processFn:function(d,c){var a=d.className;if(typeof a!=="string")a=d.getAttribute("class");if(!a||a.length<1)return false;var e=" "+a+" ",b,f=c.length;for(b=0;b":function(a,d){var c=d.parentNode;a.cursor=c;return b.processSelector(a,c)},"<":function(d,e){var c=e.childNodes,a,f=c.length;for(a=0;a0)if(a)a=a.parentNode;else break;return a};Gimme.ext.getSibling=function(b,g){var c=this.entities[g||0];if(b===0)return c;var e=b>0?"nextSibling":"previousSibling",a=c,f=Math.abs(b),d=0;while(da-1)b=a-1;return this.points[b]};Gimme.Animation.AccelerationLine=function(a,c){var d=a[a.length-1],b=g(a).map(function(a){return {x:a/d,y:0}});this.bezier=new Gimme.Animation.BezierCurve(b,c);this.points=this.bezier.points};Gimme.Animation.AccelerationLine.prototype.getValue=function(a){return this.bezier.getPoint(a).x};Gimme.Animation.AccelerationLines={zoom:new Gimme.Animation.AccelerationLine([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520],75),slowStartAccelerate:new Gimme.Animation.AccelerationLine([0,1,2,3,8,50],100),quickStartDecelerate:new Gimme.Animation.AccelerationLine([0,50,55,56,57,58],100),linear:new Gimme.Animation.AccelerationLine([0,10],100)};Gimme.Animation.AccelerationLines.defaultLine=Gimme.Animation.AccelerationLines.zoom;Gimme.ext.fadeIn=function(b,c,a){g(this.entities).fadeTo(null,.99999,b,c,a);a=null;return this};Gimme.ext.fadeOut=function(b,c,a){g(this.entities).fadeTo(null,0,b,c,a);a=null;return this};Gimme.ext.fadeTo=function(b,c,e,h,d,a){a=a||Gimme.Animation.AccelerationLines.linear;g(this.entities).animate(a,e,h,d,f,i);function i(d){d.style.zoom="1";var a=b===0?0:b||Number(g(d).getStyle("opacity")),e=c-a;return {startOpacity:a,deltaO:e}}function f(e,b,c,a){var f=c.getValue(b),d=a.startOpacity+f*a.deltaO;g(e).setStyle("opacity",d)}return this};Gimme.ext.veil=function(b,d,h,c,e){var a=Gimme.Animation.Directions;b=Math.floor(b)||a[b]||a.vertically;g(this.entities).animate(e,d,h,c,f,i);function i(d){var e=d.style.display||g(d).getStyle("display");if(e==="none")return false;var c=function(b){var a={};g(b).forEach(function(b){a[b]=parseInt(g(d).getStyle(b),10)});return a}(["height","width","paddingTop","paddingRight","paddingBottom","paddingLeft"]);d["_$gimme$_veil"]=c.height+";"+c.width+";"+c.paddingTop+";"+c.paddingRight+";"+c.paddingBottom+";"+c.paddingLeft;d.style.overflow="hidden";if((b&a.horizontally)===a.horizontally)d.style.height=c.height+"px";return c}function f(d,g,m,c){if(g>=1)d.style.display="none";var e=m.getValue(g),k,l,j,h,f,i;if((b&a.vertically)===a.vertically){k=c.height-e*c.height;j=c.paddingTop-e*c.paddingTop;f=c.paddingBottom-e*c.paddingBottom;d.style.height=k+"px";d.style.paddingTop=j+"px";d.style.paddingBottom=f+"px"}if((b&a.horizontally)===a.horizontally){l=c.width-e*c.width;h=c.paddingRight-e*c.paddingRight;i=c.paddingLeft-e*c.paddingLeft;d.style.width=l+"px";d.style.paddingRight=h+"px";d.style.paddingLeft=i+"px"}}return this};Gimme.ext.unveil=function(b,e,i,d,f){var a=Gimme.Animation.Directions;b=Math.floor(b)||a[b]||a.vertically;var c=true;g(this.entities).animate(f,e,i,d,h,j);function j(b){var l=b.style.display||g(b).getStyle("display");if(l!=="none"&&l!==null)return false;var m=Gimme.Helper.convertToPixels,d=b.cloneNode(true);d.setAttribute("style","position:absolute;top:0;left:0;visibility:hidden;margin:0;padding:0;border:0;height:;width:;");d.style.display="block";b.parentNode.appendChild(d);var j,k,i,f,e,h,a=b["_$gimme$_veil"];if(a){a=a.split(";");j=a[0];k=a[1];i=a[2];f=a[3];e=a[4];h=a[5]}else{var c=g(d);j=parseInt(m(b.style.height),10)||parseInt(c.getStyle("height"),10);k=parseInt(m(b.style.width),10)||parseInt(c.getStyle("width"),10);d.style.padding="";i=parseInt(c.getStyle("paddingTop"),10);e=parseInt(c.getStyle("paddingBottom"),10);f=parseInt(c.getStyle("paddingRight"),10);h=parseInt(c.getStyle("paddingLeft"),10)}b.parentNode.removeChild(d);b.style.overflow="hidden";return {deltaH:j,deltaW:k,paddingTop:i,paddingBottom:e,paddingLeft:h,paddingRight:f}}function h(h,j,p,d){var n,o,m,i,k,l,f=g(h),e=1-p.getValue(j);if(c){h.style.display="block";c=false}if(j>=1)h.style.overflow="";if(b===a.vertically)f.setStyles("width",d.deltaW+"px","paddingRight",d.paddingRight+"px","paddingLeft",d.paddingLeft+"px");else if(b===a.horizontally)f.setStyles("height",d.deltaH+"px","paddingTop",d.paddingTop+"px","paddingBottom",d.paddingBottom+"px");if((b&a.vertically)===a.vertically){n=d.deltaH-e*d.deltaH;m=d.paddingTop-e*d.paddingTop;i=d.paddingBottom-e*d.paddingBottom;f.setStyles("height",n+"px","paddingTop",m+"px","paddingBottom",i+"px")}if((b&a.horizontally)===a.horizontally){o=d.deltaW-e*d.deltaW;k=d.paddingRight-e*d.paddingRight;l=d.paddingLeft-e*d.paddingLeft;f.setStyles("width",o+"px","paddingRight",k+"px","paddingLeft",l+"px")}}return this};Gimme.ext.scrollTo=function(b,e,a,c){g(this.entities[0]).animate(c,b,e,a,d,f);function f(c){var a=Gimme.Screen.getScrollPosition(),b=g(c).getPagePosition().y-a.y;return {scrollPos:a,deltaY:b}}function d(f,b,c,a){var d=c.getValue(b),e=a.scrollPos.y+d*a.deltaY;window.scrollTo(0,Math.floor(e))}return this};Gimme.ext.slideToPoint=function(a,c,f,b,d){g(this.entities).animate(d,c,f,b,e,h);function h(e){var b=g(e).getComputedPosition();if(a.x===null)a.x=b.x;if(a.y===null)a.y=b.y;var d=a.y-b.y,c=a.x-b.x;return {startPt:b,deltaX:c,deltaY:d}}function e(c,e,f,a){var b=a.startPt,g=a.deltaX,h=a.deltaY,d=f.getValue(e),i=b.x+d*g,j=b.y+d*h;c.style.top=Math.floor(Math.round(j))+"px";c.style.left=Math.floor(Math.round(i))+"px"}return this};Gimme.ext.followPath=function(f,a,d,e,c){a=a||1;g(this.entities).animate(f,d,e,c,b,h);function h(b){var a=g(b).getComputedPosition();return {startPt:a}}function b(c,e,g,f){var b=f.startPt,d=g.getPoint(e),h=b.x+d.x*a,i=b.y+d.y*a;c.style.top=Math.floor(Math.round(i))+"px";c.style.left=Math.floor(Math.round(h))+"px"}return this};Gimme.ext.animate=function(d,b,a,h,c,e){var f=this.entities.length;if(f<1)return;d=d||Gimme.Animation.AccelerationLines.defaultLine;b=Math.floor(b)||Gimme.Animation.Speeds[b]||Gimme.Animation.Speeds.quickly;a=a||"AUTOGUID_"+Math.random((new Date).getTime());if(!Gimme.Animation.isGrouping()&&Gimme.Animation.isRunning(a))return;Gimme.Animation.whenDone(a,h);var g=0,j=(new Date).getTime();this.forEach(function(c,b){Gimme.Animation.start(a,i(c,b),1)});function i(i){var h=e(i),l=function(){var l=(new Date).getTime(),k=(l-j)/b;if(k>=1){if(typeof c==="function")c(i,1,d,h);if(++g===f){Gimme.Animation.end(a);e=null;c=null}}else c(i,k,d,h)},k=function(){Gimme.Animation.end(a)};return h?l:k}};Gimme.Events=new function(){var c={},b=null,a=null;this.captureMouse=function(c){Gimme.Events.releaseMouse();b=c;if(typeof c.setCapture!=="undefined")c.setCapture();else{a=function(b){b.stopPropagation();var d,e;if(Gimme.Browser.isGecko){d=document.createEvent("MouseEvents");d.initMouseEvent(b.type,b.bubbles,b.cancelable,window,b.detail,b.screenX,b.screenY,b.clientX,b.clientY,b.ctrlKey,b.altKey,b.shiftKey,b.metaKey,b.button,b.relatedTarget);e=Gimme.Screen.getScrollPosition();d.__defineGetter__("pageX",function(){return this.clientX+e.x});d.__defineGetter__("pageY",function(){return this.clientY+e.y})}else d=b;document.removeEventListener(b.type,a,true);d.captureTarget=b.target;c.dispatchEvent(d);if(a!==null)document.addEventListener(b.type,a,true);delete d.captureTarget};document.addEventListener("mouseover",a,true);document.addEventListener("mouseout",a,true);document.addEventListener("mousemove",a,true);document.addEventListener("mouseup",a,true);document.addEventListener("mousedown",a,true);document.addEventListener("click",a,true);document.addEventListener("dblclick",a,true)}return this};this.releaseMouse=function(){if(b!==null){if(typeof b.releaseCapture!=="undefined")b.releaseCapture();else{document.removeEventListener("mouseover",a,true);document.removeEventListener("mouseout",a,true);document.removeEventListener("mousemove",a,true);document.removeEventListener("mouseup",a,true);document.removeEventListener("mousedown",a,true);document.removeEventListener("click",a,true);document.removeEventListener("dblclick",a,true)}b=a=null}return this};this.getCaptureTarget=function(a){return a.captureTarget||a.srcElement||a.target};Gimme.ext.onmouseenter=function(e,b,c){var a=d(e);c?this.addEvent("mouseover",a,b,false):this.removeEvent("mouseover",a,b,false);a=null};Gimme.ext.onmouseleave=function(e,b,c){var a=d(e);c?this.addEvent("mouseout",a,b,false):this.removeEvent("mouseout",a,b,false);a=null};Gimme.ext.onmousewheel=function(d,c,e){var a="mousewheel",b=d;if(Gimme.Browser.isGecko){a="DOMMouseScroll";b=f(d)}e?this.addEvent(a,b,c,false):this.removeEvent(a,b,c,false)};function e(c,a,b){if(c===a)return false;var d=0;while(a&&a!=c){d++;a=a.parentNode}b=b||d;return a===c&&b===d}function d(b){var d=Gimme.Helper.getObjectGUID(b),a=c[d];if(typeof a==="undefined")a=c[d]=function(c){var a=c.relatedTarget;if(this===a||e(this,a))return;b.call(this,c)};return a}function f(b){var d=Gimme.Helper.getObjectGUID(b),a=c[d];if(typeof a==="undefined")a=c[d]=function(a){a.wheelDelta=-a.detail;b.call(this,a);a.wheelDelta=null};return a}};Gimme.ver="Gimme v2.0.0.3 (Caspian) :: 12/2/2008, 9:57:48";Gimme.ext.getRelativePosition=function(d,e){var a=this.entities[e||0],b=0,c=0;while(a!==null&&a!==d){b+=a.offsetLeft;c+=a.offsetTop;a=a.offsetParent}return {x:b,y:c}};Gimme.ext.addShim=function(d,e){var b=this.entities[0];if(b.shim){b.shim.parentNode.removeChild(b.shim);b.shim=null}var a=document.createElement("iframe");a.frameBorder="0";a.scrolling="no";a.className="iframeShim";a.style.position="absolute";a.style.zIndex=e||"1";a.style.background="#fff";a.style.height=b.offsetHeight+"px";a.style.width=b.offsetWidth+"px";var c=g(b);a.style.top=c.getStyle("top");a.style.left=c.getStyle("left");a.style.marginTop=c.getStyle("marginTop");a.style.marginLeft=c.getStyle("marginLeft");a.style.marginRight=c.getStyle("marginRight");a.style.marginBottom=c.getStyle("marginBottom");this.entities.push(a);d=d||b;(d.parentNode||document.body).insertBefore(a,d);b.shim=a;return this};Gimme.ext.removeShim=function(){var b=this.entities[0],a=b.shim;if(a){a.parentNode.removeChild(a);b.shim=null}return this};Gimme.ext.toggle=function(a){if(a!==true)a=false;this.forEach(function(c){var b=g(c);if(a)b.setStyle("visibility",b.getStyle("visibility")==="visible"?"hidden":"visible");else b.setStyle("display",b.getStyle("display")!=="none"?"none":"block")});return this};function MVC_Init_AbstractView_Shared(){Msn.MVC.AbstractView.prototype.GetMoveMenuOptionAsHtml=function(a){return a}}function MVC_Init_View3D_Shared(){Msn.MVC.View3D.prototype.GetMoveMenuOptionAsHtml=function(d,c){var e=c.GetPrimitiveCount();for(var a=0;a=0&&d=0)a.childNodes[f].className=m;c=d;a.childNodes[d].className=r;e=a.childNodes[d].className}else{var f=g();if(f>=0)a.childNodes[f].className=m;c=-1}}function g(){return c}function o(){if(c>=0&&c=b.length)return;if(d0)b.pop();while(a.childNodes.length>0)a.removeChild(a.lastChild);c=-1}function A(){a.style.display="block";this.isVisible=true}function z(){a.style.display="none";this.isVisible=false}this.OnClick=null;this.GetCount=x;this.GetElement=u;this.GetSelectedIndex=g;this.GetSelectedItem=o;this.SelectItemAtIndex=i;this.OnSelect=null;this.AddItem=y;this.OnMouseOver=null;this.OnSelect=null;this.OnMouseOut=null;this.ClearItems=t;this.RemoveItemAtIndex=n;this.Show=A;this.Hide=z}function DecodeHtml(a){var c="";if(typeof a=="string"&&a.length>0){var b=document.createElement("span");b.innerHTML=a;c=b.firstChild.nodeValue;b=null}return c}function OutputEncoder_URLEncodeUTF8(e){if(e==null)return "";var d=["%00","%01","%02","%03","%04","%05","%06","%07","%08","%09","%0a","%0b","%0c","%0d","%0e","%0f","%10","%11","%12","%13","%14","%15","%16","%17","%18","%19","%1a","%1b","%1c","%1d","%1e","%1f","%20","%21","%22","%23","%24","%25","%26","%27","%28","%29","%2a","%2b","%2c","%2d","%2e","%2f","%30","%31","%32","%33","%34","%35","%36","%37","%38","%39","%3a","%3b","%3c","%3d","%3e","%3f","%40","%41","%42","%43","%44","%45","%46","%47","%48","%49","%4a","%4b","%4c","%4d","%4e","%4f","%50","%51","%52","%53","%54","%55","%56","%57","%58","%59","%5a","%5b","%5c","%5d","%5e","%5f","%60","%61","%62","%63","%64","%65","%66","%67","%68","%69","%6a","%6b","%6c","%6d","%6e","%6f","%70","%71","%72","%73","%74","%75","%76","%77","%78","%79","%7a","%7b","%7c","%7d","%7e","%7f","%80","%81","%82","%83","%84","%85","%86","%87","%88","%89","%8a","%8b","%8c","%8d","%8e","%8f","%90","%91","%92","%93","%94","%95","%96","%97","%98","%99","%9a","%9b","%9c","%9d","%9e","%9f","%a0","%a1","%a2","%a3","%a4","%a5","%a6","%a7","%a8","%a9","%aa","%ab","%ac","%ad","%ae","%af","%b0","%b1","%b2","%b3","%b4","%b5","%b6","%b7","%b8","%b9","%ba","%bb","%bc","%bd","%be","%bf","%c0","%c1","%c2","%c3","%c4","%c5","%c6","%c7","%c8","%c9","%ca","%cb","%cc","%cd","%ce","%cf","%d0","%d1","%d2","%d3","%d4","%d5","%d6","%d7","%d8","%d9","%da","%db","%dc","%dd","%de","%df","%e0","%e1","%e2","%e3","%e4","%e5","%e6","%e7","%e8","%e9","%ea","%eb","%ec","%ed","%ee","%ef","%f0","%f1","%f2","%f3","%f4","%f5","%f6","%f7","%f8","%f9","%fa","%fb","%fc","%fd","%fe","%ff"],b,a=[],g=e.length;for(var f=0;f>6];a=a+d[128|c&63]}else{a=a+d[224|c>>12];a=a+d[128|c>>6&63];a=a+d[128|c&63]}}return a}function OutputEncoder_URLEncodeEscapeUTF8(e){if(e==null)return "";var d=["00","01","02","03","04","05","06","07","08","09","0a","0b","0c","0d","0e","0f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20","21","22","23","24","25","26","27","28","29","2a","2b","2c","2d","2e","2f","30","31","32","33","34","35","36","37","38","39","3a","3b","3c","3d","3e","3f","40","41","42","43","44","45","46","47","48","49","4a","4b","4c","4d","4e","4f","50","51","52","53","54","55","56","57","58","59","5a","5b","5c","5d","5e","5f","60","61","62","63","64","65","66","67","68","69","6a","6b","6c","6d","6e","6f","70","71","72","73","74","75","76","77","78","79","7a","7b","7c","7d","7e","7f","80","81","82","83","84","85","86","87","88","89","8a","8b","8c","8d","8e","8f","90","91","92","93","94","95","96","97","98","99","9a","9b","9c","9d","9e","9f","a0","a1","a2","a3","a4","a5","a6","a7","a8","a9","aa","ab","ac","ad","ae","af","b0","b1","b2","b3","b4","b5","b6","b7","b8","b9","ba","bb","bc","bd","be","bf","c0","c1","c2","c3","c4","c5","c6","c7","c8","c9","ca","cb","cc","cd","ce","cf","d0","d1","d2","d3","d4","d5","d6","d7","d8","d9","da","db","dc","dd","de","df","e0","e1","e2","e3","e4","e5","e6","e7","e8","e9","ea","eb","ec","ed","ee","ef","f0","f1","f2","f3","f4","f5","f6","f7","f8","f9","fa","fb","fc","fd","fe","ff"],b,a=[],g=e.length;for(var f=0;f>6];a=a+"%25"+d[128|c&63]}else{a=a+"%25"+d[224|c>>12];a=a+"%25"+d[128|c>>6&63];a=a+"%25"+d[128|c&63]}}return a}function OutputEncoder_EncodeHtml(c){var a,b="";if(c==null)return "";for(var d=0;d96&&a<123||a>64&&a<91||a==32||a>47&&a<58||a==46||a==44||a==45||a==95)b=b+String.fromCharCode(a);else b=b+""+a+";"}return b}function OutputEncoder_EncodeHtmlAttribute(c){var a,b="";if(c==null)return "";for(var d=0;d96&&a<123||a>64&&a<91||a>47&&a<58||a==46||a==44||a==45||a==95)b=b+String.fromCharCode(a);else b=b+""+a+";"}return b}function OutputEncoder_EncodeXml(a){return OutputEncoder_EncodeHtml(a)}function OutputEncoder_EncodeXmlAttribute(a){return OutputEncoder_EncodeHtmlAttribute(a)}function OutputEncoder_EncodeJs(c){var a,b="";if(c==null)return "";for(var d=0;d96&&a<123||a>64&&a<91||a==32||a>47&&a<58||a==46||a==44||a==45||a==95)b=b+String.fromCharCode(a);else if(a>127)b=b+"\\u"+OutputEncoder_TwoByteHex(a);else b=b+"\\x"+OutputEncoder_SingleByteHex(a)}return "'"+b+"'"}function OutputEncoder_EncodeVbs(d){var b,a="",c=false;if(d==null)return "";for(var e=0;e96&&b<123||b>64&&b<91||b==32||b>47&&b<58||b==46||b==44||b==45||b==95){if(!c){a=a+'&"';c=true}a=a+String.fromCharCode(b)}else{if(c){a=a+'"';c=false}a=a+"&chrw("+b+")"}}if(a.charAt(0)=="&")a=a.substring(1);if(a.length==0)a='""';if(c)a=a+'"';return a}function OutputEncoder_AsUrl(a){if(a==null)return "";if(a.search(/^(?:http|https|ftp):\/\/[a-zA-Z0-9\.\-]+(?:\:\d{1,5})?(?:[A-Za-z0-9\.\;\:\@\&\=\+\$\,\?\/]|%u[0-9A-Fa-f]{4}|%[0-9A-Fa-f]{2})*$/i))throw"Unsanitized value passed to AsUrl";return a}function OutputEncoder_QualifyUrl(a){if(a==null)return "";if(a.search(/^(?:http|https|ftp):\/\//i))if(document.location.protocol=="HTTPS")return "https://"+document.location.hostname+OutputEncoder_QualifyUrl_MakePath(a);else return "http://"+document.location.hostname+OutputEncoder_QualifyUrl_MakePath(a);else return a}function OutputEncoder_QualifyUrl_MakePath(a){if(a==null)return "";if(!a.search(/^[\/\\]/))return a;var b=/^(\/(?:.*\/|))(?:[^\/\\]*\.\w+|\w*)$/;if(!document.location.pathname.search(b)){var c=b.exec(document.location.pathname);return c[1]+a}return "/"+a}function OutputEncoder_AsNumeric(a){if(a==null)return "";if(isNaN(parseFloat(a)))throw"IOSec.AsNumeric(): Error input ["+a+"] not a valid number.";return a}function OutputEncode_TruncateUrlSafe(a,b,e){if(a.length<=b)return a;var d="";if(e&&e.length>0){d=OutputEncoder_EncodeUrl(e);b-=d.length}var a=a.substring(0,b);for(var c=1;c<6;c++)if(a.charAt(b-c)=="%"){a=a.substring(0,b-c);break}return a+d}function OutputEncode_EncodeUrlDelims(f,c){if(!f)return c;var a,h,b="";for(var d=0;d127)e="%u"+OutputEncoder_TwoByteHex(a);else e="%"+OutputEncoder_SingleByteHex(a);break}}b+=e}return b}function OutputEncoder_EncodeUrl(c){if(c==null)return "";var a,e=c.length,b=new Array(e);for(var d=0;d96&&a<123||a>64&&a<91||a>47&&a<58||a==46||a==45||a==95)b.push(String.fromCharCode(a));else if(a>127){b.push("%u");b.push(OutputEncoder_TwoByteHex(a))}else{b.push("%");b.push(OutputEncoder_SingleByteHex(a))}}return b.join("")}function OutputEncoder_SingleByteHex(b){if(b==null)return "";var a=b.toString(16);for(var c=a.length;c<2;c++)a="0"+a;return a}function OutputEncoder_TwoByteHex(b){if(b==null)return "";var a=b.toString(16);for(var c=a.length;c<4;c++)a="0"+a;return a}function GetValidatedUrl(a){if(a==null||a=="undefined"||a.length<=0)return "";try{a=unescape(a);a=a.replace(/\|/g," ").replace(/\^/g," ").replace(/^\s+/g,"").replace(/\s+$/g,"");var b=new RegExp(/(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/);if(a.match(b))return a;else return ""}catch(c){return ""}}function OutputEncoder(){this.GetValidatedUrl=GetValidatedUrl;this.EncodeHtml=OutputEncoder_EncodeHtml;this.EncodeHtmlAttribute=OutputEncoder_EncodeHtmlAttribute;this.EncodeXml=OutputEncoder_EncodeXml;this.EncodeXmlAttribute=OutputEncoder_EncodeXmlAttribute;this.EncodeJs=OutputEncoder_EncodeJs;this.EncodeVbs=OutputEncoder_EncodeVbs;this.AsNumeric=OutputEncoder_AsNumeric;this.EncodeUrl=OutputEncoder_EncodeUrl;this.EncodeUrlDelims=OutputEncode_EncodeUrlDelims;this.TruncateUrlSafe=OutputEncode_TruncateUrlSafe;this.SingleByteHex=OutputEncoder_SingleByteHex;this.TwoByteHex=OutputEncoder_TwoByteHex;this.AsUrl=OutputEncoder_AsUrl;this.QualifyUrl=OutputEncoder_QualifyUrl;this.EncodeUrlUTF8=OutputEncoder_URLEncodeUTF8;this.EncodeUrlEscapeUTF8=OutputEncoder_URLEncodeEscapeUTF8;this.DecodeHtml=DecodeHtml}var IOSec=new OutputEncoder;function VE_Panel(c,q,r,o,m,f,d,n,p,l,s,t,e,h,i,j){var b=this;this.index=0;this.x=q;this.y=r;this.width=o;this.height=m;this.dynamicHeightMax=600;this.color=f;this.sPanel=null;this.toolbarHeight=20;this.footerHeight=20;this.min=false;this.visible=true;this.onTitleClick=null;this.onCloseClick=null;this.onMaximize=null;this.onMinimize=null;this.isLegacyPanel=h==true;this.usesShimIn3D=!this.isLegacyPanel;if(!e)e=document.body;var a=null;if(!this.isLegacyPanel){a=VE_Panel._CreateElement("div",c,"VE_Panel_el",d);this.el=a;this.titleDisabled=false;this.title=document.createElement("a");this.title.id=c+"_title";this.title.className="VE_Panel_title";this.title.appendChild(document.createElement("span"));this.title.onclick=function(a){VE_Panel._OnTitleClick(a);return false};this.title.href="#";a.appendChild(this.title);this.SetTitle(n);this.closeboxDisabled=false;this.cb=VE_Panel._CreateElement("a",c+"_cb","VE_Panel_cb VE_Panel_cb_"+f,d+1);this.cb.onclick=function(a){VE_Panel._OnCloseClick(a);return false};this.cb.onmouseover=function(){if(typeof Msn.VE.Css!="undefined")Msn.VE.Css.Functions.addClass(b.title,"VE_Panel_title_hover")};this.cb.onmouseout=function(){if(typeof Msn.VE.Css!="undefined")Msn.VE.Css.Functions.removeClass(b.title,"VE_Panel_title_hover")};this.cb.href="#";this.cb.unselectable="on";a.appendChild(this.cb);this.tb=VE_Panel._CreateElement("div",c+"_tb","toolbar",d+1);this.tb.unselectable="on";a.appendChild(this.tb)}else{var k=$ID(c+"_tb");this.tb=VE_Panel._CreateElement("div","","",d+1);k.appendChild(this.tb)}this.body=VE_Panel._CreateElement("div",c+"_body","VE_Panel_body",d+1);this.body.innerHTML=p;if(!this.isLegacyPanel){a.appendChild(this.body);this.foot=VE_Panel._CreateElement("div",c+"_foot","VE_Panel_foot VE_Panel_foot_"+f,d+1);this.foot.innerHTML=l;this.foot.unselectable="on";a.appendChild(this.foot)}else{a=this.body;this.el=a}VE_Panel.panels.push(this);if(i){a.style.top="0";a.style.left="0";if(j)a.style.position="absolute";else{a.style.display="none";a.style.visibility="hidden"}}e.appendChild(a);if(!Gimme.Browser.isKHTML){var g=Gimme.id("TaskHost_CollectionsViewer_state");if(g!==null)e.appendChild(g)}this.Destroy=function(){if(a.parentNode)a.parentNode.removeChild(a);if(b.sPanel!=null)b.sPanel.Destroy();if(a.shimElement&&a.shimElement.parentNode)a.shimElement.parentNode.removeChild(a.shimElement);a.shimElement=null;var d=VE_Panel.panels;for(var c=0;c0?"block":"none";this.tb.style.display=d;this.Resize()};VE_Panel.prototype.SetFooterSize=function(footerHeight){if(!this.isLegacyPanel){this.footerHeight=footerHeight;var d=eval(footerHeight)>0?"block":"none";this.foot.style.display=d;this.Resize()}};VE_Panel.prototype.Resize=function(){if(typeof ve_globals!="undefined"){var geoFn=Msn.VE.Geometry.Functions,taskAreaHeight=Gimme.Screen.getViewportSize().y-g(ve_globals["taskArea"]).getScreenPosition().y-ve_globals["footer"].offsetHeight;if(taskAreaHeight>=0&&typeof taskAreaHeight=="number")ve_globals["taskArea"].style.height=taskAreaHeight-2+"px";if(this.el.id=="contextMenu"||this.el.id=="scratchpad"||this.el.id=="annotationPanel"||this.el.id=="annotationPopup"||this.el.id=="searchPopup"||this.el.id=="help"){if(this.height!="auto"&&typeof this.height=="number")this.el.style.height=eval(this.height)+"px";if(this.width!="auto"&&typeof this.width=="number")this.el.style.width=eval(this.width)+"px";if(this.x!="auto"&&typeof this.x=="number")this.el.style.left=eval(this.x)+"px";if(this.y!="auto"&&typeof this.y=="number")this.el.style.top=eval(this.y)+"px"}if(this.el.shimElement)ShowShim(this.el)}};VE_Panel.prototype.SetHeightToFit=function(){var contentid=this.id+"_body_table",content=$ID(contentid);if(!content)return false;this.height=0;var width=Math.max(eval(this.width),100);if(content.offsetWidth>width-14)this.height+=scrollbarWidth;this.height+=this.titleDisabled?14:21+14;this.height+=this.toolbarHeight;this.height+=content.offsetHeight;this.height+=this.footerHeight;this.height=Math.min(this.dynamicHeightMax,this.height)};VE_Panel.prototype.DisableClosebox=function(){if(!this.isLegacyPanel){if(this.closeboxDisabled)return;this.closeboxDisabled=true;this.el.removeChild(this.cb)}};VE_Panel.prototype.EnableClosebox=function(){if(!this.isLegacyPanel){if(!this.closeboxDisabled)return;this.closeboxDisabled=false;this.el.appendChild(this.cb)}};VE_Panel.prototype.DisableTitle=function(){if(!this.isLegacyPanel){if(this.titleDisabled)return;this.titleDisabled=true;this.el.removeChild(this.cb);this.el.removeChild(this.title)}};VE_Panel.prototype.EnableTitle=function(){if(!this.isLegacyPanel){if(!this.titleDisabled)return;this.titleDisabled=false;this.el.insertBefore(this.cb,this.tb);this.el.insertBefore(this.title,this.cb)}};VE_Panel.prototype.SetTitle=function(c){if(!this.isLegacyPanel){var b=document.createTextNode(c),a=this.title.firstChild;if(a)if(a.firstChild)a.replaceChild(b,a.firstChild);else a.appendChild(b)}};VE_Panel.prototype.SetToolbar=function(a){this.tb.innerHTML=a};VE_Panel.prototype.SetBody=function(a){this.body.innerHTML=a};VE_Panel.prototype.SetDynamicBody=function(a){this.body.innerHTML='"};VE_Panel.prototype.SetFooter=function(a){if(!this.isLegacyPanel)this.foot.innerHTML=a};VE_Panel.prototype.SetOpacity=function(o){if(o>=100)o=99.99;with(this.el.style){filter="alpha(opacity:"+o+")";o*=.01;KHTMLOpacity=o;MozOpacity=o;opacity=o}};VE_Panel.prototype.SetColor=function(a){if(!this.isLegacyPanel){this.color=a;this.title.className="VE_Panel_title VE_Panel_title_"+a;this.foot.className="VE_Panel_foot VE_Panel_foot_"+a;this.cb.className="VE_Panel_cb VE_Panel_cb_"+a}};VE_Panel.prototype.Minimize=function(){this.el.className=" VE_Panel_el_minimized";if(this.onMinimize)this.onMinimize(this._CreateEvent())};VE_Panel.prototype.Maximize=function(){this.el.className="VE_Panel_el";if(this.onMaximize)this.onMaximize(this._CreateEvent());this.Resize()};VE_Panel.prototype.isMaximized=function(){return this.el.className=="VE_Panel_el"};VE_Panel.prototype.Show=function(){this.el.style.display="block";this.visible=true;if(this.usesShimIn3D)mvcViewFacade.ShowShimIfSupported(this.el)};VE_Panel.prototype.Hide=function(){this.el.style.display="none";this.visible=false;HideShim(this.el)};VE_Panel.prototype.IsVisible=function(){return this.el.style.display!="none"};function VE_PanelEvent(a){this.srcPanel=a}VE_Panel.prototype._CreateEvent=function(){return new VE_PanelEvent(this)};VE_Panel._OnTitleClick=function(c){if(!c)c=window.event;var d=GetTarget(c),b=VE_Panel.panels;for(var a=0;a'+IOSec.EncodeHtml(this.title)+""+"$AdDescription$"+"";if(this.description&&this.description.length>0)a=a.replace("$AdDescription$",""+IOSec.EncodeHtml(this.description)+"
");return a};Ad.prototype.HasAddress=function(){return this.address1.length>0&&this.city.length>0&&this.state.length>0&&this.zip.length>0};Ad.prototype.GetAdDescription=function(){var a=this.description;if(this.HasAddress())a=this.address1+", "+this.city+", "+this.state+" "+this.zip;return a};Msn.VE.DirectionsDecoder=function(){var a=4,b=1000000;function e(a,c,m,l){if(!a||a.length');var a=$ID("helpFrame");a.src=c;VE_Help.Redraw()};VE_Help.OpenSized=function(f,g,a,b){var d=GetWindowWidth(),c=GetWindowHeight();if(a>d-10)a=d-10;if(b>c-10)b=c-10;VE_Help.CreateSizedHelpPanel((d-a)/2,(c-b)/2,a,b);VE_Help.EnablePreventLayer();VE_Help.helpPanel.Show();VE_Help.helpPanel.SetTitle(f);VE_Help.helpPanel.SetBody('');var e=$ID("helpFrame");e.src=g};VE_Help.OpenLiveHelp=function(b,a,c){var g="_live_help",f=550,e=575,i=(screen.availWidth-f)*.5,j=(screen.availHeight-e)*.5,h="resizable=yes,top="+j+",width="+f+",height="+e+",left="+i;if(typeof b=="undefined"||b==null||b=="")b=liveLocalHelpProjectCode;if(typeof a=="undefined"||a==null||a=="")a=VE_Help.LiveHelp.Keyword;if(typeof c=="undefined"||c==null||c=="")c="qaf";var k=liveHelpUrl+"&project="+b+"&querytype="+a+"&query="+c,d=window.open(k,g,h);if(d!=null&&typeof d=="object")d.focus()};VE_Help.Redraw=function(){var b=VE_Help.helpPanel;if(!b)return;var c=Gimme.Screen.getViewportSize(),a=g(b.el);a.setStyle("top",(c.height-a.element().offsetHeight)/2+"px");a.setStyle("left",(c.width-a.element().offsetWidth)/2+"px");ShowShim(b.el)};VE_Help.CloseIntro=function(){if(VE_Help.introPanel)VE_Help.introPanel.Hide()};VE_Help.ClosePanel=function(){if(VE_Help.helpPanel){VE_Help.helpPanel.Hide();VE_Help.DisablePreventLayer()}};VE_Help.Destroy=function(){if(VE_Help.introPanel){VE_Help.introPanel.Destroy();VE_Help.introPanel=null}if(VE_Help.helpPanel){VE_Help.helpPanel.Destroy();VE_Help.helpPanel=null}};function SanitizeHtmlString(a){if(!a||typeof a!="string")return a;return IOSec.EncodeHtml(a)}function GetTarget(b){if(!b)b=window.event;var a=null;if(b.srcElement)a=b.srcElement;else if(b.target)a=b.target;if(a&&a.nodeType){if(b.capturedTarget)a=b.capturedTarget;if(a.nodeType==3)a=a.parentNode}return a}function SelectText(a,c,d){if(!a)return;if(a.createTextRange){var b=a.createTextRange();b.moveStart("character",c);b.moveEnd("character",d);b.select()}else if(a.setSelectionRange)a.setSelectionRange(c,d)}function SelectedTextLength(a){if(!a)return 0;if(a.document){var b=a.document.selection.createRange();return b.text.length}else{var c=a.selectionStart,d=a.selectionEnd;return d-c}}function GetXMLText(a){if(a.text)return a.text;else if(a.textContent)return a.textContent;else if(a.firstChild&&a.firstChild.data)return a.firstChild.data;return ""}function VEValidator(){}VEValidator.ValidateFloat=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateFloat";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"));try{if(isNaN(parseFloat(b)))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"));return true}catch(d){throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"))}};VEValidator.ValidateInt=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateInt";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"));try{if(isNaN(parseInt(b))||parseFloat(b)!=parseInt(b))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"));return true}catch(d){throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"))}};VEValidator.ValidateNonNegativeInt=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateNonNegativeInt";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c));try{if(isNaN(parseInt(a))||parseFloat(a)!=parseInt(a)||parseInt(a)<0)throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c));return true}catch(d){throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c))}};VEValidator.ValidateFunction=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateFunction";if(b==null||typeof b!="function")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","function"))};VEValidator.ValidateNonNull=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateNonNull";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","non null"))};VEValidator.ValidateBetween=function(b,e,d,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateBetween";if(bc)throw new VEException(a,"err_invalidargument",L_invalidbetweenint_text.replace("%1",e).replace("%2",d).replace("%3",c))};VEValidator.ValidateBoolean=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateBoolean";if(b!=true&&b!=false)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","bool"))};VEValidator.ValidateMapStyle=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateMapStyle";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapStyle"));if(a=="r"||a=="R"||$MVEM.IsEnabled(MapControl.Features.MapStyle.Shaded)&&(a=="s"||a=="S")||$MVEM.IsEnabled(MapControl.Features.MapStyle.Aerial)&&(a=="a"||a=="A")||$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(a=="o"||a=="O")||$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(a=="b"||a=="B")||$MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid)&&(a=="h"||a=="H"))return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapStyle"))};VEValidator.ValidateClusteringType=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateClusteringType";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ClusteringType"));if(typeof a=="number"&&(a==VEClusteringType.None||a==VEClusteringType.Grid))return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ClusteringType"))};VEValidator.ValidateMapMode=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a="")a="VEValidator.ValidateMapMode";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapMode"));if(b==VEMapMode.Mode2D||$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)&&b==VEMapMode.Mode3D)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapMode"))};VEValidator.ValidateDistanceUnit=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateDistanceUnit";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDistanceUnit"));if(b==VEDistanceUnit.Miles||b==VEDistanceUnit.Kilometers)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDistanceUnit"))};VEValidator.ValidateMaxZoom=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateMaxZoom";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ValidateMaxZoom"));if(b<=Msn.VE.API.Globals.vemaxzoom)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ValidateMaxZoom"))};VEValidator.ValidateLayerType=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateLayerType";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDataType"));if(a==VEDataType.GeoRSS||a==VEDataType.VECollection||a==VEDataType.VETileSource)return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDataType"))};VEValidator.ValidateDashboardSize=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateDashboardSize";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDashboardSize"));if(a==VEDashboardSize.Normal||a==VEDashboardSize.Small||a==VEDashboardSize.Tiny)return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDashboardSize"))};VEValidator.ValidateMiniMapSize=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateMiniMapSize";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEMiniMapSize"));if(b==VEMiniMapSize.Small||b==VEMiniMapSize.Large)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEMiniMapSize"))};VEValidator.ValidateAltitudeMode=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateAltitudeMode";if(b==null)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEAltitudeMode"));if(b!=VEAltitudeMode.Absolute&&b!=VEAltitudeMode.RelativeToGround)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEAltitudeMode"));return true};VEValidator.ValidateObject=function(b,c,e,d){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateObject";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","non null"));if(!(b instanceof e))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2",d))};VEValidator.ValidateObjectArray=function(a,d,f,e){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateObject";if(a==null||typeof a=="undefined"||a.length==null||typeof a.length=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",d).replace("%2","array"));for(var c=0;c=a.BottomRightLatLong.Longitude)throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VELatLongRectangle"))};VEValidator.GetCaller=function(){return ""};function VEPushpin(f,e,d,h,g,c,b,a){VEValidator.ValidateNonNull(f,"pinId");VEValidator.ValidateNonNull(e,"veLatLong");var i=this;this.IsInLayer=false;this.ID=f;this.LatLong=e;this.Title=h;if(d==null||d=="undefined"||d.length==0)this.Iconurl=Msn.VE.API.Constants.iconurl;else this.Iconurl=d;this.Details=g;if(c==null||c=="undefined"||c.length==0)this.IconStyle="";else this.IconStyle=c;if(b==null||b=="undefined"||b.length==0)this.TitleStyle="VE_Pushpin_Popup_Title";else this.TitleStyle=b;if(a==null||a=="undefined"||a.length==0)this.DetailsStyle="VE_Pushpin_Popup_Body";else this.DetailsStyle=a;if(window.ero==null||window.ero=="undefined")window.ero=ERO.getInstance()}VEPushpin.ShowDetailOnMouseOver=true;VEPushpin.OnMouseOverCallback=null;VEPushpin.prototype.Dispose=function(){this.DetailsStyle==null;this.TitleStyle=null;this.IconStyle=null;this.Details=null;this.IconUrl=null;this.Title=null;this.LatLong=null;this.ID=null;this.m_vemapcontrol=null;this.m_vemap=null};VEPushpin.Hide=function(a){if(window.ero!=null){if(a=="undefined"||a==null)a=false;window.ero.hide(a)}};VEPushpin.GetEroContent=function(c,b,e,d){var a="";if(c!=null&&c!="undefined"&&c.length>0)a+='
'+unescape(c)+"
";if(b!=null&&b!="undefined"&&b.length>0)a+=''+unescape(b)+"
";if(!document.all&&(c.length==0||b.length==0))a+=" ";a+="
";return a};VEPushpin.Show=function(l,m,k,h,d,c,g,e){var a=VEMap._GetMapFromGUID(l);if(a==null||a=="undefined")return;var i=a.vemapcontrol.GetX(h)+a.GetLeft(),j=a.vemapcontrol.GetY(k)+a.GetTop();if(VEPushpin.ShowDetailOnMouseOver){var b=$ID(m+"_"+a.GUID);if(b!=null&&b!="undefined"){var f=VEPushpin.GetEroContent(d,c,g,e);window.ero.setContent(f);window.ero.setBoundingArea(null);window.ero.getBoundingArea().move(Gimme.Screen.getScrollPosition());window.ero.dockToElement(b)}}if(VEPushpin.OnMouseOverCallback!=null)VEPushpin.OnMouseOverCallback(i,j,d,unescape(c))};VEPushpin.Show3D=function(a,c,b,f,d){if(VEPushpin.ShowDetailOnMouseOver){var e=VEPushpin.GetEroContent(c,b,f,d);window.ero.setContent(e);ero.setGlitz(false,false,false,true);window.ero.dockToRect(a,null,-1)}if(VEPushpin.OnMouseOverCallback!=null)VEPushpin.OnMouseOverCallback(a.getP1().x,a.getP1().y,c,unescape(b))};function GetContent(){var g=this.ID+"_"+this.m_vemap.GUID,a=" 0,d=this.Details!=null&&this.Details!="undefined"&&this.Details.length>0;if(e||d){var b="if (VEMap._GetMapFromGUID("+this.m_vemap.GUID+").FireEvent(",c="))return;";a+=" onmouseout='"+b+'"onmouseout"'+c+"VEPushpin.Hide();' ";a+=" onmousedown='"+b+'"onmousedown"'+c+"VEPushpin.Hide(true);' ";a+=" onmouseover='"+b+'"onmouseover"'+c+'VEPushpin.Show("'+this.m_vemap.GUID+'","'+this.ID+'",'+this.LatLong.Latitude+","+this.LatLong.Longitude;if(e)a+=', "'+escape(this.Title)+'"';else a+=',""';if(d)a+=', "'+escape(this.Details)+'"';else a+=',""';a+=',"'+this.TitleStyle+'"';a+=',"'+this.DetailsStyle+'"';a+=");' "}a+="/>";return a}VEPushpin.DisposeERO=function(){if(window.ero!=null&&window.ero!="undefined"){window.ero.destroy();window.ero=null}};VEPushpin.prototype._SetMapInstance=function(a){this.m_vemap=a;this.m_vemapcontrol=a.vemapcontrol};VEPushpin.prototype.GetContent=GetContent;function GetImageFullUrl(a){var b="";if(a&&a.constructor==String&&a.length>0){var c=new Image;c.src=a;b=c.src}return b}function VE_ScratchpadManager(){}VE_ScratchpadManager.AddGeoLocation=function(){return};VE_ScratchpadManager.AddLocation=VE_ScratchpadManager.AddGeoLocation;VE_Scratchpad=VE_ScratchpadManager;function VEMessage(b){VEValidator.ValidateObject(b,"vemap",VEMap,"VEMap");this.m_vemap=b;var a=this;this.Show=function(g){if(g==null||g=="undefined"||g.length<=0)return;g=c(g);if(this.vemessagepanel==null||this.vemessagepanel=="undefined"){var d=document.createElement("div");d.id=this.m_vemap.ID+"_vemessagepanel";d.className="VE_Message";d.style.zIndex=Msn.VE.API.Globals.vemessagepanelzIndex;var i=this.m_vemap.GetHeight()/2-Msn.VE.API.Globals.vemessagepanelheight/2;if(i<0)i=0;d.style.top=i+"px";d.style.left=30+"px";var h=this.m_vemap.GetWidth()-60;if(h<30)h=30;d.style.width=h+"px";d.style.height=Msn.VE.API.Globals.vemessagepanelheight+"px";d.style.position="absolute";this.vemessagepanel=d;var e=document.createElement("a");e.className="VE_Message_Title";e.style.zIndex=parseInt(Msn.VE.API.Globals.vemessagepanelzIndex)+1;e.style.top="1px";e.style.left="1px";e.style.width=parseInt(this.vemessagepanel.style.width)-5+"px";e.innerHTML=IOSec.EncodeHtml(L_error_text);e.unselectable="on";this.vemessagepanel.appendChild(e);var f=document.createElement("a");f.className="VE_Message_Close";f.style.zIndex=parseInt(Msn.VE.API.Globals.vemessagepanelzIndex)+2;f.style.top="1px";f.style.right="1px";f.onclick=a.Hide;f.unselectable="on";f.innerHTML=L_close_text;this.vemessagepanel.appendChild(f);var b=document.createElement("div");b.id=this.m_vemap.ID+"_vemessagepanel_body";b.className="VE_Message_Body";b.style.zIndex=parseInt(Msn.VE.API.Globals.vemessagepanelzIndex)+3;b.style.top=22+"px";b.style.left=0+"px";b.style.width=parseInt(this.vemessagepanel.style.width)-8+"px";b.onclick=a.Hide;b.unselectable="on";b.innerHTML=g;this.vemessagepanel.appendChild(b);this.m_vemap.AddControl(this.vemessagepanel,Msn.VE.API.Globals.vemessagepanelzIndex)}else{var b=$ID(this.m_vemap.ID+"_vemessagepanel_body");b.innerHTML=g}this.vemessagepanel.style.display="block";mvcViewFacade.ShowShimIfSupported(this.vemessagepanel);this.timeoutIntervalID=window.setInterval(this.Hide,10000)};this.Hide=function(){if(a.vemessagepanel!=null&&a.vemessagepanel!="undefined"){a.vemessagepanel.style.display="none";HideShim(a.vemessagepanel);if(a.timeoutIntervalID!=null){window.clearInterval(a.timeoutIntervalID);a.timeoutIntervalID=null}}};this.Dispose=function(){if(this.vemessagepanel!=null&&this.vemessagepanel!="undefined")this.vemessagepanel=null};function c(a){var b=/]*>/gi;a=a.replace(b,"");b=/<\/a>/gi;a=a.replace(b,"");return a}}function VEAmbiguouslist(vemap){VEValidator.ValidateNonNull(vemap,"vemap");this.m_vemap=vemap;var self=this;this.ID=this.m_vemap.ID+"_veplacelistpanel";this.Show=function(a,onSelectCallback,callbackOnClose){var body=null,veambiglistHide="VEMap._GetMapFromGUID('"+this.m_vemap.GUID+"').m_veambiguouslist.Hide();",veambiglistSetViewport="VEMap._GetMapFromGUID('"+this.m_vemap.GUID+"').vemapcontrol.SetViewport";if(this.veplacelistpanel==null||this.veplacelistpanel=="undefined"){var e=document.createElement("div");e.id=this.ID;e.className="VE_PlaceList";e.style.top=this.m_vemap.GetHeight()/2-Msn.VE.API.Globals.veplacelistpanelheight/2+"px";e.style.left=this.m_vemap.GetWidth()/2-Msn.VE.API.Globals.veplacelistpanelwidth/2+"px";e.style.width=Msn.VE.API.Globals.veplacelistpanelwidth+"px";e.style.height=Msn.VE.API.Globals.veplacelistpanelheight+"px";e.style.position="absolute";this.veplacelistpanel=e;var title=document.createElement("a");title.className="VE_PlaceList_Title";title.style.zIndex=parseInt(Msn.VE.API.Globals.veplacelistpanelzIndex)+1;title.style.width=parseInt(Msn.VE.API.Globals.veplacelistpanelwidth)-5+"px";title.style.top="1px";title.style.left="1px";title.style.height="20px";title.innerHTML=IOSec.EncodeHtml(L_selectlocation_text);title.unselectable="on";this.veplacelistpanel.appendChild(title);var cb=document.createElement("a");cb.className="VE_PlaceList_Close";cb.id=this.m_vemap.ID+"_veplaceListclose";cb.style.zIndex=parseInt(Msn.VE.API.Globals.veplacelistpanelzIndex)+2;cb.style.top="1px";cb.style.right="1px";cb.unselectable="on";cb.innerHTML=L_close_text;this.veplacelistpanel.appendChild(cb);body=document.createElement("div");body.id=this.m_vemap.ID+"_veplacelistbody";body.style.zIndex=300;body.style.height=Msn.VE.API.Globals.veplacelistpanelheight-38+"px";body.style.width=Msn.VE.API.Globals.veplacelistpanelwidth-8+"px";body.className="VE_PlaceList_Body";this.veplacelistpanel.appendChild(body);this.m_vemap.AddControl(this.veplacelistpanel,Msn.VE.API.Globals.veplacelistpanelzIndex)}else body=$ID(this.m_vemap.ID+"_veplacelistbody");var cb=$ID(this.m_vemap.ID+"_veplaceListclose");if(callbackOnClose==true)cb.onclick=function(){eval(veambiglistHide+onSelectCallback+"();")};else cb.onclick=self.Hide;body.innerHTML="";for(var i=0;i '+a[i].name+"";else loc.innerHTML=''+a[i].name+" ";else if(onSelectCallback!=null&&onSelectCallback!="undefined")loc.innerHTML=''+a[i][0]+" ";else loc.innerHTML=''+a[i][0]+" ";body.appendChild(loc)}this.veplacelistpanel.style.display="block";mvcViewFacade.ShowShimIfSupported(this.veplacelistpanel)};this.Hide=function(){if(self.veplacelistpanel!=null&&self.veplacelistpanel!="undefined"){HideShim(self.veplacelistpanel);self.veplacelistpanel.style.display="none"}};this.IsVisible=function(){var a=false;if(this.veplacelistpanel!=null&&this.veplacelistpanel!="undefined"&&this.veplacelistpanel.style.display!="none")a=true;return a};this.Dispose=function(){DestroyShim(self.veplacelistpanel);if(this.veplacelistpanel!=null&&this.veplacelistpanel!="undefined")this.veplacelistpanel=null}}function VEGraphicsManager(x){VEValidator.ValidateObject(x,"vemap",VEMap,"VEMap");var a=this,w=!Msn.VE.Environment.IsSVG();this._spacecontrol=null;this._hackUniqueLayerId="UniqueLayer_Hack";var bb=null;this._entityIdShapePostfix="_Shape";this.m_vemap=x;this.m_vemapcontrol=this.m_vemap.vemapcontrol;var f=null,G=x._mapOptions.DrawingBuffer,p=false,T=1,d=null;this._useOffset=VEShapeAccuracy.None;this._drawOverMaxShapes=VEFailedShapeRequest.DrawInaccurately;this._failRequest=VEFailedShapeRequest.DrawInaccurately;var ab=null,y=null,g=[],b=[],j={},e=false,c=null;this.m_spec=null;var s=null,k=null,m=true,Z=Msn.VE.API.Constants.iconurl,t=0,n=new _xy1;this.SetDisplayThreshold=function(a){t=a};this.Initialize=function(){if(this.m_vegraphiccanvas==null||this.m_vegraphiccanvas=="undefined"){this.m_vegraphicspolylines=[];this.m_vegraphicspolygons=[];var b=document.createElement("div");b.id="rootgraphicshape";this.m_vemapcontrol.SetChildDiv(b);this.m_vegraphiccanvas=Msn.Drawing.Graphic.CreateGraphic(b,this.m_vemapcontrol);this.m_vegraphiccanvas.SetZIndex(17);this.m_vemapcontrol.AttachEvent("onstartzoom",a.OnStartZoom);this.m_vemapcontrol.AttachEvent("onchangeview",a.Update);this.m_vemapcontrol.AttachEvent("onmapoffsetreset",a.OnMapOffsetReset);this.m_vemapcontrol.AttachEvent("oninitmode",a.UpdateViewMode);if(window.ero==null||window.ero=="undefined")window.ero=ERO.getInstance()}};this.HideClusterLayers=function(){var d=a.m_vemap.GetShapeLayerCount();for(var c=0;cd.x1&&a.minY>d.y1&&a.maxX0){d++;if(f[d]==null){k=false;d=d+i-1;i=0}else{var j=a.m_vemapcontrol.PixelToLatLong(f[d],a.m_vemapcontrol.GetZoomLevel());b[c]._OffsetPoints.push(s.CreateVELatLong(j.latitude,j.longitude));i--;l.push(f[d])}}}q(b[c]);if(k){h(b[c]);if(b[c]._OffsetCallBack)b[c]._OffsetCallBack(l)}else{b[c]._OffsetScene=null;b[c]._OffsetLatLong=null;b[c]._OffsetPoints=null;if(a._failRequest==VEFailedShapeRequest.DoNotDraw){if(b[c]._OffsetCallBack)b[c]._OffsetCallBack(null)}else if(a._failRequest==VEFailedShapeRequest.DrawInaccurately){b[c]._OffsetScene=-1;h(b[c]);b[c]._OffsetScene=null;if(b[c]._OffsetCallBack)b[c]._OffsetCallBack(null)}else if(a._failRequest==VEFailedShapeRequest.QueueRequest){e=true;o(b[c])};}d++}else for(var c=0;c0){var f=Msn.VE.API.Constants.maxasynlatlongs,d=[];while(g.length>0&&f>0){var c=g.shift();if(c.GetPrimitive(0).type!=VEShapeType.Pushpin&&c.GetPrimitive(0).points.length/2>f-1){var j=c.GetPrimitive(0).points;if(j.length/2>Msn.VE.API.Constants.maxasynlatlongs-1){q(c);if(a._drawOverMaxShapes==VEFailedShapeRequest.DoNotDraw){if(c._OffsetCallBack)c._OffsetCallBack(null)}else if(a._drawOverMaxShapes==VEFailedShapeRequest.DrawInaccurately){c._OffsetScene=-1;h(c);if(c._OffsetCallBack)c._OffsetCallBack(null)};}else{g.unshift(c);f=0}}else if(c._OffsetScene!=k.GetID()){b.push(c);d.push(new Msn.VE.LatLong(c.Latitude,c.Longitude));f--;if(c.GetPrimitive(0).type!=VEShapeType.Pushpin){var j=c.GetPrimitive(0).points;for(var i=0;i0)e=true;if(d!=null&&d.length>0){y=k.GetID();a.m_vemapcontrol.LatLongToPixelAsync(d,a.m_vemapcontrol.GetZoomLevel(),J)}}};function Y(){if(!c)return;MC_MAX_COL_SIZE=200;if(c.GetCollectionCount()<1)return;l();for(var d=0;db.MaxScale||p0&&!IsBoundsIntersect(f,e))return false;if(b.Spec!=null&&b.Spec.IconUrl!=null&&b.Spec.IconUrl!="undefined")Z=b.Spec.IconUrl;var g=$ID(b.GetId());if(g==null){g=document.createElement("div");g.setAttribute("id",b.GetId());k.appendChild(g)}var o=true;m=true;if(IsContainedInView(d,e)){m=false;o=IsDisplayShape(a.m_vemap.vemapcontrol,t,e.x1,e.y1,e.x2,e.y2)}for(var n=0;nb.maxZoomLevel||m0){var c=a.m_vegraphicspolylines.length;for(var b=0;b0){var g=a.m_vegraphicspolygons.length;for(var b=0;b0)M(e,b._clusteringOptions)}if(b._clusteringOptions&&b._clusteringOptions.Callback)clusterDescription=b._clusteringOptions.Callback(d);var f=[];for(var c=0;c0){var h=d/c,i=e/c;a.LatLong=new VELatLong(h,i)}var g=new VEShape(VEShapeType.Pushpin,a.LatLong);a._clusterShape=g;Q(a,f);L(a)}}function Q(a,b){if(a!=null&&a._clusterShape!=null)if(b&&b.Icon)a._clusterShape.SetCustomIcon(b.Icon);else a._clusterShape.SetCustomIcon(Msn.VE.API.Constants.clustericonurl)}function L(b){if(b!=null&&b._clusterShape!=null){var d=L_ClusterDefaultTitle_Text.replace(/%1/g,b.Shapes.length);b._clusterShape.SetTitle(d);var c=a.m_vemap.vemapcontrol.GetCurrentMode();if(c&&a.m_vemap.GetZoomLevel()0){g[i]=Math.floor(c%d);c=Math.floor(c/d);--i}for(var b=0;b=a&&d<=c){var e=(d-a)/(c-a),f=e*b+.5;return Math.min(Math.floor(f),b)}else throw L_floatintegermapencodingoutofrange_text};this.IntToFloat=function(d){if(d<=b){var f=d/b,e=a+f*(c-a);return e}else throw L_floatintegermapencodingoutofrange_text}}var L_velatlongencodinginvalidstringlength_text="_xz1: Invalid string length";function _xz1(b){var i=-90,h=90,g=-180,f=180,j="0123456789bcdfghjkmnpqrstvwxyz",e=6;if(b!=null&&typeof b!="undefined")e=b;var a=new VEIntegerEncoding(j,e),d=new VEFloatIntegerMap(i,h,a.MaxValue()),c=new VEFloatIntegerMap(g,f,a.MaxValue());this.Encode=function(e,b){var f=a.Encode(d.FloatToInt(e))+a.Encode(c.FloatToInt(b));return f};this.Decode=function(f){if(f.length==2*a.ValueLength()){var e=a.ValueLength(),j=f.substr(0,e),h=f.substr(e,e),i=a.Decode(j),g=a.Decode(h),b=[];b[0]=d.IntToFloat(i);b[1]=c.IntToFloat(g);return b}else throw L_velatlongencodinginvalidstringlength_text}}function _xz1ForMobile(){_xz1.call(this,5)}VEMapMode=new function(){this.Mode2D=1;this.Mode3D=2};function VEMapViewSpecification(c,d,e,g,f){this.LatLong=null;this.ZoomLevel=null;this.Altitude=null;this.Pitch=null;this.Heading=null;if(c!=null&&c!="undefined"){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");this.LatLong=c}if(d!=null&&d!="undefined"){VEValidator.ValidateNonNegativeInt(d,"zoomLevel");this.ZoomLevel=d}if(e!=null&&e!="undefined"){VEValidator.ValidateFloat(e,"altitude");this.Altitude=parseFloat(e)}if(g!=null&&g!="undefined"){VEValidator.ValidateFloat(g,"pitch");var a=parseFloat(g);a=a%360;if(a<-90)a=-90;if(a>90)a=90;this.Pitch=a}if(f!=null&&f!="undefined"){VEValidator.ValidateFloat(f,"heading");var b=parseFloat(f);b=b%360;if(b<0)b+=360;this.Heading=b}}function MapViewSpecClone(){var a=new VEMapViewSpecification;a.LatLong=this.LatLong.Clone();a.Altitude=this.Altitude;a.Pitch=this.Pitch;a.Heading=this.Heading;return veLatLong}VEMapViewSpecification.prototype.Clone=MapViewSpecClone;VEMapStyle=new function(){this.Road=Msn.VE.MapStyle.Road;this.Shaded=Msn.VE.MapStyle.Shaded;this.Aerial=Msn.VE.MapStyle.Aerial;this.Hybrid=Msn.VE.MapStyle.Hybrid;this.Oblique=Msn.VE.MapStyle.Oblique;this.Birdseye=Msn.VE.MapStyle.Oblique;this.BirdseyeHybrid=Msn.VE.MapStyle.ObliqueHybrid};VEOrientation=new function(){this.North=Msn.VE.Orientation.North;this.East=Msn.VE.Orientation.East;this.West=Msn.VE.Orientation.West;this.South=Msn.VE.Orientation.South};function VEBirdseyeScene(d){VEValidator.ValidateNonNull(d,"obliqueScene");var a=d,f=null,c=null,e=new VELatLongFactory(new VELatLongFactoryAlwaysEncodeSpec),b=new _xy1;this.PixelToLatLong=function(d,b,f){if(b!=null){VEValidator.ValidateNonNegativeInt(b,"zoomLevel");b=parseInt(b)}else b=VEMap._GetMapFromGUID(c).GetZoomLevel();if(f){VEValidator.ValidateObjectArray(d,"pixelArray",VEPixel,"VEPixel array");VEValidator.ValidateFunction(f,"callback");this.PixelToLatLongAsync(d,b,f)}else{VEValidator.ValidateObject(d,"pixel",VEPixel,"VEPixel");var g=a.PixelToLatLong(d,b);return e.CreateVELatLong(g.latitude,g.longitude)}};this.PixelToLatLongAsync=function(b,c,d){a.PixelToLatLongAsync(b,c,d)};this.LatLongToPixel=function(e,d,f){if(d!=null){VEValidator.ValidateNonNegativeInt(d,"zoomLevel");d=parseInt(d)}else d=VEMap._GetMapFromGUID(c).GetZoomLevel();if(f){VEValidator.ValidateObjectArray(e,"veLatLongArray",VELatLong,"VELatLong array");VEValidator.ValidateFunction(f,"callback");this.LatLongToPixelAsync(e,d,f)}else{VEValidator.ValidateObject(e,"veLatLong",VELatLong,"VELatLong");var g=b.Decode(e),h=new Msn.VE.LatLong(g.Latitude,g.Longitude);return a.LatLongToPixel(h,d)}};this.LatLongToPixelAsync=function(e,g,h){var f=[];for(var c=0;ca)d=a;return b[d]};this.getTotal=function(){return this.getValue(1)};function c(){b=[];b[0]=0;for(var c=1;c<=a;c++)b[c]=b[c-1]+d(c/a)}},Movie:function(b,g){var a=this;this.Repeat=true;this.AppendContent=true;var e=[],c=-1,d=null;this.addFrame=function(b,a){if(a==null)a=true;var c={data:b,append:a};e.push(c)};this.start=function(){a.stop();a.show();a.clear();c=-1;d=setInterval(h,g)};this.stop=function(){if(d)clearInterval(d)};this.end=function(){a.stop();f(e.length-1)};this.show=function(){b.style.visibility="visible"};this.hide=function(){b.style.visibility="hidden"};this.clear=function(){b.innerHTML=""};function h(){c++;if(c>e.length-1){c=0;if(!a.Repeat){clearInterval(d);return}else a.clear()}f(c)}function f(c){var a=e[c];if(a.append)b.innerHTML+=a.data;else b.innerHTML=a.data}},RollDirection:{TopDown:1,RightLeft:2,BottomUp:4,LeftRight:8},RollStyle:{In:0,Out:1},Roller:function(q){var c=this;this.superclass=Msn.VE.OO.Eventable.EventableObject;this.superclass();var l=Msn.VE.Css,a=Msn.VE.Animation,h=Msn.VE.OO.Eventable,b=q,d=null,f=true,g=false,e=AccelerationFunctions.CrazyElevator,i=10,j=10,m=5,p={top:1,right:2,bottom:3,left:4},o={top:3,right:4,bottom:1,left:2};this.setAccelerationFunction=function(a){if(a instanceof Msn.VE.Animation.AccelerationFunction)e=a};this.setXLeave=function(a){if(typeof a=="number"&&a>=0)i=Math.floor(a,10)};this.setYLeave=function(a){if(typeof a=="number"&&a>=0)j=Math.floor(a,10)};this.getLeave=function(){return {x:i,y:j}};this.setDelay=function(a){if(typeof a=="number"&&a>0)m=Math.floor(a,10)};this.isExpanded=function(){return f};this.isRolling=function(){return g};this.isAssociated=function(){if(d!=null&&d.length>0)return true;return false};this.associate=function(a){if(a instanceof Array)d=a};this.rollIn=function(d){if(g)return;c.executeEvent("beforerollin",c,new h.EventArgs("beforerollin",b));k(a.RollStyle.In,d);f=false};this.rollOut=function(d){if(g)return;c.executeEvent("beforerollout",c,new h.EventArgs("beforerollout",b));k(a.RollStyle.Out,d);f=true};this.expand=function(b){k(a.RollStyle.Out,b,false);f=true};this.collapse=function(b){k(a.RollStyle.In,b,false);f=false};function k(u,k,t){g=true;if(t!==false)t=true;n();var f=p,q=0,r=0;if(u==a.RollStyle.Out){f=o;q=i;r=j}var y=b.offsetWidth,w=b.offsetHeight,A=y-i,B=w-j,C=A/e.getTotal(),D=B/e.getTotal(),x=e.getSteps();if(!t){v(1)();return}for(var s=0;s<=x;s++){var z=s/x;setTimeout(v(z),s*m)}function v(i){return function(){var m=parseInt(Math.round(e.getValue(i)*C))+q,n=parseInt(Math.round(e.getValue(i)*D))+r,j={top:0,right:0,bottom:0,left:0};if((k&a.RollDirection.TopDown)==a.RollDirection.TopDown){l.Functions.setClip(b,f.top,n+"px");j.top=n-r}if((k&a.RollDirection.RightLeft)==a.RollDirection.RightLeft){l.Functions.setClip(b,f.right,y-m+"px");j.right=-m+q}if((k&a.RollDirection.BottomUp)==a.RollDirection.BottomUp){l.Functions.setClip(b,f.bottom,w-n+"px");j.bottom=-n+r}if((k&a.RollDirection.LeftRight)==a.RollDirection.LeftRight){l.Functions.setClip(b,f.left,m+"px");j.left=m-q}if(d!=null){var p;for(p=0;p0)b=a};this.slideToPoint=function(e,i){var d=new c.Point(e.offsetLeft,e.offsetTop),n=d.getDistanceFrom(i);a.setSteps(Math.floor(n/10));var p=n/a.getTotal(),o=i.y-d.y,l=i.x-d.x,f=Math.atan(o/l),m=a.getSteps();for(var h=0;h<=m;h++){sum=a.getValue(h/m);var g=sum*p,k,j;if(l<0){k=d.y-Math.sin(f)*g;j=d.x-Math.cos(f)*g}else{k=d.y+Math.sin(f)*g;j=d.x+Math.cos(f)*g}setTimeout(q(j,k),h*b)}function q(a,b){return function(){e.style.top=parseInt(Math.round(b))+"px";e.style.left=parseInt(Math.round(a))+"px"}}}}};var AccelerationFunctions={Linear:new Msn.VE.Animation.AccelerationFunction(function(){return 1}),ExponentialAcc:new Msn.VE.Animation.AccelerationFunction(function(b){var a=0,d=1,c=d-a,f=a+b*c,e=Math.pow(f,2);return e}),ExponentialDec:new Msn.VE.Animation.AccelerationFunction(function(b){var a=-1,d=0,c=d-a,f=a+b*c,e=Math.pow(f,2);return e}),CosineWave:new Msn.VE.Animation.AccelerationFunction(function(b){var a=-Math.PI,d=Math.PI,c=d-a,f=a+b*c,e=Math.cos(f)+1;return e}),CrazyElevator:new Msn.VE.Animation.AccelerationFunction(function(b){var a=-5,d=5,c=d-a,f=a+b*c,e=2/(Math.pow(Math.abs(f),3)+1);return e})};_VERegisterNamespaces("Msn.VE.Geometry");Msn.VE.Geometry.Point=function(c,d){var a=this,b=Msn.VE.Geometry;this.x=c;this.y=d;this.add=function(c,d){var e=new b.Point(a.x+c,a.y+d);return e};this.getDistanceFrom=function(b){var c=Math.pow(b.x-a.x,2)+Math.pow(b.y-a.y,2),d=Math.sqrt(c);return d}};Msn.VE.Geometry.Overlap={Range:{GreaterThanX:1,LessThanX:2,GreaterThanY:4,LessThanY:8,InXRange:16,InYRange:32,InRange:48},getInstance:function(f,g){var d=Msn.VE.Geometry.Overlap,a=f,b=g,c=0;e();function e(){if(b.getP2().x>a.getP2().x)c+=d.Range.GreaterThanX;if(b.getP1().xa.getP2().y)c+=d.Range.GreaterThanY;if(b.getP1().y=a.x&&c.x<=b.x&&c.y>=a.y&&c.y<=b.y};this.scale=function(d){a.x-=d;a.y-=d;b.x+=d;b.y+=d;c()};this.getOverlap=function(a){var b=Msn.VE.Geometry;return new b.Overlap.getInstance(g,a)};function c(){d=b.y-a.y;e=b.x-a.x}};Msn.VE.Geometry.Functions={getSlope:function(a,b){return (b.y-a.y)/(b.x-a.x)},getYIntercept:function(b,a){return a.y-b*a.x},getBestBoundingPoint:function(f,b,c){var a=Msn.VE.Geometry;if(!b)b=g(f).getScreenPosition();var e=new a.Rectangle(b,new a.Point(b.x+f.offsetWidth,b.y+f.offsetHeight)),j=c.getOverlap(e),d=j.getRange();if((d&a.Overlap.Range.InRange)==a.Overlap.Range.InRange)return b;var h=b.x,i=b.y;if(d&a.Overlap.Range.GreaterThanX)h=c.getP2().x-e.getWidth();if(d&a.Overlap.Range.LessThanX)h=c.getP1().x;if(d&a.Overlap.Range.GreaterThanY)i=c.getP2().y-e.getHeight();if(d&a.Overlap.Range.LessThanY)i=c.getP1().y;return new a.Point(h,i)}};_VERegisterNamespaces("Msn.VE.OO.Eventable");Msn.VE.OO.Eventable.EventArgs=function(b,a){this.EventName=b;this.Recipient=a};Msn.VE.OO.Eventable.EventableObject=function(){if(typeof window.attachEvent!="undefined")window.attachEvent("onunload",c);var a=[];this.getEventHash=function(){return a};this.hookEvent=function(d,e){var c=a[d];if(typeof c=="undefined"||c==null){c=new b(d);a[d]=c}c.addEvent(e)};this.unhookEvent=function(d,e){var c=a[d];if(c instanceof b)c.removeEvent(e)};this.executeEvent=function(g,h,f){var d=a[g];if(!(d instanceof b))return;var e=d.getEvents(),c;for(c=0;c');e.addFrame('
');e.addFrame('
');e.addFrame("");e.addFrame("");e.addFrame('
',false);e.addFrame('
',false);e.Repeat=false;this.destroy=function(){if(b){if(typeof b.removeEventListener!="undefined"){b.removeEventListener("mouseover",x,false);b.removeEventListener("mouseout",y,false)}else{b.detachEvent("onmouseover",x);b.detachEvent("onmouseout",y)}if(j.shimElement){j.shimElement.removeNode(true);j.shimElement=null}b.parentNode.removeChild(b);d.parentNode.removeChild(d);b=null;s=null;j=null;q=null;p=null;m=null;l=null;t=null;v=null}ERO.m_theEro=null;k=null};this.getElement=function(){return b};this.getBody=function(){return j};this.getAnimation=function(){return e};this.getDelay=function(){return o+n};this.setDelay=function(a){o=a||o};this.getDelayDelta=function(){return n};this.setDelayDelta=function(a,b){B=b==false?false:true;if(typeof a=="number"){n=a;if(!h&&r!=-1)c.hide()}};this.setClasses=function(b,d){var a;if(ERO.DefaultClasses===null){ERO.DefaultClasses={};for(a in ERO.Classes)ERO.DefaultClasses[a]=ERO.Classes[a]}if(d!==false)c.setClasses(ERO.DefaultClasses,false);for(a in b)if(typeof ERO.Classes[a]!="undefined")ERO.Classes[a]=b[a];D()};this.setBeak=function(a){if(a==ERO.BeakDirection.Left)g(b).removeClass(ERO.Classes.ContainerRightBeak).addClass(ERO.Classes.ContainerLeftBeak);else g(b).removeClass(ERO.Classes.ContainerLeftBeak).addClass(ERO.Classes.ContainerRightBeak)};this.setContent=function(c){var a=document.createElement("div");a.className="firstChild";a.innerHTML=c;var b=l.firstChild;if(b)l.replaceChild(a,b);else l.appendChild(a);a=null;b=null};this.addAction=function(b){var a=document.createElement("li");if(!b)return;a.innerHTML=b;p.appendChild(a);a=null};this.clearActions=function(){var a=p.getElementsByTagName("li"),c=a.length;for(var b=0;bf.getP2().x?f.getP1().x+f.getWidth()-B:s-B-m.getWidth()}if(p&a.Overlap.Range.LessThanX){c.setBeak(ERO.BeakDirection.Left);w=f.getP1().x}if(p&a.Overlap.Range.GreaterThanY){x=f.getP1().y+f.getHeight()-G;var H=D.getBottomYBleed();g+=H;if(g>b.offsetHeight-ERO.BeakHeight)g=b.offsetHeight-ERO.BeakHeight-4}if(p&a.Overlap.Range.LessThanY){x=f.getP1().y;var H=D.getTopYBleed();g-=H;if(g<0)g=0}b.style.top=x+v;b.style.left=w+v;t.style.top=g+"px";c.executeEvent("beforeshow",c,new ERO.EROEventArgs("beforeshow",b,k));if(!i.useBeak)b.className=ERO.Classes.ContainerNoBeak;z=false;if(i.useProgressTimer){e.start();if(!i.useFade){setTimeout(u,o+n);return}}if(i.useFade)setTimeout(F,o+n);else u()};this.showImmediate=function(){z=h=true;e.end();u()};this.hide=function(a){h=false;if(a===true)A();else{clearTimeout(r);r=setTimeout(A,o+n)}};this.setGlitz=function(c,d,a,b){if(c!=null)i.useBeak=c;if(d!=null)i.useFade=d;if(a!=null)i.useProgressTimer=a;if(b===true)i.isTemporary=b;else C=i.copy()};this.setBoundingArea=function(e,g){if(e===null){var b=Gimme.Screen.getScrollPosition(),c=Gimme.Screen.getViewportSize(),d=new a.Rectangle(new a.Point(0,0),new a.Point(c.width,c.height));d.move(new a.Point(b.x,b.y));f=d}else f=new a.Rectangle(e,g)};this.getBoundingArea=function(){return f};this.isInUse=function(){return h};this.isVisible=function(){return b.style.visibility=="visible"};this.addToPage=function(){b.style.visibility="hidden";d.style.visibility="hidden";document.body.appendChild(b);document.body.appendChild(d)};this.getSize=function(){var c=b.offsetLeft,d=b.offsetTop,f=c+b.offsetWidth,g=d+b.offsetHeight,e=new a.Rectangle(new a.Point(c,d),new a.Point(f,g));return e};function E(b,a){if(b==a)return false;while(a&&a!=b)a=a.parentNode;return a==b}function x(){h=true}function y(a){var d=a.relatedTarget||a.toElement||a.srcElement;if(!E(b,d))c.hide()}function u(){if(b&&h){if(b.style.visibility!="visible")b.style.visibility="visible";if(typeof b.style.opacity!="undefined")b.style.opacity=1;c.executeEvent("aftershow",c,new ERO.EROEventArgs("aftershow",b,k));i=C.copy()}}function A(){if(!h&&b){c.executeEvent("beforehide",c,new ERO.EROEventArgs("beforehide",b,k));b.style.visibility="hidden";e.hide();if(!Msn.VE.API){d.style.left=b.style.left="0";d.style.top=b.style.top="0"}k=null;c.executeEvent("afterhide",c,new ERO.EROEventArgs("afterhide",b,k))}if(B)n=0}function F(){if(z||!h||!b)return;if(b.style&&typeof b.style.filter!="undefined"){b.style.filter="progid:DXImageTransform.Microsoft.Fade(duration=.5)";b.filters[0].Apply();b.style.visibility="visible";b.style.display="block";b.filters[0].Play();var c=setInterval(function(){if(b.filters[0].status==0){clearInterval(c);u()}},10)}else{b.style.visibility="visible";if(w===0)a()}function a(){if(h&&++w<=10){var c=w*.09999999;b.style.opacity=c;setTimeout(a,50)}else{u();w=0}}}function D(){b.className=ERO.Classes.Container;s.className=ERO.Classes.Shadow;j.className=ERO.Classes.Body;t.className=ERO.Classes.Beak;q.className=ERO.Classes.Actions;m.className=ERO.Classes.ActionsBackground;l.className=ERO.Classes.PreviewArea;v.className=ERO.Classes.PaddingHack;d.className=ERO.Classes.ProgressAnimation}}}};function LogEROBehavior(eroEvent,fromPanel){var bERO=$find(eroEvent.Entity.id+"_ero");if(bERO!=null){var eroSource=eval(fromPanel?bERO.get_EROPanel():bERO.get_EROMap()),pageName=eval(bERO.get_PageName());if(eroSource)$VE_A.Log(pageName,eroSource)}}function LogEROBehaviorFromPanel(a){ero.unhookEvent("aftershow",LogEROBehaviorFromPanel);LogEROBehavior(a,true)}function LogEROBehaviorFromMap(a){ero.unhookEvent("aftershow",LogEROBehaviorFromMap);LogEROBehavior(a,false)}function VETime(){}VETime.FormatTime=function(a){if(a==null||a==""||a=="undefined")return "";var c=false,d=a.substr(0,10),e=a.substr(11,5),b="";if(a.indexOf("AM")>-1){b="AM";c=true}else b="PM";return d+" "+VETime.ConvertTo12HourFormat(e,c)+" "+b};VETime.ConvertTo12HourFormat=function(d,c){var a=d;try{var b=parseFloat(a.replace(":","."));if(b>12)if(b<13&&c!=true);else b=b-12;a=b.toFixed(2);a=a.replace(".",":")}catch(e){a=""}return a};VETime.FormatPanelTime=function(a,g){if(a==null||a==""||a=="undefined")return "";try{var b=0,d=false,i=a.substr(4,8),h=a.indexOf(":"),f=a.substr(h-2,5),c="";if(a.indexOf("AM")>-1){c="AM";d=true;b=a.indexOf("AM")}else{c="PM";b=a.indexOf("PM")}var e="";if(b>0)e=a.substr(b+3,3);if(g)return i+" "+VETime.ConvertTo12HourFormat(f,d)+" "+c+" "+e;else return VETime.ConvertTo12HourFormat(f,d)+" "+c+" "+e}catch(j){}};VETime.getMonth=function(a){switch(a){case "01":return " Jan";case "02":return " Feb";case "03":return " Mar";case "04":return " Apr";case "05":return " May";case "06":return " Jun";case "07":return " Jul";case "08":return " Aug";case "09":return " Sep";case "10":return " Oct";case "11":return " Nov";case "12":return " Dec"}};VEMap.prototype.GetImageryMetadata=function(c,a){var j=this;VEValidator.ValidateFunction(c);if(a){VEValidator.ValidateObject(a,"options",VEImageryMetadataOptions,"VEImageryMetadataOptions");if(a.LatLong!=null)VEValidator.ValidateObject(a.LatLong,"LatLong",VELatLong,"VELatLong");if(a.MapStyle!=null)VEValidator.ValidateMapStyle(a.MapStyle,"MapStyle");if(a.ZoomLevel!=null){VEValidator.ValidateNonNegativeInt(a.ZoomLevel,"ZoomLevel");if(a.ZoomLevel==0||a.ZoomLevel>Msn.VE.API.Globals.vemaxzoom)throw new VEException("VEMap.GetImageryMetadata","err_invalidargument",L_invalidargument_text.replace("%1","ZoomLevel").replace("%2","int"))}}else a=new VEImageryMetadataOptions;if(a.LatLong==null)a.LatLong=this.GetCenter();if(a.MapStyle==null)a.MapStyle=this.GetMapStyle();if(a.ZoomLevel==null)a.ZoomLevel=this.GetZoomLevel();if((a.MapStyle==VEMapStyle.Road||a.MapStyle==VEMapStyle.Shaded||a.MapStyle==VEMapStyle.Aerial||a.MapStyle==VEMapStyle.Hybrid)&&(this.HasClientToken()||this.HasValidCredentials())){if(a.MapStyle==VEMapStyle.Shaded)a.MapStyle==VEMapStyle.Road;var d=new Msn.VE.LatLong;d.latitude=a.LatLong.Latitude;d.longitude=a.LatLong.Longitude;var g=this.vemapcontrol.GetOrthoMode(),i=g.LatLongToPixel(d,a.ZoomLevel),h=VEPixelToQuadKey(i,a.ZoomLevel),b=[];b.push(new VEParameter("quadKey",'"'+h+'"'));b.push(new VEParameter("mapStyle",'"'+a.MapStyle+'"'));b.push(new VEParameter("tileGeneration",'"'+this.vemapcontrol.GetTileGeneration(a.MapStyle)+'"'));this.vemapcontrol.Fire("onstartrequest");function e(a){j._GetImageryMetadataHandler(a,c)}VEAPIRequestInvoke(Msn.VE.API.Constants.imageryurl+"/GetTileMetadata",b,e,this)}else{var f=new VEImageryMetadata;c(f)}};VEMap.prototype._GetImageryMetadataHandler=function(a,c){this.vemapcontrol.Fire("onendrequest");this.__HandleAuthentication(a);var b=null;if(a){b=new VEImageryMetadata;if(typeof a.Vintage!="undefined"&&a.Vintage!=null){if(typeof a.Vintage.From!="undefined"&&a.Vintage.From!=null){var d=a.Vintage.From;b.DateRangeStart=ParseJsonDate(d)}if(typeof a.Vintage.To!="undefined"&&a.Vintage.To!=null){var e=a.Vintage.To;b.DateRangeEnd=ParseJsonDate(e)}}}if(typeof c=="function")c(b)};function ParseJsonDate(dateString){var date=null;if(dateString)try{dateString=dateString.replace(/\//g,"");date=eval("new "+dateString+";")}catch(a){}return date}function VEImageryMetadata(){this.DateRangeStart=null;this.DateRangeEnd=null;this.toString=function(){strDateStart="";strDateEnd="";if(this.DateRangeStart)strDateStart+=this.DateRangeStart.getFullYear();if(this.DateRangeEnd)strDateEnd+=this.DateRangeEnd.getFullYear();var a;if(strDateStart==strDateEnd)a=strDateStart;else a=strDateStart+" - "+strDateEnd;return a}}function VEImageryMetadataOptions(){this.LatLong=null;this.MapStyle=null;this.ZoomLevel=null}var customCursors=Msn.VE.Css.Cursors.CustomCursors;if(customCursors!=null){var i,len=customCursors.length;for(i=0;i=0)&&(typeof VEAPI_DisableAtlasCompat=="undefined"||VEAPI_DisableAtlasCompat!=true))VENetwork.DownloadScript(Msn.VE.API.Constants.atlascompatjs);VENetwork.AttachStyleSheet(Msn.VE.API.Constants.stylesheet);if(navigator.userAgent.indexOf("MSIE")>=0&&parseInt(navigator.userAgent.substring(navigator.userAgent.indexOf("MSIE")+5))==6)VENetwork.AttachStyleSheet(Msn.VE.API.Constants.stylesheetiev6);try{document.namespaces.add("v","urn:schemas-microsoft-com:vml")}catch(a){}function RequestQueueItem(a,b,c,d){this.Call=a;this.Param1=b;this.Param2=c;this.Param3=d}function VECustomEvent(b,a){this.Name=b;this.Callback=a}VECacheMode={Auto:0,EnableTileCaching:1};function VEMapOptions(){this.EnableBirdseye=true;this.EnableDashboardLabels=true;this.LoadBaseTiles=true;this.BirdseyeOrientation=VEOrientation.North;this.DrawingBuffer=0;this.CacheMode=VECacheMode.Auto;this.DashboardColor="blue";this.EnableClickableLogo=false;this.EnableSearchLogo=false}function VEMap(m){var a=this;this.ID=m;this.GUID=VENetwork.GetExecutionID();this.ClientToken=null;this.Credentials=null;var i=false;this.SessionQueue=null;var f=null,l=null,d=null;if(Msn.VE.API.Globals.vemapinstances==null||Msn.VE.API.Globals.vemapinstances=="undefined")Msn.VE.API.Globals.vemapinstances=[];Msn.VE.API.Globals.vemapinstances[this.GUID]=a;this.requestQueue=[];this.preInitCustomEvents=[];this.network=new VENetwork;this.mapelement=$ID(m);this.pushpins=[];this.DisambiguationCallback=null;this.ShowMessageBox=true;if(this.mapelement==null)throw new VEException("VEMap:cstr","err_invalidelement",L_invalidelement_text);this.m_vedirectionsmanager=null;this._dm=this.m_vedirectionsmanager;this.m_routemanager=null;this.m_vesearchmanager=null;this._sm=this.m_vesearchmanager;this.m_vemessage=new VEMessage(this);this.m_veambiguouslist=new VEAmbiguouslist(this);var c=new VELatLongFactory(new VELatLongFactorySpecFromMap(this)),b=new _xy1;this.queueEventInitialized=false;this.RequestQueueEnabled=true;this.queueEventInitialized=false;windowWidth=GetWindowWidth();windowHeight=GetWindowHeight();scrollbarWidth=GetScrollbarWidth();this.dashboardSize=Msn.VE.DashboardSize.Normal;this.dashboardVersion=6;this._showDashboard=true;this._showScalebar=true;this._mapPrintOptions=null;this.LoadMap=function(c,j,l,k,d,i,e,h){if(!a)throw new VEException("VEMap:LoadMap","err_notinitializedmap",L_notinitialized_text);if(typeof d!="undefined"&&d!=null){VEValidator.ValidateMapMode(d,"mapMode");this.mapMode=d}if(c!=null&&c!="undefined"){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");var f=b.Decode(c);this.initialLatitude=f.Latitude;this.initialLongitude=f.Longitude}this.fixedMap=k;this.initialZoomLevel=j;this.initialMapStyle=l;this.showMapModeSwitch=i;if(e!=null&&typeof e!="undefined")this.tileBuffer=e;this._mapOptions=h?h:new VEMapOptions;VEValidator.ValidateOrientation(this._mapOptions.BirdseyeOrientation,"VEMapOptions.BirdseyeOrientation");VEValidator.ValidateFloat(this._mapOptions.DrawingBuffer,"VEMapOptions.DrawingBuffer");VEValidator.ValidateBetween(this._mapOptions.DrawingBuffer,"VEMapOptions.DrawingBuffer",0,Number.POSITIVE_INFINITY);VEValidator.ValidateCacheMode(this._mapOptions.CacheMode,"VEMapOptions.CacheMode");this.veonmaploadevent=this.onLoadMap;this.mapelement.innerHTML="";this.mapelement.innerHTML="";this.InitializeMap();this.vemapcontrol.AttachEvent("onstartpan",function(){if(window.ero)window.ero.hide(true)});g([new VEParameter("entry","0")])};function g(b){if(b){var e=Msn.VE.API.Constants.logservice+"/Log";b.push(new VEParameter("fmt","1"));b.push(new VEParameter("type","3"));b.push(new VEParameter("group","MapControl"));b.push(new VEParameter("name","AJAX"));b.push(new VEParameter("version",Msn.VE.API.Globals.vecurrentversion));b.push(new VEParameter("session",a.GUID));b.push(new VEParameter("mkt",Msn.VE.API.Globals.locale));var p=a.Credentials!=null&&a.Credentials.length>0;if(p||!a.HasClientToken()){var i=VENetwork.GetExecutionID(),c="LogCredCB"+i;b.push(new VEParameter("auth",p?a.Credentials:Msn.VE.API.Constants.defaultLogCredentials));b.push(new VEParameter("&jsonp",c));var m=new VENetwork;m.UseCloseDep=true;m.ServiceUrl=e;if(!a.SessionQueue)a.SessionQueue=[];l=c;window[c]=function(b){if(a&&l==c){if(d!=null){clearTimeout(d);d=null}var e=b!=null&&b.authenticationResultCode=="ValidCredentials";f=e&&typeof b.sessionId=="string"&&b.sessionId.length>0?b.sessionId:null;if(e)j();else h();k()}window[c]=null};if(d!=null)clearTimeout(d);d=setTimeout(n,10000);m.BeginInvoke("_f"+i,b,null,null,i)}else{b.push(new VEParameter("auth",a.ClientToken));b.push(new VEParameter("image","1"));e+="?";for(var g=0;g0)this.PixelToLatLongAsync(b,a,d)}else{VEValidator.ValidateObject(b,"pixel",VEPixel,"VEPixel");var e=this.vemapcontrol.PixelToLatLong(b,a),f=c.CreateVELatLong(e.latitude,e.longitude);return f}};this.PixelToLatLongAsync=function(a,b,c){this.vemapcontrol.PixelToLatLongAsync(a,b,c)};this.SetCenter=function(c){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");var a=b.Decode(c);this._QueueRequest(this.vemapcontrol.SetCenterAccurate,a.Latitude,a.Longitude)};this.SetCenterClassic=function(c){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");var a=b.Decode(c);this._QueueRequest(this.vemapcontrol.SetCenter,a.Latitude,a.Longitude)};this.SetCenterAndZoom=function(c,d){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");VEValidator.ValidateNonNegativeInt(d,"zoomLevel");var a=b.Decode(c);this._QueueRequest(this.vemapcontrol.SetCenterAndZoom,a.Latitude,a.Longitude,d);return true};this.GetMouseWheelZoomToCenter=function(){return a.vemapcontrol.GetMouseWheelZoomToCenter()};this.SetMouseWheelZoomToCenter=function(b){return a.vemapcontrol.SetMouseWheelZoomToCenter(b)};this.IncludePointInView=function(c){VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");var a=b.Decode(c);return this.vemapcontrol.IncludePointInViewport(a.Latitude,a.Longitude)};this.GetOffsetX=function(){return a.vemapcontrol.GetOffsetX()};this.GetOffsetY=function(){return a.vemapcontrol.GetOffsetY()};this.getSvgLayer=function(){return a.vemapcontrol.getSvgLayer()};this.resizeSVG=function(){return a.vemapcontrol.resizeSVG()};this.GetsvgDiv=function(){return a.vemapcontrol.GetsvgDiv()};this.LatLongToPixel=function(c,a,d){if(a!=null){VEValidator.ValidateNonNegativeInt(a,"zoomLevel");a=parseInt(a)}if(d){VEValidator.ValidateObjectArray(c,"veLatLongArray",VELatLong,"VELatLong array");VEValidator.ValidateFunction(d,"callback");this.LatLongToPixelAsync(c,a,d)}else{VEValidator.ValidateObject(c,"veLatLong",VELatLong,"VELatLong");var e=b.Decode(c),f=new Msn.VE.LatLong(e.Latitude,e.Longitude);return this.vemapcontrol.LatLongToPixel(f,a)}};this.LatLongToPixelAsync=function(d,f,g){var e=[];for(var a=0;a0)this.Find(this.lastwhatsearch,null,1,this.m_vesearchmanager.vesearchcallback)};this._DoFind=function(){try{this.lastwhatsearch=$ID(this.ID+"_vewhatinput").value;this.lastwheresearch=$ID(this.ID+"_vewhereinput").value;this.Find(this.lastwhatsearch,this.lastwheresearch)}catch(a){this.ShowMessage(a.message)}};this.Dispose=function(){try{g([new VEParameter("entry","1")]);a.SessionQueue=null;if(a.vemapcontrol!=null){a.vemapcontrol.DetachEvent("onchangeview",a._ClearView);a.vemapcontrol.DetachEvent("onresize",a._ReArrangeControls);a.vemapcontrol.DetachEvent("onendpan",a._RefreshLayers);a.vemapcontrol.DetachEvent("oninitmode",a._EROHouseKeeping)}a.vemapcontrol.DetachEvent("onclick",VEPushpin.Hide);var c=a.controlzIndexes.length;for(var b=0;b0)b=f;else if(a.Credentials!=null&&a.Credentials.length>0)b=a.Credentials;else if(a.HasClientToken())b=a.ClientToken;else b=Msn.VE.API.Constants.defaultLogCredentials;return b};this.HasValidCredentials=function(){return i}}VEMap._GetMapFromGUID=function(a){if(Msn.VE.API.Globals.vemapinstances!=null&&Msn.VE.API.Globals.vemapinstances[a]==null||Msn.VE.API.Globals.vemapinstances[a]=="undefined"){throw new VEException("VEMap:_GetMapFromGUID","err_notinitialized",L_notinitialized_text);return}return Msn.VE.API.Globals.vemapinstances[a]};VEMap.prototype.InitializeMap=function(){_VERegisterNamespaces("Msn.VE");this.mapelement.innerHTML="";this.mapelement.style.overflow="hidden";if(this.mapelement.className==null||this.mapelement.className=="undefined"||this.mapelement.className==""){if(this.mapelement.style==null||this.mapelement.style.height==null||this.mapelement.style.height=="undefined"||this.mapelement.style.height=="")this.mapelement.style.height=Msn.VE.API.Globals.vemapheight+"px";if(this.mapelement.style==null||this.mapelement.style.width==null||this.mapelement.style.width=="undefined"||this.mapelement.style.width=="")this.mapelement.style.width=Msn.VE.API.Globals.vemapwidth+"px"}var a={};if(this.mapMode!=null&&this.mapMode!="undefined")a.mapMode=this.mapMode;else a.mapMode=Msn.VE.API.Globals.vemapmode;a.mapGUID=this.GUID;a.clientToken=this.ClientToken;if(this.initialLatitude!=null&&this.initialLatitude!="undefined")a.latitude=this.initialLatitude;else a.latitude=Msn.VE.API.Globals.vemaplatitude;if(this.initialLongitude!=null&&this.initialLongitude!="undefined")a.longitude=this.initialLongitude;else a.longitude=Msn.VE.API.Globals.vemaplongitude;if(this.initialZoomLevel!=null&&this.initialZoomLevel!="undefined")a.zoomlevel=this.initialZoomLevel;else a.zoomlevel=Msn.VE.API.Globals.vemapzoom;if(this.initialMapStyle!=null&&this.initialMapStyle!="undefined")a.mapstyle=this.initialMapStyle;else a.mapstyle=Msn.VE.API.Globals.vemapstyle;this.m_dashboardId=this.ID+"_dashboard";if(this.fixedMap!=true){a.showDashboard=VE_CheckModuleStatus(VE_ModuleName.APICONTROLS)=="loaded"&&this._showDashboard;a.dashboardSize=this.dashboardSize;a.dashboardVersion=this.dashboardVersion;a.dashboardX=5;a.dashboardY=5;a.dashboardId=this.m_dashboardId;a.showScaleBar=this._showScalebar}a.dashboardColor=this._mapOptions.DashboardColor;a.obliqueEnabled=this._mapOptions.EnableBirdseye;a.labelsDefault=this._mapOptions.EnableDashboardLabels;a.loadBaseTiles=this._mapOptions.LoadBaseTiles;a.birdseyeOrientation=this._mapOptions.BirdseyeOrientation;a.useOriginTiles=this._mapOptions.CacheMode==VECacheMode.Auto;a.useEnhancedRoadStyle=this._mapOptions.UseEnhancedRoadStyle;a.obliqueUrl=Msn.VE.API.Constants.imageryurl;if(this.fixedMap==true)a.fixedView=true;a.disableLogo=false;a.enableClickLogo=this._mapOptions.EnableClickableLogo;a.enableSearchLogo=this._mapOptions.EnableSearchLogo;if(this.showMapModeSwitch==false)a.showMapModeSwitch=false;else a.showMapModeSwitch=true;if(this.tileBuffer!=null&&typeof this.tileBuffer!="undefined")a.buffer=this.tileBuffer*Msn.VE.API.Globals.vetilesize;this.vemapcontrol=new Msn.VE.MapControl(this.mapelement,a,this);var d=this.preInitCustomEvents.length;for(var c=0;c=0||a>=0){if(b<0)b=this.GetWidth();if(a<0)a=this.GetHeight()}return this.vemapcontrol.Resize(b,a)};VEMap.prototype.SetMapMode=function(a){VEValidator.ValidateMapMode(a,"mapMode");this.vemapcontrol.EnableMode(a,this.GUID)};VEMap.prototype.GetMapMode=function(){if(this.vemapcontrol.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))return VEMapMode.Mode3D;return VEMapMode.Mode2D};VEMap.prototype.SetMapStyle=function(a){VEValidator.ValidateMapStyle(a,"mapStyle");if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D&&(a==VEMapStyle.Birdseye||a==VEMapStyle.BirdseyeHybrid))return false;this.vemapcontrol.SetMapStyle(a)};VEMap.prototype.SetScaleBarDistanceUnit=function(a){VEValidator.ValidateDistanceUnit(a,"distanceUnit");this.vemapcontrol.SetScaleBarDistanceUnit(a==VEDistanceUnit.Miles?Msn.VE.DistanceUnit.Miles:Msn.VE.DistanceUnit.Kilometers)};VEMap.prototype.SetZoomLevel=function(a){VEValidator.ValidateNonNegativeInt(a,"zoomLevel");this._QueueRequest(this.vemapcontrol.SetZoom,parseInt(a));return true};VEMap.prototype.ZoomIn=function(){this.vemapcontrol.ZoomIn()};VEMap.prototype.ZoomOut=function(){this._QueueRequest(this.vemapcontrol.ZoomOut)};VEMap.prototype.AttachEvent=function(b,a){VEValidator.ValidateNonNull(b,"eventname");VEValidator.ValidateNonNull(a,"eventhandler");if(this.vemapcontrol)this.vemapcontrol.AttachCustomEvent(b,a);else this.preInitCustomEvents.push(new VECustomEvent(b,a))};VEMap.prototype.DetachEvent=function(b,a){VEValidator.ValidateNonNull(b,"eventname");VEValidator.ValidateNonNull(a,"eventhandler");this.vemapcontrol.DetachCustomEvent(b,a)};VEMap.prototype.FireEvent=function(a){try{var b=window.event;return this.vemapcontrol.FireCustomEvent(a,b)}catch(c){return false}};VEMap.prototype.ShowMessage=function(a){if(this.ShowMessageBox)this.m_vemessage.Show(a)};VEMap.prototype.GetHeight=function(){var a=0;if(this.mapelement.style.height.search(/px/)>0)a=parseInt(this.mapelement.style.height.replace("px",""));if(isNaN(a)||a==0)a=this.mapelement.offsetHeight;return a};VEMap.prototype.GetWidth=function(){var a=0;if(this.mapelement.style.width.search(/px/)>0)a=parseInt(this.mapelement.style.width.replace("px",""));if(isNaN(a)||a==0)a=this.mapelement.offsetWidth;return a};VEMap.prototype.GetLeft=function(){return this.vemapcontrol.GetLeftPx()};VEMap.prototype.GetTop=function(){return this.vemapcontrol.GetTopPx()};VEMap.prototype.SetFindResultsPanel=function(a){if(a==null||a=="undefined")throw new VEException("VEMap:SetFindResultsPanel","err_invalidelement",L_invalidelement_text);var b=$ID(a);if(b==null||b=="undefined")throw new VEException("VEMap:SetFindResultsPanel","err_invalidelement",L_invalidelement_text);this.searchelement=a};VEMap.prototype._AddControlInner=function(a){a.style.position="absolute";a.style.zIndex=201;var e=this.GetTop(),d=this.GetLeft();if(!a.style.top)a.style.top="0px";if(!a.style.left)a.style.left="0px";var c=a.style.top,b=a.style.left;if(isNaN(c))c=c.toString().toLowerCase();if(isNaN(b))b=b.toString().toLowerCase();e+=parseInt(c.replace("px"));d+=parseInt(b.replace("px"));a.style.top=e+"px";a.style.left=d+"px";document.body.appendChild(a)};VEMap.prototype.AddControl=function(a,b){if(a==null||a=="undefined")throw new VEException("VEMap:AddControl","err_invalidelement",L_invalidelement_text);if(this.controls==null||this.controls=="undefined")throw new VEException("VEMap:AddControl","err_notinitialized",L_notinitialized_text);this.controlzIndexes.push(b);this.controls.push(a);this.controltops.push(a.style.top);this.controllefts.push(a.style.left);this._AddControlInner(a,b)};VEMap.prototype.DeleteControl=function(b){if(b==null||b=="undefined")throw new VEException("VEMap:DeleteControl","err_invalidelement",L_invalidelement_text);if(this.controls==null||this.controls=="undefined")throw new VEException("VEMap:DeleteControl","err_notinitialized",L_notinitialized_text);if(b.shimElement){b.shimElement.removeNode(true);b.shimElement=null}document.body.removeChild(b);var c=-1;for(var a=0;a=0){for(var a=c;a0){this.requestQueue.push(new RequestQueueItem(a,b,c,d));return}}a(b,c,d)};VEMap.prototype._ProcessQueuedRequest=function(){if(this.requestQueue.length>0){var a=this.requestQueue.shift();a.Call(a.Param1,a.Param2,a.Param3)}};VEMap.prototype.ShowMapModeSwitch=function(a){if(this.fixedMap!=true){this.vemapcontrol.SetShowMapModeSwitch(a);this.showMapModeSwitch=a}};VEMap.prototype.SetTileBuffer=function(a){this.tileBuffer=a;if(this.vemapcontrol!=null&&this.vemapcontrol!="undefined")this.vemapcontrol.SetTilePixelBuffer(a*Msn.VE.API.Globals.vetilesize)};VEMap.prototype._EROHouseKeeping=function(d){if(d==Msn.VE.MapActionMode.Mode2D){ero.setGlitz(true,false,true,false);ero.unhookEvent("aftershow",c);ero.unhookEvent("afterhide",b);ero.unhookEvent("beforeshow",a)}else{ero.setGlitz(true,false,true,false);ero.hookEvent("aftershow",c);ero.hookEvent("afterhide",b);ero.hookEvent("beforeshow",a)}function c(){ShowShim(ero.getBody(),ero.getElement())}function b(){HideShim(ero.getBody())}function a(a){if(a.Entity==-1)ero.setGlitz(false,null,false,true)}};VEMap.prototype.AllTilesLoaded=function(){if(this.vemapcontrol.IsModeEnabled(Msn.VE.MapActionMode.Mode3D)){var a=this.vemapcontrol.Get3DControl();return a?a.AllTilesLoaded:false}return true};VEMap.prototype.HasClientToken=function(){return this.ClientToken!=null&&typeof this.ClientToken!="undefined"&&this.ClientToken.length>0};VEMap.GetVersion=function(){return Msn.VE.API.Globals.vecurrentversion};VEMap.prototype.ShowDisambiguationDialog=function(a){VEValidator.ValidateBoolean(a,"value");this.m_vedirectionsmanager.m_showDisambigousDialog=a};VEMap.prototype.SetAnimationEnabled=function(a){VEValidator.ValidateBoolean(a,"value");if(this.vemapcontrol)this.vemapcontrol.SetAnimationEnabled(a)};function VEPrintOptions(a){VEValidator.ValidateBoolean(a,"enablePrinting");this.EnablePrinting=a}VEMap.prototype.SetPrintOptions=function(a){VEValidator.ValidateBoolean(a.EnablePrinting,"VEPrintOptions.EnablePrinting");if(!(Web.Browser.isSafari()||Msn.VE.Environment.IsIE80())){this._mapPrintOptions=a;if(this.vemapcontrol)this.vemapcontrol.SetPrintable(a.EnablePrinting)}};function VEAPIRequestInvoke(f,a,e,b){if(b&&b.SessionQueue)b.SessionQueue.push({service:f,parameters:a,fnCallback:e});else{var d=new VENetwork,c=VENetwork.GetExecutionID();d.UseCloseDep=true;d.ServiceUrl=f;if(b)a.push(new VEParameter(Msn.VE.API.Constants.clienttoken,b._GetCredentials()));a.push(new VEParameter(Msn.VE.API.Constants.culture,'"'+Msn.VE.API.Globals.locale+'"'));a.push(new VEParameter(Msn.VE.API.Constants.format,Msn.VE.API.Constants.json));a.push(new VEParameter(Msn.VE.API.Constants.requestid,c));d.BeginInvoke("_f"+c,a,e,null,c)}}VEMap.prototype.GetDistance=function(a,b){VEValidator.ValidateObject(a,"veLatLong1",VELatLong,"VELatLong");VEValidator.ValidateObject(b,"veLatLong2",VELatLong,"VELatLong");var h=6378137,c=Math.PI/180,d=a.Latitude*c,e=b.Latitude*c,f=Math.sin((d-e)/2),g=Math.sin((a.Longitude-b.Longitude)*c/2),i=Math.asin(Math.sqrt(f*f+Math.cos(d)*Math.cos(e)*g*g));return h*2*i/1000};VEMap.prototype.InitNavControl=function(){};VEDashboardSize=Msn.VE.DashboardSize;VEMap.prototype.SetDashboardSize=function(a){if(typeof a!="undefined"&&a!=null){VEValidator.ValidateDashboardSize(a,"VEDashboardSize");this.dashboardSize=a;this.dashboardVersion=6;if(this.dashboardSize==VEDashboardSize.Small||this.dashboardSize==VEDashboardSize.Tiny)this.dashboardVersion=5}};VEMap.prototype.SetDashboardVersion=function(a){this.dashboardVersion=a};VEMap.prototype.ShowDashboard=function(){if(this.vemapcontrol){var a=this.vemapcontrol.GetDashboard();if(!a)this.vemapcontrol.CreateDashboard(5,5,this.dashboardSize,this.m_dashboardId,this.showMapModeSwitch,this._mapOptions.EnableBirdseye,this._mapOptions.EnableDashboardLabels,this.dashboardVersion);else a.Show();if($MVEM.IsEnabled(MapControl.Features.MapStyle.View3D))this.Show3DNavigationControl()}this._showDashboard=true};VEMap.prototype.HideDashboard=function(){if(this.vemapcontrol){var a=this.vemapcontrol.GetDashboard();if(a)a.Hide();if($MVEM.IsEnabled(MapControl.Features.MapStyle.View3D))this.Hide3DNavigationControl()}this._showDashboard=false};VEMap.prototype.ShowScalebar=function(){if(this.vemapcontrol)this.vemapcontrol.SetScaleBarVisibility(true);this._showScalebar=true};VEMap.prototype.HideScalebar=function(){if(this.vemapcontrol)this.vemapcontrol.SetScaleBarVisibility(false);this._showScalebar=false};VEMap.prototype.ShowMiniMap=function(a,b,d){if(a!=null&&typeof a!="undefined"&&b!=null&&typeof b!="undefined"){VEValidator.ValidateInt(a,"x");VEValidator.ValidateInt(b,"y")}if(d)VEValidator.ValidateMiniMapSize(d,"size");var c=this.vemapcontrol.GetMinimap();if(c){if(a!=null&&typeof a!="undefined"&&b!=null&&typeof b!="undefined")c.SetPosition(parseInt(a),parseInt(b));c.Show()}else c=this.vemapcontrol.CreateMinimap(a,b,null,true,false,null,this.ClientToken);if(d)c.SetSize(d)};VEMap.prototype.HideMiniMap=function(){var a=this.vemapcontrol.GetMinimap();if(a)a.Hide()};VE_SetModuleStatus(VE_ModuleName.APICONTROLS,"loaded");VEMap.prototype.InitBirdseye=function(){};VEMap.prototype.GetBirdseyeScene=function(){if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return null;var a=null,b=this.vemapcontrol.GetObliqueScene();if(b!=null&&b!="undefined"){a=new VEBirdseyeScene(b);a.SetClientToken(this.ClientToken);a.SetGUID(this.GUID)}return a};VEMap.prototype.IsBirdseyeAvailable=function(){if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return false;return this.vemapcontrol.IsObliqueAvailable()};VEMap.prototype.SetBirdseyeOrientation=function(a){if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return false;VEValidator.ValidateOrientation(a,"orientation");return this.vemapcontrol.SetObliqueOrientation(a)};VEMap.prototype.SetBirdseyeScene=function(a,b,c,d){if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return false;if(a==null||a instanceof VELatLong)return this.SetBirdseye(a,b,c,d);else return this.vemapcontrol.SetObliqueScene(a)};VEMap.prototype.SetBirdseye=function(b,a,c,d){if(this.GetMapMode()==Msn.VE.MapActionMode.Mode3D)return false;if(b)VEValidator.ValidateObject(b,"veLatLong",VELatLong,"VELatLong");else b=this.GetCenter();if(a)VEValidator.ValidateOrientation(a,"orientation");else a=VEOrientation.North;if(c)VEValidator.ValidateNonNegativeInt(c,"zoomLevel");else c=1;if(d)VEValidator.ValidateFunction(d,"callback");else d=null;var e=(new _xy1).Decode(b);return this.vemapcontrol.SetObliqueLocation(new Msn.VE.LatLong(e.Latitude,e.Longitude),a,c,d)};VEMap.prototype.SetShapesAccuracy=function(a){if(a!=VEShapeAccuracy.None&&a!=VEShapeAccuracy.Pushpin&&a!=VEShapeAccuracy.All)throw new VEException("VEMap:SetShapesAccuracy","err_invalidargument",L_invalidargument_text.replace("%1","value").replace("%2","VEShapeAccuracy"));this.m_vegraphicsmanager._useOffset=a};VEMap.prototype.SetOverMaxPointsShapeRequest=function(a){if(a!=VEFailedShapeRequest.DoNotDraw&&a!=VEFailedShapeRequest.DrawInaccurately)throw new VEException("VEMap:SetOverMaxPointsShapeRequest","err_invalidargument",L_invalidargument_text.replace("%1","value").replace("%2","VEFailedShapeRequest"));this.m_vegraphicsmanager._drawOverMaxShapes=a};VEMap.prototype.SetFailedShapeRequest=function(a){if(a!=VEFailedShapeRequest.DoNotDraw&&a!=VEFailedShapeRequest.DrawInaccurately&&a!=VEFailedShapeRequest.QueueRequest)throw new VEException("VEMap:SetFailedShapeRequest","err_invalidargument",L_invalidargument_text.replace("%1","value").replace("%2","VEFailedShapeRequest"));this.m_vegraphicsmanager._failRequest=a};VEMap.prototype.SetShapesAccuracyRequestLimit=function(a){VEValidator.ValidateNonNegativeInt(a,"value");Msn.VE.API.Constants.maxasynlatlongs=a};VEShapeAccuracy=new function(){this.None=0;this.Pushpin=1;this.All=2};VEFailedShapeRequest=new function(){this.DoNotDraw=0;this.DrawInaccurately=1;this.QueueRequest=2};VE_SetModuleStatus(VE_ModuleName.APIBIRDSEYE,"loaded");VEMap.prototype.SetDisplayThreshold=function(a){var a=parseInt(a);if(isNaN(a))this.m_vegraphicsmanager.SetDisplayThreshold(a)};VEMap.prototype.EnableShapeDisplayThreshold=function(a){VEValidator.ValidateBoolean(a,"value");VE_LatLongThreshold.UseThreshold=a};VEMap.prototype.ImportShapeLayerData=function(a,c,b){VEValidator.ValidateObject(a,"_spec",VEShapeSourceSpecification,"VEShapeSourceSpecification");if(typeof a.LayerSource!="string"||typeof a.Type!="string")throw new VEException("VEMap:AddLayer","err_invalidlayertype",L_invalidlayertype_text);this.m_velayermanager.ImportLayer(a,c,b)};VEMap.prototype.Import3DModel=function(a,c,d,b,e){VEValidator.ValidateObject(a,"modelShapeSource",VEModelSourceSpecification,"VEModelSourceSpecification");if(typeof a.ModelSource!="string"||typeof a.Format!="string")throw new VEException("VEMap:Import3DModel","err_invalidlayertype",L_invalidlayertype_text);return this.m_velayermanager.ImportModelLayer(a,c,d,b,e)};VEMap.prototype.SetInfoBoxStyles=function(a){window.ero.setClasses(a)};VEMap.prototype.ClearInfoBoxStyles=function(){window.ero.setClasses(_VECustomInfoBox)};VEMap.prototype.SetDefaultInfoBoxStyles=function(){window.ero.setClasses(ERO.DefaultClasses)};VEMap.prototype.ShowInfoBox=function(c,b,d){var l=typeof c=="object"&&c instanceof VEShape;if(!l)return;var k=c._shplayer==null||c._shplayer._mapGuid==null;if(k)return;var h=null,e=null,g=null;if(typeof b=="object")if(b instanceof VELatLong){var i=new _xy1;b=i.Decode(b);e=b.Latitude;g=b.Longitude}else if(b instanceof VEPixel)if(!isNaN(b.x)&&!isNaN(b.y))h=b;if(e==null&&h==null){var f=c.Primitives[0];if(f.type==VEShapeType.Pushpin){e=f.points[1];g=f.points[0]}else{e=f.labelPosY;g=f.labelPosX}}var m=Msn.Drawing.GetLabelUID(c.Primitives[0].iid),a=null;if(e!=null){a=this.vemapcontrol.LatLongToPixel(new Msn.VE.LatLong(e,g),this.vemapcontrol.GetZoomLevel());if(a==null)a=new VEPixel(0,0)}else a=h;var j=typeof d=="object"&&d instanceof VEPixel;if(j)if(!isNaN(d.x)&&!isNaN(d.y)){a.x+=d.x;a.y+=d.y}if(a.x<0||a.x>this.GetWidth()||a.y<0||a.y>this.GetHeight())if(b instanceof VELatLong)throw new VEException("VEMap:ShowInfoBox","L_invalidargument_text",L_invalidargument_text.replace("%1","veAnchor").replace("%2","VELatLong"));else if(b instanceof VEPixel)throw new VEException("VEMap:ShowInfoBox","L_invalidargument_text",L_invalidargument_text.replace("%1","veAnchor").replace("%2","VEPixel"));else return;a.x+=this.GetLeft();a.y+=this.GetTop();VEShowVEShapeERO(m,this.GUID,null,c,a.x,a.y)};VEMap.prototype.HideInfoBox=function(){VEHideVEShapeERO(true)};VEMap.prototype.CloneShape=function(a){VEValidator.ValidateObject(a,"_veshape",VEShape,"VEShape");var c=this.m_velayermanager.VE_LayerManager,b=c.CloneAnnotation(a);return b};VEMap.prototype.AddShape=function(b){var a=this.m_velayermanager.VE_LayerManager.GetCollectionByIndex(0);a._mapGuid=this.GUID;a.AddShape(b)};VEMap.prototype.DeleteShape=function(a){VEValidator.ValidateObject(a,"_veshape",VEShape,"VEShape");if(a._shplayer)a._shplayer.DeleteShape(a)};VEMap.prototype.GetShapeByID=function(a){if(typeof a=="undefined"||a==null||a=="")return null;var b=this.m_velayermanager.VE_LayerManager,c=b.GetAnnotationById(a);return c};VEMap.prototype.AddShapeLayer=function(a,c){VEValidator.ValidateObject(a,"shpLyr",VEShapeLayer,"VEShapeLayer");if(a._mapGuid!=null)throw new VEException("VEMap:AddLayer","err_invalidlayertype",L_invalidlayertype_text);a._mapGuid=this.GUID;var d=this.m_velayermanager.VE_LayerManager;d.AddCollection(null,a);if(!a.GetVisibility())return;if(typeof c!="undefined"&&c==true){var b=a.GetBoundingBox(),e=[new Msn.VE.LatLong(b.y1,b.x1),new Msn.VE.LatLong(b.y2,b.x2)];this.vemapcontrol.SetBestMapView(e)}this.m_vegraphicsmanager.DrawLayer(a)};VEMap.prototype.DeleteShapeLayer=function(a){VEValidator.ValidateObject(a,"shpLyr",VEShapeLayer,"VEShapeLayer");try{a._clusteringAlgorithm=null;a.DeleteAllShapes();a.DeleteClusterLayer();this.m_velayermanager.VE_LayerManager.RemoveCollection(a)}catch(b){}};VEMap.prototype.DeleteAllShapeLayers=function(){try{this.DeleteAllShapes();var d=[],c=this.GetShapeLayerCount();for(var a=0;a0){var d=c.GetBoundingBox(),h=[new Msn.VE.LatLong(d.y1,d.x1),new Msn.VE.LatLong(d.y2,d.x2)];a.m_vemapcontrol.SetBestMapView(h)}a.m_vemap.m_vegraphicsmanager.DrawLayer(c)}if(typeof c.Spec.FnCallback=="function")c.Spec.FnCallback(c)};this.RetrieveImportedCallback=function(a,b){var c=parseInt(a);if(isNaN(c))this.RetrieveCollectionCallback(a,b)};this.RetrieveCollectionCallback=function(f,g){var h=d(f),b=a.VE_LayerManager.RetrieveCollectionById(g);if(!b)return;b.Spec.Success=true;var e=new VE_MapRequestBean(MC_ACTION_RETRIEVE_COLLECTION);VE_MapCmlReader.ExtractCollections(e,h,this.VE_LayerManager);if(b.GetVisibility()){if(b.Spec.SetsBestMapView&&b.GetShapeCount()>0){var c=b.GetBoundingBox(),i=[new Msn.VE.LatLong(c.y1,c.x1),new Msn.VE.LatLong(c.y2,c.x2)];a.m_vemapcontrol.SetBestMapView(i)}a.m_vemap.m_vegraphicsmanager.DrawLayer(b)}if(b.Spec.FnCallback!=null&&b.Spec.FnCallback!="undefined")b.Spec.FnCallback(b)};this.RetrieveAllAnnotationsCallback=function(){}}VELayerManager.prototype.Dispose=function(){this.m_vemap.m_vegraphicsmanager.ClearAll();this.VE_LayerManager.DeleteAll();this.m_vemapcontrol=null;this.m_vemap=null;this.m_veLatLongDecoder=null;this.m_spec=null;this.VE_LayerManager.Dispose();this.VE_LayerManager=null};VELayerManager.prototype.ShowAllLayers=function(){this.VE_LayerManager.SetVisibility(true);var b=[],e=this.VE_LayerManager.GetCollectionCount();for(var c=0;c0){var a=d.GetBoundingBox();if(a!=null){b.push(new Msn.VE.LatLong(a.y1,a.x1));b.push(new Msn.VE.LatLong(a.y2,a.x2))}}}if(b.length>=2)this.m_vemapcontrol.SetBestMapView(b);this.m_vemap.m_vegraphicsmanager.DrawAll()};function _VEAPIOnImportLayerDataCallback(h,a){try{if(typeof a=="string"&&a.length>2){var g=a.length,c=a.indexOf("_");if(c<0||c>g-2)return;var f=a.substring(0,c),e=a.substring(c+1),d=VEMap._GetMapFromGUID(f)._lm,b=d.VE_LayerManager.RetrieveCollectionById(e);if(!b.Spec.Success)if(typeof b.Spec.FnCallback=="function")b.Spec.FnCallback(b,L_loadxml_text);else d.m_vemap.ShowMessage(L_loadxml_text)}}catch(i){throw i;return}}function VECreateVEShapeERO(b,d){if(b._IconContent==null){var a=[],f=b.GetPrimitive(0),e=f.iid;if(f.type!=VEShapeType.Pushpin)e=Msn.Drawing.GetLabelUID(e);var c=b._customIcon;if(c==null)c=b.IconUrl;if(c.indexOf("<")<0)c=' ';a.push(" ");a.push(c);a.push("
");b._IconContent=a.join("")}return b._IconContent}function VEDragVEShapeDown(f,e){var a=GetVEMapInstance(e);if(a==null)return;if(a.m_velayermanager==null)return;var b=a.m_velayermanager.VE_LayerManager;if(!b)return;annotation=b.GetAnnotationById(f);if(!annotation)return;if(annotation.Draggable){if(typeof annotation.onstartdrag=="function")annotation.onstartdrag(new ShapeDragEventArgs(annotation,annotation.GetIconAnchor()));function c(c){var b=a.PixelToLatLong(new VEPixel(c.mapX,c.mapY));if(typeof annotation.ondrag!="function"||!(annotation.ondrag(new ShapeDragEventArgs(annotation,b))==true))annotation.SetIconAnchor(b);return true}function d(){a.DetachEvent("onmousemove",c);a.DetachEvent("onmouseup",d);if(typeof annotation.onenddrag=="function")annotation.onenddrag(new ShapeDragEventArgs(annotation,annotation.GetIconAnchor()))}a.AttachEvent("onmousemove",c);a.AttachEvent("onmouseup",d)}}function VEShowVEShapeERO(m,q,h,p,f,g){var j=GetVEMapInstance(q);if(j==null)return;var a=null,s=null,r=null;if(typeof p=="object")a=p;else{if(j.m_velayermanager==null)return;var k=null;k=j.m_velayermanager.VE_LayerManager;if(!k)return;a=k.GetAnnotationById(m);if(!a)return}if(!a._eroContent){var l=false,e=a.Title,d=a.Notes,n=IOSec.GetValidatedUrl(a.Url),i=IOSec.GetValidatedUrl(a.PhotoUrl);r=a.Latitude;s=a.Longitude;var c="";if(typeof i=="string"&&i.length>1){c=c.concat('");c=c.concat(' ')}e=c.concat(e);if(typeof n=="string"&&n.length>0)d=d.concat("
');var b=[];b.push("");if(e.length>0){b.push('
");l=true}if(d.length>0){b.push('');b.push(unescape(d));b.push("
");l=true}if(!document.all&&(e.length==0||d.length==0))b.push(" ");b.push("
");if(l)a._eroContent=b.join("");else a._eroContent=""}eroContent=a._eroContent;if(eroContent.length>0){window.ero.setContent(eroContent);if(j.GetMapMode()==Msn.VE.MapActionMode.Mode2D)if(typeof f=="number"&&typeof g=="number"){var h=new Msn.VE.Geometry.Rectangle(new Msn.VE.Geometry.Point(f,g),new Msn.VE.Geometry.Point(f,g));window.ero.dockToRect(h,null,-1)}else{var o=$ID(m);if(o!=null&&o!="undefined"){window.ero.setBoundingArea(null);window.ero.getBoundingArea().move(Gimme.Screen.getScrollPosition());window.ero.dockToElement(o)}}else{if(typeof h=="undefined"||h==null)h=new Msn.VE.Geometry.Rectangle(new Msn.VE.Geometry.Point(f,g),new Msn.VE.Geometry.Point(f,g));ero.setGlitz(false,false,false,true);window.ero.dockToRect(h,null,-1)}}}function VEHideVEShapeERO(a){if(window.ero!=null){if(a=="undefined"||a==null)a=false;window.ero.hide(a)}}var _VECustomInfoBox={ContainerNoBeak:"customInfoBox-noBeak",ContainerRightBeak:"customInfoBox-with-rightBeak",ContainerLeftBeak:"customInfoBox-with-leftBeak",Beak:"customInfoBox-beak",Shadow:"customInfoBox-shadow",Body:"customInfoBox-body",Actions:"customInfoBox-actions",ActionsBackground:"customInfoBox-actionsBackground",PreviewArea:"customInfoBox-previewArea",PaddingHack:"customInfoBox-paddingHack",ProgressAnimation:"customInfoBox-progressAnimation"};function VE_GetGeoCommunityUrl(a){if(a)return MC_GEOCOMMUNITY_SERVICEURL;else return "GeoCommunity.asjx"}function VE_IsLargeData(a){if(a.length>MC_GEOCOMMUNITY_SIZELIMIT-2048)return true;return false}var MC_GEOCOMMUNITY_SIZELIMIT=204800,MC_GEOCOMMUNITY_SERVICEURL="GeoCommunity.asjx",MC_VESHAPE_EMPTY=-1777,MC_VIEW_BUFFER=1,MC_STYLE_PINZIndex=300,MC_IID_NAMESPACE="msftve",MC_IID_CON_TOKEN="_",MC_GEO_TYPE_MULTIGEOMETRY="Multigeometry",MC_GEO_TYPE_FREEHAND="Freehand",MC_STYLE_FILL_COLOR="fillcolor",MC_STYLE_STROKE_COLOR="strokecolor",MC_STYLE_STROKE_WEIGHT="strokeweight",MC_STYLE_STROKE_STYLE="stroke-style",MC_STYLE_STROKE_DASH="stroke-dashstyle",MC_STYLE_FONT_COLOR="font_color",MC_STYLE_STROKE_ARROW="stroke_arrow",MC_STYLE_FONT_ITALIC="font_italic",MC_STYLE_FONT_UNDERSCORE="font_underscore",MC_STYLE_FONT_BOLD="font_bold",STATE_DEFAULT=0,STATE_DRAWING=1,STATE_EDITING=2,MC_DRAW_DEFAULT=100,MC_DRAW_POINT=101,MC_DRAW_POLYLINE=102,MC_DRAW_POLYGON=103,MC_DRAW_RECT=104,MC_DRAW_CIRCLE=105,MC_DRAW_TEXT=1065,MC_DRAW_MODEL=1066,MC_EDIT_ADDNODE=107,MC_EDIT_DELNODE=108,MC_EDIT_MOVENODE=108,MC_EDIT_SELNODE=109,MC_EDIT_SELEDGE=110,MC_EDIT_CONTINUELINE=111,MC_LABEL_VIEWER="viewer",MC_PROPERTY_DEFAULT=0,MC_PROPERTY_HIGHWAY=1,MC_PROPERTY_ROAD=2,MC_PROPERTY_LAKE=3,MC_PROPERTY_PARK=4,MC_PROPERTY_PARKINGLOT=5,MC_PROPERTY_PUSHPIN=6,MC_PROPERTY_TEMPDRAW=7,MC_PROPERTY_TEMPEDIT=8,MC_PROPERTY_EDITNODE=10,MC_PROPERTY_EDITSELNODE=11,MC_PROPERTY_GHOSTNODE=12,MC_NUMBERFORMAT_NUMBEROFDIGITSAFTERDOT=2,MC_NUMBERFORMAT_ZEROSTRING="0",MC_DECIMALROUNDOFF_THRESHOLD=100,MC_CML_ENTITY_NAME="Entity",MC_CML_ENTITY_PRIMITIVES="Primitives",MC_CML_ENTITY_PRIMITIVE="Primitive",MC_CML_ENTITY_COORDINATES="coordinates",MC_CML_DESCRIPTION="Description",MC_CML_TAGS="Tags",MC_CML_VIEWPORT="ViewPort",MC_CML_TOUR="Tour",MC_CML_PITCH="pitch",MC_CML_HEADING="heading",MC_CML_MAPSTYLE="mapstyle",MC_CML_SCENEID="sceneId",MC_CML_ACTIONS="Actions",MC_CML_ACTION="Action",MC_CML_MODELREP="ModelRep",MC_CML_TRANSFORM="transform",MC_CML_MODELREFID="modelRefId",MC_CML_ENTITY_TYPE_PUSHPIN="pushpin",MC_CML_PROPERTYS="Properties",MC_CML_PROPERTY="Property",MC_CML_MINBOUNDS="minbounds",MC_CML_MAXBOUNDS="maxbounds",MC_CML_R2EOFFSET="r2eoffset",MC_CML_PHOTOS="Photos",MC_CML_PHOTO="Photo",MC_CML_PREAUTHURL="PreAuthUrl",MC_CML_PUBLISHER="publisher",MC_CML_PROPERTY_ROUTABLELATITUDE="RoutableLatitude",MC_CML_PROPERTY_ROUTABLELONGITUDE="RoutableLongitude",MC_CML_PROPERTY_ICONURL="iconurl",MC_CML_PROPERTY_KEYWORDS="keywords",MC_CML_PROPERTY_URL="url",MC_CML_PROPERTY_PHOTOURL="photourl",MC_CML_PROPERTY_USERDATE="userdate",MC_CML_PROPERTY_DISPLAYORDER="displayorder",MC_CML_PROPERTY_BUSINESSLISTINGID="businesslistingid",MC_CML_PROPERTY_MAPSERVICETYPE="mapserviceType",MC_CML_PROPERTY_MAPSERVICESOURCE="mapserviceSource",MC_CML_PROPERTY_MAPSERVICEOPACITY="mapserviceOpacity",MC_CML_PROPERTY_MAPSERVICEMETADATA="mapserviceMetadata",MC_CML_PROPERTY_MAPSERVICESTATUS="mapserviceStatus",MC_CML_PROPERTY_SOURCEURL="sourceurl",MC_CML_PROPERTY_SOURCETYPE="sourcetype",MC_CML_TILEID="tileId",MC_CML_PROPERTY_TYPE="type",MC_CML_LASTMODIFIED="DateModified",MC_CML_DATECREATED="DateCreated",MC_CML_ROOT="CML",MC_CML_SEPERT="/",MC_CML_TOKEN=",",MC_CML_VERSION="0.1",MC_CML_ID="id",MC_CML_IID="clientid",MC_CML_NAME="name",MC_CML_CULTURE="culture",MC_CML_SHARELEVEL="Sharelevel",MC_CML_STATE="State",MC_CML_STATE_PUBLIC_CAN_VIEW=1,MC_CML_STATE_OWNER_CAN_VIEW=2,MC_CML_STATE_OWNER_CAN_UPDATE=4,MC_CML_STATE_OWNER_IS_VIEWING=8,MC_CML_TYPE="Type",MC_CML_Add="Add",MC_CML_EXTRUSION="Extrusion",MC_CML_VISIBILITY="visibility",MC_CML_DISPLAYORDER="displayorder",MC_CML_DEFAULTSTYLE="DefaultStyle",MC_CML_LABELSTYLE="LabelStyle",MC_CML_POSITION="Position",MC_CML_STYLE="Style",MC_CML_FILLSYMBOL="Fill",MC_CML_SHAPESYMBOL="Shape",MC_CML_STYLESYMBOL="Style",MC_CML_STROKESYMBOL="Stroke",MC_CML_SHADOWSYMBOL="Shadow",MC_CML_IMAGEDATASYMBOL="Imagedata",MC_CML_ZOOMLEVEL="zoomlevel",MC_CML_ONSCRATCHPAD="onScratchpad",MC_CML_TOKEN1=",",MC_CML_TOKEN2=":",MC_CML_TOKEN3=";",MC_CML_CONTENTS="Contents",MC_CML_CONTENT="Content",MC_CML_SIMPLEHTML="SimpleHTML",MC_CML_GLINK="glink",MC_CML_COLLECTIONS="Collections",MC_CML_COLLECTION="Collection",MC_CML_ENTITY="Entity",MC_CML_MULTIGEOMETRY="MultiGeometry",MC_CML_POLYGON="Polygon",MC_CML_OUTLS="outerBoundaryIs",MC_CML_ITLS="interBoundaryIs",MC_CML_LINEARSTRING="LinearRing",MC_CML_POLYLINE="LineString",MC_CML_LENGTH="length",MC_CML_AREA="area",MC_CML_href="href",MC_CML_POINT="Point",MC_CML_COORDS="coordinates",MC_CML_ALTITUDE="altitudes",MC_CML_ALTITUDEMODE="altitudemode",MC_CML_ALTGROUND="Ground",MC_CML_ALTDATUM="Datum",MC_CML_EXTRUDE="extruded",MC_CML_KEY="key",MC_CML_VALUE="value",MC_CML_CLIENTDATA="ClientData",MC_CML_EXCOL_PREFIX="E*",MC_CML_IMPORT_DATAURL="mapurl",MC_CML_IMPORT_SAVESTATUS="saveimport",MC_CML_IMPORT_COLNAME="colname",MC_CML_IMPORT_REPORT="importreport",MC_CML_IMPORT_FILEUPLOAD="fileupload",MC_CML_CID_LIST="cids",MC_ACTION_IMPORT_COLLECTION="ImportCol",MC_ACTION_IMPORT_ENTITY="ImportEntity",MC_ACTION_CLONE_ENTITY="CloneEntity",MC_ACTION_CREATE_COLLECTION="CreateCollection",MC_ACTION_UPDATE_COLLECTION="UpdateCollection",MC_ACTION_DELETE_COLLECTION="DeleteCollection",MC_ACTION_CLEAR_COLLECTION="ClearCollection",MC_ACTION_RETRIEVE_ALLCOLLECTIONS="RetrieveAllCollections",MC_ACTION_RETRIEVE_ALLCOLLECTIONS_METADATA="RetrieveAllCollectionsMetadata",MC_ACTION_RETRIEVE_COLLECTION="RetrieveCollection",MC_ACTION_RETRIEVE_SHAREDCOLLECTION="RetrieveSharedCollection",MC_ACTION_DELETE_ENTITY="DeleteEntity",MC_ACTION_ADD_ENTITY="AddEntity",MC_FCCALLBACK="fncallback",MC_ACTION_REPAINT="Repaint",MC_ACTION_CREATE_PHOTO="CreatePhoto",MC_ACTION_DELETE_PHOTO="DeletePhoto",MC_CHANGE_STATE_UPDATE=1,MC_CHANGE_STATE_DELETE=2,MC_CHANGE_STATE_CREATE=3,MC_CHANGE_STATE_CLONE=4,MC_CHANGE_STATE_MOVE=5,MC_CHANGE_STATE_DEFAULT=0,MC_CHANGE_TYPE_METADATA=1,MC_CHANGE_TYPE_CHILDREN=2,MC_CHANGE_TYPE_ALL=3,MC_MAPSERVICE_STATUS_NONE=0,MC_MAPSERVICE_STATUS_ERROR=1,MC_MAPSERVICE_STATUS_READY=2,MC_MAPSERVICE_STATUS_FETCH=3,MC_MAPSERVICE_ARG_SERVICETYPE="svc",MC_MAPSERVICE_ARG_COLLECTIONID="cid",MC_MAPSERVICE_ARG_ENTITYID="eid",MC_COLLECTION_SIGNIN_SIZE=2048,MC_MAXSHAPEPOINTS_IN_EMAIL=200,MC_MAX_EMAIL_LINK_LEN=1800,MC_MIN_EMAIL_NOTES_LEN=100,MC_MAX_DRILL_SIZE=200,MC_TIMER_KEEPTRYING="keeptrying",MC_TIMER_MINDELAY=0,MC_TIMER_DELAY=3000,MC_TIMER_REPEAT_DELAY=3000,MC_TIMER_NOW=10,MC_TIMER_EXTENDDELAY=5000,MC_TIMER_EXTENDDELAY_CN=100000,MC_REQUEST_QUEUE_MAXSIZE=20,MC_TIMER_VALUE="DELAYVALUE",MC_UPLOAD_TIMEOUT=90000,MC_KVP_COLLIST="COLLIST",MC_KVP_COL_MSNID="COL_MSNID",MC_KVP_COL_MSNID2="COL_MSNID2",MC_KVP_COL="COL",MC_KVP_COL_CLIENTDATA="COL_CLIENTDATA",MC_KVP_ENTITY_MSNID="ENTITY_MSNID",MC_KVP_ENTITYLIST="ENTITYLIST",MC_KVP_ENTITY="ENTITY",MC_KVP_SERVER_STATUS="req_status",MC_KVP_SETBESTMAPVIEW="set_best_view",MC_KVP_VIEWTOUR="view_tour",MC_KVP_CML="CML",MC_COLLECTIONLIST_UL_ID="sp_collection_list",MC_SCRATCHPADITEM_LI_SUFFIX="_li",MC_SCRATCHPADITEM_MEASURE_SUFFIX="_m",MC_SIGNIN="Signin",MC_SCRATCHPAD_DRAGCURSOR="move",MC_SCRATCHPAD_DRAGGEDSTYLE="DraggedLI",MC_SCRATCHPAD_COLLECTIONLISTDIV_ID="scratchPadCollectionListWrapper",MC_SCRATCHPAD_WRAPLEN_TITLE=22,MC_SCRATCHPAD_WRAPLEN_DESC=26,MC_CV_WRAPLEN_COLLECTIONDESC=28,MC_CV_WRAPLEN_TITLE=22,MC_CV_WRAPLEN_DESC=22,MC_ERO_WRAPLEN_TITLE=22,MC_ERO_WRAPLEN_DESC=28,MC_SERVER_STATUS_NO_ACCESS="not authorized",MC_SERVER_STATUS_BUSY="server busy",MC_SERVER_STATUS_OK="200",MC_SERVER_STATUS_STORE_ERROR="570",MC_SERVER_STATUS_NAMEEXIST_ERROR="571",MC_SERVER_STATUS_QUOTA_ERROR="572",MC_SERVER_STATUS_UNEXPECTED_ERROR="500",MC_SERVER_STATUS_ACCESSDENIED_ERROR="403",MC_SERVER_STATUS_CONTAINSSENSITIVEWORDS_ERROR="581",MC_COL_TYPE_FAVORITE=1,MC_COL_TYPE_COLLECTION=0,MC_COL_TYPE_RESULT=2,MC_COL_TYPE_TRAFFIC=3,MC_COL_TYPE_DRIVING=4,MC_COL_TYPE_RSSFEED=5,MC_COL_TYPE_TILEIMAGE=6,MC_DS_MSN_CML=0,MC_DS_FILE_CML=1,MC_DS_MSN_VEML=2,MC_MAX_LOADED_COLS=2,MC_MAX_COL_SIZE=200,cssCursors,MC_SA_NEWCOL="newcol",MC_SA_IMPORT="import",MC_SA_UPLOADPHOTO="uploadphoto",MC_SA_REFRESH="forcedrefresh";function VE_MapStruct(){}VE_MapStruct.PushpinType={ViewerClass:"VE_Community_searchResult",PushpinClass:"VE_Pushpin",Token:" ",PushpinAn:"VE_Pushpin VE_Pushpin_aN",Polyline:"VE_Pushpin VE_Pushpin_Polyline",Polygon:"VE_Pushpin VE_Pushpin_Polygon",Model:"VE_Pushpin VE_Pushpin_Model_viewer",Overlay:"VE_Pushpin VE_Pushpin_Overlay",PushpinViewer:"VE_Pushpin_viewer",PolylineViewer:"VE_Pushpin_Polyline_viewer",PolygonViewer:"VE_Pushpin_Polygon_viewer",ModelViewer:"VE_Pushpin_Model_viewer",OverlayViewer:"VE_Pushpin_Overlay_viewer",PushpinViewerTopMost:"VE_Pushpin_viewer topMost",PolylineViewerTopMost:"VE_Pushpin_Polyline_viewer polytopMost",PolygonViewerTopMost:"VE_Pushpin_Polyline_viewer polytopMost",ModelViewerTopMost:"VE_Pushpin_Model_viewer polytopMost",OverlayViewerTopMost:"VE_Pushpin_Overlay_viewer polytopMost",SearchResults:"searchResults"};VE_MapStruct.PushpinSize={WidthaN:22,HeightaN:17,WidthShp:22,HeightShp:-17,WidthLbl:-29,HeightLbl:-17,WidthView:22,HeightView:17,WidthShpView:22,HeightShpView:-17};_VERegisterNamespaces("Msn.VE.Core");Msn.VE.Core.Layer=function(){this.iid=null;this.MsnId=null;this.Name="unsaved collection";this.Type=0;this.Visibility=true;this.Boundingbox=null;this.MaxScale=21;this.MinScale=1;this.Spec=null};Msn.VE.Core.Layer.prototype.SetMsnId=function(a){this.MsnId=a};Msn.VE.Core.Layer.prototype.GetMsnId=function(){return this.MsnId};Msn.VE.Core.Layer.prototype.SetId=function(a){this.iid=a};Msn.VE.Core.Layer.prototype.GetId=function(){return this.iid};Msn.VE.Core.Layer.prototype.SetName=function(a){this.Name=a};Msn.VE.Core.Layer.prototype.GetName=function(){return this.Name};Msn.VE.Core.Layer.prototype.SetType=function(a){this.Type=a};Msn.VE.Core.Layer.prototype.GetType=function(){return this.Type};Msn.VE.Core.Layer.prototype.SetVisibility=function(a){this.Visibility=a};Msn.VE.Core.Layer.prototype.GetVisibility=function(){return this.Visibility};Msn.VE.Core.Layer.prototype.SetMaxZoomLevel=function(a){this.MaxScale=a};Msn.VE.Core.Layer.prototype.GetMaxZoomLevel=function(){return this.MaxScale};Msn.VE.Core.Layer.prototype.SetMinZoomLevel=function(a){this.MinScale=a};Msn.VE.Core.Layer.prototype.GetMinZoomLevel=function(){return this.MinScale};Msn.VE.Core.Layer.prototype.SetBoundingBox=function(f,e,c,d,a,b){if(!this.Boundingbox){if(c==null||d==null||a==null||b==null)return null;this.Boundingbox=new Msn.VE.Bounds(f,e,c,d,a,b)}else{this.Boundingbox.x1=c;this.Boundingbox.y1=d;this.Boundingbox.z1=f;this.Boundingbox.x2=a;this.Boundingbox.y2=b;this.Boundingbox.z2=e}return this.Boundingbox};Msn.VE.Core.Layer.prototype.GetBoundingBox=function(){if(typeof this.Boundingbox=="undefined"||!this.Boundingbox)this.Boundingbox=new Msn.VE.Bounds(0,0,Infinity,Infinity,-Infinity,-Infinity);return this.Boundingbox};Msn.VE.Core.VectorLayer=function(){};Msn.VE.Core.VectorLayer.prototype=new Msn.VE.Core.Layer;Msn.VE.Core.RasterLayer=function(){};Msn.VE.Core.RasterLayer.prototype=new Msn.VE.Core.Layer;function VELatLong(b,a,c,d){this.Latitude=null;this.Longitude=null;this.Altitude=null;this.AltitudeMode=null;this._reserved=null;if(b!=null){VEValidator.ValidateFloat(b,"latitude");this.Latitude=b}if(a!=null){VEValidator.ValidateFloat(a,"longitude");this.Longitude=a}if(c!=null)this.SetAltitude(c,d)}VELatLong.prototype.SetAltitude=function(b,a){VEValidator.ValidateFloat(b,"altitude");this.Altitude=b;if(a!=null){VEValidator.ValidateAltitudeMode(a,"altitudeMode");this.AltitudeMode=a}else this.AltitudeMode=VEAltitudeMode.Default};VELatLong.prototype.HasAltitude=function(){return this.Altitude!=null};function Clone(){var a=new VELatLong;a.Latitude=this.Latitude;a.Longitude=this.Longitude;a._reserved=this._reserved;a.Altitude=this.Altitude;a.AltitudeMode=this.AltitudeMode;return a}function toString(){var a="";if(this.Latitude!=null&&this.Longitude!=null)a=this.Latitude+", "+this.Longitude;if(this.Altitude!=null)a+=", "+this.Altitude;return a}VELatLong.prototype.toString=toString;VELatLong.prototype.Clone=Clone;function VELatLongRectangle(d,c,b,a){VEValidator.ValidateObject(d,"topLeftLatLong",VELatLong,"VELatLong");VEValidator.ValidateObject(c,"bottomRightLatLong",VELatLong,"VELatLong");this.TopLeftLatLong=d;this.BottomRightLatLong=c;if(b!=null&&b!="undefined"){VEValidator.ValidateObject(b,"topRightLatLong",VELatLong,"VELatLong");this.TopRightLatLong=b}if(a!=null&&a!="undefined"){VEValidator.ValidateObject(a,"bottomLeftLatLong",VELatLong,"VELatLong");this.BottomLeftLatLong=a}}VEAltitudeMode=new function(){this.Default="Ground";this.Absolute="Datum";this.RelativeToGround="Ground"};function VEValidator(){}VEValidator.ValidateFloat=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateFloat";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"));try{if(isNaN(parseFloat(b)))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"));return true}catch(d){throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","float"))}};VEValidator.ValidateInt=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateInt";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"));try{if(isNaN(parseInt(b))||parseFloat(b)!=parseInt(b))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"));return true}catch(d){throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","int"))}};VEValidator.ValidateNonNegativeInt=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateNonNegativeInt";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c));try{if(isNaN(parseInt(a))||parseFloat(a)!=parseInt(a)||parseInt(a)<0)throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c));return true}catch(d){throw new VEException(b,"err_invalidargument",L_invalidnonnegativeint_text.replace("%1",c))}};VEValidator.ValidateFunction=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateFunction";if(b==null||typeof b!="function")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","function"))};VEValidator.ValidateNonNull=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateNonNull";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","non null"))};VEValidator.ValidateBetween=function(b,e,d,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateBetween";if(bc)throw new VEException(a,"err_invalidargument",L_invalidbetweenint_text.replace("%1",e).replace("%2",d).replace("%3",c))};VEValidator.ValidateBoolean=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateBoolean";if(b!=true&&b!=false)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","bool"))};VEValidator.ValidateMapStyle=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateMapStyle";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapStyle"));if(a=="r"||a=="R"||$MVEM.IsEnabled(MapControl.Features.MapStyle.Shaded)&&(a=="s"||a=="S")||$MVEM.IsEnabled(MapControl.Features.MapStyle.Aerial)&&(a=="a"||a=="A")||$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(a=="o"||a=="O")||$MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye)&&(a=="b"||a=="B")||$MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid)&&(a=="h"||a=="H"))return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapStyle"))};VEValidator.ValidateClusteringType=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateClusteringType";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ClusteringType"));if(typeof a=="number"&&(a==VEClusteringType.None||a==VEClusteringType.Grid))return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ClusteringType"))};VEValidator.ValidateMapMode=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a="")a="VEValidator.ValidateMapMode";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapMode"));if(b==VEMapMode.Mode2D||$MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)&&b==VEMapMode.Mode3D)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","MapMode"))};VEValidator.ValidateDistanceUnit=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateDistanceUnit";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDistanceUnit"));if(b==VEDistanceUnit.Miles||b==VEDistanceUnit.Kilometers)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDistanceUnit"))};VEValidator.ValidateMaxZoom=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateMaxZoom";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ValidateMaxZoom"));if(b<=Msn.VE.API.Globals.vemaxzoom)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","ValidateMaxZoom"))};VEValidator.ValidateLayerType=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateLayerType";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDataType"));if(a==VEDataType.GeoRSS||a==VEDataType.VECollection||a==VEDataType.VETileSource)return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDataType"))};VEValidator.ValidateDashboardSize=function(a,c){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateDashboardSize";if(a==null||a=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDashboardSize"));if(a==VEDashboardSize.Normal||a==VEDashboardSize.Small||a==VEDashboardSize.Tiny)return true;throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEDashboardSize"))};VEValidator.ValidateMiniMapSize=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateMiniMapSize";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEMiniMapSize"));if(b==VEMiniMapSize.Small||b==VEMiniMapSize.Large)return true;throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEMiniMapSize"))};VEValidator.ValidateAltitudeMode=function(b,c){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateAltitudeMode";if(b==null)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEAltitudeMode"));if(b!=VEAltitudeMode.Absolute&&b!=VEAltitudeMode.RelativeToGround)throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VEAltitudeMode"));return true};VEValidator.ValidateObject=function(b,c,e,d){var a="";if(arguments!=null&&arguments.caller!=null)a=VEValidator.GetCaller(arguments.caller);if(a=="")a="VEValidator.ValidateObject";if(b==null||b=="undefined")throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","non null"));if(!(b instanceof e))throw new VEException(a,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2",d))};VEValidator.ValidateObjectArray=function(a,d,f,e){var b="";if(arguments!=null&&arguments.caller!=null)b=VEValidator.GetCaller(arguments.caller);if(b=="")b="VEValidator.ValidateObject";if(a==null||typeof a=="undefined"||a.length==null||typeof a.length=="undefined")throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",d).replace("%2","array"));for(var c=0;c=a.BottomRightLatLong.Longitude)throw new VEException(b,"err_invalidargument",L_invalidargument_text.replace("%1",c).replace("%2","VELatLongRectangle"))};VEValidator.GetCaller=function(){return ""};Msn.VE.Core.MapServiceLayerManager=function(){var a=[],v=200,b=null;MapOverlayNode=function(b,a){this.item=b;this.layers=a};function f(d){if(!d.IsOverlay())return -1;var e=a.length;for(var c=0;c=0;a--){var d=c.layers[a];if(d==null)continue;b.push(d.ID)}if(map.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))r(b);var e=b.length;for(var a=0;a=0;b--){var d=a[b];a.splice(b,1);c(d)}}function o(a,d,b){if(!a.IsOverlay())return;var c=g(a);return i(c,d,b)}function i(c,h,i){if(c==null||c.layers==null||c.layers.length==0)return;var a=[],m=c.layers.length;for(var g=0;gw)i=1;var d=l["maxzoom"];d=d==null||typeof d=="undefined"||d==""?w:parseInt(d);if(d<1||d>w||d100)k=.6;if(k>1)k/=100;var j=g(e),J="{VE_MapServiceLayer:"+e.mapserviceType+":"+e.iid+"}",T=v.length;for(var A=0;A0){var j,o,A,F=l.length;for(j=0;j1){g=c[1];f=c[0];if(a=="georss:line")k=VEShapeType.Polyline;else if(a=="georss:polygon")k=VEShapeType.Polygon}}}else if(a=="gml:name")if(b.firstChild)r=b.firstChild.nodeValue;else r="";else if(a=="gml:description")if(b.firstChild)p=b.firstChild.nodeValue;else p="";else if(a=="gml:Point"||a=="gml:point"||a=="georss:where"&&b.firstChild.nodeName=="gml:Point"){var i=null;if(a=="gml:Point"||a=="gml:point")i=b.childNodes;else i=b.firstChild.childNodes;for(d=0;d1){g=c[1];f=c[0]}}}}else if(a=="gml:pos"||a=="gml:posList"){if(l[j].childNodes[o].firstChild){var n=l[j].childNodes[o].firstChild.nodeValue;c=this.ExtractLatLonPairFromXMLList(n);if(c&&c.length>1){g=c[1];f=c[0];if(a=="gml:posList")k=VEShapeType.Polyline}}}else if(a=="gml:LineString"||a=="georss:where"&&b.firstChild.nodeName=="gml:LineString"){var i=null;if(a=="gml:LineString")i=b.childNodes;else i=b.firstChild.childNodes;k=VEShapeType.Polyline;var x=i.length;for(d=0;d1){g=c[1];f=c[0]}}}}else if(a=="gml:Polygon"||a=="georss:where"&&b.firstChild.nodeName=="gml:Polygon"){var i=null;if(a=="gml:Polygon")i=b.childNodes;else i=b.firstChild.childNodes;k=VEShapeType.Polygon;var x=i.length;for(d=0;d1){g=c[1];f=c[0]}}}}}}}if(g==null||g=="undefined"||g.length<=0||f==null||f=="undefined"||f.length<=0)continue;if(q.Spec.IconUrl!=null&&q.Spec.IconUrl!="undefined")m=q.Spec.IconUrl;if(m==null||m=="undefined"||m.length<=0)m=Msn.VE.API.Constants.iconurl;var D=p;try{var s=null;if(k==VEShapeType.Pushpin)if(g!=null&&f!=null)s=new Msn.Drawing.Point(f,g);else continue;else if(k==VEShapeType.Polyline){if(c.length<4)continue;s=new Msn.Drawing.PolyLine(c)}else if(k==VEShapeType.Polygon){if(c.length<8)continue;s=new Msn.Drawing.Polygon(c)}var h;if(Msn.VE.API!=null){var w=s.points,x=w.length,B=[];for(var d=0;d0)C=true;return C};Msn.Drawing.MapGeoRssReader.prototype.ExtractLatLonPairFromXMLList=function(a){a=a.replace(/^\s+/g,"");a=a.replace(/\s+$/g,"");var b=[];if(a.indexOf(",")>0)b=a.split(",");else{a=a.replace(/\s+/g," ");b=a.split(" ")}var d=b.length;if(d/2!=Math.round(d/2))return null;for(var c=0;c0)VE_MapOverlays.ExtractEntityOverlay(g,j.childNodes[0],e,c);break}}return}var h;if(g==MC_ACTION_CREATE_COLLECTION||g==MC_ACTION_IMPORT_ENTITY||g==MC_ACTION_IMPORT_COLLECTION)h=o.GetAnnotationByMsnId(c,m,r);else h=o.GetAnnotationByMsnId(c,m);var a=h[1];if(h[0])return;if(l&&l!="")a.SetType(l);if(k&&k!="")a.Title=k;if(s&&s!="")a.SetVisibility(false);var b=null,v=null,u=d.childNodes.length;for(var n=0;n/gi,"\n");break;case MC_CML_ENTITY_PRIMITIVES:var q=VE_MapCmlReader.ExtractPrimitives(b);if(q){a.ClearAllPrimitives();a.SetPrimitives(q)}break;case MC_CML_VIEWPORT:a.ViewPort=VE_MapCmlReader.ExtractViewPort(b);break;case MC_CML_TOUR:a.Tour=VE_MapCmlReader.ExtractTour(b);break;case MC_CML_MODELREP:a.ModelRep=VE_MapCmlReader.ExtractModelRep(b);break;case MC_CML_PHOTOS:a.Photos=VE_MapCmlReader.ExtractPhotos(b)}}}if(a.GetPrimitiveCount()==0)VE_MapManager.GetLayerManager().DeleteAnnotationFromCollection(c,a);else if(!h[0])if(Msn.VE.API!=null)c.AddShape(a);else c.AddEntityAnnotation(a);else c.UpdateEntityAnnotation(a);return c};VE_MapCmlReader.ExtractViewPort=function(g){var a=new VE_3DViewPort,f=true,h=g.childNodes.length;for(var e=0;e0){for(var j=0;j0&&c.indexOf("http")<0))a.SetIconUrl(c);break;case MC_CML_PROPERTY_KEYWORDS:a.Keywords=unescape(b);break;case MC_CML_PROPERTY_PHOTOURL:var f=null;f=unescape(b);if(f)a.PhotoUrl=f;break;case MC_CML_PROPERTY_USERDATE:a.UserDate=b;break;case MC_CML_PROPERTY_DISPLAYORDER:a.DisplayOrder=b;break;case MC_CML_PROPERTY_BUSINESSLISTINGID:a.SetBusinessListingId(b);break;case MC_CML_LASTMODIFIED:a.LastModified=b;break;case MC_CML_DISPLAYORDER:a.SetDisplayOrder(b);break;case MC_CML_ZOOMLEVEL:a.SetZoomLevel(b);break;case MC_CML_ONSCRATCHPAD:a.SetOnScratchpad(b);break;case MC_CML_PROPERTY_SOURCEURL:a.SourceUrl=unescape(b);break;case MC_CML_PROPERTY_SOURCETYPE:a.SourceType=b;break;case MC_CML_TILEID:a.TileId=b;break;case MC_CML_PROPERTY_MAPSERVICETYPE:a.mapserviceType=b;break;case MC_CML_PROPERTY_MAPSERVICESOURCE:a.mapserviceSource=unescape(b);break;case MC_CML_PROPERTY_MAPSERVICEOPACITY:a.mapserviceOpacity=b;break;case MC_CML_PROPERTY_MAPSERVICEMETADATA:a.mapserviceMetadata=unescape(b);break;case MC_CML_PROPERTY_MAPSERVICESTATUS:a.mapserviceStatus=b}}}return a};VE_MapCmlReader.ExtractPhotos=function(l){var n=[],j=l.childNodes.length;if(j==0)return null;for(var g=0;g1){var h=i[1];if(h){a.labelPosX=h.longitude;a.labelPosY=h.latitude}}}}if(a!=null){if(Msn.VE.API){if(!c)c=VE_GetDefaultAPISymbol(a.type);a.symbol=c}else if(a.type!=VEShapeType.Pushpin)a.symbol=c;g.push(a)}}}if(g.length<1)return null;return g};VE_MapCmlReader.ExtractPolygon=function(c){var a=c.selectSingleNode(MC_CML_OUTLS).selectSingleNode(MC_CML_LINEARSTRING),b=a.selectSingleNode(MC_CML_COORDS);return VE_MapCmlReader.BuildShape(VEShapeType.Polygon,GetXMLText(b),a)};VE_MapCmlReader.ExtractPolyLine=function(a){var b=a.selectSingleNode(MC_CML_COORDS);return VE_MapCmlReader.BuildShape(VEShapeType.Polyline,GetXMLText(b),a)};VE_MapCmlReader.BuildShape=function(c,i,d){var h=null,g=d.selectSingleNode(MC_CML_ALTITUDE);if(g!=null)h=GetXMLText(g);var b=VE_GetLatLongPairsFromString(i,h);if(b==null||b.LonLats==null)return null;var a=null;if(VEShapeType.Polyline==c){a=new Msn.Drawing.PolyLine(b.LonLats);a.iid=Msn.Drawing.GetGeoUID(VEShapeType.Polyline)}else if(VEShapeType.Polygon==c){a=new Msn.Drawing.Polygon(b.LonLats);a.iid=Msn.Drawing.GetGeoUID(VEShapeType.Polygon)}else if(VEShapeType.Pushpin==c){a=new Msn.Drawing.Point(b.LonLats[0],b.LonLats[1]);a.iid=Msn.Drawing.GetGeoUID(VEShapeType.Pushpin)}if(b.Altitudes){var e=d.selectSingleNode(MC_CML_ALTITUDEMODE);if(e!=null)a.altitudeMode=GetXMLText(e);if(VEShapeType.Pushpin==c){a.altitudes=b.Altitudes;return a}else{a.altitudes=b.Altitudes;var f=d.selectSingleNode(MC_CML_EXTRUDE);if(f!=null)if(GetXMLText(f).toLowerCase()=="true")a.extruded=true;a.minZ=b.minZ;a.maxZ=b.maxZ;a.labelPosZ=a.maxZ}}if(VEShapeType.Pushpin!=c){a.minX=b.minX;a.minY=b.minY;a.maxX=b.maxX;a.maxY=b.maxY}return a};VE_MapCmlReader.ExtractPoint=function(a){var b=a.selectSingleNode(MC_CML_COORDS);return VE_MapCmlReader.BuildShape(VEShapeType.Pushpin,GetXMLText(b),a)};VE_MapCmlReader.ExtractStyle=function(i,n){var e=[],a;if(Msn.VE.API)a=VE_GetDefaultAPISymbol(n);else a=VE_MapDispatch_SymbolLib.GetCurrentDefaultSymbol();a=a.Clone();var k=i.childNodes.length,d=null;for(var f=0;f0){for(var d=0;d0?true:false};Msn.Drawing.GetShpElementUIDByLabelUID=function(c){var b="",a=c.split(MC_IID_CON_TOKEN);if(!a||a[0]!=MC_IID_NAMESPACE)return null;b=b.concat(a[0],MC_IID_CON_TOKEN,a[1],MC_IID_CON_TOKEN,a[2],MC_IID_CON_TOKEN,a[3]);return b};Msn.Drawing.GetEntityUIDByPrimitiveUID=function(c){var b="",a=c.split(MC_IID_CON_TOKEN);if(!a||a[0]!=MC_IID_NAMESPACE)return null;b=b.concat(a[0],MC_IID_CON_TOKEN,a[1],MC_IID_CON_TOKEN,a[2]);return b};Msn.Drawing.CreatePointPushpin=function(p,a,r,y,g,m,l,x,h){var d=null,i=r;Msn.Drawing.CalculateLabelPosition(a,false);var u=a.labelPosX?a.labelPosX:a.points[0],t=a.labelPosY?a.labelPosY:a.points[1],s=m?m:22,q=l?l:17,f=a.iid,b=g,n=g&&g.indexOf("VE_Pushpin_Overlay")!=-1;if(a.type==VEShapeType.Pushpin){if(typeof b=="undefined"||!b)b=n?VE_MapStruct.PushpinType.Overlay:VE_MapStruct.PushpinType.PushpinAn}else{f=Msn.Drawing.GetLabelUID(a.iid);if(typeof b=="undefined"||!b)b=VE_MapStruct.PushpinType.Polyline}var o=n?Msn.VE.PushPinTypes.Overlay:Msn.VE.PushPinTypes.Annotation,k=i+"";if(h){b="VEAPI_Pushpin";k=_VE_GetCustomIcon(f+"_img",h,i,false)}d=p.AddPushpin(f,t,u,s,q,b,k,MC_STYLE_PINZIndex,o,true);if(h){var c=$ID(f+"_img");if(c!=null){var w=c.style.height,v=c.style.width;if(isNaN(parseInt(w))||isNaN(parseInt(v))){c.style.height="25px";c.style.width="30px"}if(d!=null){var e=parseInt(d.style.top),j=parseInt(c.style.height);if(isNaN(e))e=j;else e+=j;d.style.top=e+"px"}}}return d};function _VE_GetCustomIcon(i,h,e,f){var g=" ")}function _VE_OnCustonIconError(a,e){var f=typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null;if(!f&&typeof a!="undefined"){var b=VE_MapManager.GetAnnotationById(a.id);if(b){b.IconUrl=null;var d=VE_MapStruct.PushpinType,c=d.PushpinViewer;if(b.IsOverlay())c=d.OverlayViewer;else if(b.GetType()!=VEShapeType.Pushpin)c=d.PolylineViewer;if(a.parentElement){a.parentElement.className="bullet "+c;a.parentElement.innerText=e;a.parentElement.removeChild(a)}}}}function _VE_ResizeImage(a,c,b){var e=c,d=b;if(a.width>c)d=parseInt(a.height*c/a.width);else if(a.height>b)e=parseInt(a.width*b/a.height);else{e=a.width;d=a.height}a.style.height=d+"px";a.style.width=e+"px";if(a.style.visibility=="hidden")a.style.visibility="visible";return a}function IsPointInPolygon(a,b,e,f,c,d){if(a>c||ad||b0){a=a.parentElement;--b}return a}function VE_ChangeOpacity(b,a){if(typeof Web!="undefined"&&typeof Web.Browser!="undefined"&&typeof Web.Browser.isMozilla=="function"&&Web.Browser.isMozilla())b.style.opacity=a/100;else b.style.filter="alpha(opacity="+a+")"}function VE_SanitizeHTML(b){if(typeof b=="undefined"||!b)return b;var a=document.createElement("div");a.innerHTML=b+" __hack";VE_WalkNode(a,VE_RemoveHarmfulHTML);var c=a.innerHTML;a=null;return c.substring(0,c.length-7)}function VE_RemoveHarmfulHTML(c){if(c==null)return;var e="",a=null,f=[];for(var d=0;c.hasChildNodes()&&d-1?b:0;a.labelPosX=(a.points[2*b]+a.points[2*b+2])/2;a.labelPosY=(a.points[2*b+1]+a.points[2*b+3])/2;if(a.altitudes)a.labelPosZ=Math.max(a.altitudes[b],a.altitudes[b+1])}else if(a.type==VEShapeType.Polygon){var c=a.points.length,d=0,e=0,f=null;if(a.altitudes)f=a.altitudes[0];if(c>=4&&a.points[0]==a.points[c-2]&&a.points[1]==a.points[c-1])c-=2;for(var b=0;bMC_MAX_LOADED_COLS){var c=loadedColIds.shift();c=GetCollectionIndexByMsnId(c);if(c>0){var b=GetCollectionByIndex(c);if(b&&b.GetType()==MC_COL_TYPE_COLLECTION){mvcViewFacade.OnCollectionLayerClear(b);EmptyCollection(b)}}}}};this.AddListener=function(b,a){register.AddListener(b,a)};this.RemoveListener=function(b,a){register.RemoveListener(b,a)};this.Fire=function(b,a){register.Fire(b,a)};function AddCollection(b,a){if(b==0)cols.unshift(a);else cols.push(a);return a}function IsCollectionExist(c){if(cols.length>0)for(var a=0;a0)for(var a=0;a0)for(var b=0;b0)for(var a=0;a0)for(var a=0;a0)for(var b=0;b1){a=cols.pop();EmptyCollection(a)}if(cols.length==1)EmptyCollection(cols[0])}function RemoveCollection(a){EmptyCollection(a);DeleteCollection(a)}function EmptyCollection(a){VE_MapOverlays.DeactivateCollectionOverlays(a);var c=null;if(a.Annotations.length>0)for(var b=0;b0)for(var c=0;cb;--a){cols[c].Annotations[a]=cols[c].Annotations[a-1];d=cols[c].Annotations[a];d.SetDisplayOrder(a+1);d.SetIndex(a);d.SetChangeState(MC_CHANGE_STATE_UPDATE)}cols[c].Annotations[b]=j;d=cols[c].Annotations[b];d.SetDisplayOrder(b+1);d.SetIndex(b);d.SetChangeState(MC_CHANGE_STATE_UPDATE);if(e0){var e=null,f=null;for(var d=0;d0){var c=a.GetPrimitiveCount();if(c<1)return null;for(var b=0;b0)for(var b=0;b=0&&b0&&b){var a=0;while(a0){for(var a=0;ab.x2&&a.y2>b.y2;c.Update(true,this.iid);if(a)if(d){a.x1=Math.min(b.x1,a.x1);a.y1=Math.min(b.y1,a.y1);a.x2=Math.max(b.x2,a.x2);a.y2=Math.max(b.y2,a.y2)}else a=this.UpdateBoundingBox();else a=new Msn.VE.Bounds(0,0,b.x1,b.y1,b.x2,b.y2);this.SetBoundingBox(0,0,a.x1,a.y1,a.x2,a.y2);this._SetTileId();a=null;return c};VEShapeLayer.prototype.UpdateBoundingBox=function(){var h=this.Annotations.length,g=null,a=null,b=Infinity,d=Infinity,c=-Infinity,e=-Infinity;for(var f=0;f0&&aMsn.VE.API.Globals.veshapemaxzoom||aMsn.VE.API.Globals.veshapemaxzoom)throw new VEException("VEShapeLayer.SetMinZoomLevel","err_incorrectzoomlevel",L_Shp_IncorrectZoomLevel_Text);else if(a>this.MaxScale)throw new VEException("VEShapeLayer.SetMinZoomLevel","err_incorrectzoomlevel",L_Shp_IncorrectZoomLevel2_Text);this.MinScale=a;if(this.GetVisibility())this.Show()};VEShapeLayer.prototype.GetMinZoomLevel=function(){return this.MinScale};VEShapeLayer.prototype.IsVisible=function(){return this.GetVisibility()};VEShapeLayer.prototype.SetClusteringConfiguration=function(b,a){if(!this._isClusterLayer){if(a!=null){VEValidator.ValidateObject(a,"clusteringOptions",VEClusteringOptions,"VEClusteringOptions");if(a.Icon!=null)VEValidator.ValidateObject(a.Icon,"clusteringOptions.Icon",VECustomIconSpecification,"VECustomIconSpecification");if(a.Callback!=null)VEValidator.ValidateFunction(a.Callback,"clusteringOptions.Callback")}if(typeof b=="number"){VEValidator.ValidateClusteringType(b,"type");if(b==VEClusteringType.Grid)this._clusteringAlgorithm=GridCluster;else this._clusteringAlgorithm=null}else if(typeof b=="function")this._clusteringAlgorithm=b;else throw new VEException("VEShapeLayer:SetClusteringConfiguration","err_invalidargument",L_invalidargument_text.replace("%1","type").replace("%2","VEClusteringType"));this._clusteringOptions=a;if(this._clusteringAlgorithm==null)this.DeleteClusterLayer();else this.CreateClusterLayer();var c=GetVEMapInstance(this._mapGuid);if(c!=null&&c.m_vegraphicsmanager!=null)if(this._clusterLayer!=null)this.Cluster();else c.m_vegraphicsmanager.DrawLayer(this)}else throw new VEException("VEShapeLayer:SetClusteringConfiguration","err_invalidlayertype",L_InvalidClusterLayer_Text)};VEShapeLayer.prototype.Cluster=function(){if(!this._isClusterLayer&&this._clusterLayer){this._clusterLayer._clusterZoomLevel=null;var a=GetVEMapInstance(this._mapGuid);if(a!=null&&a.m_vegraphicsmanager!=null)a.m_vegraphicsmanager.DrawLayer(this)}};VEShapeLayer.prototype.GetClusteredShapes=function(b){var a=[];VEValidator.ValidateClusteringType(b,"type");switch(b){case VEClusteringType.Grid:a=GridCluster(this)}return a};VEShapeLayer.prototype.CreateClusterLayer=function(){if(!this._isClusterLayer&&!this._clusterLayer){var a=GetVEMapInstance(this._mapGuid);if(a!=null){this._clusterLayer=new VEShapeLayer;this._clusterLayer._isClusterLayer=true;a.AddShapeLayer(this._clusterLayer)}}};VEShapeLayer.prototype.DeleteClusterLayer=function(){if(this._clusterLayer){var a=GetVEMapInstance(this._mapGuid);if(a!=null){a.DeleteShapeLayer(this._clusterLayer);this._clusterLayer=null}}};VEShapeLayer.prototype.ClearClusterLayer=function(){if(this._clusterLayer){this._clusterLayer._clusterZoomLevel=null;this._clusterLayer.DeleteAllShapes()}};function GridCluster(m){var q=[],g=GetVEMapInstance(m._mapGuid);if(g!=null){var b={},d=g.GetZoomLevel(),p=2,r=0;if(g.vemapcontrol.IsMapViewOblique())d+=18;var u=m.Annotations.length;for(var n=0;n1){var h=new VEClusterSpecification;h.Shapes=e;var k=0,l=0,i=false;for(var f=0;f0&&a[0]!=null){this.Keywords=a;this.Keywords[0]=this.Keywords[0].replace(/%0D%0A/g,"\r\n").replace(/%0A/g,"\n")}else this.Keywords=a;this.Url=o;this.PhotoUrl=j;this.UserDate=k;this.BusinessListingId=c;this.IconId=l;this.LastModified=i;this.mapserviceType=h;this.mapserviceSource=f;this.mapserviceOpacity=d};VEShape.prototype.symbolUrl="samplesymbol";VEShape.prototype.GetMsnId=function(){return this.Id};VEShape.prototype.SetMsnId=function(a){this.Id=a};VEShape.prototype.SetBoundingBox=function(f,e,c,d,a,b){if(typeof this.Boundingbox=="undefined"||this.Boundingbox==null){if(c==null||d==null||a==null||b==null)return null;this.Boundingbox=new Msn.VE.Bounds(f,e,c,d,a,b)}else{this.Boundingbox.x1=c;this.Boundingbox.y1=d;this.Boundingbox.z1=f;this.Boundingbox.x2=a;this.Boundingbox.y2=b;this.Boundingbox.z2=e}if(typeof VE_ShapeIndexManager!="undefined")this.TileId=VE_ShapeIndexManager.GetTileId(this.Boundingbox);return this.Boundingbox};VEShape.prototype.GetBoundingBox=function(){if(typeof this.Boundingbox=="undefined"||!this.Boundingbox)this.Boundingbox=new Msn.VE.Bounds(0,0,Infinity,Infinity,-Infinity,-Infinity);return this.Boundingbox};VEShape.prototype.GetCenterPoint=function(){if(!this.GetBoundingBox())return;var a=new Array(2);a[0]=(this.GetBoundingBox().x1+this.GetBoundingBox().x2)/2;a[1]=(this.GetBoundingBox().y1+this.GetBoundingBox().y2)/2;return a};VEShape.prototype.SetId=function(a){this.iid=a};VEShape.prototype.GetId=function(){if(typeof this.iid=="undefined"||this.iid==0||this.iid==null)this.iid=Msn.Drawing.GetGeoUID(MC_GEO_TYPE_ENTITY);return this.iid};VEShape.prototype.SetVisibility=function(a){this.Visibility=a};VEShape.prototype.GetVisibility=function(){if(typeof this.Visibility=="undefined"||typeof this.Visibility=="null")this.Visibility=true;return this.Visibility};VEShape.prototype.SetBusinessListingId=function(a){if(typeof a=="undefined"||a=="null")this.BusinessListingId=0;else this.BusinessListingId=a};VEShape.prototype.GetBusinessListingId=function(){if(typeof this.BusinessListingId=="undefined"||this.BusinessListingId==null||this.BusinessListingId=="null")this.BusinessListingId=0;return this.BusinessListingId};VEShape.prototype.SetType=function(a){this.Type=a};VEShape.prototype.GetType=function(){if(typeof this.Type=="undefined")this.Type="aN";return this.Type};VEShape.prototype.SetSaveStatus=function(a){this.SaveStatus=a};VEShape.prototype.IsSaved=function(){if(typeof this.SaveStatus=="undefined")this.SaveStatus=true;return this.SaveStatus};VEShape.prototype.SetOnScratchpad=function(a){this.OnScratchpad=a};VEShape.prototype.IsOnScratchpad=function(){if(typeof this.OnScratchpad=="undefined")this.OnScratchpad=true;return this.OnScratchpad};VEShape.prototype.SetZoomLevel=function(a){this.ZoomLevel=a};VEShape.prototype.GetZoomLevel=function(){if(typeof this.ZoomLevel=="undefined")this.ZoomLevel=12;return this.ZoomLevel};VEShape.prototype.SetChangeState=function(a){this.ChangeState=a};VEShape.prototype.GetChangeState=function(){if(typeof this.ChangeState=="undefined")this.ChangeState=MC_CHANGE_STATE_DEFAULT;return this.ChangeState};VEShape.prototype.SetChangeType=function(a){this.ChangeType=a};VEShape.prototype.GetChangeType=function(){if(typeof this.ChangeType=="undefined")this.ChangeType=MC_CHANGE_TYPE_ALL;return this.ChangeType};VEShape.prototype.HasAltitude=function(){var a=this.Primitives;if(typeof a=="undefined"||a==null)return false;if(a[0].altitudes==null)return false;else return true};VEShape.prototype.GetPrimitiveCount=function(){if(typeof this.Primitives=="undefined"||this.Primitives==null){this.Primitives=[];return 0}return this.Primitives.length};VEShape.prototype.SetPrimitives=function(a){this.Primitives=a;this.SetType(a[0].type)};VEShape.prototype.GetPrimitives=function(){if(typeof this.Primitives=="undefined"||this.Primitives==null)this.Primitives=[];return this.Primitives};VEShape.prototype.GetPrimitive=function(a){if(typeof this.Primitives=="undefined"||this.Primitives==null||this.Primitives.length==0){this.Primitives=[];return null}if(a",d.points.join(","),"")}var b="",c=" ";a=a.concat("");a=a.concat(b,this.GetBusinessListingId(),c,b,this.Url,c,b,this.PhotoUrl,c,b,this.Title,c,b,this.Type,c);a=a.concat(" ");a=a.concat(" ");return a};function VE_3DViewPort(){this.Latitude=0;this.Longitude=0;this.Altitude=0;this.Altitudemode="Datum";this.Pitch=0;this.Heading=0;this.Mapstyle="r";this.SceneId=0;this.Properties=null}function VE_3DModelRep(){this.Transform=null;this.ModelRefId=null;this.MinBounds=null;this.MaxBounds=null;this.Properties=null;this.R2eoffset=null}function VE_3DModelData(){this.Properties=null;this.Callback=null}function VE_3DTour(){this.Actions=null}function VE_Photo(){this.Id=null;this.Url=null;this.Properties=null}VEShape.prototype.SetPhotos=function(a){this.Photos=a};function _VE_EntityDrawingState(){this.zIndexIcon=null;this.zIndexPolyShape=null;this.minZoomLevel=null;this.maxZoomLevel=null;this.isShared=null;this.parentEl=null;this.text=null}function _VE_CreateServiceInstance(a){switch(a){case _VE_ServiceType.MapCruncher:return new VETileSourceSpecification;default:return null}return null}_VE_ServiceType={MapCruncher:"t",NetworkLink:"n"};VEShape.Decoder=new _xy1;VEShape.LatLongFactory=new VELatLongFactory(new VELatLongFactoryAlwaysEncodeSpec);VEShape.prototype._Construct=function(j,g,e){var a=[],d=[],k=false,f=null;if(typeof g!="undefined"){if(g==MC_VESHAPE_EMPTY&&j){this.maxZoomLevel=Msn.VE.API.Globals.veshapemaxzoom;this.minZoomLevel=Msn.VE.API.Globals.veshapeminzoom;this._eroContent=null;this._shplayer=null;return}}else throw new VEException("VEShape","err_invalidargument",L_invalidargument_text.replace("%1","type").replace("%2","VEShapeType"));if(typeof e=="object")if(typeof e.length=="number"){var l=e.length;for(var h=0;hthis.maxZoomLevel)throw new VEException("VEShape.SetMaxZoomLevel","err_incorrectzoomlevel",L_Shp_IncorrectZoomLevel_Text);else if(athis.maxZoomLevel)throw new VEException("VEShape.SetMinZoomLevel","err_incorrectzoomlevel",L_invalidminmaxzoom_text);this.minZoomLevel=a;if(this.GetVisibility())this.Show()};VEShape.prototype.GetMinZoomLevel=function(){return this.minZoomLevel};VEShape.prototype.GetCustomIcon=function(){var a=null,b=this.Primitives[0].symbol;if(typeof b=="object"&&b.isOn==true){a=new VECustomIconSpecification;a.Image=b.imagedata_src;a.TextBold=b.textbox_bold;a.TextItalics=b.textbox_italic;a.TextUnderline=b.textbox_underscore;a.TextFont=b.textbox_font;a.TextSize=b.textbox_size;a.TextOffset=new VEPixel(b.textbox_OffsetX,b.textbox_OffsetY);a.ImageOffset=new VEPixel(b.img_offsetX,b.img_offsetY);a.CustomHTML=this._customIcon;a.TextContent=this.Primitives[0].name;a.ImageWidth=b.img_width;a.ImageHeight=b.img_height;var e=new VEHexStringToColor,d=b.textbox_color;if(d.indexOf("#")==0)d=d.substring(1);a.ForeColor=e.Convert(d);a.ForeColor.A=b.textbox_color_opacity;var c=b.textbox_backcolor;if(c.indexOf("#")==0)c=c.substring(1);a.BackColor=e.Convert(c);a.BackColor.A=b.textbox_backcolor_opacity}else a=this._customIcon;return a};VEShape.prototype.SetCustomIcon=function(b){if(typeof b=="undefined"||b==null)return null;if(typeof b=="object"){VEValidator.ValidateObject(b,"_content_",VECustomIconSpecification,"VECustomIconSpecification");if(typeof b.TextContent=="string"&&b.TextContent!=null)this.Primitives[0].name=b.TextContent;var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();if(typeof b.Image=="string"&&b.Image!=null)a.imagedata_src=GetImageFullUrl(b.Image);else a.imagedata_src=Msn.VE.API.Constants.iconurl;var e=b.ForeColor;if(typeof e=="object"&&e!=null){VEValidator.ValidateObject(e,"fC",VEColor,"VEColor");a.textbox_color=e.ToHexString();a.textbox_color_opacity=e.A}var d=b.BackColor;if(typeof d=="object"&&d!=null){VEValidator.ValidateObject(d,"bC",VEColor,"VEColor");a.textbox_backcolor=d.ToHexString();a.textbox_backcolor_opacity=d.A}var g=b.TextOffset;if(typeof g=="object"&&g!=null){VEValidator.ValidateObject(g,"tO",VEPixel,"VEPixel");a.textbox_OffsetX=b.TextOffset.x;a.textbox_OffsetY=b.TextOffset.y}var f=b.ImageOffset;if(typeof f=="object"&&f!=null){VEValidator.ValidateObject(f,"iO",VEPixel,"VEPixel");a.img_offsetX=f.x;a.img_offsetY=f.y}if(b.TextBold)a.textbox_bold=true;if(b.TextItalics)a.textbox_italic=true;if(b.TextUnderline)a.textbox_underscore=true;var l=parseInt(b.ImageWidth);if(!isNaN(l))a.img_width=l;var k=parseInt(b.ImageHeight);if(!isNaN(k))a.img_height=k;a.textbox_font=b.TextFont;a.imagedata_on=true;var i=parseInt(b.TextSize);if(!isNaN(i))a.textbox_size=i;a.isOn=true;this.Primitives[0].symbol=a;if(b.CustomHTML!=null)this._customIcon=b.CustomHTML;else if(this.Primitives[0].name){var c=[];c.push("");c.push("
");c.push(this.Primitives[0].name);c.push("
");c.push("
');else c.push("/>");c.push("
");this._customIcon=c.join("")}else this._customIcon=a.imagedata_src}else if(typeof b=="string"){this._customIcon=b;if(b.indexOf("<")<0){var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();a.imagedata_src=GetImageFullUrl(b);a.isOn=true;this.Primitives[0].symbol=a}}this._IconContent=null;this.Redraw(false,false,false,true)};VEShape.prototype.GetIconAnchor=function(){if(this.Altitude)return new VELatLong(this.Latitude,this.Longitude,this.Altitude,this.Primitives[0].altitudeMode);else return new VELatLong(this.Latitude,this.Longitude)};VEShape.prototype.SetIconAnchor=function(a){if(this.IsModel())return false;if(a!=null&&a!="undefined"){VEValidator.ValidateObject(a,"veLatlong",VELatLong,"VELatLong");if(a.HasAltitude()&&a.AltitudeMode!=this.Primitives[0].altitudeMode)throw new VEException("VEShape","err_altitudemodemismatch",L_altitudemodemismatch_Text);var b=this.Primitives[0];if(b.type!=VEShapeType.Pushpin){this.Latitude=a.Latitude;this.Longitude=a.Longitude;b.labelPosX=this.Longitude;b.labelPosY=this.Latitude;if(a.HasAltitude()){this.Altitude=a.Altitude;b.labelPosZ=a.Altitude}else{this.Altitude=null;b.labelPosZ=null}}else this.SetPoints(a)}this.Redraw(false,true)};VEShape.prototype.GetCustomInfoBox=function(){return this._eroContent};VEShape.prototype.SetCustomInfoBox=function(a){if(typeof a!="undefined"&&a!=null)this._eroContent=a.replace(/%0D%0A/g,"\r\n").replace(/%0A/g,"\n")};VEShape.prototype.SetZIndex=function(c,b){if(c!=null)VEValidator.ValidateInt(c,"icon");if(b!=null)VEValidator.ValidateInt(b,"polyshape");if(c==null&&b==null)throw new VEException("VEShape.SetZIndex","L_invalidzindex_text",L_invalidzindex_text);var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();if(c!=null)a.style_zIndex=parseInt(c);if(b!=null)a.style_zIndex_polyshape=parseInt(b);this.Primitives[0].symbol=a;this.Redraw(false,false,true,true)};VEShape.prototype.GetZIndex=function(){if(this.Primitives[0].symbol!=null&&this.Primitives[0].symbol.style_zIndex!=null)return this.Primitives[0].symbol.style_zIndex;else return Msn.VE.API.Globals.veshapeiconzindex};VEShape.prototype.GetZIndexPolyShape=function(){if(this.Primitives[0].symbol!=null&&this.Primitives[0].symbol.style_zIndex_polyshape!=null)return this.Primitives[0].symbol.style_zIndex_polyshape;else return Msn.VE.API.Globals.veshapepolyshapezindex};VEShape.prototype.SetLineColor=function(b){if(this.Primitives[0].type==VEShapeType.Pushpin)return false;if(typeof b=="object"&&b!=null){VEValidator.ValidateObject(b,"_color",VEColor,"VEColor");var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();a.stroke_color=b.ToHexString();a.stroke_opacity=b.A;this.Primitives[0].symbol=a;this.Redraw(false,false,true,false)}else if(typeof b!="undefined")throw new VEException("SetLineColor","err_invalidargument",L_invalidargument_text.replace("%1","color").replace("%2","VEColor"))};VEShape.prototype.GetLineColor=function(){if(this.Primitives[0].type==VEShapeType.Pushpin)return null;var c=this.Primitives[0].symbol,e=new VEHexStringToColor,a=c.stroke_color;if(a.indexOf("#")==0)a=a.substring(1);var b=e.Convert(a),d=c.stroke_opacity.toString();if(d.indexOf("%")>0)b.A=parseInt(d)/100;else b.A=c.stroke_opacity;return b};VEShape.prototype.SetFillColor=function(b){if(this.Primitives[0].type==VEShapeType.Pushpin)return false;if(typeof b=="object"&&b!=null){VEValidator.ValidateObject(b,"_color",VEColor,"VEColor");var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();a.fill_color=b.ToHexString();a.fill_opacity=b.A;this.Primitives[0].symbol=a;this.Redraw(false,false,true,false)}else if(typeof b!="undefined")throw new VEException("SetFillColor","err_invalidargument",L_invalidargument_text.replace("%1","color").replace("%2","VEColor"))};VEShape.prototype.GetFillColor=function(){if(this.Primitives[0].type==VEShapeType.Pushpin)return null;var c=this.Primitives[0].symbol,e=new VEHexStringToColor,a=c.fill_color;if(a.indexOf("#")==0)a=a.substring(1);var b=e.Convert(a),d=c.fill_opacity.toString();if(d.indexOf("%")>0)b.A=parseInt(d)/100;else b.A=c.fill_opacity;return b};VEShape.prototype.SetLineWidth=function(c){if(this.Primitives[0].type==VEShapeType.Pushpin)throw new VEException("VEShape.SetLineWidth","err_invalidlinewidth",L_Shp_IncorrectLineWidth_Text);var b=parseInt(c);if(isNaN(b)||b<1)throw new VEException("VEShape.SetLineWidth","err_invalidlinewidth",L_Shp_IncorrectLineWidth_Text);var a=this.Primitives[0].symbol;if(a.id==MC_PROPERTY_PARK||a.id==MC_PROPERTY_PUSHPIN)a=a.Clone();a.stroke_weight=b;this.Primitives[0].symbol=a;this.Redraw(false,false,true,false)};VEShape.prototype.GetLineWidth=function(){if(this.Primitives[0].type==VEShapeType.Pushpin)return null;var a=parseInt(this.Primitives[0].symbol.stroke_weight);if(isNaN(a))return 0;else return a};VEShape.prototype.SetPhotoURL=function(a){this._eroContent=null;this.PhotoUrl=a};VEShape.prototype.GetPhotoURL=function(){return this.PhotoUrl};VEShape.prototype.SetMoreInfoURL=function(a){this._eroContent=null;this.Url=a};VEShape.prototype.GetMoreInfoURL=function(){return this.Url};VEShapeLayer.prototype.GetBoundingRectangle=function(){var a=this.GetBoundingBox();return new VELatLongRectangle(new VELatLong(a.y2,a.x1),new VELatLong(a.y1,a.x2))};VEShape.prototype._OffsetScene=null;VEShape.prototype._OffsetLatLong=null;VEShape.prototype._OffsetPoints=null;VEShape.prototype._OriginalPoints=null;VEShape.prototype._UsingOffset=false;VEShape.prototype.SetUseOffset=function(b){if(this._UsingOffset!=b){this._UsingOffset=b;if(b){if(this._OffsetPoints!=null){var a=[];for(var c=0;c');a.push(VECreateVEShapeERO(this,this._shplayer._mapGuid));a.push("")}return a.join("")};VEShape.prototype._isDrawn=false;VEShape.prototype._isHiddenForZoom=false;VEShape.prototype.GetShapeElement=function(){var a=this.Primitives[0];if(this._isDrawn&&a&&a.type!=VEShapeType.Pushpin){if(a._shapeElement==null)a._shapeElement=$ID(a.iid);return a._shapeElement}return null};VEShape.prototype.GetIconElement=function(){var a=this.Primitives[0];if(this._isDrawn&&a){if(a._iconElement==null)if(a.type==VEShapeType.Pushpin)a._iconElement=$ID(a.iid);else a._iconElement=$ID(Msn.Drawing.GetLabelUID(a.iid));return a._iconElement}return null};VEShape.prototype.ClearDomElements=function(){var a=this.Primitives[0];if(a){a._shapeElement=null;a._iconElement=null}};VEShape.prototype.DisposeEx=function(){this.ClearDomElements();this.Dispose()};VEShape.prototype.Draggable=false;VEShape.prototype.onstartdrag=null;VEShape.prototype.ondrag=null;VEShape.prototype.onenddrag=null;function ShapeDragEventArgs(b,a){this.Shape=b;this.LatLong=a}function VECustomIconSpecification(){this.Image=null;this.TextContent=null;this.CustomHTML=null;this.textFont="Arial";this.TextBold=false;this.TextItalics=false;this.TextUnderline=false;this.TextSize=7;this.ImageOffset=null;this.TextOffset=null;this.ForeColor=null;this.BackColor=null;this.ImageWidth=-1;this.ImageHeight=-1}function VEClusteringOptions(){this.Icon=null;this.Callback=null}VEClusteringType=new function(){this.None=0;this.Grid=1};function VEClusterSpecification(){this._clusterShape=null;this.Shapes=[];this.LatLong=null;VEClusterSpecification.prototype.GetClusterShape=function(){return this._clusterShape}}VE_SetModuleStatus(VE_ModuleName.APILAYERS,"loaded");VEMap.prototype.InitMapDrawing=function(){cssCursors=Msn.VE.Css.Cursors;if(VE_MapDispatch_SymbolLib==null){VE_MapDispatch_SymbolLib=new VEShapeStyleLibrary;VEShapeStyle.prototype.imagedata_src=Msn.VE.API.Constants.iconurl}if(this.m_velayermanager==null){this.m_velayermanager=new VELayerManager(this);this._lm=this.m_velayermanager}};VEMap.prototype.InitTiles=function(){if(!this.m_vetilesourcemanager)this.m_vetilesourcemanager=new VETileSourceManager(this)};VEMap.prototype.AddTileLayer=function(a,b,c){VEValidator.ValidateObject(a,"tileSourceSpec",VETileSourceSpecification,"VETileSourceSpecification");this.m_vetilesourcemanager.AddTileSource(a,c,b)};VEMap.prototype.ShowTileLayer=function(a){this.m_vetilesourcemanager.ShowTileLayer(a)};VEMap.prototype.ShowAllTileLayers=function(){this.m_vetilesourcemanager.ShowAllTileLayers()};VEMap.prototype.HideTileLayer=function(a){this.m_vetilesourcemanager.HideTileLayer(a)};VEMap.prototype.ShowBaseTileLayer=function(){this.m_vetilesourcemanager.ShowBaseTileLayer()};VEMap.prototype.HideBaseTileLayer=function(){this.m_vetilesourcemanager.HideBaseTileLayer()};VEMap.prototype.HideAllTileLayers=function(){this.m_vetilesourcemanager.HideAllTileLayers()};VEMap.prototype.DeleteTileLayer=function(a){this.m_vetilesourcemanager.DeleteSourceById(a)};VEMap.prototype.DeleteAllTileLayers=function(){this.m_vetilesourcemanager.DeleteAllSources()};VEMap.prototype.GetTileLayerCount=function(){return this.m_vetilesourcemanager.GetSourceCount()};VEMap.prototype.GetTileLayerByID=function(a){return this.m_vetilesourcemanager.GetSourceById(a)};VEMap.prototype.GetTileLayerByIndex=function(a){return this.m_vetilesourcemanager.GetSourceByIndex(a)};function VETileSourceSpecification(h,i,d,g,f,e,c,a,b){this.ID=null;this.TileSource=null;this.NumServers=1;this.Bounds=null;this.MinZoomLevel=0;this.MaxZoomLevel=1;this.GetTilePath=null;this.Opacity=null;this.ZIndex=null;this.SetsBestMapView=true;this.FnCallback=null;this.IsVisible=true;this.LoadTiles=true;if(typeof h=="string")this.ID=h;else throw new VEException("VETileSourceSpecification","err_invalidargument",L_invalidargument_text.replace("%1","ID").replace("%2","string"));if(typeof i=="string")this.TileSource=i.replace(/%20/g," ");else throw new VEException("VETileSourceSpecification","err_invalidargument",L_invalidargument_text.replace("%1","tileSource").replace("%2","string"));if(d!="undefined"&&d!=null)this.NumServers=d;if(g!="undefined"&&g!=null)this.Bounds=g;if(f!="undefined"&&f!=null)this.MinZoomLevel=f;if(e!="undefined"&&e!=null)this.MaxZoomLevel=e;if(c!="undefined"&&c!=null)this.GetTilePath=c;if(a!="undefined"&&a!=null){VEValidator.ValidateFloat(a,"Opacity");if(a<0||a>1)throw new VEException("VEMap:AddTileLayer","err_invalidOpacity",L_invalidopacity_text);this.Opacity=a}if(b!="undefined"&&b!=null){VEValidator.ValidateInt(b,"ZIndex");this.ZIndex=b}else this.ZIndex=Msn.VE.API.Globals.vetilelayerdefaultzindex}function VETileSourceManager(a){var b=this;VEValidator.ValidateNonNull(a,"vemap");this.m_vemap=a;this.m_vemapcontrol=this.m_vemap.vemapcontrol;this.m_vetilesources=[];this.AddTileSource=function(a,d,c){VEValidator.ValidateObject(a,"tileSourceSpec",VETileSourceSpecification,"VETileSourceSpecification");VEValidator.ValidateNonNull(a.ID,"tileSourceSpec.ID");if(a.MinZoomLevel!=null)VEValidator.ValidateNonNegativeInt(a.MinZoomLevel,"tileSourceSpec.MinZoomLevel");if(a.MaxZoomLevel!=null){VEValidator.ValidateNonNegativeInt(a.MaxZoomLevel,"tileSourceSpec.MaxZoomLevel");VEValidator.ValidateMaxZoom(a.MaxZoomLevel,"tileSourceSpec.MaxZoomLevel")}if(a.MinZoomLevel!=null&&a.MaxZoomLevel!=null)if(a.MinZoomLevel>a.MaxZoomLevel)throw new VEException("VETileSourceManager:AddVETileSource","err_invalidsourceid",L_invalidminmaxzoom_text);if(a.Bounds){var e=a.Bounds.length;for(var b=0;b"+L_what_text+" "+' '+""+""+L_where_text+" "+' "+"
"+""+''+L_find_text+" "+"
";this.mapelement.appendChild(el);addIFrameShim(el);if(el.shimElement)el.shimElement.className="VE_FindControl_Iframe";return el};VEMap.prototype.ShowFindControl=function(c,b){if(typeof c!="undefined"||typeof b!="undefined"){VEValidator.ValidateInt(c,"top");VEValidator.ValidateInt(b,"left")}var d=this.ID+"_vefindcontrolinput",a=$ID(d);if(typeof a=="undefined"||a==null)a=this.CreateFindControl(d);if(isNaN(c))a.style.top="35px";else a.style.top=c+"px";if(isNaN(b))a.style.left="195px";else a.style.left=b+"px";a.style.display="block";ShowShim(a)};VEMap.prototype.HideFindControl=function(){var a=$ID(this.ID+"_vefindcontrolinput");if(a!=null&&a!="undefined"){a.style.display="none";HideShim(a)}};VEMap.prototype.SetFindResultsPanel=function(a){if(a==null||a=="undefined")throw new VEException("VEMap:SetFindResultsPanel","err_invalidelement",L_invalidelement_text);var b=$ID(a);if(b==null||b=="undefined")throw new VEException("VEMap:SetFindResultsPanel","err_invalidelement",L_invalidelement_text);this.searchelement=a};function VEMatchCode(){}VEMatchCode.None=0;VEMatchCode.Good=1;VEMatchCode.Ambiguous=2;VEMatchCode.UpHierarchy=4;VEMatchCode.Modified=8;function VEMatchConfidence(){}VEMatchConfidence.High=0;VEMatchConfidence.Medium=1;VEMatchConfidence.Low=2;function VELocationPrecision(){}VELocationPrecision.Interpolated=0;VELocationPrecision.Rooftop=1;function VEGeocodeLocation(b,a){this.LatLong=b;this.Precision=a}function VEPlace(e,d,a,b,c,g,f){VEValidator.ValidateNonNull(e,"name");VEValidator.ValidateNonNull(d,"velatLong");this.Name=e;this.LatLong=d;if(typeof a!="undefined"&&a!=null)this.LatLongRect=a;else this.LatLongRect=null;this.MatchConfidence=typeof b!="undefined"?b:null;this.MatchCode=typeof c!="undefined"?c:null;this.Precision=g;this.Locations=f}function VEGeocodeOptions(b,a){this.SetBestMapView=b;this.UseDefaultDisambiguation=a}function VESearchOptions(d,e,f,i,g,h,c,b,a){this.SetBestMapView=d;this.CreateResults=e;this.ShowResults=f;this.FindType=i;this.ShapeLayer=g;this.StartIndex=h;this.NumberOfResults=c;this.BoundingRectangle=b;this.UseDefaultDisambiguation=a}function VEFindSpec(l,a,j,g,h,b,f,e,c,d,i,k){this.DisambuigationCancelled=false;this.WhatString="";this.WhatResults=null;this.WhatHasMore=null;if(l!=null){if(typeof l!="string")throw new VEException("VEMap.Find","err_invalidargument",L_invalidargument_text.replace("%1","what").replace("%2","string"));this.WhatString=IOSec.EncodeUrl(l)}this.WhereString="";this.WhereRect=null;this.WhereLatLong=null;this.WhereResults=null;if(a!=null)if(a instanceof VELatLongRectangle)this.WhereRect=a;else if(a instanceof VEPlace){this.WhereRect=a.LatLongRect;this.WhereLatLong=a.LatLong;this.WhereResults=a}else if(a instanceof VELatLong)this.WhereLatLong=a;else if(typeof a=="string"){if(Msn.VE.API.Globals.locale.toLowerCase()=="zh-cn"&&a.replace(/(^\s*)/g,"").toLowerCase().indexOf("map of ")!=0)a="map of "+a;this.WhereString=IOSec.EncodeUrl(a)}else throw new VEException("VEMap.Find","err_invalidargument",L_invalidwhere_text);if(this.WhatString==""&&this.WhereString==""&&this.QueryString=="")throw new VEException("VEMap.Find","err_invalidwhatwhere",L_invalidwhatwhere_text);this.FindType=VEFindType.Businesses;if(j!=null)if(j==VEFindType.Businesses)this.FindType=j;else throw new VEException("VEMap.Find","err_invalidargument",L_invalidargument_text.replace("%1","findType").replace("%2","VEFindType"));this.ShapeLayer=null;if(g!=null){VEValidator.ValidateObject(g,"shapeLayer",VEShapeLayer,"VEShapeLayer");this.ShapeLayer=g}this.StartIndex=0;if(h!=null){VEValidator.ValidateNonNegativeInt(h,"startIndex");this.StartIndex=parseInt(h)}this.NumberOfResults=Msn.VE.API.Globals.vefindnumresultsdefault;if(b!=null){VEValidator.ValidateInt(b);b=parseInt(b);VEValidator.ValidateBetween(b,"numberOfResults",Msn.VE.API.Globals.vefindnumresultsmin,Msn.VE.API.Globals.vefindnumresultsmax);this.NumberOfResults=b}this.ShowResults=true;if(f!=null){VEValidator.ValidateBoolean(f,"showResults");this.ShowResults=f}this.CreateResults=true;if(e!=null){VEValidator.ValidateBoolean(e,"createResults");this.CreateResults=e}this.UseDefaultDisambiguation=true;if(c!=null){VEValidator.ValidateBoolean(c,"useDefaultDisambiguation");this.UseDefaultDisambiguation=c}this.SetBestMapView=true;if(d!=null){VEValidator.ValidateBoolean(d,"setBestMapView");this.SetBestMapView=d}this.Callback=null;if(i!=null)if(typeof i=="function")this.Callback=i;else throw new VEException("VEMap.Find","err_invalidargument",L_invalidargument_text.replace("%1","callback").replace("%2","function"));this.QueryString="";if(typeof k!="undefined"&&k!=null)this.QueryString=IOSec.EncodeUrl(k);this.ErrorMessage=null}function VEFindResults(a,c,b){this.ShapeLayer=a;this.Results=c;this.HasMore=b}function VEFindResult(a,d,e,b,f,c,g){VEValidator.ValidateNonNull(a,"findType");VEValidator.ValidateNonNull(e,"name");VEValidator.ValidateNonNull(b,"description");VEValidator.ValidateNonNull(c,"isSponsored");this.findType=a;this.FindType=a;this.shape=d;this.Shape=d;this.Name=e;this.Description=b;this.LatLong=f;this.IsSponsored=c;this.Phone=g}VEFindType=new function(){this.Businesses="Business"};function VE_SearchManager(c){VEValidator.ValidateObject(c,"vemap",VEMap,"VEMap");this.m_vemap=c;var a=this,b=new VELatLongFactory(new VELatLongFactorySpecFromMap(this.m_vemap));this.m_showDisambigousDialog=true;this._DisambiguateCallback="VEMap._GetMapFromGUID("+c.GUID+")._sm.FindAmbiguousListCallBack";var g=new _xy1,e=null;this.Initialize=function(){};this.Find=function(b){if(b.QueryString.length>0)h(b);else if(b.WhereString.length>0)i(b);else if(b.WhatString.length>0)j(b);else{if(b.SetBestMapView&&b.DisambuigationCancelled==false)if(b.WhereRect!=null)a.m_vemap.SetMapView(b.WhereRect);else if(b.WhereLatLong!=null&&b.WhatResults!=null){var d=[b.WhereLatLong];for(var c=0;c0){var n=f.Results[0].MatchConfidence,o=f.Results.length,h=[];for(var k=0;k1){if(d.SetBestMapView)a.m_vemap.SetViewport(g[0][1],g[0][2],g[0][3],g[0][4]);e=d;if(d.UseDefaultDisambiguation)a.m_vemap.m_veambiguouslist.Show(g,a._DisambiguateCallback,true);else if(typeof a.m_vemap.DisambiguationCallback!="undefined"&&a.m_vemap.DisambiguationCallback!=null&&typeof a.m_vemap.DisambiguationCallback=="function")a.m_vemap.DisambiguationCallback(d.WhereResults);else a.Find(d)}else a.Find(d)};this.SearchQueryResponseHandler=function(c,f){a.m_vemap.vemapcontrol.Fire("onendrequest");a.m_vemap.__HandleAuthentication(c);var p=null,m=[],i=[];if(c.SearchRegion!=null&&c.SearchRegion.Source=="Query"&&c.SearchRegion.GeocodeLocations!=null&&c.SearchRegion.GeocodeLocations.length>0){var s=c.SearchRegion.GeocodeLocations.length,l=[];for(var h=0;h0)for(var h=0;h0){if(p==null)p=d.MatchConfidence;var l=[],s=d.GeocodeLocations.length;for(var t=0;t0)f.WhereResults=m;f.WhereString="";var r=[],w=[],x=f.ShapeLayer;if(c.SearchResults!=null&&c.SearchResults.length>0){var s=Math.min(c.SearchResults.length,f.NumberOfResults);for(var h=0;h0?g.Address+", ":"";j+=g.City!=null&&g.City.length>0?g.City+", ":"";j+=g.State!=null&&g.State.length>0?g.State:"";j=j.replace(/(, )+$/,"");if(f.CreateResults){k=new VEShape(VEShapeType.Pushpin,u);k.SetTitle(g.Name);k.SetDescription(g.Phone!=null?j+" "+g.Phone:j);if(!f.ShowResults)k.SetVisibility(false);x.AddShape(k);w.push(k)}var v=new VEFindResult(f.FindType,k,g.Name,j,u,false,g.Phone);r.push(v)}}f.WhatString="";f.QueryString="";if(r.length>0){f.WhatResults=r;f.WhatHasMore=c.SearchResults.length>f.NumberOfResults}var q=false;if(i.length>1){if(f.SetBestMapView)a.m_vemap.SetViewport(i[0][1],i[0][2],i[0][3],i[0][4]);e=f;if(f.UseDefaultDisambiguation){if(c.ParseResults!=null&&c.ParseResults.length>0&&c.ParseResults[0].Keyword!=null&&c.ParseResults[0].Keyword!="")f.WhatString=IOSec.EncodeUrl(c.ParseResults[0].Keyword);a.m_vemap.m_veambiguouslist.Show(i,a._DisambiguateCallback,true);q=true}else if(typeof a.m_vemap.DisambiguationCallback!="undefined"&&a.m_vemap.DisambiguationCallback!=null&&typeof a.m_vemap.DisambiguationCallback=="function"){a.m_vemap.DisambiguationCallback(f.WhereResults);q=true}}if((f.WhereResults==null||f.WhereResults.length==0)&&(f.WhatResults==null||f.WhatResults.length==0))f.ErrorMessage=a.m_vemap.IsValidCredentialsInResponse(c)?L_invalidsearchresult_Text:L_CredentialsInvalid_Text;if(!q)a.Find(f)};this.SearchResponseHandler=function(g,d){a.m_vemap.vemapcontrol.Fire("onendrequest");a.m_vemap.__HandleAuthentication(g);var h=[],l=[],m=d.ShapeLayer;if(g.SearchResults!=null&&g.SearchResults.length>0){var n=Math.min(g.SearchResults.length,d.NumberOfResults);for(var i=0;i0?c.Address+", ":"";e+=c.City!=null&&c.City.length>0?c.City+", ":"";e+=c.State!=null&&c.State.length>0?c.State:"";e=e.replace(/(, )+$/,"");if(d.CreateResults){f=new VEShape(VEShapeType.Pushpin,j);f.SetTitle(c.Name);f.SetDescription(c.Phone!=null?e+" "+c.Phone:e);if(!d.ShowResults)f.SetVisibility(false);m.AddShape(f);l.push(f)}var k=new VEFindResult(d.FindType,f,c.Name,e,j,false,c.Phone);h.push(k)}}d.WhatString="";if(h.length>0){d.WhatResults=h;d.WhatHasMore=g.SearchResults.length>d.NumberOfResults}else d.ErrorMessage=a.m_vemap.IsValidCredentialsInResponse(g)?L_invalidsearchresult_Text:L_CredentialsInvalid_Text;a.Find(d)};this.FindAmbiguousListCallBack=function(f,h,j,i,k){var c=e;e=null;if(f!=null){var d=$ID(this.m_vemap.ID+"_vewhereinput");if(d)d.value=unescape(f);var b=c.WhereResults,g=-1;if(b)for(var a=0;a0){e=[];var l=d.Results.length;for(var g=0;g0};this.Destroy=function(){this.id=null;this.name=null}}Msn.VE.Search={};Msn.VE.Search.strLastWhere="";function VE_SearchResult(w,u,l,t,s,v,p,n,r,d,o,k,h,g,q,f,a,j,i,c,b,m){this.id=w;this.name=u;this.description=l;this.phone=t;this.rating=s;this.type=v;this.latitude=p;this.longitude=n;this.pushPin=null;this.pinId=null;this.keywords=o;this.infoUrl=r;this.photoUrl=typeof d!="undefined"?d:"";this.mapserviceType=k;this.mapserviceSource=h;this.mapserviceOpacity=g;this.website=b!=null&&typeof b!="undefined"&&b.constructor==String?b:"";this.country=q;var e=null;this.SetGeoRef=function(a){e=a};this.GetGeoRef=function(){return e};this.insideBoundingBox=f;var a=a;this.GetDistanceFromCenter=function(b,c){if(typeof a=="number"&&Msn.VE.DistanceUnit.IsValidType(b))if(b=="mi"){if(a.toFixed)return c?a.toFixed(2)+L_DirectionsMi_Text:a.toFixed(2)}else if(b=="km")if(a.toFixed)return c?(a*1.60934).toFixed(2)+L_DirectionsKm_Text:(a*1.60934).toFixed(2)};this.roofTopLatitude=j;this.roofTopLongitude=i;if(typeof c==="boolean")this.isLocationPrecise=c;else this.isLocationPrecise=true;this.brandInfo=m;this.adInfo=null;this.whitePageInfo=null}function VE_WebSearchResult(h,g,i,j,k){var c=a(h),d=a(g),e=a(i),b=a(j),f=a(k);this.GetCaptionUrl=function(){return c};this.SetCaptionUrl=function(b){c=a(b)};this.GetDescription=function(){return d};this.SetDescription=function(b){d=a(b)};this.GetDisplayUrl=function(){return e};this.SetDisplayUrl=function(b){e=a(b)};this.GetTitle=function(){return b};this.SetTitle=function(c){b=a(c)};this.GetUrl=function(){return f};this.SetUrl=function(b){f=a(b)};function a(a){if(typeof a=="string"&&a.length>=0)return a;return null}}VE_SearchResult.prototype.Equals=function(a){if(a==null||a=="undefined")return false;try{var b=this.name==a.name&&this.description==a.description&&this.phone==a.phone&&this.rating==a.rating&&this.type==a.type&&this.latitude==a.latitude&&this.longitude==a.longitude;return b}catch(c){return false}};VE_WebSearchResult.prototype.Equals=function(a){if(a instanceof VE_WebSearchResult){var b=this.GetCaptionUrl()==a.GetCaptionUrl()&&this.GetDescription()==a.GetDescription()&&this.GetTitle()==a.GetTitle()&&this.GetDisplayUrl()==a.GetDisplayUrl()&&this.GetUrl()==a.GetUrl();return b}return false};function VE_ColInfo(e,d,b,a,c){this.id=e;this.name=d;this.businessId=b;this.entityCount=a;this.colType=c}VE_SetModuleStatus(VE_ModuleName.APIFIND,"loaded");VEMap.prototype.InitRouting=function(){if(!this.m_vedirectionsmanager){this.m_vedirectionsmanager=new VEDirectionsManager(this);this.m_vedirectionsmanager.Initialize();this._dm=this.m_vedirectionsmanager}if(!this.m_routemanager)this.m_routemanager=new VERouteManager(this)};VEMap.prototype.GetRoute=function(d,e,b,c,a){this.InitRouting();this.m_vedirectionsmanager.GetDrivingDirections(d,e,b,c,a)};VEMap.prototype.DeleteRoute=function(){this.InitRouting();this.m_routemanager.ClearRoute()};function VERouteDistanceUnit(){}VERouteDistanceUnit.Mile="Mile";VERouteDistanceUnit.Kilometer="Kilometer";VERouteDistanceUnit.Default=VERouteDistanceUnit.Mile;function VERouteOptimize(){}VERouteOptimize.MinimizeTime="MinimizeTime";VERouteOptimize.MinimizeDistance="MinimizeDistance";VERouteOptimize.Default="Default";function VERouteMode(){}VERouteMode.Driving="Driving";VERouteMode.Walking="Walking";VERouteMode.Default=VERouteMode.Driving;function VERouteWarningSeverity(){}VERouteWarningSeverity.None=0;VERouteWarningSeverity.LowImpact=1;VERouteWarningSeverity.Minor=2;VERouteWarningSeverity.Moderate=3;VERouteWarningSeverity.Serious=4;function VERouteHintType(){}VERouteHintType.PreviousIntersection=1;VERouteHintType.NextIntersection=2;VERouteHintType.Landmark=3;function VEServiceRequest(d,b,c,a){this.ID=d;this.Service=b;this.Params=c;this.Callback=a}function VE_Location(c,b,a){this.name=c;this.latitude=b;this.longitude=a}function VERouteOptions(){this.DistanceUnit=VERouteDistanceUnit.Default;this.RouteOptimize=VERouteOptimize.Default;this.RouteMode=VERouteMode.Default;this.RouteCallback=null;this.DrawRoute=true;this.RouteWeight=6;this.RouteColor=new VEColor(0,169,235,.7);this.RouteZIndex=4;this.SetBestMapView=true;this.ShowDisambiguation=true;this.ShowErrorMessages=true;this.UseTraffic=false;this.UseMWS=false}function VERoute(){this.RouteLegs=[];this.Distance=0;this.Time=0;this.ShapePoints=null}function VERouteItinerary(){this.Items=[]}function VERouteItineraryItem(f,c,a,e,g,b,d){this.Text=f;this.LatLong=c;this.Distance=a;this.Shape=e;this.Time=g;this.Warnings=b;this.Hints=d}function VERouteLeg(a,b,d,c,e){this.StartLocation=a;this.EndLocation=b;this.Distance=d;this.Itinerary=c;this.Time=e}function VERouteHint(b,a){this.Type=b;this.Text=a}function VERouteWarning(b,a){this.Text=b;this.Severity=a}VEMap.prototype.GetDirections=function(b,a){this.m_routemanager.GetRoute(b,a)};function VERouteManager(vemap){var self=this,m_vemap=vemap,m_routeShapeLayer=null,m_routeHighlight=null,m_encoder=new _xz1,m_veLatLongDecoder=new _xy1,m_veLatLongFactory=new VELatLongFactory(new VELatLongFactorySpecFromMap(m_vemap)),m_routeDecoder=new Msn.VE.DirectionsDecoder,m_routeOptions=null,m_locations=[],m_currentLocationIndex=0,m_requestQueue=[],m_route=null,m_requestID=null;this.GetRoute=function(e,a){m_requestID=VENetwork.GetExecutionID();m_vemap.DeleteRoute();if(!e||!e.length||e.length<2)throw new VEException("","err_invalidargument",L_invaliddirections_text);if(a){VEValidator.ValidateObject(a,"routeOptions",VERouteOptions,"VERouteOptions");if(a.DistanceUnit!=VERouteDistanceUnit.Mile&&a.DistanceUnit!=VERouteDistanceUnit.Kilometer)throw new VEException("","err_invalidargument",L_invalidargument_text.replace("%1","routeOptions.DistanceUnit").replace("%2","VERouteDistanceUnit"));if(a.RouteOptimize!=VERouteOptimize.Default&&a.RouteOptimize!=VERouteOptimize.MinimizeTime&&a.RouteOptimize!=VERouteOptimize.MinimizeDistance)throw new VEException("","err_invalidargument",L_invalidargument_text.replace("%1","routeOptions.RouteOptimize").replace("%2","VERouteOptimize"));if(a.RouteMode!=VERouteMode.Driving&&a.RouteMode!=VERouteMode.Walking)throw new VEException("","err_invalidargument",L_invalidargument_text.replace("%1","routeOptions.RouteMode").replace("%2","VERouteMode"));if(a.RouteMode==VERouteMode.Driving&&!$MVEM.IsEnabled(MapControl.Features.RouteOptions.RouteMode.Driving)||a.RouteMode==VERouteMode.Walking&&!$MVEM.IsEnabled(MapControl.Features.RouteOptions.RouteMode.Walking))throw new VEException("","err_notSupportProperty",L_UnsupportProperty_Text.replace("%1","VERouteOptions").replace("%2","RouteMode").replace("%3",a.RouteMode.toString()));VEValidator.ValidateBoolean(a.DrawRoute,"routeOptions.DrawRoute");if(a.RouteCallback)VEValidator.ValidateFunction(a.RouteCallback,"routeOptions.RouteCallback");VEValidator.ValidateFloat(a.RouteWeight,"routeOptions.RouteWeight");VEValidator.ValidateObject(a.RouteColor,"routeOptions.RouteColor",VEColor,"VEColor");VEValidator.ValidateInt(a.RouteZIndex,"routeOptions.RouteZIndex");VEValidator.ValidateBoolean(a.SetBestMapView,"routeOptions.SetBestMapView");VEValidator.ValidateBoolean(a.ShowDisambiguation,"routeOptions.ShowDisambiguation");VEValidator.ValidateBoolean(a.ShowErrorMessages,"routeOptions.ShowErrorMessages");VEValidator.ValidateBoolean(a.UseMWS,"routeOptions.UseMWS");VEValidator.ValidateBoolean(a.UseTraffic,"routeOptions.UseTraffic");if(!$MVEM.IsEnabled(MapControl.Features.RouteOptions.UseMWS)&&a.UseMWS)throw new VEException("","err_notSupportProperty",L_UnsupportProperty_Text.replace("%1","VERouteOptions").replace("%2","UseMWS").replace("%3","true"));if(!$MVEM.IsEnabled(MapControl.Features.RouteOptions.UseTraffic)&&a.UseTraffic)throw new VEException("","err_notSupportProperty",L_UnsupportProperty_Text.replace("%1","VERouteOptions").replace("%2","UseTraffic").replace("%3","true"));m_routeOptions=a}else m_routeOptions=new VERouteOptions;m_locations=[];m_currentLocationIndex=0;m_requestQueue=[];var i=e.length;for(var d=0;d0){var b=m_requestID;function c(c){if(m_requestID==b)a.Callback(c,a.ID)}var a=m_requestQueue.shift();m_vemap.vemapcontrol.Fire("onstartrequest");VEAPIRequestInvoke(a.Service,a.Params,c,m_vemap)}else self.ExecuteRouteRequest()};this.ExecuteRouteRequest=function(){var d=m_requestID;function e(a){if(m_requestID==d)self.RouteResponseHandler(a)}var a=[],c="",f=m_locations.length;for(var b=0;b0)if(a.Results.length==1||!m_routeOptions.ShowDisambiguation||a.Results[0].MatchConfidence!=a.Results[1].MatchConfidence){var b=GetRouteLocation(a.Results[0]);if(b!=null)m_locations[e]=new VELatLong(b.Coordinates.Latitude,b.Coordinates.Longitude);self.ExecuteNextRequest()}else{var g=a.Results[0].MatchConfidence,f=[];for(var d=0;d0){if(m_routeOptions.DrawRoute){var shapes=[],stepIndex=0;for(var routeLegIndex=0;routeLegIndex0){var c=a.length;for(var b=0;b0){VE_TrafficManager.incidentsAvailable=true;for(var a=0;a0){var e=a.length;for(var c=0;cb.TopLeftLatLong.Latitude||a.BottomRightLatLong.Longitudeb.BottomRightLatLong.Longitude)};VE_TrafficManager.GetTrafficInfo=function(){if(!VE_TrafficManager.turnedOn)return;try{if(VE_TrafficManager.m_vemap.vemapcontrol.IsModeEnabled(Msn.VE.MapActionMode.Mode3D))if(VE_TrafficManager.showTrafficFlow)VE_TrafficManager.m_vemap.vemapcontrol.Show3DTraffic(false);else VE_TrafficManager.m_vemap.vemapcontrol.Remove3DTraffic();var a=VE_TrafficManager.m_vemap.GetZoomLevel();if(VE_TrafficManager.m_vemap.vemapcontrol.IsMapViewOblique())return;VE_TrafficManager.prevZoomLevel=a;VE_TrafficManager.prevMapStyle=VE_TrafficManager.m_vemap.GetMapStyle();VE_TrafficManager.incidentsAvailable=false;VE_TrafficManager.flowAvailable=false;VE_TrafficManager._ClearPins();VE_TrafficManager.m_vemap.vemapcontrol.ClearTileLayer("Traffic");if(a>VE_TrafficManager.displayAtZoomlevelMin){VE_TrafficManager._GetIncidents(VE_TrafficManager.showIncidents);if(VE_TrafficManager.showTrafficFlow&&VE_TrafficManager.flowAvailable&&a0){var d=VE_TrafficManager.showingMarkets.length;for(var b=0;b0&&$MVEM.IsEnabled(MapControl.Features.Traffic.ShowIncidents)){VE_TrafficManager._RemoveDuplicates(a);VE_TrafficManager._RenderTrafficInfo(a)}}if(this.LastUpdateTimestamp!=null&&typeof this.LastUpdateTimestamp!="undefined")VE_TrafficManager.SetTrafficLegendText(this.LastUpdateTimestamp);VE_TrafficManager.ShowTrafficLegend();if(VE_TrafficManager.m_vemap){var c=VE_TrafficManager.m_vemap.GetDashboardSize();if(c==VEDashboardSize.Small||c==VEDashboardSize.Tiny)VE_TrafficManager.ShowTrafficLegend(41,37)}}};VE_TrafficManager._RenderTrafficInfo=function(c){if(c)VE_TrafficManager._ClearPins(c);else VE_TrafficManager._ClearPins();var e=VE_TrafficManager.m_vemap.GetZoomLevel();if(e>VE_TrafficManager.displayAtZoomlevelMin){if(c==null)return;if(VE_TrafficManager.incidents[c]!=null){var b=VE_TrafficManager.incidents[c],f=VE_TrafficManager.incidents[c].length;for(var a=0;a0&&d>VE_TrafficManager.displayAtZoomlevelMin){for(var b=0;b