ÿþ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_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="Virtual Earth cannot 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_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_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_DashboardBirdsEye_Text="Bird's eye",L_DashboardBirdsEyeText_Text="See this location in bird's eye view",L_Dashboard3DText_Text="See this location in Virtual Earth 3D",L_Dashboard3DInstalled_Text="Virtual Earth 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 Virtual Earth 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 the mouse button.",L_ZoomBarPlusToolTip_Text="Zoom in. To zoom continuously, click and hold the mouse 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="Virtual Earth 3D is currently not supported for your browser. For a list of supported browsers, see Help.",L_NoHardwareAcceleration_Text="Virtual Earth 3D has detected that hardware acceleration is turned off.",L_3DLoading_Text="Initializing Virtual Earth 3D (Beta).",L_MapLegendTrafficSlow_Text="Slow",L_MapLegendTrafficFast_Text="Fast",L_GeoRssInvalidFormatError_Text="The GeoRSS file you have tried to import is improperly formatted.",L_MapControlNavteq_Text="&copy; 2008 NAVTEQ",L_MapControlImageCourtesyOfNASA_Text="Image courtesy of NASA",L_MapControlHarrisCorp_Text="&copy; Harris Corp, Earthstar Geographics LLC",L_MapControlImageCourtesyOfUSGS_Text="Image courtesy of USGS",L_MapControlImageCourtesyOfPictometry_Text="&copy; 2008 Pictometry International Corp.",L_MapControlImageCourtesyOfGetmapping_Text="&copy; Getmapping plc",L_MapControlImageCourtesyOfAND_Text="&copy; AND",L_MapControlImageCourtesyOfBlom_Text="&copy; 2008 Blom",L_MapCopyrightMicrosoft="&copy; 2008 Microsoft Corporation",L_MapCopyrightTraffic="Traffic.com",L_MapControlPlatformName_Text="Virtual Earth",L_MapControlImageCourtesyOfGeoEye_Text="&copy; 2008 GeoEye",L_MapControlImageCourtesyOfMapDataSciences_Text="&copy; 2007 MapData Sciences Pty Ltd",L_MapControlImageCourtesyOfZenrin_Text="&copy; 2007 Zenrin",L_MapControlImageCourtesyOfPasco_Text="&copy; 2005 Pasco",L_MapControlImageCourtesyOfIntergraph_Text="&copy; GeoContent / (p) Intergraph",L_MapControlImageCourtesyOfTerraItaly_Text="&copy; 2007 TerraItaly",L_MapControlImageCourtesyOfIntermap_Text="&copy; 2007 Intermap",L_MapControlImageCourtesyOfIndianaMap_Text="Image courtesy of the IndianaMap",L_MapControlImageCourtesyOfStateOfNevada_Text="Image courtesy of the Nevada State Mapping Advisory Committee",L_MapControlImageCourtesyOfInterAtlas_Text="&copy; 2007 InterAtlas",L_MapControlImageCourtesyOfEurosense_Text="&copy; 2008 Eurosense",L_MapControlImageCourtesyOfIGP_Text="&copy; 2008 IGP",L_MapControlImageCourtesyOfIGN_Text="&copy; 2008 IGN",L_MapControlImageCourtesyOfBEV_Text="&copy; 2008 BEV / (p) Intergraph",L_SupportedBrowserDownloadUrl_Text="http://www.microsoft.com/windows/ie/downloads/default.mspx";_VERegisterNamespaces("MapControl");MapControl.Features={PlatformName:L_MapControlPlatformName_Text,Copyright:{Navteq:L_MapControlNavteq_Text,ImageCourtesyOfNASA:L_MapControlImageCourtesyOfNASA_Text,HarrisCorp:L_MapControlHarrisCorp_Text,ImageCourtesyOfUSGS:L_MapControlImageCourtesyOfUSGS_Text,ImageCourtesyOfPictometry:L_MapControlImageCourtesyOfPictometry_Text},Image:{PoweredLogo:"logo_powered_by.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"}},Minimap:{ShowByDefault:false}};function _VERegisterNamespaces(){for(var d=0;d<arguments.length;d++){var b=arguments[d].split("."),c=window;for(var a=0;a<b.length;a++){if(!c[b[a]])c[b[a]]={};c=c[b[a]]}}}_VERegisterNamespaces("Msn.MVC");Msn.MVC.AbstractView=function(){this._contextPin=null};Msn.MVC.AbstractView.prototype.OnBeforeSwitchAway=function(){};Msn.MVC.AbstractView.prototype.ShowShimIfSupported=function(){};Msn.MVC.AbstractView.prototype.UpdateShimIfSupported=function(){};_VERegisterNamespaces("Msn.MVC");Msn.MVC.FlatlandView=function(){this._superObj=Msn.MVC.FlatlandView.prototype;this._mapDrawingView=null};Msn.MVC.FlatlandView.prototype=new Msn.MVC.AbstractView;Msn.MVC.FlatlandView.prototype.OnBeforeSwitchAway=function(){if(window.__drawingLoaded){this._ClearAllCollectionLayers();VE_MapDispatch.Clear()}};_VERegisterNamespaces("Msn.MVC");Msn.MVC.View3D=function(){this._superObj=Msn.MVC.View3D.prototype;this._hackUniqueLayerId="UniqueLayer_Hack";this._entityIdShapePostfix="_Shape";this._spacecontrol=null};Msn.MVC.View3D.prototype=new Msn.MVC.AbstractView;Msn.MVC.View3D.prototype.OnBeforeSwitchAway=function(){this._SetView3DControl(null)};Msn.MVC.View3D.prototype._SetView3DControl=function(a){this._spacecontrol=a};Msn.MVC.View3D.prototype.ShowShimIfSupported=function(b,a){ShowShim(b,a)};Msn.MVC.View3D.prototype.UpdateShimIfSupported=function(b,a){UpdateIFrameShim(b,a)};_VERegisterNamespaces("Msn.MVC");Msn.MVC.ViewFacade=function(){this._mvcFlatlandView=null;this._mvcView3D=null;this._curMvcView=null};Msn.MVC.ViewFacade.prototype.OnSwitchToFlatlandView=function(){if(this._mvcFlatlandView==null)this._mvcFlatlandView=new Msn.MVC.FlatlandView;if(this._curMvcView==this._mvcFlatlandView)return;if(this._curMvcView!=null)this._curMvcView.OnBeforeSwitchAway();this._curMvcView=this._mvcFlatlandView;if(window.__drawingLoaded)this._curMvcView.OnAllCollectionLayersRepaint()};Msn.MVC.ViewFacade.prototype.OnSwitchToView3D=function(a){if(this._mvcView3D==null)this._mvcView3D=new Msn.MVC.View3D;this._mvcView3D._SetView3DControl(a);if(this._curMvcView==this._mvcView3D)return;if(this._curMvcView!=null)this._curMvcView.OnBeforeSwitchAway();this._curMvcView=this._mvcView3D;if(window.__drawingLoaded)this._curMvcView.OnAllCollectionLayersRepaint()};Msn.MVC.ViewFacade.prototype.ShowShimIfSupported=function(b,a){if(this._curMvcView==null)return;return this._curMvcView.ShowShimIfSupported(b,a)};Msn.MVC.ViewFacade.prototype.UpdateShimIfSupported=function(b,a){if(this._curMvcView==null)return;return this._curMvcView.UpdateShimIfSupported(b,a)};var mvcViewFacade=new Msn.MVC.ViewFacade,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;c<e.length;c++){var a=e[c].split("=");if(a.length==2&&a[0]&&a[1]){b.push(unescape(a[0]));b.push(unescape(a[1]))}}return b}function ParseShiftKeyForLinks(a){if(a.shiftKey)return false;return true}function GetEvent(a){return a?a:window.event}function CancelEvent(a){a.cancelBubble=true;a.returnValue=false}function IgnoreEvent(a){a=GetEvent(a);CancelEvent(a);return false}function GetMouseScrollDelta(a){if(a.wheelDelta)return a.wheelDelta;else if(a.detail)return -a.detail;return 0}function IsLeftMouseButton(a){var b=Msn.VE.Environment.BrowserInfo;if(b.Type==Msn.VE.BrowserType.MSIE)return a.button==1||a.button==3||a.type=="click";else if(b.Type==Msn.VE.BrowserType.Firefox)return a.which==1;else return false}function IsRightMouseButton(a){var b=Msn.VE.Environment.BrowserInfo;if(b.Type==Msn.VE.BrowserType.MSIE)return a.button==2||a.button==3||a.type=="contextmenu";else if(b.Type==Msn.VE.BrowserType.Firefox)return a.which==3;else return false}function IsMiddleMouseButton(b){var a=Msn.VE.Environment.BrowserInfo;if(a.Type==Msn.VE.BrowserType.MSIE)return b.button==4;else if(a.Type==Msn.VE.BrowserType.Firefox)return b.which==2;else return false}_VERegisterNamespaces("Msn.VE");Msn.VE.DistanceUnit={Kilometers:"km",Miles:"mi"};Msn.VE.DistanceUnit.IsValidType=function(a){if(typeof a=="string")if(a==Msn.VE.DistanceUnit.Miles||a==Msn.VE.DistanceUnit.Kilometers)return true;return false};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 MathFloor(a){return Math.floor(a)}function MathCeil(a){return Math.ceil(a)}function MathMax(a,b){return Math.max(a,b)}function MathMin(a,b){return Math.min(a,b)}function MathAbs(a){return Math.abs(a)}function MathRound(a){return Math.round(a)}function DegToRad(a){return a*Math.PI/180}function RadToDeg(a){return a*180/Math.PI}function MatrixMultiply(e,b){if(!e||!b||e[0].length!=b.length)return;var g=e.length,h=b[0].length,d=new Array(g),i=b.length;for(var a=0;a<g;a++){d[a]=new Array(h);for(var c=0;c<h;c++){d[a][c]=0;for(var f=0;f<i;f++)d[a][c]+=e[a][f]*b[f][c]}}return d}function VEParameter(b,a){this.Name=b;this.Value=a}VEParameter.prototype.Name=this.name;VEParameter.prototype.Value=this.value;function VENetwork(c,a,b){if(c!=null&&c!="undefined")this.ServiceUrl=c;this.UseCloseDep=false;if(a!=null&&a!="undefined")Msn.VE.API.Globals.veonbegininvokeevent=a;if(b!=null&&b!="undefined")Msn.VE.API.Globals.veonendinvokeevent=b}function BeginInvoke(f,d,h,g,j){if(this.ServiceUrl==null||this.ServiceUrl=="undefined"||this.ServiceUrl.length==0)throw new VEException("VENetwork:BeginInvoke","err_noserviceurl",L_noserviceurl_text);if(Msn.VE.API&&Msn.VE.API.Globals.veonbegininvokeevent)Msn.VE.API.Globals.veonbegininvokeevent();var c=j;if(!c)c=VENetwork.GetExecutionID();if(d){var b=this.ServiceUrl+"?";for(var e=0;e<d.length;e++){b=b+d[e].Name;b=b+"=";b=b+d[e].Value;b=b+"&"}}else var b=this.ServiceUrl;var a=document.createElement("script");a.type="text/javascript";a.language="javascript";a.id=c;a.src=b;if(this.UseCloseDep==true){var i=openDependency("BEGIN_INVOKE::"+c,function(){EndInvoke(g,h,f,a,c)},c);if(i)VENetwork.GetAttachTarget().appendChild(a)}else{if(navigator.userAgent.indexOf("IE")>=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<VEMapserviceTypeList.length;a++)if(c==VEMapserviceTypeList[a]){b=a;break}return b};IsValidMapserviceType=function(a){return a!=null&&typeof a!="undefined"&&a!=""&&VEMapserviceTypeIndex(a)!=-1};IsValidMapserviceSource=function(a){return a!=null&&typeof a!="undefined"&&a!=""};IsValidMapserviceMetadata=function(a){return a!=null&&typeof a!="undefined"&&a!=""};IsValidMapserviceOpacity=function(a){return a!=null&&typeof a!="undefined"&&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 "#"+Number(this.R).toString(16)+(this.R<16?"0":"")+Number(this.G).toString(16)+(this.G<16?"0":"")+Number(this.B).toString(16)+(this.B<16?"0":"")}};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;l<i.length;l++)f.push(i[l]);var k=a.LEFT;while(k<=8){var q=f[f.length-2],r=f[f.length-1];f.push(q);f.push(r);var h=[],p=f.length;for(var j=0;j<p-2;j=j+2)g(h,k,f[j],f[j+1],f[j+2],f[j+3]);if(m){var n=h.length;if(h[n-2]!=h[0]||h[n-1]!=h[1]){h.push(h[0]);h.push(h[1])}}f=null;k=k*2;f=h}return f}function g(g,j,h,i,k,l){var n=f(h,i),o=f(k,l);if((j&n)==0&&(j&o)==0){g.push(h);g.push(i)}else if((j&n)==0||(j&o)==0){var m=(j&n)==0?true:false;if(j==a.LEFT){var q=i+(l-i)*(b-h)/(k-h);if(m){g.push(h);g.push(i)}g.push(b);g.push(q)}else if(j==a.RIGHT){var q=i+(l-i)*(c-h)/(k-h);if(m){g.push(h);g.push(i)}g.push(c);g.push(q)}else if(j==a.TOP){var p=h+(k-h)*(e-i)/(l-i);if(m){g.push(h);g.push(i)}g.push(p);g.push(e)}else if(j==a.BOTTOM){var p=h+(k-h)*(d-i)/(l-i);if(m){g.push(h);g.push(i)}g.push(p);g.push(d)}};}function f(g,h){var f=0;if(g<b)f=f|a.LEFT;else if(g>c)f=f|a.RIGHT;if(h<d)f=f|a.BOTTOM;else if(h>e)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(e,b){if(document.all)return new Msn.Drawing.VMLGraphic(e,b);else{if(navigator.userAgent.indexOf("KHTML")!==-1)return new Msn.Drawing.SVGGraphic(e,b);var c=0,f=0,g=new RegExp("Firefox/(.*)"),d=g.exec(navigator.userAgent);if(d&&d.length>=2){var a=d[1].split(".");if(a){c=a[0];f=a[1];if(parseInt(c)>0&&parseInt(f)>=5||parseInt(c)>=2)return new Msn.Drawing.SVGGraphic(e,b)}}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(d,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");var f=LatLongtoRoundedPixel(d,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+d.GetOffsetX()+"px";b.style.top=-5+f.y+d.GetOffsetY()+"px";b.style.position=a.symbol.style_position}else{b=document.createElement("v:shape");b.className="MSVE_Shape";var g=null;g=GetVmlPath(d,a);var h=d.GetMapWidth(),i=d.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.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 e=document.createElement("v:fill");e.color=a.symbol.fill_color;e.colors=a.symbol.fill_colors;e.color2=a.symbol.fill_color2;e.type=a.symbol.fill_type;e.opacity=a.symbol.fill_opacity;b.appendChild(e)}else if(a.type==VEShapeType.Polyline){b.fill=false;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="<xml:namespace ns='urn:schemas-microsoft-com:vml' prefix='v'/>";a.appendChild(this._printTilesLayer);this._printTopLayer=document.createElement("div");this._printTopLayer.className="MSVE_Print_TopLayer";this._printTopLayer.innerHTML="<xml:namespace ns='urn:schemas-microsoft-com:vml' prefix='v'/>";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="<v:image src='"+f+"' style='width:100%;height:100%;left:0px;top:0px;behavior:url(#default#VML);display:inline-block;'></v:image>";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";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.zIndex<b)a=a.nextSibling;if(!a||a.style.zIndex!=b){var c=document.createElementNS("http://www.w3.org/2000/svg","g");c.style.zIndex=b;this._printTilesLayer.insertBefore(c,a);a=c}a.appendChild(d)};Msn.Drawing.SVGGraphic.prototype.RemovePrintTile=function(a){if(this._printable)a.parentElement.removeChild(a)};Msn.Drawing.SVGGraphic.prototype.RePositionPrintTile=function(a,c,b){a.setAttributeNS(null,"x",b-this._offsetX);a.setAttributeNS(null,"y",c-this._offsetY)};Msn.Drawing.SVGGraphic.prototype.SetOffset=function(a,b){this._offsetX=a;this._offsetY=b};Msn.Drawing.SVGGraphic.prototype.AddLogo=function(b){if(this._printable){var a=document.createElementNS("http://www.w3.org/2000/svg","image");a.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",b);a.setAttributeNS(null,"class","MSVE_PoweredByLogo_print");a.setAttributeNS(null,"x",6);a.setAttributeNS(null,"y",parseInt(this._printTopLayer.getAttribute("height"))-79);this._printLogo=a;this._printTopLayer.appendChild(a)}};Msn.Drawing.SVGGraphic.prototype.RepositionLogo=function(b,a){if(this._printable&&this._printLogo)this._printLogo.setAttributeNS(null,"y",parseInt(a)-79)};Msn.Drawing.SvgLayer=function(f,g){var c=g,b=null,e=false,h=false;if(e==false){e=true;b=document.createElementNS("http://www.w3.org/2000/svg","svg");b.setAttribute("height","100%");b.setAttribute("width","100%");f.appendChild(b);this.lineDashStyles=[];var a=this.lineDashStyles;a[0]=["Solid","none"];a[1]=["ShortDash","6,2"];a[2]=["ShortDot","2,2"];a[3]=["ShortDashDot","6,2,2,2"];a[4]=["ShortDashDotDot","6,2,2,2,2,2"];a[5]=["Dot","2,6"];a[6]=["Dash","10,6"];a[7]=["LongDash","20,6"];a[8]=["DashDot","10,6,2,6"];a[9]=["LongDashDot","20,6,2,6"];a[10]=["LongDashDotDot","20,6,2,6,2,6"]}this.addShape=function(e){if(b==null)return;var a=null;if(e.type==VEShapeType.Pushpin){a=document.createElementNS("http://www.w3.org/2000/svg","rect");var i=LatLongtoRoundedPixel(c,e.points[1],e.points[0]);a.setAttribute("x",i.x-4);a.setAttribute("y",i.y-4);a.setAttribute("width","8pt");a.setAttribute("height","8pt");a.setAttribute("stroke-width",e.symbol.stroke_weight);a.setAttribute("stroke",e.symbol.stroke_color);a.setAttribute("fill",e.symbol.fill_color);b.appendChild(a)}else if(e.type==VEShapeType.Polyline||e.type==VEShapeType.Polygon){var h=e.type==VEShapeType.Polygon?true:false;a=document.createElementNS("http://www.w3.org/2000/svg",h?"polygon":"polyline");a.setAttributeNS(null,"class","MSVE_Shape");a.setAttribute("points",GetSvgPath(c,e.points));a.setAttribute("stroke",e.symbol.stroke_color);a.setAttribute("stroke-width",e.symbol.stroke_weight);a.setAttribute("stroke-linejoin",e.symbol.stroke_joinstyle);a.setAttribute("stroke-opacity",d(e.symbol.stroke_opacity));var g=this.lineDashStyles;for(var f=0;f<g.length;f++)if(e.symbol.stroke_dashstyle==g[f][0])a.setAttribute("stroke-dasharray",g[f][1]);if(!h)a.setAttribute("fill","none");else{a.setAttribute("fill-rule","evenodd");a.setAttribute("fill",e.symbol.fill_color);a.setAttribute("fill-opacity",d(e.symbol.fill_opacity))}}if(a){a.setAttribute("id",e.id!=0?e.id:e.iid);b.appendChild(a)}return a};function d(b){var a=parseFloat(b);if(a==NaN)a=.3;else if(a>1)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<f.length;e++)if(a.symbol.stroke_dashstyle==f[e][0])c.setAttribute("stroke-dasharray",f[e][1]);if(a.type==VEShapeType.Polyline)c.setAttribute("fill","none");else{c.setAttribute("fill",a.symbol.fill_color);c.setAttribute("fill-opacity",d(a.symbol.fill_opacity))}}return a};this.CreatePrintLayer=function(c){var a=null;if(b){a=document.createElementNS("http://www.w3.org/2000/svg","g");a.setAttributeNS(null,"class",c);b.insertBefore(a,b.firstChild)}return a}};function GetSvgPath(j,e){if(!e)return null;var a=0,k=e.length,f=k/2,i=0,c=new Array(Math.max(128,Math.round(k/8))),b=null,l=0,m=0,g=0,h=0;while(a<f){g=e[a*2];h=e[a*2+1];if(a==f-1||a==0||VE_IsDisplayLatLon(j,l,m,g,h,f)){b=LatLongtoRoundedPixel(j,h,g);if(!b)return;var d="";if(a<f-1)d=d.concat(b.x,",",b.y,",");else d=d.concat(b.x,",",b.y);if(i>=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<m){c=h[g*2];d=h[g*2+1];if(!k){a.minX=Math.min(a.minX,c);a.minY=Math.min(a.minY,d);a.maxX=Math.max(a.maxX,c);a.maxY=Math.max(a.maxY,d)}if(VE_IsDisplayLatLon(j,n,o,c,d,m)||g==m-1){f=LatLongtoRoundedPixel(j,d,c);if(!f)return null;var i="";i=i.concat(f.x+p,",",f.y+q," ");if(e>=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(q=="o"){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.x2<a.x2&&b.y2<a.y2)c=true;return c}Msn.Drawing.ComputeBoundingBox=function(a){if(typeof a=="undefined"||a==null||a.length==0)return null;var c=[],f=Infinity,g=Infinity,d=-Infinity,e=-Infinity;for(var b=0;b<a.length;b=b+2){f=Math.min(f,a[b]);g=Math.min(g,a[b+1]);d=Math.max(d,a[b]);e=Math.max(e,a[b+1])}c[0]=f;c[1]=g;c[2]=d;c[3]=e;return c};function IsBoundsIntersect(a,b){if(a==null)return true;if(b==null)return true;if(a.x2<b.x1||a.x1>b.x2||a.y2<b.y1||a.y1>b.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(a<g||c>e||b<h||d>f)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 "#"+Number(c).toString(16)+(c<16?"0":"")+Number(b).toString(16)+(b<16?"0":"")+Number(a).toString(16)+(a<16?"0":"")}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<c.length;b++)this.pseudoHover(c[b])}function pseudoHoverRemove(a){if(!document.all)return;a.className=a.className.replace(/\s*ms_pseudoHover/g,"")}_VERegisterNamespaces("Msn.VE.Css");Msn.VE.CurrentDomain=typeof Msn.VE.API!="undefined"&&Msn.VE.API!=null?Msn.VE.API.Globals.vecurrentdomain:".";Msn.VE.Css={Cursors:{Auto:"auto",Default:"default",Crosshair:"crosshair",Pointer:"pointer",Move:"move",Wait:"wait",Text:"text",Help:"help",NResize:"n-resize",NEResize:"ne-resize",NWResize:"nw-resize",SResize:"s-resize",SEResize:"se-resize",SWResize:"sw-resize",EResize:"e-resize",WResize:"w-resize",CustomCursors:null,defineCustomCursors:function(c){Msn.VE.Css.Cursors.CustomCursors=c;var b,d=c.length;for(b=0;b<d;b++){var a=c[b];if(navigator.userAgent.indexOf(" Safari/")>-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<h;c++){var d=e[c],d=e[c].replace(/^\s*/,"").replace(/\s*$/,"");if(d.indexOf(" ")!=-1)continue;var f=new RegExp("(^| )"+d+"( |$)","i");if(g){if(!f.test(a.className))if(a.className=="")a.className=d;else a.className+=" "+d}else{var b=a.className;b=b.replace(f,"$1");b=b.replace(/ $/,"");a.className=b}}},getComputedStyle:function(b,c){var a=null;if(document.defaultView&&document.defaultView.getComputedStyle&&typeof document.defaultView.getComputedStyle!="undefined")a=document.defaultView.getComputedStyle(b,null);else a=b.currentStyle;return a[c]},setClip:function(c,d,e){var b=Msn.VE.Css.Functions.getClip(c,0),f=Msn.VE.Css.RegEx.RectClip,a=f.exec(b);a[d]=e;if(d==0)c.style.clip=a[0];else{a[d]=e;a.shift();b="rect("+a.join(" ")+")";c.style.clip=b}},getClip:function(d,e){var b=d.style.clip;if(b==""){var b=(window.opera?"auto":Msn.VE.Css.Functions.getComputedStyle(d,"clip"))||"auto";if(b=="auto")b="rect(auto auto auto auto)";else if(typeof b=="undefined"||b==null){var c=d.currentStyle;if(typeof c!="undefined"&&c!=null)b="rect("+c.clipTop+" "+c.clipRight+" "+c.clipBottom+" "+c.clipLeft+")"}}var f=Msn.VE.Css.RegEx.RectClip,a=f.exec(b);if(e==0)return a[0];a[1]=a[1]=="auto"?0:a[1];a[4]=a[4]=="auto"?0:a[4];a[2]=a[2]=="auto"?d.offsetWidth:a[2];a[3]=a[3]=="auto"?d.offsetHeight:a[3];if(e==5)return a;else return a[e]}}};_VERegisterNamespaces("Msn.VE");Msn.VE.OSType={Windows:1,Windows95:2,Windows98:3,WindowsMillenium:4,WindowsNT:5,WindowsNT4:6,Windows2000:7,Windows2000SP1:8,WindowsXP:9,WindowsXPSP2:10,WindowsServer2003:11,WindowsServer2003SP1:12,WindowsVista:13,MacOS:30,MacOS9:31,MacOSX:32,Linux:40,Unknown:100};Msn.VE.CLRType={CLR10:1,CLR11:2,CLR20:4,CLR30:8};Msn.VE.BrowserType={Firefox:1,MSIE:2,Opera:3,Unknown:10};Msn.VE.BrowserCaps={VML:1,SVG:2,WindowlessSelectElement:4,RightMouseButton:8,AddFavourite:16,VectorCapable:3};Msn.VE.BrowserInfo=function(){var a=this;this.Type=null;this.BrowserCaps=0;this.CLRType=0;this.MajorVersion=null;this.MinorVersion=null;this.versionString=null;this.UserAgent=null;this.OSType=null;this.Locale=null;if(arguments.length==0){this.UserAgent=window.navigator.userAgent;this.currentBrowser=true}else{this.UserAgent=arguments[0];this.currentBrowser=false;if(arguments.length>=2)this.Locale=arguments[1]}this.IsCompatibleWith=function(c){for(var b=0;b<c.length;b++){var a=c[b];if(a.Type==this.Type&&(this.MajorVersion>a.MajorVersion||a.MajorVersion==this.MajorVersion&&a.MinorVersion>=this.MinorVersion))return true}return false};function b(){if(a.UserAgent.indexOf("Mac")==-1&&(a.UserAgent.indexOf("Gecko")!=-1||a.UserAgent.indexOf("MSIE")!=-1))a.BrowserCaps|=Msn.VE.BrowserCaps.RightMouseButton}function c(){if(a.UserAgent.indexOf("MSIE 7")!=-1||a.UserAgent.indexOf("Gecko")!=-1)a.BrowserCaps|=Msn.VE.BrowserCaps.WindowlessSelectElement}function j(){if(a.UserAgent.indexOf("Mac")==-1&&(a.UserAgent.indexOf("MSIE 5")!=-1||a.UserAgent.indexOf("MSIE 6")!=-1||a.UserAgent.indexOf("MSIE 7")!=-1))a.BrowserCaps|=Msn.VE.BrowserCaps.VML}function i(){if(a.UserAgent.indexOf("MSIE")==-1){var d=0,e=0,f=new RegExp("Firefox/(.*)"),c=f.exec(a.UserAgent);if(c&&c.length>=2){var b=c[1].split(".");if(b){d=b[0];e=b[1];if(parseInt(d)>0&&parseInt(e)>=5)a.BrowserCaps|=Msn.VE.BrowserCaps.SVG}}}}function h(){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("<DIV STYLE='behavior:url(#default#clientCaps); display: none' ID='__clientCaps'>");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 e(){if(a.UserAgent.indexOf("MSIE")!=-1){var c=new RegExp("MSIE ([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("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]).([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 g(){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 d(){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 f(){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 k(){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;e();g();d();f();h();i();j();c();b()}k()};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.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};_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,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]=213;generations[aerialStyle]=213;generations[hybridStyle]=213;generations[obliqueStyle]=213;generations[obliqueHybridStyle]=213;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,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;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);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)}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(p_elSource);logo.Init()}if(typeof copyright!="undefined"&&copyright!=null)copyright.Show();if(obliqueMode&&currentMode!=obliqueMode)obliqueMode.UpdateAvailability();graphicCanvas=GetGraphic(this);tileLayerManager.Active=true;if(currentView==null)SetDefaultView();else{if(a==true||!Initialized2D){SetView(currentView);Initialized2D=true}SetView(null)}if(p_htParams.showScaleBar){scaleBar=new ScaleBar(p_elSource);scaleBar.Init();if(currentScaleBarUnit)this.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)}Fire("oninitmode",Msn.VE.MapActionMode.Mode2D)};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<d.length;c++)UpdateIFrameShim(d[c])}if(mapLegend)mapLegend.UpdateShim();var b;try{if(currentView==null)b=SetDefaultView();else{var a=currentView.MakeCopy();if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){a.SetMapStyle(lastOrthoMapStyle);a.SetZoomLevel(a.GetZoomLevel()+zoomLevelToAdjustObliqueToOrthro)}a.SetCenterLatLong(new Msn.VE.LatLong(currentView.latlong.latitude,currentView.latlong.longitude));a.cameraLatlong=currentView.cameraLatlong;b=SetView(a)}}catch(e){b=false}if(!b){this._Disable3DMode(true);return}if(!view3DCreated)return;mvcViewFacade.OnSwitchToView3D(spacecontrol);if(p_htParams.showDashboard)spacecontrol.ShowNavigationControl=true;if(typeof p_htParams.hideCopyright=="undefined"||!p_htParams.hideCopyright)spacecontrol.ShowCopyright=true;if(typeof copyright!="undefined"&&copyright!=null)copyright.Hide();if(p_htParams.showScaleBar)spacecontrol.ShowScale=true;this.SetScaleBarDistanceUnit(currentScaleBarUnit);spacecontrol.AttachEvent("OnHardwareCapabilitiesUpdate","OnHardwareCapabilitiesUpdate");if(spacecontrol.HardwareClassificationLevel>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);if(typeof VE_BrandExplorationManager!="undefined"&&VE_BrandExplorationManager!=null)VE_BrandExplorationManager.Clear();LoadStreetLevelGeometry(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=""}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 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&&currentMode!=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);if(typeof VE_TrafficManager!="undefined"&&VE_TrafficManager!=null)VE_TrafficManager.CloseTrafficLegend();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.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){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<b.length;a++)destroyIFrameShim(b[a].id)}if(mapLegend)mapLegend.RemoveShim();Fire("ondestroymode",Msn.VE.MapActionMode.Mode3D)};function OnView3DScaleBarPositionUpdate(){var a=VE_TrafficManager.turnedOn?25:0;if(spacecontrol!=null)spacecontrol.RaiseEvent("CB24F613-FE72-442e-857A-BB2FD6BFBAA5","OnScaleBarPositionChange",a)}function UpdateFromParent(){var a=g(p_elSource).getPagePosition();x=a.x;y=a.y;width=p_elSource.offsetWidth;height=p_elSource.offsetHeight}function CreateDashboard(c,d,b,h,e,g,f,a){if(currentMode==threeDMode&&currentMode!=null)b=Msn.VE.DashboardSize.Normal;dashboard=Msn.VE.NavControlFactory(p_elSource,p_this,b,h,e,g,f,a);dashboard.Init();dashboardContainer=dashboard.GetElement();if(a==5){if(isFinite(parseInt(c)))dashboardContainer.style.left=c+"px";if(isFinite(parseInt(d)))dashboardContainer.style.top=d+"px"}}function CreateMinimap(c,d,a,f,g,h,e){minimapContainer=document.createElement("div");if(typeof a!="undefined"&&a!=null)minimapContainer.id=a;else minimapContainer.id="MSVE_minimap";p_elSource.appendChild(minimapContainer);minimapContainer.attachEvent("onmousedown",IgnoreEvent);minimapContainer.attachEvent("onmouseup",IgnoreEvent);minimapContainer.attachEvent("onmousemove",DashboardContainerMouseMoveEvent);minimapContainer.attachEvent("onmousewheel",IgnoreEvent);minimapContainer.attachEvent("ondblclick",IgnoreEvent);minimapContainer.attachEvent("oncontextmenu",IgnoreEvent);minimapContainer.attachEvent("onkeydown",IgnoreEvent);minimapContainer.attachEvent("onkeyup",IgnoreEvent);minimapControl=new Msn.VE.Minimap(minimapContainer,p_this,g,h);if(e)minimapControl.SetClientToken(e);var b=f||IsMapViewOblique()||$MVEM.IsEnabled(MapControl.Features.Minimap.ShowByDefault);b=b&&IsModeEnabled(Msn.VE.MapActionMode.Mode2D);if(b)minimapControl.Init();if(typeof c!="undefined"&&c!=null&&typeof d!="undefined"&&d!=null)minimapControl.SetPosition(c,d);return minimapControl}function OnChangeView(){if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){var b=GetObliqueScene();if(b!=null&&targetTool){var a=Msn.VE.Geometry,e=g(p_elSource).getPagePosition(),c=new a.Point(e.x+(map.offsetLeft-originX),e.y+(map.offsetTop-originY)),d=2/currentView.zoomLevel,h=new a.Point(c.x+b.GetWidth()/d,c.y+b.GetHeight()/d),f=new a.Rectangle(c,h);f.scale(-256);targetTool.setBoundingArea(f);a=null}b=null}if(obliqueMode)obliqueMode.UpdateAvailability()}function SetDefaultView(){var a=new Msn.VE.MapView(p_this);a.SetCenterLatLong(new Msn.VE.LatLong(0,0));a.SetZoomLevel(1);a.SetMapStyle(roadStyle);SetBaseTileSource(a);SetView(a);Initialized2D=true}function SetAltitude(b){Sync3dView();var a=currentView.MakeCopy();a.SetAltitude(b);SetView(a)}function SetTilt(b){Sync3dView();var a=currentView.MakeCopy();a.SetTilt(b);SetView(a)}function SetDirection(b){Sync3dView();var a=currentView.MakeCopy();a.SetDirection(b);SetView(a)}function GetCurrentMode(){return currentMode}function GetObliqueMode(){return obliqueMode}function GetMapWidth(){return width}function GetMapHeight(){return height}function SetMapHeight(a){height=a;p_this.h=a;p_elSource.style.height=a}function GetCurrentMapView(){return preferredView.MakeCopy()}function SetCenter(c,b){Sync3dView();var a=preferredView.MakeCopy();a.SetCenterLatLong(new Msn.VE.LatLong(c,b));SetView(a)}function SetCenterAccurate(c,b){Sync3dView();var a=preferredView.MakeCopy();a.SetCenterLatLongAccurate(new Msn.VE.LatLong(c,b));SetView(a)}function SetMapStyle(b,f,c,e,d){Sync3dView();var a=currentView.MakeCopy();a.SetMapStyle(ValidateMapStyle(b),f,c,e,d);if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)!=Msn.VE.MapStyle.IsViewOblique(b))if(Msn.VE.MapStyle.IsViewOblique(b)){Fire("onstartmapstyleoblique");a.SetZoomLevel(1);lastOrthoZoomLevel=currentView.zoomLevel;lastOrthoMapStyle=currentView.mapStyle}else if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){Fire("onendmapstyleoblique");a.SetZoomLevel(lastOrthoZoomLevel)}a.latlong.latitude=GetCenterLatitude();a.latlong.longitude=GetCenterLongitude();if(currentMode==threeDMode)a._supressFlyToCall=true;SetView(a)}function SetScaleBarDistanceUnit(a){currentScaleBarUnit=a;if(scaleBar!=null){scaleBar.SetDistanceUnit(a);scaleBar.Update()}if(currentMode==threeDMode&&spacecontrol!=null){if(a==null)bUseKilometers=$MVEM.IsEnabled(MapControl.Features.ScaleBarKilometers);else bUseKilometers=a==Msn.VE.DistanceUnit.Kilometers;spacecontrol.DisplayMetricUnits=bUseKilometers}}function ValidateMapStyle(a){if(Msn.VE.MapStyle.IsViewOrtho(a)||Msn.VE.MapStyle.IsViewOblique(a))return a;else return roadStyle}function GetCenterLatitude(){if(currentMode==threeDMode){if(view3DCreated){var a=spacecontrol.GetCenterLatitude();return isNaN(a)?null:a}return null}else if(currentView!=null&&currentView!="undefined"&&currentView.latlong!=null&&currentView.latlong!="undefined"&&currentView.latlong.latitude!=null&&currentView.latlong.latitude!="undefined")return currentView.GetCenterLatLong().latitude;return null}function GetCenterLongitude(){if(currentMode==threeDMode){if(view3DCreated){var a=spacecontrol.GetCenterLongitude();return isNaN(a)?null:a}return null}else if(currentView!=null&&currentView!="undefined"&&currentView.latlong!=null&&currentView.latlong!="undefined"&&currentView.latlong.longitude!=null&&currentView.latlong.longitude!="undefined")return currentView.GetCenterLatLong().longitude;return null}function ComputeCenterPoint(a){currentView.latlong=currentMode.PixelToLatLong(currentView.center,currentView.zoomLevel);if(a)preferredView.Copy(currentView)}function GetLatitude(c){var b=new VEPixel(originX+offsetX+width/2,originY+offsetY+c),a=currentMode.PixelToLatLong(b,currentView.zoomLevel);if(!a)return null;return a.latitude}function GetLongitude(c){var b=new VEPixel(originX+offsetX+c,originY+offsetY+height/2),a=currentMode.PixelToLatLong(b,currentView.zoomLevel);if(!a)return null;return a.longitude}function GetY(b){var c=new Msn.VE.LatLong(b,currentView.center.longitude),a=LatLongToPixel(c);if(!a)return null;return MathRound(a.y)}function GetX(b){var c=new Msn.VE.LatLong(currentView.center.latitude,b),a=LatLongToPixel(c);if(!a)return null;return MathRound(a.x)}function LatLongToPixel(c,a){if(a==null||typeof a=="undefined")a=currentView.zoomLevel;var b=currentMode.LatLongToPixel(c,a);if(b!=null)if(currentMode!=threeDMode){b.x-=originX+offsetX;b.y-=originY+offsetY}return b}function LatLongToPixelAsync(c,a,d){if(a==null||typeof a=="undefined")a=currentView.zoomLevel;var b=function(a){if(a!=null&&typeof a!="undefined"&&currentMode!=threeDMode)for(var b=0;b<a.length;++b)if(a[b]!=null){a[b].x-=originX+offsetX;a[b].y-=originY+offsetY}d(a)};currentMode.LatLongToPixelAsync(c,a,b)}function PixelToLatLong(b,a){if(a==null||typeof a=="undefined")a=currentView.zoomLevel;var c=new VEPixel(b.x+originX+offsetX,b.y+originY+offsetY);return currentMode.PixelToLatLong(c,a)}function PixelToLatLongAsync(c,b,e){if(b==null||typeof b=="undefined")b=currentView.zoomLevel;var d=[];for(var a=0;a<c.length;++a)d[a]=new VEPixel(c[a].x+originX+offsetX,c[a].y+originY+offsetY);currentMode.PixelToLatLongAsync(d,b,e)}function GetZoomLevel(){return currentView.zoomLevel}function GetMapStyle(){return currentView.mapStyle}function GetMapMode(){var a=Msn.VE.MapActionMode.ModeUnknown;if(currentMode!=null)if(currentMode==threeDMode)a=Msn.VE.MapActionMode.Mode3D;else if(currentMode==orthoMode)a=Msn.VE.MapActionMode.Mode2D;else if(currentMode==obliqueMode)a=Msn.VE.MapActionMode.ModeOblique;return a}function GetMode(){var a=Msn.VE.MapActionMode.ModeUnknown;if(currentMode!=null)if(currentMode==threeDMode)a=Msn.VE.MapActionMode.Mode3D;else if(currentMode==orthoMode)a=Msn.VE.MapActionMode.Mode2D;else if(currentMode==obliqueMode)if(this.GetDashboard().GetMode()==1)a=Msn.VE.MapActionMode.Mode2D;else a=Msn.VE.MapActionMode.Mode3D;return a}function GetAltitude(){return currentView.GetAltitude()}function GetTilt(){return currentView.GetTilt()}function GetDirection(){return currentView.GetDirection()}function EnableMode(b,a){switch(b){case Msn.VE.MapActionMode.Mode3D:this._Enable3DMode(a);break;case Msn.VE.MapActionMode.Mode2D:default:this._Disable3DMode(a);UnHidePins()}}function _Enable3DMode(a){if(currentMode!=threeDMode&&currentMode!=null){VE_3DPhotoPluginObj=0;VE_3DGeoCommunityPluginObj=0;VE_3DStreetLevelGeometryObj=0;PluginEventRegistered=0;PhotoPluginEventRegistered=0;GeoCommunityPluginEventRegistered=0;StreetLevelGeometryEventRegistered=0;previousMode=currentMode;currentMode=threeDMode;this.Destroy2DOnly();if(typeof a!="undefined")init3dparam=a;this.Init3DOnly()}}function _Disable3DMode(a){if(currentMode==threeDMode&&currentMode!=null){previousMode=currentMode;currentMode=orthoMode;this.Destroy3DOnly();this.Init2DOnly(a)}}function ControlReady(){return IsModeEnabled(Msn.VE.MapActionMode.Mode2D)||IsModeEnabled(Msn.VE.MapActionMode.Mode3D)&&Get3DControl()!=null}function Get3DControl(){if(view3DCreated)return spacecontrol;return null}function IsModeEnabled(b){var a=currentMode!=null&&currentMode==threeDMode;switch(b){case Msn.VE.MapActionMode.Mode2D:return !a;break;case Msn.VE.MapActionMode.Mode3D:return a}return false}function Get3DVisibleArea(acceptRegionAroundCenter){if(!view3DCreated)return null;var lat1,lon1,lat2,lon2,lat3,lon3,lat4,lon4,aroundcenter,ret=spacecontrol.QueryRegion();eval(ret);if((acceptRegionAroundCenter=="undefined"||acceptRegionAroundCenter==false)&&aroundcenter==1)return null;var points=[];points.push(new Msn.VE.LatLong(lat1,lon1));points.push(new Msn.VE.LatLong(lat2,lon2));points.push(new Msn.VE.LatLong(lat3,lon3));points.push(new Msn.VE.LatLong(lat4,lon4));return points}function Show3DTraffic(a){if(view3DCreated)if(!traffic3dAdded||a){spacecontrol.AddImageSource("Terrain","Traffic",GetManifestUrl("http://go.microsoft.com/fwlink/?LinkID=98777"),1,.6);traffic3dAdded=true}}function Remove3DTraffic(){if(view3DCreated&&traffic3dAdded){spacecontrol.RemoveImageSource("Terrain","Traffic");traffic3dAdded=false}}function Show3DBirdseye(a,b){if(currentMode==threeDMode&&spacecontrol){ProcessPhotoPluginActionIn3D("PhotosEnabled","enabled="+(a?"1":"0")+";labels="+(b?"1":"0"),spacecontrol);p_this.Set3DPhotoPluginActive(a);p_this.UpdateCopyright()}}function Sync3dView(){if(spacecontrol&&spaceCameraIsFlying)spacecontrol.RaiseCameraChangedEvent()}function OnBeginCameraUpdate(){cameraUpdateCount++;spaceCameraIsFlying=true}function OnEndCameraUpdate(){spaceCameraIsFlying=false}function IsCameraFlying(){return spaceCameraIsFlying}function GetMetersPerPixel(b,a){if(!b)b=currentView.latlong.latitude;if(!a)a=currentView.zoomLevel;return Math.cos(DegToRad(b))*currentMode.MetersPerPixel(a)}function Fill(){var b=g(p_elSource).getStyle("width"),a=g(p_elSource).getStyle("height"),f=parseInt(b)-width,h=parseInt(a)-height;if(!/px$/.test(b))width=p_elSource.clientWidth||p_elSource.offsetWidth;else width=parseInt(b);if(!/px$/.test(a))height=p_elSource.clientHeight||p_elSource.offsetHeight;else height=parseInt(a);if(!panning)if(currentMode!=threeDMode){panning=true;var e=g(map).getComputedPosition(),c={x:e.x+f/2,y:e.y+h/2};offsetX=-c.x;offsetY=-c.y;var d=new VEPixel(width/2+originX+offsetX,height/2+originY+offsetY);currentView.SetCenter(d);preferredView.SetCenter(new VEPixel(d.x,d.y));window.setTimeout(tileLayerManager.PanView,1);g(map).slideToPoint(c,"quickly","MAP_SLIDE",function(){panning=false},Gimme.Animation.AccelerationLines.quickStartDecelerate)}else PanToView(currentView)}function Resize(b,a){if(resizeTimer!=null&&typeof resizeTimer=="number")window.clearTimeout(resizeTimer);p_this.w=b;p_this.h=a;resizeTimer=window.setTimeout(p_this.FireResize,250)}this.FireResize=function(){if(resizeInProgress)return;else resizeInProgress=true;var b=p_this.w,a=p_this.h;if(!b||b<=0||!a||a<=0)Fill();else{p_elSource.style.width=b+"px";p_elSource.style.height=a+"px";UpdateFromParent();if(currentMode==null||currentMode!=threeDMode){if(b&&b>=0)width=b;if(a&&a>=0)height=a}PanToView(currentView)}if(copyright)copyright.Reposition();if(scaleBar)scaleBar.Reposition();if(!document.all)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&&currentMode!=threeDMode}function SetObliqueScene(a){if(obliqueMode)SetMapStyle(obliqueStyle,a,null)}function SetObliqueLocation(e,b,c,d){if(obliqueMode){Sync3dView();var a=currentView.MakeCopy();a.SetMapStyle(obliqueStyle,null,b);a.SetZoomLevel(c);if(!Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){Fire("onstartmapstyleoblique");lastOrthoZoomLevel=currentView.zoomLevel;lastOrthoMapStyle=currentView.mapStyle}a.SetCenterLatLong(e);a.callback=d;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&&currentMode==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,'<a href="'+L_SupportedBrowserDownloadUrl_Text+'" target="_blank">').replace(/%3/g,L_SupportedBrowserDownloadUrl_Text).replace(/%2/g,"</a>")))}function DelayedHWDialog(){ShowMessage(L_NoHardwareAcceleration_Text)}function SetShowMapModeSwitch(a){if(dashboard&&dashboard.constructor==Msn.VE.NavAction)dashboard.SetShowMapModeSwitch(a)}function SetTilePixelBuffer(a){buffer=a<maxTilePixelBuffer?a:maxTilePixelBuffer}function SetClientToken(a){m_clientToken=a;if(tileLayerManager){tileLayerManager.SetClientToken(mapTiles,m_clientToken);tileLayerManager.SetClientToken(trafficTiles,m_clientToken)}if(minimapControl)minimapControl.SetClientToken(m_clientToken);if(obliqueMode)obliqueMode.SetClientToken(m_clientToken)}function GetTopPx(){if(typeof p_elSource!="undefined"&&p_elSource!=null)return g(p_elSource).getPagePosition().y;else return 0}function GetLeftPx(){if(typeof p_elSource!="undefined"&&p_elSource!=null)return g(p_elSource).getPagePosition().x;else return 0}function GetObliqueAvailability(b,a){if(obliqueMode)obliqueMode.GetObliqueAvailability(b,a);else if(typeof a=="function")a(false)}function GetMapSurface(){return map}this.CreateLegend=function(){if(!mapLegend){mapLegend=new MapLegend(p_elSource);mapLegend.Init();if(copyright)mapLegend.PinTo(copyright)}return mapLegend};function CalculateTileViewPort(a,b,d,c,e){return tileLayerManager.CalculateTileViewPort(a,b,d,c,e)}function GetCurrentTileViewPort(){return tileLayerManager.GetViewPort()}function SetPrintable(a){if(a){graphicCanvas.CreatePrintLayer(map,this,g(p_elSource).getStyle("width"),g(p_elSource).getStyle("height"));tileLayerManager.SetPrintable(true);graphicCanvas.AddLogo(logo.GetURL());g(p_elSource).addClass("MSVE_Printable_Map")}else{tileLayerManager.SetPrintable(false);graphicCanvas.RemovePrintLayer(this);g(p_elSource).removeClass("MSVE_Printable_Map")}}function IsMapViewOblique(){return Msn.VE.MapStyle.IsViewOblique(GetMapStyle())}function IsMapViewOrtho(){return Msn.VE.MapStyle.IsViewOrtho(GetMapStyle())}function ClipView(b,c){var a=ShiftView(b,c,0,0);if(typeof a!="undefined"&&a!=null)b.SetCenter(new VEPixel(b.center.x+a.x,b.center.y+a.y))}function ShiftView(b,a,c,d){if(b!=null&&b.center!=null&&a!=null&&a!="undefined"){c=ClipDelta(c,width,b.center.x-width/2,b.zoomLevel,a.z1,a.x1,a.x2,b.mapStyle);d=ClipDelta(d,height,b.center.y-height/2,b.zoomLevel,a.z1,a.y1,a.y2,b.mapStyle);return new VEPixel(c,d)}}function ClipDelta(a,b,d,g,f,i,h){var c=tileSize*i*Math.pow(2,g-f),e=tileSize*h*Math.pow(2,g-f);if(IsMapViewOblique()){c-=Math.ceil(b/2);e+=Math.ceil(b/2)}if(b>e-c)a=(e-c-b)/2-d+c;else if(d+a<c)a=c-d;else if(d+b+a>e)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 b=[];b[Msn.VE.MapStyle.Oblique]=[L_MapControlImageCourtesyOfPictometry_Text,L_MapControlImageCourtesyOfBlom_Text];b[Msn.VE.MapStyle.Road]=[L_MapControlNavteq_Text,L_MapControlImageCourtesyOfAND_Text,L_MapControlImageCourtesyOfMapDataSciences_Text,L_MapControlImageCourtesyOfZenrin_Text,L_MapControlImageCourtesyOfIntermap_Text];b[Msn.VE.MapStyle.Aerial]=[L_MapControlImageCourtesyOfNASA_Text,L_MapControlHarrisCorp_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_MapControlImageCourtesyOfBEV_Text];var a=[];a[Msn.VE.MapStyle.Oblique]=[];a[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_Text]=[];a[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfBlom_Text]=[];a[Msn.VE.MapStyle.Road]=[];a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text]=[];a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfAND_Text]=[];a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text]=[];a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfZenrin_Text]=[];a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfIntermap_Text]=[];a[Msn.VE.MapStyle.Aerial]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfNASA_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlHarrisCorp_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfUSGS_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGetmapping_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfPasco_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntergraph_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntermap_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIndianaMap_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfNevada_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGP_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text]=[];a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBEV_Text]=[];a[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfPictometry_Text].push(new VECopyrightTableEntry(1,20,24,-125,49,-66));a[Msn.VE.MapStyle.Oblique][L_MapControlImageCourtesyOfBlom_Text].push(new VECopyrightTableEntry(1,20,34,-13,72,35));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(1,9,-90,-180,90,180));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,19,16,-180,90,-50));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,19,27,-32,40,-13));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,19,35,-11,72,20));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,19,21,20,72,32));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,17,21.92,113.14,22.79,114.52));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,17,21.73,119.7,25.65,122.39));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,17,0,98.7,8,120.17));a[Msn.VE.MapStyle.Road][L_MapControlNavteq_Text].push(new VECopyrightTableEntry(10,17,.86,103.2,1.92,104.45));a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfAND_Text].push(new VECopyrightTableEntry(10,19,-90,-180,90,180));a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text].push(new VECopyrightTableEntry(5,17,-45,111,-9,156));a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfMapDataSciences_Text].push(new VECopyrightTableEntry(5,17,-49.7,164.42,-30.82,180));a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfZenrin_Text].push(new VECopyrightTableEntry(4,18,23.5,122.5,46.65,151.66));a[Msn.VE.MapStyle.Road][L_MapControlImageCourtesyOfIntermap_Text].push(new VECopyrightTableEntry(1,21,49,-11,60,2));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfNASA_Text].push(new VECopyrightTableEntry(1,8,-90,-180,90,180));a[Msn.VE.MapStyle.Aerial][L_MapControlHarrisCorp_Text].push(new VECopyrightTableEntry(9,13,-90,-180,90,180));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfUSGS_Text].push(new VECopyrightTableEntry(14,19,17.99,-150.11,61.39,-65.57));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGetmapping_Text].push(new VECopyrightTableEntry(14,19,49.94,-6.35,58.71,1.78));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,44.43,-63.75,45.06,-63.45));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,45.39,-73.78,45.66,-73.4));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,45.2,-75.92,45.59,-75.55));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,42.95,-79.81,44.06,-79.42));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,50.35,-114.26,51.25,-113.82));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,48.96,-123.33,49.54,-122.97));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,-35.42,138.32,-34.47,139.07));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,-32.64,115.58,-32.38,115.85));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,-34.44,150.17,-33.27,151.49));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfGeoEye_Text].push(new VECopyrightTableEntry(14,17,-28.3,152.62,-26.94,153.64));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfPasco_Text].push(new VECopyrightTableEntry(14,17,23.5,122.5,46.65,151.66));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntergraph_Text].push(new VECopyrightTableEntry(14,19,47,5,55.5,16));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push(new VECopyrightTableEntry(14,21,43.15,6.5,47.15,14));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push(new VECopyrightTableEntry(14,21,41.3,9.9,43.15,16.4));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfTerraItaly_Text].push(new VECopyrightTableEntry(14,21,36.5,7.9,41.3,18.7));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIntermap_Text].push(new VECopyrightTableEntry(1,21,49,-11,60,2));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIndianaMap_Text].push(new VECopyrightTableEntry(14,19,37.7,-88.2,41.9,-84.7));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfStateOfNevada_Text].push(new VECopyrightTableEntry(14,17,34.85,-120.2,42.12,-113.91));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push(new VECopyrightTableEntry(14,21,48.37,1.4,49.28,3.37));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push(new VECopyrightTableEntry(14,19,47.72,1.67,48.05,2.18));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push(new VECopyrightTableEntry(14,19,45.55,4.57,45.95,5.33));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfInterAtlas_Text].push(new VECopyrightTableEntry(14,19,43.18,4.92,43.77,5.82));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text].push(new VECopyrightTableEntry(14,19,51,3,53.63,7.67));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfEurosense_Text].push(new VECopyrightTableEntry(14,19,50.58,5.42,51,5.47));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGP_Text].push(new VECopyrightTableEntry(14,17,36.88,-9.6,42.27,-6));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,42,-5,51.25,8.5));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,41.25,8.3,43.1,9.65));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,17.85,-63.17,18.15,-62.77));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,15.75,-61.9,16.55,-60.9));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,14.35,-61.25,14.95,-60.75));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,2.25,-54.65,6,-51.4));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,19,-21.5,55,-20.75,56));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfIGN_Text].push(new VECopyrightTableEntry(14,17,46.7,-56.5,47.2,-56.1));a[Msn.VE.MapStyle.Aerial][L_MapControlImageCourtesyOfBEV_Text].push(new VECopyrightTableEntry(14,19,46.25,9.4,49.2,17.3));this.CreditsFor=function(c,k,l,j){var g=[];if(c!="undefined"&&c!=null&&typeof b[c]!="undefined"&&b[c]!=null){var m=b[c].length;for(var e=0;e<m;++e){var h=b[c][e],f=a[c][h],i=f.length;for(var d=0;d<i;++d)if(f[d].IsMatch(k,l,j)){g.push(h);break}}}return g};this.CreditsForView=function(a){var b=[];b.push(L_MapCopyrightMicrosoft);if(a.mapStyle==Msn.VE.MapStyle.Hybrid){b=b.concat(this.CreditsFor(Msn.VE.MapStyle.Road,a.zoomLevel,a.latlong.latitude,a.latlong.longitude));b=b.concat(this.CreditsFor(Msn.VE.MapStyle.Aerial,a.zoomLevel,a.latlong.latitude,a.latlong.longitude))}else if(a.mapStyle==Msn.VE.MapStyle.ObliqueHybrid){b=b.concat(this.CreditsFor(Msn.VE.MapStyle.Road,a.zoomLevel,a.latlong.latitude,a.latlong.longitude));b=b.concat(this.CreditsFor(Msn.VE.MapStyle.Oblique,a.zoomLevel,a.latlong.latitude,a.latlong.longitude))}else b=b.concat(this.CreditsFor(a.mapStyle,a.zoomLevel,a.latlong.latitude,a.latlong.longitude));if(view3DCreated&&a.mapStyle!=Msn.VE.MapStyle.Oblique&&photoplugin3dActive)b=b.concat(this.CreditsFor(Msn.VE.MapStyle.Oblique,a.zoomLevel,a.latlong.latitude,a.latlong.longitude));if(typeof VE_TrafficManager!=="undefined")if(VE_TrafficManager.turnedOn){var d=false;for(var c=0;c<b.length;c++)if(b[c]==L_MapControlNavteq_Text){d=true;b.splice(c+1,0,L_MapCopyrightTraffic);break}if(!d)b.push(L_MapCopyrightTraffic)}return b}}var g_sVECopyrightTable=new VECopyrightTable;function Copyright(f){var d=document.createElement("div"),a=document.createElement("div"),c=null,b=null;this.Show=function(){f.appendChild(d);f.appendChild(a)};this.Hide=function(){try{f.removeChild(d);f.removeChild(a)}catch(b){}};this.Init=function(){d.className="MSVE_Copyright MSVE_CopyrightBackground";a.className="MSVE_Copyright MSVE_CopyrightForeground";e();this.Show()};this.Destroy=function(){this.Hide();c=null;b=null;d=a=null};function e(){var e=0;if(c&&c.style.display!=="none"){var h=parseInt(g(c).getStyle("height")),f=parseInt(c.style.bottom);e+=(isNaN(h)?0:h)+(isNaN(f)?0:f)}d.style.bottom=e+"px";a.style.bottom=e+1+"px";if(b)window.setTimeout(b.Reposition,1)}function j(){var g=g_sVECopyrightTable.CreditsForView(currentView),c="",f="";for(var b=0;b<g.length;++b){if(b>0)if(b==2)c+="\n";else c+=" ";f+="<span>"+g[b]+"</span> ";c+=g[b]}if(view3DCreated)spacecontrol.SetCopyrightString(c);d.innerHTML=f;a.innerHTML=f;e()}function i(){e()}function k(c){b=c;if(b)b.SetPinElement(a)}function h(a){c=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;b<a.length;b++)if(a[b]==c)return true;a.push(c)}function DetachEvent(d,c){var a=defaultEventTable[d];if(!a)return;for(var b=0;b<a.length;b++)if(a[b]==c)a.splice(b,1)}function AttachCustomEvent(d,c){var a=customEventTable[d];if(!a){a=[];customEventTable[d]=a}for(var b=0;b<a.length;b++)if(a[b]==c)return true;a.push(c)}function DetachCustomEvent(d,c){var a=customEventTable[d];if(a)for(var b=0;b<a.length;b++)if(a[b]==c)a.splice(b,1)}function IsEventAttached(a){var b=customEventTable[a],c=defaultEventTable[a];return c!=null||b!=null}function Fire(b,a){FireCustomEvent(b,a);FireDefaultEvent(b,a)}function FireDefaultEvent(d,b){var a=defaultEventTable[d];if(!b)b=CreateEvent();if(a)for(var c=0;c<a.length;c++)a[c](b)}var currentShapeID=null;function FireCustomEvent(d,a){var b=false,c=customEventTable[d];if(c){if(a&&a instanceof MapEvent){var f=window.event;a=CreateCustomEvent(d,f,a)}else a=CreateCustomEvent(d,a,null);for(var e=0;e<c.length;e++)b=b|c[e](a)}return b}function DisposeAllCustomEvent(){while(customEventTable.length){var a=customEventTable.pop();while(a.length)a.pop();a=null}}function DestroyEventTable(){while(defaultEventTable.length){var a=defaultEventTable.pop();while(a.length)a.pop();a=null}defaultEventTable=null;DisposeAllCustomEvent();customEventTable=null}function KeyDown(c){if(isMinimap)return false;c=GetEvent(c);if(FireCustomEvent("onkeydown",c))return false;var e=c.ctrlKey?5:1,d=keyboardPanSpeed*e,a=panningX,b=panningY;switch(c.keyCode){case 9:case 17:case 18:if(panning&&keyboardPan)StopContinuousPan();return true;case 37:a=-d;break;case 38:b=-d;break;case 39:a=d;break;case 40:b=d;break;case 107:case 187:case 61:case 43:a=0;b=0;ZoomIn();$VE_A.Log($VE_A.PgName.Map,"Zoom in","Keyboard");break;case 109:case 189:a=0;b=0;ZoomOut();$VE_A.Log($VE_A.PgName.Map,"Zoom out","Keyboard");break;case 65:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Aerial)){a=0;b=0;SetMapStyle(aerialStyle);$VE_A.Log($VE_A.PgName.Map,"MapStyleAerial","Keyboard")}break;case 72:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Hybrid)){a=0;b=0;SetMapStyle(hybridStyle);$VE_A.Log($VE_A.PgName.Map,"MapStyleHybrid","Keyboard")}break;case 82:if($MVEM.IsEnabled(MapControl.Features.MapStyle.Road)){a=0;b=0;SetMapStyle(roadStyle);$VE_A.Log($VE_A.PgName.Map,"MapStyleRoad","Keyboard")}break;case 66:if($MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye))if(obliqueMode&&obliqueMode.IsAvailable()){a=0;b=0;SetMapStyle(obliqueHybridStyle);$VE_A.Log($VE_A.PgName.Map,"MapStyleObliqueHybrid","Keyboard")}break;case 79:if($MVEM.IsEnabled(MapControl.Features.MapStyle.BirdsEye))if(obliqueMode&&obliqueMode.IsAvailable()){a=0;b=0;SetMapStyle(obliqueStyle);$VE_A.Log($VE_A.PgName.Map,"MapStyleOblique","Keyboard")}break;case 51:case 99:if($MVEM.IsEnabled(MapControl.Features.MapStyle.View3D)){p_this.EnableMode(Msn.VE.MapActionMode.Mode3D);$VE_A.Log($VE_A.PgName.Map,"Mode3D","Keyboard")}}if(a||b)ContinuousPan(a,b,null,true);FireDefaultEvent("onkeydown");return false}function KeyUp(a){a=GetEvent(a);if(FireCustomEvent("onkeyup",a))return false;var b=panningX,c=panningY,d=true;switch(a.keyCode){case 37:b=0;break;case 38:c=0;break;case 39:b=0;break;case 40:c=0;break;default:d=false}if(d){ContinuousPan(b,c,null,true);$VE_A.Log($VE_A.PgName.Map,"Pan","Keyboard")}if(FireCustomEvent("onkeypress",a))return false}var northLatitude=0,southLatitude=0,westLongitude=0,eastLongitude=0;function AddLine(h,f,g,l,n,m,a,d,i,k,j){if(h==null||f==null||g==null||a==null||d==null)return null;var e=[];for(var b=0;b<a.length;b++)e.push(BuildRegionHeap(a[b],0,a[b].length-1));var c=new Line;c.Init(h,f,g,l,n,m,e,d,i,k,j);lines.push(c);return c}function RemoveLine(c){for(var a=0;a<lines.length;a++){var b=lines[a];if(b.id==c){lines.splice(a,1);b.Destroy();return}}}function ClearLines(){while(lines.length>0)lines.pop().Destroy()}function ShowLines(){graphicCanvas.Clear();for(var a=0;a<lines.length;a++){lines[a].StartLine();lines[a].Show()}}function HideLines(){for(var a=0;a<lines.length;a++){lines[a].Hide();lines[a].RemoveFromMap()}}function UpdateLines(){if(typeof graphicCanvas==="object"&&graphicCanvas!==null)graphicCanvas.Clear();if(!document.all)currentView.GetMap().resetSvgLayer();for(var a=0;a<lines.length;a++)lines[a].UpdateLine()}function BuildRegionHeap(f,e,g){var h=g-e+1;if(h<1)return null;else if(h==1)return f[e];var d=null,c=null;if(h==2){d=f[e];c=f[g]}else{var i=Math.round((e+g)/2);d=BuildRegionHeap(f,e,i);c=BuildRegionHeap(f,i+1,g)}if(d!=null&&c!=null){var b=d.boundingRectangle,a=c.boundingRectangle,l=b[0].latitude>a[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<a[1].latitude?b[1].latitude:a[1].latitude,n=b[1].longitude<a[1].longitude?b[1].longitude:a[1].longitude,j=[new Msn.VE.LatLong(l,k),new Msn.VE.LatLong(m,n)];return new Msn.VE.LineRegion(j,null,[d,c])}else if(d!=null)return d;else if(c!=null)return c;return null}var IsDrivingEventAttached=false;function Line(){var t=5,v=new Msn.Drawing.Color(0,169,235,.7),w="Solid",d=new Msn.Drawing.Stroke,H=4,c=null,e="",f=true,A="",i="",r=0,y=0,x=0,B=0,z=0,a=null,b=null,h=null,g=null,I=0,J=0,n=false;function F(m,u,C,c,j,k,p,s,l,f,o){if(!c)c=t;if(!j)j=v;if(!k)k=defaultZIndex;if(!f)f=w;n=o;this.id=m;e=m;if(l)d.linejoin=l;A=c+"pt";i=j;r=k;a=u;b=C;g=s;h=p;y=a[0];x=b[0];B=a[a.length-1];z=b[b.length-1];d.color=i;d.width=c;d.linecap=f;q();if(!IsDrivingEventAttached){AttachEvent("onstartzoom",HideLines);AttachEvent("onchangeview",UpdateLines);IsDrivingEventAttached=true}this._Draw3D();AttachEvent("oninitmode",this._Draw3D)}function E(){if(view3DCreated)spacecontrol.DeleteGeometry(0,e);DetachEvent("oninitmode",this._Draw3D);m();a=b=h=c=null}this._Draw3D=function(){if(view3DCreated){var c=[];for(var f=0;f<a.length;f++){c.push(b[f]);c.push(",");c.push(a[f]);if(f!=a.length-1)c.push(" ")}var g=c.join("");spacecontrol.AddPolyline("0",e,g,i.ToHexString(),.75,d.width)}};function m(){if(graphicCanvas)graphicCanvas.Clear()}function G(){if(!f){j();return}if(c)c.style.display="block"}function j(){if(c)c.style.display="none"}function u(a){f=a;if(!f)j()}function q(){l();o()}function D(){l();o()}function l(){var a=height<900?900:height,b=width<900?900:width;northLatitude=GetLatitude(-0.5*a);southLatitude=GetLatitude(1.5*a);westLongitude=GetLongitude(-0.5*b);eastLongitude=GetLongitude(1.5*b)}function o(){if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){graphicCanvas.Clear();return}if(view3DCreated)return;var b=[],a=g.length-1;while(g[a]<currentView.zoomLevel&&a>=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<f.childRegions.length;j++)k(f.childRegions[j],c);else{var h=f.indices,e=new Msn.VE.LatLong(a[h[0]],b[h[0]]),d,g=false;if(p(e.latitude,e.longitude)){c.push(e.longitude);c.push(e.latitude);g=true}for(var i=1;i<h.length;i++){d=new Msn.VE.LatLong(a[h[i]],b[h[i]]);if(p(d.latitude,d.longitude)){if(!g){c.push(e.longitude);c.push(e.latitude)}g=true;c.push(d.longitude);c.push(d.latitude)}else if(g){g=false;c.push(d.longitude);c.push(d.latitude)}e=d}}}function C(g){if(!graphicCanvas)return;var a=new Msn.Drawing.PolyLine(g);a.id=e;var b=VE_LatLongThreshold.UseThreshold;VE_LatLongThreshold.UseThreshold=false;graphicCanvas.SetZIndex(r);graphicCanvas.SetStroke(d);graphicCanvas.DrawPrimitive(a,n);VE_LatLongThreshold.UseThreshold=b;c=$ID(e);if(f)c.style.display="block";else c.style.display="none"}function p(a,b){return a>=southLatitude&&a<=northLatitude&&b>=westLongitude&&b<=eastLongitude}function s(a,b){return a.latitude>northLatitude&&b.latitude>northLatitude||a.latitude<southLatitude&&b.latitude<southLatitude||a.longitude>eastLongitude&&b.longitude>eastLongitude||a.longitude<westLongitude&&b.longitude<westLongitude}this.Init=F;this.Destroy=E;this.RemoveFromMap=m;this.Show=G;this.Hide=j;this.ChangeVisibility=u;this.StartLine=q;this.UpdateLine=D}function Logo(b){var a=null;this.Init=function(){if(navigator.userAgent.toLowerCase().indexOf("msie")!=-1){a=document.createElement("div");a.className="MSVE_PoweredByLogo MSVE_PoweredByLogo_ie";if(Msn.VE.API!=null)a.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='"+Msn.VE.API.Globals.vecurrentdomain+"/i/bin/"+Msn.VE.API.Globals.vecurrentversion+"/"+MapControl.Features.Image.PoweredLogo+"', sizingMethod='scale')"}else{a=document.createElement("img");a.src=this.GetURL();a.className="MSVE_PoweredByLogo"}b.appendChild(a)};this.GetURL=function(){var b="http://"+location.host+location.pathname,a="";if(Msn.VE.API!=null){b=Msn.VE.API.Globals.vecurrentdomain+"/";a=Msn.VE.API.Globals.vecurrentversion}else a=window.buildVersion;return b+"i/bin/"+a+"/"+MapControl.Features.Image.PoweredLogo};this.Destroy=function(){b.removeChild(a);a=null}}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);$VE_A.Log($VE_A.PgName.Map,"Zoom out","Mouse")}else{c.SetZoomLevel(currentView.zoomLevel+1);$VE_A.Log($VE_A.PgName.Map,"Zoom in","Mouse")}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&&currentMode==threeDMode)return false;if(panning||zooming||mouseZoomDisabled)return false;var g=GetMouseScrollDelta(a);if(g===0)return false;var c=g>0;if(mousewheelZoomToCenter||IsMapViewOblique()||!IsOnscreen(lastmouseX,lastmouseY))if(c){ZoomIn();$VE_A.Log($VE_A.PgName.Map,"Zoom in","Mouse")}else{ZoomOut();$VE_A.Log($VE_A.PgName.Map,"Zoom out","Mouse")}else{var b=c?currentView.zoomLevel+1:currentView.zoomLevel-1;if(b<=GetCurrentViewMaxZoomLevel(currentView)){UpdateFromParent();var h=lastmouseX-x,i=lastmouseY-y,e=originX+offsetX+h,f=originY+offsetY+i,d=preferredView.MakeCopy();e=currentView.ScaleCoord(e,b);f=currentView.ScaleCoord(f,b);d.SetZoomLevel(b);if(c)$VE_A.Log($VE_A.PgName.Map,"Zoom in","Mouse");else $VE_A.Log($VE_A.PgName.Map,"Zoom out","Mouse");d.SetCenter(new VEPixel(e-h+width/2,f-i+height/2));SetView(d)}}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;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){PanMap(panningX,panningY);if(panCounter>0)panCounter--;if(panCounter!=0)window.setTimeout(StepPan,10);else StopContinuousPan()}}function StopContinuousPan(){panningX=0;panningY=0;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(c,e){if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)&&PanInOblique(null,c,e))return;var a=c.x-width/2,b=c.y-height/2,d=Math.sqrt(a*a+b*b);if(!e&&(!IsAnimationEnabled()||MathAbs(a)>2*width||MathAbs(b)>2*height||d>1.5*Math.sqrt(width*width+height*height))){var i=preferredView.MakeCopy(),j=c.x+(originX+offsetX),k=c.y+(originY+offsetY);i.SetCenter(new VEPixel(j,k));SetView(i);if(resizeInProgress)resizeInProgress=false;return}var f=Math.atan2(b,a),g=MathCeil(d/panToLatLongSpeed),h=MathRound(d/g);a=MathRound(Math.cos(f)*h);b=MathRound(Math.sin(f)*h);ContinuousPan(a,b,g)}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.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<pushpins.length;a++)if(pushpins[a].id==b)return a;return -1}function RemovePushpin(b){var a=GetPushpinIndex(b);if(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<pushpins.length;b++){var a=pushpins[b];if(a.id&&a.id.constructor==String&&a.id.indexOf("Layer")==-1)View3DAddPushpin(a)}}function NeedToPlaceAccurately(a){switch(a.pinType){case Msn.VE.PushPinTypes.SearchResultPrecise:case Msn.VE.PushPinTypes.AdStandard:case Msn.VE.PushPinTypes.AdCategory:case Msn.VE.PushPinTypes.AdWide:case Msn.VE.PushPinTypes.AdSponsor:return true;default:return false}}function _RepositionPushpins(){for(var a=0;a<pushpins.length;a++){pushpins[a].pin.style.display="";pushpins[a].Reposition()}}function RepositionPushpins(){var d=[],h,i=function(b){if(currentMode!=obliqueMode||null==currentMode.GetScene()||h!=currentMode.GetScene().GetID())return;if(b)for(var a=0;a<d.length;a++){var c=GetPushpinIndex(d[a]);if(c>=0)if(b[a])pushpins[c].SetAccuratePixel(b[a])}_RepositionPushpins()};if(pushpins&&pushpins.length>0){if(null==Msn.VE.API&&currentMode==obliqueMode){var c=currentMode.GetScene(),f=[],a=0;if(c){h=c.GetID();for(var e=0;e<pushpins.length;e++){var b=pushpins[e],g=new Msn.VE.LatLong(b.GetLatitude(),b.GetLongitude());if(NeedToPlaceAccurately(b)&&c.ContainsLatLong(g)){f[a]=g;d[a]=b.id;a++}}if(a>0){currentMode.LatLongToPixelAsync(f,currentView.GetZoomLevel(),i);return}}}_RepositionPushpins()}}function HidePins(){for(var a=0;a<pushpins.length;a++)pushpins[a].Hide()}function UnHidePins(){for(var a=0;a<pushpins.length;a++)pushpins[a].UnHide()}function GetPushpinPixel(b,c,d,e){var a=currentMode.LatLongToPixel(b,c);if(a){a.x=MathRound(a.x-d);a.y=MathRound(a.y-e)}return a}function GetPushpinMapPixel(a,b){return GetPushpinPixel(a,b,originX,originY)}function Pushpin(){var a=this;this.visible=true;this.pin=document.createElement("a");this.img=document.createElement("img");this.img.className="VE_PushpinImage";this.pin.href="javascript://pushin hover";this.pin.onclick=function(){return ParseShiftKeyForLinks(event)};this.pin.vePushpin=this;this.x1=0;this.y1=0;this.x2=0;this.y2=0;this.center=null;this.w=0;this.h=0;this.n=zoomTotalSteps+1;this.xs=new Array(this.n);this.ys=new Array(this.n);this.Offset=0;this.beLatLongOffset=null;this.Destroy=function(){a.RemoveFromMap();a.pin.onclick=null;a.pin.vePushpin=null;a.pin=null;while(a.xs.length>0)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();c.appendChild(a.element());c.appendChild(b.element());c.appendChild(d);c.appendChild(f)};this.Destroy=function(){c.removeChild(a.element());c.removeChild(b.element());c.removeChild(d);c.removeChild(f);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,f=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";f.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);f.removeChild(a);a=null}f=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);g()}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));g()}}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"}}function g(){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=g;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;a<responseRangeCounts.length;a++)b+=responseRangeCounts[a];if(b==0)return responseRangeCounts;var c=new Array(responseRangeCounts.length);for(var a=0;a<responseRangeCounts.length;a++)c[a]=responseRangeCounts[a]/b;return c}function ResetResponseRangeCounts(){for(var a=0;a<responseRangeCounts.length;a++)responseRangeCounts[a]=0}function GetFailureRate(){return totalFailureCount/totalRequestCount}function Tile(){var a=null,b=null,c=null,i=null,D=null,e=null,p=0,q=0,v=0,B=0,f=0,d=1,x=zoomTotalSteps+1,m=new Array(x),o=new Array(x),u=new Array(x),s=new Array(x),A=false,g=0,h=0,k=0,j=0,l=0,n=0,t=0,r=0,z=null,C=0;this.Init=function(k,l,m,j,c,e,g,a,h,i){p=k;q=l;v=m;B=j;f=i;d=h;if(!currentMode.IsValidTile(p,q,v))return;y(c,e,tileSize,tileSize);I(c,e,tileSize,tileSize);w();if(a==mapTiles||a==trafficTiles)C=0;else C=1;b=document.createElement("img");b.className="MSVE_ImageTile";b.onload=T;b.onerror=S;z=new Date;D=currentMode.GetFilename(p,q,v,g,a);b.src=D};function H(){if(!e&&a!=null)e=graphicCanvas.AddPrintTile(D,q*tileSize-originY,p*tileSize-originX,tileSize,tileSize,d,f)}this.AddPrintTile=H;function O(){if(e){graphicCanvas.RemovePrintTile(e);e=null}}this.RemovePrintTile=O;function L(){if(e)graphicCanvas.RePositionPrintTile(e,q*tileSize-originY,p*tileSize-originX)}this.RePositionPrintTile=L;this.Destroy=function(){if(a)a.onmousedown=null;G();while(m.length>0)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(b&&typeof b.filter!="undefined")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;a<responseRangeCeilings[B].length;a++)if(b<responseRangeCeilings[B][a]){responseRangeCounts[a]++;return}responseRangeCounts[responseRangeCounts.length-1]++}function M(e,i,p,c,d,o){y(g-offsetX,h-offsetY,k,j);var m=o-p,b=Math.pow(2,m);l=MathFloor((e+g)*b-c);n=MathFloor((i+h)*b-d);t=MathCeil((e+g+k)*b-c)-l;r=MathCeil((i+h+j)*b-d)-n;A=true;w();f=baseZIndex;if(a!=null)a.style.zIndex=f}this.PrepareBaseTile=M;function N(i,m,s,d,e,o){var u=s-o,a=Math.pow(2,u);l=MathFloor((d+g)*a-i);n=MathFloor((e+h)*a-m);t=MathCeil((d+g+k)*a-i)-l;r=MathCeil((e+h+j)*a-m)-n;var c=MathCeil(tileViewportWidth*.25),b=MathCeil(tileViewportHeight*.25);A=o<s&&(p<tileViewportX1+c||p>tileViewportX2-c||q<tileViewportY1+b||q>tileViewportY2-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 orthoTileSpec=new VETileSourceSpecification;orthoTileSpec.ID=mapTiles;orthoTileSpec.SourceName=Msn.VE.API?Msn.VE.API.Constants.orthotileserver:"%0t%2.tiles.virtualearth.net/tiles/%3%4.%5?g=%6";orthoTileSpec.NumServers=4;var shadedTileSpec=new VETileSourceSpecification;shadedTileSpec.ID=mapTiles;shadedTileSpec.SourceName=Msn.VE.API?Msn.VE.API.Constants.shadedtileserver:"%0t%2.tiles.virtualearth.net/tiles/%3%4.%5?g=%6&shading=hill";shadedTileSpec.SourceName=shadedTileSpec.SourceName.replace(/%1/g,"r").replace(/%3/g,"r").replace(/%5/g,"png").replace(/%6/g,generations["r"]);shadedTileSpec.NumServers=4;function SetBaseTileSource(a){if(!a)a=currentView;var c=a&&shadedTileSpec&&shadedTileSpec.SourceName&&(a.mapStyle==Msn.VE.MapStyle.Road&&$MVEM.IsEnabled(MapControl.Features.MapStyle.Shaded)&&currentView.doRoadShading)||a.mapStyle==Msn.VE.MapStyle.Shaded,b=c?shadedTileSpec:orthoTileSpec;tileLayerManager.AddTileSource(b)}function SetView(a){if(currentMode!=null&&currentMode==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=d<width&&d<height&&a.zoomLevel==currentView.zoomLevel&&IsAnimationEnabled()&&a.mapStyle==currentView.mapStyle&&(a.sceneId==null||a.sceneId==currentView.sceneId);if(k){PanToPixel(new VEPixel(a.center.x-originX-offsetX,a.center.y-originY-offsetY),true);return false}previousZoomLevel=currentView.zoomLevel;if(currentView.zoomLevel!=a.zoomLevel){Fire("onstartzoom",CreateEvent(null,null,null,a));zooming=true}var j=d<width&&d<height&&(a.zoomLevel==currentView.zoomLevel-1||a.zoomLevel==currentView.zoomLevel+1)&&IsAnimationEnabled()&&a.mapStyle==currentView.mapStyle&&(a.sceneId==null||a.sceneId==currentView.sceneId);if(j){tileLayerManager.zoomView(a);return false}UpdateTiles(a);return false}function SetViewOrtho(a,f){currentMode=orthoMode;if(a.mapStyle==Msn.VE.MapStyle.Road||a.mapStyle==Msn.VE.MapStyle.Shaded){p_elSource.style.backgroundColor="#e9e7d4";p_elSource.style.backgroundImage="none"}else p_elSource.style.backgroundColor="black";a.Resolve(currentMode,width,height);f=a.latlong;preferredView.Copy(a);SetBaseTileSource(a);currentMode.ValidateZoomLevel(a);currentBounds=currentMode.GetBounds(a);ClipView(a,currentBounds);a.Resolve(currentMode,width,height);if(a.Equals(currentView)&&!resizeInProgress)return false;if(!currentView.center)currentView.center=a.center;var d=a.GetX(currentView.zoomLevel)-currentView.center.x,e=a.GetY(currentView.zoomLevel)-currentView.center.y,b=Math.sqrt(d*d+e*e);previousCenter=currentView.GetCenterLatLong();var c=0;if(!previousCenter.Equals(a.GetCenterLatLong()))c+=Msn.VE.ViewChangeType.Pan;if(currentView.zoomLevel!=a.zoomLevel)c+=Msn.VE.ViewChangeType.Zoom;SetLastViewChangeType(c);var h=b<width&&b<height&&a.zoomLevel==currentView.zoomLevel&&IsAnimationEnabled()&&a.mapStyle==currentView.mapStyle&&(a.sceneId==null||a.sceneId==currentView.sceneId);if(h){PanToLatLong(a.latlong.latitude,a.latlong.longitude,true);return true}previousZoomLevel=currentView.zoomLevel;if(currentView.zoomLevel!=a.zoomLevel){Fire("onstartzoom",CreateEvent(null,null,null,a));zooming=true}var g=b<width&&b<height&&(a.zoomLevel==currentView.zoomLevel-1||a.zoomLevel==currentView.zoomLevel+1)&&IsAnimationEnabled()&&a.mapStyle==currentView.mapStyle&&(a.sceneId==null||a.sceneId==currentView.sceneId);if(g){tileLayerManager.zoomView(a);return true}UpdateTiles(a);return true}function CreateNewView(){var a=new Msn.VE.MapView;a.Copy(currentView);a.SetAltitude(-1000);a.SetTilt(-90);a.SetDirection(0);var b=a.latlong,c=ClipLatitude(b.latitude);if(b.latitude!=c){a.SetCenterLatLong(new Msn.VE.LatLong(c,b.longitude));a.Resolve(currentMode,width,height)}if(Msn.VE.MapStyle.IsViewOblique(a.mapStyle))currentMode=obliqueMode;else currentMode=orthoMode;SetBaseTileSource(a);currentMode.ValidateZoomLevel(a);UpdateTiles(a);return true}function UpdateTiles(a){currentView.Destroy();currentView=a;tileLayerManager.SetViewPort();tileLayerManager.LoadBaseLayer("Road",mapTiles,1,1);tileLayerManager.RefreshTileLayers();tileLayerManager.FinalizeView();RepositionPushpins()}function SetLastViewChangeType(a){if(Msn.VE.ViewChangeType.IsValid(a))lastViewChangeType=a}_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().x<a.getP1().x)c+=d.Range.LessThanX;if(b.getP2().y>a.getP2().y)c+=d.Range.GreaterThanY;if(b.getP1().y<a.getP1().y)c+=d.Range.LessThanY;if(a.getP1().x<=b.getP1().x&&b.getP2().x<=a.getP2().x)c+=d.Range.InXRange;if(a.getP1().y<=b.getP1().y&&b.getP2().y<=a.getP2().y)c+=d.Range.InYRange}this.getRange=function(){return c};this.getLeftXBleed=function(){if(c&d.Range.LessThanX)return Math.abs(a.getP1().x-b.getP1().x);else return 0};this.getRightXBleed=function(){if(c&d.Range.GreaterThanX)return b.getP2().x-a.getP2().x;else return 0};this.getTopYBleed=function(){if(c&d.Range.LessThanY)return Math.abs(a.getP1().y-b.getP1().y);else return 0};this.getBottomYBleed=function(){if(c&d.Range.GreaterThanY)return b.getP2().y-a.getP2().y;else return 0}}};Msn.VE.Geometry.Rectangle=function(h,i){var g=this,a=h,b=i,d,e;f();function f(){c()}this.move=function(c){a.x=c.x;a.y=c.y;b.x=c.x+e;b.y=c.y+d};this.getP1=function(){return a};this.getP2=function(){return b};this.setP1=function(b){a=b;c()};this.setP2=function(a){b=a;c()};this.getWidth=function(){return e};this.getHeight=function(){return d};this.containsPoint=function(c){return c.x>=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.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 CreateView3DControl(a){initial3dView=new Msn.VE.MapView;initial3dView.Copy(a);if(sentinel3D==null)sentinel3D=GetSentinel();if(null==sentinel3D){View3DUnavailable();return false}if(sentinel3D!=null&&sentinel3D.CurrentVersion<3.0){var c=sentinel3D.CurrentVersion;sentinel3D=null;if(c>0)View3DUpgrade(c);return false}try{sentinel3D.InitializeRuntime()}catch(g){}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 e=Get3dMarket();if(e)AddView3DParameter(spacecontrol,"CurrentLocale",e);var d=a.GetAltitude();if(d>-1000)AddView3DParameter(spacecontrol,"StartAltitude",d);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(g){View3DUnavailable();spacecontrol=false;return false}spacecontrol.ControlId=init3dparam;AttachEvent("onresize",ResizeControl);p_elSource.appendChild(spacediv);ResizeControl();setStyle=false;var f=ValidateControl();if(f)IterativeCameraRefinement();if(typeof state!="undefined"&&state!=null)state.Set3DViewInstallInProgress("");return f}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("Default.aspx?action=install&mkt="+Get3dMarket()),"_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("Default.aspx?action=install&mkt="+Get3dMarket()),"_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;e<a.length;e++){c=MathMin(c,a[e].latitude);d=MathMin(d,a[e].longitude);f=MathMax(f,a[e].latitude);g=MathMax(g,a[e].longitude)}var h=(f-c)*.1,i=(g-d)*.1;c-=h;d-=i;f+=h;g+=i;if(!b||b.constructor!=Array)return null;else{b.push(ClipLatitude(c));b.push(ClipLongitude(d));b.push(ClipLatitude(f));b.push(ClipLongitude(g));return b}}function IncludePointInViewport(d,c){var a=new Msn.VE.LatLong(d,c);if(Msn.VE.MapStyle.IsViewOblique(currentView.mapStyle)){var b=obliqueMode.GetScene();if(!b||!b.ContainsLatLong(a))SetMapStyle(lastOrthoMapStyle)}SetBestMapView([currentView.latlong,a])}function ClipLatitude(a){return Clip(a,minLatitude,maxLatitude)}function ClipLongitude(a){return Clip(a,minLongitude,maxLongitude)}function Clip(a,c,b){if(a<c)return c;if(a>b)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 q=false,a=null,s=null,b=false,h=false,x=null,y=null,l=false,n=false,k=null,c=null,g=-1,e=null,m=null,r=null,f=['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','02121330111','02121333101','02121333103','02121333110','02121333112','02121333130','02122313101','02122313103','02122313110','02122313112','02123000003','02123000012','02123000021','02123000022','02123000023','02123000030','02123000032','02123000101','02123000103','02123000110','02123000111','02123000112','02123000113','02123000123','02123000130','02123000131','02123000132','02123000133','02123000200','02123000201','02123000210','02123000301','02123000303','02123000310','02123000311','02123000312','02123000313','02123000321','02123000330','02123000331','02123000332','02123000333','02123001000','02123001001','02123001002','02123001003','02123001010','02123001012','02123001013','02123001020','02123001021','02123001022','02123001023','02123001030','02123001031','02123001032','02123001033','02123001103','02123001112','02123001120','02123001121','02123001122','02123001123','02123001130','02123001132','02123001200','02123001201','02123001202','02123001203','02123001210','02123001211','02123001212','02123001220','02123001221','02123001222','02123001223','02123001232','02123001300','02123001301','02123001302','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','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','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','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','02123033010','02123033011','02123033101','02123033110','02123033111','02123100233','02123100322','02123102011','02123102012','02123102013','02123102030','02123102031','02123102032','02123102033','02123102100','02123102102','02123102103','02123102111','02123102112','02123102113','02123102120','02123102121','02123102122','02123102123','02123102130','02123102131','02123102132','02123102133','02123102210','02123102211','02123102301','02123102310','02123102311','02123102312','02123102313','02123102330','02123102331','02123102332','02123102333','02123103002','02123103020','02123103022','02123103030','02123103031','02123103032','02123103033','02123103120','02123103122','02123103200','02123103201','02123103202','02123103203','02123103212','02123103213','02123103220','02123103221','02123103222','02123103230','02123103231','02123120111','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','02123220123','02123220300','02123220301','02123220302','02123220303','02123220320','02123220321','02123220323','02123220330','02123220332','02123223233','02123223322','02123302112','02123302113','02123302130','02123302131','02123302132','02123302133','02123302310','02123302311','02123302313','02123303002','02123303003','02123303020','02123303021','02123303022','02123303023','02123303030','02123303032','02123303033','02123303200','02123303201','02123303202','02123303203','02123303210','02123303211','02123303220','02123303221','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','02132222202','02132222203','02132222210','02132222211','02132222212','02132222213','02132222220','02132222221','02132222222','02132222223','02132222230','02132222231','02132222232','02132222233','02132222300','02132222301','02132222302','02132222303','02132222310','02132222312','02132222320','02132222321','02132222330','02132310233','02132310322','02132310323','02132310332','02132312011','02132312013','02132312031','02132312100','02132312101','02132312102','02132312103','02133030110','02133030111','02133030112','02133030113','02133031000','02133031001','02133031002','02133031003','02133031012','02133031020','02133031021','02133031332','02133031333','02133033110','02133033111','02133033112','02133033113','02133033130','02133033131','02133033133','02133103133','02133103311','02133103313','02133112022','02133112023','02133112032','02133112033','02133112200','02133112201','02133112210','02133112211','02133120222','02133120223','02133120232','02133120233','02133122000','02133122001','02133122002','02133122003','02133122010','02133122011','02133122012','02133122013','02133122020','02133122021','02133122022','02133122023','02133122030','02133122031','02133122032','02133122113','02133122131','02133122133','02133122212','02133122213','02133122230','02133122231','02133122232','02133122233','02133122302','02133122303','02133122311','02133122312','02133122313','02133122320','02133122321','02133122322','02133122323','02133122330','02133122331','02133122332','02133122333','02133123002','02133123003','02133123012','02133123020','02133123021','02133123022','02133123023','02133123030','02133123032','02133123200','02133123201','02133123202','02133123210','02133123213','02133123231','02133123232','02133123233','02133123301','02133123302','02133123303','02133123310','02133123312','02133123313','02133123320','02133123321','02133123322','02133123323','02133123330','02133123331','02133123332','02133123333','02133130013','02133130021','02133130023','02133130030','02133130031','02133130032','02133130033','02133130102','02133130120','02133130122','02133132220','02133132222','02133211123','02133211132','02133211133','02133211231','02133211233','02133211301','02133211303','02133211310','02133211311','02133211312','02133211313','02133211320','02133211321','02133211322','02133211323','02133211330','02133211331','02133211332','02133211333','02133212113','02133212131','02133212133','02133212311','02133213002','02133213003','02133213010','02133213011','02133213012','02133213013','02133213020','02133213021','02133213022','02133213023','02133213030','02133213031','02133213032','02133213033','02133213100','02133213101','02133213102','02133213103','02133213200','02133213201','02133213210','02133213211','02133231032','02133231033','02133231122','02133231123','02133231132','02133231133','02133231210','02133231211','02133231213','02133231231','02133231300','02133231301','02133231302','02133231303','02133231310','02133231311','02133231312','02133231313','02133231320','02133231321','02133231330','02133231331','02133233123','02133233132','02133233133','02133233211','02133233213','02133233222','02133233223','02133233231','02133233232','02133233233','02133233300','02133233301','02133233302','02133233303','02133233310','02133233311','02133233312','02133233313','02133233320','02133233321','02133233322','02133233323','02133233330','02133233331','02133233332','02133300010','02133300011','02133300012','02133300013','02133300022','02133300100','02133300101','02133300102','02133300103','02133300110','02133300111','02133300112','02133300113','02133300200','02133300202','02133300220','02133300221','02133300222','02133300223','02133300230','02133300231','02133300232','02133300233','02133300322','02133301010','02133301011','02133301012','02133301013','02133301023','02133301030','02133301031','02133301032','02133301033','02133301100','02133301101','02133301102','02133301103','02133301110','02133301111','02133301112','02133301113','02133301120','02133301121','02133301122','02133301123','02133301130','02133301131','02133301132','02133301133','02133301201','02133301210','02133301211','02133301213','02133301231','02133301233','02133301300','02133301301','02133301302','02133301303','02133301310','02133301311','02133301312','02133301320','02133301321','02133301322','02133301323','02133301330','02133301331','02133301332','02133301333','02133302000','02133302001','02133302002','02133302003','02133302010','02133302011','02133302012','02133302013','02133302020','02133302021','02133302030','02133302031','02133302100','02133302102','02133302120','02133303110','02133303111','02133303112','02133303113','02133303130','02133303131','02133310000','02133310002','02133310020','02133310022','02133310112','02133310113','02133310130','02133310131','02133310132','02133310133','02133310200','02133310220','02133310221','02133310222','02133310223','02133310230','02133310232','02133310233','02133310310','02133310311','02133310322','02133311002','02133311003','02133311012','02133311020','02133311021','02133311022','02133311023','02133311030','02133311032','02133311200','02133311201','02133311210','02133311222','02133311223','02133311232','02133312000','02133312001','02133312002','02133312003','02133312010','02133312011','02133312012','02133312013','02133312020','02133312021','02133312030','02133312031','02133312100','02133312102','02133312111','02133312113','02133312120','02133313000','02133313001','02133313002','02133313003','02133313010','02133313012','02133313020','02133313021','02133313022','02133313023','02133313030','02133313032','02133320011','02133320013','02133320031','02133320033','02133320100','02133320101','02133320102','02133320103','02133320110','02133320112','02133320120','02133320121','02133320122','02133320123','02133320130','02133320132','02133320211','02133320300','02133320301','02133320310','02133322022','02133322023','02133322032','02133322200','02133322201','02133322202','02133322203','02133322210','02133322212','02133322220','02133322221','02133322223','02133322230','02133322232','02133323003','02133323010','02133323011','02133323012','02133323013','02133323021','02133323030','02133323031','02133323032','02133323033','02133323100','02133323101','02133323102','02133323103','02133323120','02133323121','02133323122','02133323123','02133323210','02133323211','02133323300','02133323301','02133330023','02133330032','02133330033','02133330122','02133330201','02133330203','02133330210','02133330211','02133330212','02133330213','02133330221','02133330230','02133330231','02133330300','02133330302','02133330320','02133330323','02133330332','02133330333','02133332101','02133332103','02133332110','02133332111','02133332112','02133332113','02133332121','02133332123','02133332130','02133332131','02133332132','02133332133','02133332301','02133332310','02133332311','02133333000','02133333002','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','02133333300','02133333301','02133333302','02133333303','02133333310','02221111013','02221111031','02221111033','02221111102','02221111103','02221111120','02221111121','02221111122','02221111123','02221111130','02221111132','02221111133','02221111301','02221111310','02221111311','02301000113','02301000131','02301000133','02301000311','02301001002','02301001011','02301001013','02301001020','02301001022','02301001100','02301001200','02301002223','02301002232','02301002233','02301002322','02301002323','02301003323','02301003332','02301003333','02301012103','02301012112','02301012113','02301012121','02301012123','02301012130','02301012131','02301012132','02301012133','02301012310','02301012311','02301012312','02301012313','02301012330','02301012331','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','02301021011','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','02301023122','02301023130','02301023131','02301023133','02301023200','02301023201','02301023202','02301023203','02301023210','02301023211','02301023212','02301023213','02301023223','02301023230','02301023231','02301023232','02301023233','02301023300','02301023302','02301023320','02301023322','02301030222','02301030223','02301031102','02301031103','02301031120','02301031121','02301031131','02301031133','02301032000','02301032001','02301032002','02301032003','02301032030','02301032031','02301032032','02301032033','02301032212','02301032230','02301032231','02301032232','02301032233','02301032303','02301032312','02301032313','02301032320','02301032321','02301032322','02301032323','02301032330','02301032331','02301032332','02301032333','02301033220','02301033222','02301033223','02301120020','02301120022','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','02301211202','02301211203','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','02301213221','02301213222','02301213223','02301213231','02301213232','02301213233','02301213300','02301213301','02301213302','02301213303','02301213310','02301213311','02301213312','02301213313','02301213320','02301213321','02301213322','02301213323','02301213330','02301213331','02301213332','02301213333','02301231001','02301231003','02301231010','02301231011','02301231012','02301231013','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','02301321201','02301321210','02301321211','02301321212','02301321213','02301322100','02301322101','02301322102','02301322103','02301322110','02301322111','02301322112','02301322113','02301322120','02301322121','02301322122','02301322123','02301322130','02301322131','02301322132','02301322133','02301322301','02301322310','02301323000','02301323002','02301323020','02301330011','02301330100','02301330101','02301330102','02301330103','02301330110','02301331312','02301331313','02301331330','02301331331','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','02310000210','02310000211','02310000300','02310012303','02310012312','02310012313','02310012321','02310012330','02310012331','02310022303','02310022312','02310022321','02310022330','02310032321','02310032330','02310032331','02310032332','02310032333','02310033202','02310033203','02310033212','02310033220','02310033221','02310033222','02310033223','02310033230','02310033231','02310033232','02310033233','02310101012','02310101021','02310101023','02310101030','02310101032','02310101033','02310101122','02310101201','02310101202','02310101203','02310101210','02310101211','02310101212','02310101220','02310101221','02310101222','02310101223','02310101230','02310101231','02310101232','02310101233','02310101300','02310101301','02310101322','02310101323','02310101332','02310101333','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','02310103203','02310103210','02310103211','02310103212','02310103213','02310103231','02310103233','02310103300','02310103302','02310103320','02310103322','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','02310210231','02310210233','02310210320','02310210321','02310210322','02310210323','02310210332','02310210333','02310211202','02310211203','02310211212','02310211213','02310211220','02310211221','02310211222','02310211223','02310211230','02310211231','02310211232','02310211233','02310211302','02310211303','02310211320','02310211321','02310211322','02310212011','02310212013','02310212100','02310212101','02310212103','02310212110','02310212111','02310212112','02310212113','02310212130','02310212131','02310212132','02310213000','02310213001','02310213002','02310213003','02310213010','02310213011','02310213012','02310213100','02310213112','02310213113','02310213130','02310213131','02310213132','02310213133','02310213310','02310213311','02310220021','02310220023','02310220030','02310220031','02310220032','02310220033','02310220122','02310220200','02310220201','02310220202','02310220203','02310220210','02310220211','02310220212','02310220213','02310220220','02310220221','02310220223','02310220230','02310220231','02310220232','02310220233','02310220300','02310220302','02310220303','02310220320','02310220321','02310220322','02310220323','02310220330','02310222310','02310222311','02310222312','02310222313','02310222331','02310222333','02310223200','02310223201','02310223202','02310223203','02310223212','02310223220','02310223221','02310223222','02310223223','02310223230','02310223232','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','02310322223','02310322232','02310322233','02310331033','02310331211','02310331213','02310331231','02310331300','02310331301','02310331302','02310331303','02310331320','02310331321','02311011000','02311011001','02311011002','02311011003','02311011010','02311011011','02311011012','02311011013','02311011020','02311011021','02311011022','02311011023','02311011030','02311011031','02311011032','02311011033','02311011100','02311011101','02311013303','02311013312','02311013313','02311013321','02311013323','02311013330','02311013331','02311013332','02311013333','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','02311032100','02311032101','02311032102','02311032103','02311032110','02311032111','02311032112','02311032113','02311032120','02311032121','02311032130','02311032131','02311033303','02311033312','02311033313','02311033321','02311033323','02311033330','02311033331','02311033332','02311033333','02311102011','02311102013','02311102030','02311102031','02311102032','02311102033','02311102100','02311102101','02311102102','02311102103','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','02311103233','02311103320','02311103321','02311103322','02311103323','02311103330','02311103332','02311111113','02311112211','02311112213','02311112221','02311112223','02311112230','02311112231','02311112232','02311112233','02311112302','02311113232','02311113233','02311113322','02311113323','02311113330','02311113331','02311113332','02311113333','02311120010','02311120011','02311120100','02311120101','02311120103','02311120110','02311120111','02311120112','02311120113','02311120121','02311120130','02311120131','02311121000','02311121002','02311121011','02311121013','02311121020','02311121031','02311121100','02311121101','02311121102','02311121103','02311121110','02311121112','02311121120','02311121121','02311121130','02311123013','02311123031','02311123033','02311123102','02311123103','02311123112','02311123120','02311123121','02311123122','02311123123','02311123130','02311123132','02311123211','02311123300','02311123301','02311123310','02311130010','02311130011','02311131010','02311131011','02311131012','02311131013','02311131031','02311131033','02311131100','02311131101','02311131102','02311131103','02311131110','02311131111','02311131112','02311131113','02311131120','02311131121','02311131122','02311131123','02311131130','02311131131','02311131132','02311131133','02311131300','02311131301','02311131302','02311131303','02311131310','02311131312','02311203313','02311203331','02311210121','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','02311211212','02311211300','02311211301','02311211303','02311211310','02311211311','02311211312','02311211313','02311212011','02311212013','02311212100','02311212101','02311212102','02311212103','02311212110','02311212111','02311212112','02311212113','02311212120','02311212121','02311212122','02311212123','02311212130','02311212131','02311212132','02311212133','02311212200','02311212201','02311212202','02311212203','02311212212','02311212213','02311212220','02311212221','02311212223','02311212230','02311212231','02311212232','02311212233','02311212301','02311212302','02311212303','02311212310','02311212311','02311212320','02311212321','02311212322','02311212323','02311212331','02311213201','02311213203','02311213210','02311213211','02311213212','02311213213','02311213220','02311213222','02311221100','02311221101','02311221102','02311221103','02311221110','02311221111','02311221112','02311221113','02311221120','02311221121','02311221122','02311221123','02311221130','02311221131','02311221132','02311221133','02311222102','02311222120','02311222121','02311222122','02311222123','02311222132','02311222133','02311222300','02311222301','02311222310','02311222311','02311222312','02311222313','02311222330','02311222331','02311222332','02311222333','02311223022','02311223023','02311223113','02311223131','02311223133','02311223200','02311223201','02311223202','02311223203','02311223220','02311223221','02311223222','02311223223','02311223311','02311223313','02311223330','02311223331','02311223333','02311230001','02311230002','02311230010','02311230011','02311230020','02311230022','02311230100','02311230101','02311230121','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','02311231001','02311231003','02311231010','02311231012','02311231020','02311231021','02311231022','02311231023','02311231030','02311231032','02311231033','02311231200','02311231201','02311231202','02311231203','02311231210','02311231211','02311231212','02311231213','02311231220','02311231221','02311231222','02311231223','02311231230','02311231231','02311231232','02311231233','02311231300','02311231302','02311231320','02311231322','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','02311232330','02311232331','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','02311233133','02311233200','02311233201','02311233202','02311233203','02311233210','02311233211','02311233212','02311233213','02311233220','02311233221','02311233222','02311233223','02311233230','02311233231','02311233300','02311233301','02311233302','02311233303','02311300101','02311300103','02311300110','02311300111','02311300112','02311300113','02311300121','02311300123','02311300130','02311300131','02311300132','02311300133','02311300310','02311300311','02311300312','02311300313','02311300330','02311300331','02311300332','02311300333','02311301000','02311301001','02311301002','02311301003','02311301010','02311301012','02311301020','02311301021','02311301022','02311301023','02311301030','02311301200','02311301201','02311301202','02311301203','02311301220','02311301221','02311301222','02311301223','02311302110','02311302111','02311302112','02311302113','02311302130','02311302131','02311302132','02311302133','02311302310','02311302311','02311303000','02311303001','02311303002','02311303003','02311303020','02311303021','02311303022','02311303133','02311303311','02311312022','02311312023','02311312030','02311312031','02311312032','02311312033','02311312120','02311312122','02311312200','02311312201','02311312202','02311312203','02311312210','02311312211','02311312212','02311312213','02311312230','02311312231','02311312233','02311312300','02311312302','02311312320','02311312322','02311313110','02311313111','02311313112','02311313113','02311313130','02311313131','02311313132','02311313133','02311313233','02311313301','02311313303','02311313310','02311313311','02311313312','02311313313','02311313320','02311313321','02311313322','02311313323','02311313330','02311313331','02311313332','02311313333','02311320230','02311320231','02311320232','02311320233','02311320320','02311320322','02311322000','02311322002','02311322010','02311322011','02311322020','02311322022','02311322023','02311322100','02311322102','02311322200','02311322201','02311322203','02311322210','02311322212','02311322213','02311322220','02311322221','02311322230','02311322231','02311322233','02311322301','02311322302','02311322303','02311322310','02311322312','02311322320','02311322321','02311322322','02311322323','02311322330','02311322332','02311323000','02311323001','02311323002','02311323003','02311323010','02311323011','02311323012','02311323013','02311323020','02311323021','02311323022','02311323023','02311323030','02311323031','02311323032','02311323033','02311323100','02311323102','02311323120','02311323122','02311323131','02311323133','02311323200','02311323201','02311323202','02311323203','02311323210','02311323211','02311323212','02311323213','02311323220','02311323221','02311323230','02311323231','02311323300','02311323302','02311323311','02311323320','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','02311332020','02311332021','02311332022','02311332023','02311332031','02311332032','02311332033','02311332120','02311332121','02311332122','02311332123','02311332200','02311332201','02311332210','02311332211','02311332212','02311332213','02311332230','02311332231','02311332300','02311332301','02311332302','02311332320','02311333001','02311333003','02311333010','02311333011','02311333012','02311333013','02311333021','02311333023','02311333030','02311333031','02311333032','02311333033','02311333100','02311333101','02311333102','02311333103','02311333110','02311333111','02311333112','02311333113','02311333120','02311333121','02311333122','02311333123','02311333130','02311333131','02311333132','02311333133','02311333210','02311333211','02311333212','02311333213','02311333222','02311333223','02311333230','02311333231','02311333232','02311333233','02311333300','02311333301','02311333302','02311333303','02311333310','02311333311','02311333312','02311333313','02311333320','02311333321','02311333322','02311333323','02311333330','02311333331','02311333332','02311333333','02312001000','02312001001','02312001002','02312100001','02312100003','02312100010','02312100011','02312100012','02312100013','02312100031','02312100033','02312100100','02312100102','02312100120','02312100122','02313000033','02313000120','02313000121','02313000122','02313000123','02313000300','02313003321','02313003323','02313003330','02313003331','02313003332','02313003333','02313010000','02313010001','02313010010','02313010013','02313010021','02313010023','02313010030','02313010031','02313010033','02313010102','02313010111','02313010112','02313010113','02313010120','02313010121','02313010122','02313010123','02313010130','02313010131','02313010132','02313010133','02313010201','02313010212','02313010213','02313010230','02313010231','02313010233','02313010302','02313010303','02313010310','02313010311','02313010312','02313010320','02313010321','02313010322','02313010323','02313010330','02313010332','02313011002','02313011020','02313011333','02313012001','02313012003','02313012010','02313012011','02313012012','02313012013','02313012021','02313012023','02313012030','02313012031','02313012032','02313012033','02313012100','02313012101','02313012102','02313012103','02313012110','02313012112','02313012120','02313012121','02313012122','02313012123','02313012130','02313012210','02313012211','02313012220','02313012222','02313012223','02313012300','02313012301','02313013110','02313013111','02313013112','02313013113','02313013123','02313013130','02313013131','02313013132','02313013133','02313013301','02313013310','02313013311','02313013312','02313013313','02313013321','02313013323','02313013330','02313013331','02313013332','02313013333','02313021101','02313021103','02313021110','02313021111','02313021112','02313021113','02313021121','02313021130','02313021131','02313023021','02313023022','02313023023','02313023030','02313023032','02313023033','02313023122','02313023200','02313023201','02313023203','02313023210','02313023211','02313023212','02313023213','02313023221','02313023230','02313023300','02313023302','02313023303','02313023312','02313030000','02313030001','02313030002','02313030003','02313030010','02313030020','02313030333','02313031101','02313031103','02313031110','02313031111','02313031112','02313031113','02313031130','02313031131','02313031133','02313031222','02313031223','02313032013','02313032030','02313032031','02313032032','02313032033','02313032111','02313032112','02313032113','02313032120','02313032121','02313032122','02313032123','02313032130','02313032131','02313032132','02313032133','02313032210','02313032211','02313032213','02313032300','02313032301','02313032302','02313032303','02313032310','02313032311','02313032312','02313032313','02313033000','02313033001','02313033002','02313033003','02313033020','02313033021','02313033022','02313100011','02313100100','02313100101','02313100110','02313100221','02313100222','02313100223','02313100230','02313100232','02313100233','02313100312','02313100313','02313100330','02313100331','02313100333','02313101131','02313101132','02313101133','02313101201','02313101202','02313101203','02313101212','02313101220','02313101221','02313101222','02313101223','02313101230','02313101232','02313101310','02313101311','02313101313','02313101331','02313101333','02313102000','02313102001','02313102002','02313102003','02313102010','02313102011','02313102012','02313102013','02313102020','02313102021','02313102022','02313102023','02313102030','02313102031','02313102032','02313102033','02313102102','02313102120','02313102133','02313102200','02313102201','02313102202','02313102203','02313102210','02313102211','02313102212','02313102213','02313102220','02313102221','02313102222','02313102223','02313102230','02313102231','02313102232','02313102233','02313102300','02313102302','02313102311','02313102320','02313102322','02313102323','02313102332','02313102333','02313103000','02313103001','02313103002','02313103003','02313103010','02313103012','02313103020','02313103021','02313103022','02313103023','02313103032','02313103033','02313103200','02313103201','02313103202','02313103203','02313103210','02313103211','02313103212','02313103221','02313110020','02313110022','02313110023','02313110030','02313110031','02313110032','02313110033','02313110113','02313110122','02313110131','02313110133','02313110200','02313110201','02313110202','02313110203','02313110210','02313110211','02313110212','02313110213','02313110220','02313110221','02313110222','02313110223','02313110230','02313110231','02313110232','02313110300','02313110311','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','02313111223','02313111230','02313111231','02313111232','02313111233','02313111300','02313111301','02313111302','02313111303','02313111310','02313111311','02313111312','02313111313','02313111320','02313111321','02313111330','02313111331','02313111332','02313111333','02313112031','02313112032','02313112033','02313112120','02313112121','02313112122','02313112123','02313112210','02313112211','02313112300','02313112301','02313113000','02313113001','02313113002','02313113003','02313113010','02313113011','02313113012','02313113020','02313113021','02313113023','02313113030','02313113031','02313113032','02313113033','02313113110','02313113111','02313113112','02313113113','02313113121','02313113122','02313113123','02313113130','02313113131','02313113132','02313113133','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','02313120201','02313131100','02313131101','02313131103','02313131110','02313131111','02313131112','02313131113','02313131121','02313131130','02313131131','02313131132','02313131133','02313201310','02313201311','02313201312','02313201313','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','03022023330','03022023331','03022023332','03022023333','03022032201','03022032202','03022032203','03022032210','03022032212','03022032220','03022032221','03022032222','03022032223','03022032230','03022200132','03022200133','03022200310','03022200311','03022200312','03022200313','03022200330','03022200331','03022200332','03022200333','03022201022','03022201023','03022201032','03022201033','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','03022201320','03022201321','03022201322','03022202203','03022202212','03022202213','03022202220','03022202221','03022202222','03022202223','03022202230','03022202231','03022202232','03022202233','03022202302','03022202303','03022202320','03022202321','03022202322','03022202323','03022202330','03022202332','03022203012','03022203013','03022203030','03022203031','03022203032','03022203033','03022203102','03022203103','03022203120','03022203121','03022203122','03022203123','03022203201','03022203202','03022203203','03022203210','03022203211','03022203212','03022203213','03022203220','03022203221','03022203222','03022203223','03022203230','03022203231','03022203232','03022203233','03022203300','03022203301','03022203302','03022203320','03022203322','03022210000','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','03022220112','03022220113','03022220120','03022220121','03022220122','03022220123','03022220130','03022220131','03022220132','03022220133','03022220211','03022220213','03022220231','03022220300','03022220301','03022220302','03022220303','03022220310','03022220311','03022220312','03022220313','03022220320','03022220321','03022220322','03022220323','03022220330','03022220331','03022220332','03022220333','03022221000','03022221001','03022221003','03022221010','03022221011','03022221012','03022221013','03022221021','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','03022222111','03022222113','03022222131','03022222311','03022222313','03022222331','03022222333','03022223000','03022223001','03022223002','03022223003','03022223010','03022223011','03022223012','03022223013','03022223020','03022223021','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','03022223300','03022223301','03022223302','03022223303','03022223310','03022223311','03022223312','03022223313','03022223330','03022223331','03022230101','03022230103','03022230110','03022230111','03022230112','03022230113','03022230121','03022230130','03022230131','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','03022231030','03022231031','03022231113','03022231130','03022231131','03022231132','03022231133','03022231200','03022231202','03022231203','03022231220','03022231221','03022231222','03022231223','03022231301','03022231303','03022231310','03022231311','03022231312','03022231313','03022231321','03022231323','03022231330','03022231331','03022231332','03022231333','03022232003','03022232010','03022232011','03022232012','03022232013','03022232021','03022232030','03022232031','03022232033','03022232100','03022232101','03022232102','03022232103','03022232110','03022232111','03022232112','03022232113','03022232120','03022232121','03022232122','03022232123','03022232130','03022232131','03022232132','03022232133','03022232211','03022232300','03022232301','03022232310','03022232311','03022233000','03022233002','03022233020','03022233022','03022233200','03022233212','03022233213','03022233230','03022233231','03022233232','03022233233','03022233302','03022233303','03022233320','03022233321','03022233322','03022233323','03022302022','03022302023','03022302032','03022302200','03022302201','03022302202','03022302203','03022302210','03022302211','03022302212','03022302213','03022302220','03022302221','03022302222','03022302223','03022302230','03022302231','03022302232','03022302233','03022302302','03022302320','03022302321','03022302322','03022302323','03022302332','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','03022320033','03022320100','03022320101','03022320102','03022320103','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','03022321002','03022321003','03022321020','03022321021','03022321022','03022321023','03022321200','03022321201','03022321202','03022322030','03022322031','03022322032','03022322033','03022322103','03022322110','03022322120','03022322121','03022322122','03022322123','03022322130','03022322131','03022322132','03022322133','03022322210','03022322211','03022322212','03022322213','03022322230','03022322231','03022322300','03022322301','03022322302','03022322303','03022322320','03022322321','03022323021','03022323022','03022323023','03022323122','03022323123','03022323132','03022323133','03022323200','03022323201','03022323202','03022323203','03022323210','03022323211','03022323212','03022323213','03022323231','03022323232','03022323233','03022323300','03022323301','03022323302','03022323303','03022323310','03022323311','03022323312','03022323313','03022323320','03022323321','03022323322','03022323323','03022323330','03022323331','03022323332','03022323333','03022330332','03022330333','03022331110','03022331111','03022331112','03022331113','03022331121','03022331123','03022331130','03022331131','03022331132','03022331133','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','03022332101','03022332103','03022332110','03022332111','03022332112','03022332113','03022332122','03022332123','03022332132','03022332200','03022332201','03022332202','03022332203','03022332210','03022332211','03022332212','03022332213','03022332220','03022332221','03022332222','03022332223','03022332230','03022332231','03022332232','03022332233','03022332300','03022332301','03022332302','03022332303','03022332310','03022332312','03022332320','03022332321','03022332322','03022332323','03022332330','03022332331','03022332332','03022332333','03022333000','03022333001','03022333002','03022333003','03022333010','03022333011','03022333012','03022333013','03022333100','03022333101','03022333110','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','03023202202','03023202203','03023202212','03023202213','03023202220','03023202221','03023202222','03023202223','03023202230','03023202231','03023202232','03023202233','03023202302','03023202303','03023202320','03023202321','03023202322','03023202323','03023202330','03023202331','03023202332','03023202333','03023203130','03023203131','03023203132','03023203133','03023203202','03023203203','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','03023210110','03023210111','03023210112','03023210113','03023210131','03023210133','03023210230','03023210231','03023210232','03023210233','03023210311','03023210313','03023210322','03023210331','03023210333','03023211000','03023211001','03023211002','03023211003','03023211010','03023211011','03023211012','03023211013','03023211020','03023211021','03023211022','03023211023','03023211030','03023211031','03023211032','03023211033','03023211131','03023211132','03023211133','03023211200','03023211201','03023211202','03023211203','03023211210','03023211211','03023211212','03023211213','03023211220','03023211221','03023211222','03023211223','03023211230','03023211232','03023211310','03023211311','03023211312','03023211313','03023211330','03023211331','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','03023212222','03023212223','03023212232','03023212233','03023212300','03023212312','03023212313','03023212330','03023212331','03023212332','03023212333','03023213000','03023213001','03023213112','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','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','03023223000','03023223001','03023223010','03023223011','03023223100','03023223101','03023223110','03023223111','03023223301','03023223303','03023223310','03023223311','03023223312','03023223313','03023223321','03023223323','03023223330','03023223331','03023223332','03023223333','03023230000','03023230001','03023230002','03023230003','03023230010','03023230012','03023230013','03023230020','03023230021','03023230030','03023230031','03023230102','03023230110','03023230111','03023230113','03023230120','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','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','03023232010','03023232011','03023232013','03023232100','03023232101','03023232102','03023232103','03023232110','03023232111','03023232112','03023232113','03023232120','03023232121','03023232122','03023232123','03023232130','03023232131','03023232132','03023232133','03023232200','03023232201','03023232202','03023232203','03023232212','03023232213','03023232220','03023232221','03023232222','03023232223','03023232230','03023232231','03023232232','03023232233','03023232301','03023232302','03023232310','03023232311','03023232312','03023232313','03023232320','03023232321','03023232322','03023232323','03023232331','03023232332','03023232333','03023233000','03023233002','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','03023302310','03023302311','03023302312','03023302313','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','03023303213','03023303220','03023303221','03023303222','03023303223','03023303230','03023303231','03023303232','03023303233','03023303300','03023303301','03023303302','03023303303','03023303310','03023303311','03023303312','03023303313','03023303320','03023303321','03023303322','03023303323','03023303330','03023303331','03023303332','03023310200','03023310201','03023310202','03023310203','03023310220','03023310221','03023310222','03023310223','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','03023321320','03023321321','03023321322','03023321323','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','03023322332','03023322333','03023323000','03023323001','03023323002','03023323003','03023323010','03023323011','03023323012','03023323013','03023323020','03023323021','03023323022','03023323023','03023323030','03023323031','03023323032','03023323033','03023323100','03023323101','03023323102','03023323103','03023323110','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','03023330222','03023330223','03023332000','03023332001','03023332002','03023332003','03023332010','03023332012','03023332020','03023332021','03023332022','03023332023','03023332030','03023332032','03023332201','03023332202','03023332203','03023332212','03023332220','03023332221','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','03131012110','03131013121','03131013123','03131013130','03131013131','03131013132','03131013133','03131013211','03131013213','03131013300','03131013301','03131013302','03131013310','03131013311','03131023011','03131023100','03131023312','03131023313','03131023330','03131023331','03131031201','03131031203','03131031210','03131031212','03131031231','03131031232','03131031233','03131031320','03131031321','03131031322','03131031323','03131031332','03131033010','03131033011','03131033100','03131033101','03131033102','03131033103','03131033200','03131100111','03131100121','03131100123','03131100130','03131100132','03131101000','03131101001','03131101010','03131102020','03131102022','03131103110','03131103111','03131103112','03131103113','03131110332','03131110333','03131111222','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','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','03131132320','03131132321','03131132322','03131132323','03131132330','03131132332','03131132333','03131133000','03131133002','03131133003','03131133020','03131133021','03131133022','03131133023','03131133030','03131133032','03131133100','03131133101','03131133102','03131133103','03131133200','03131133201','03131133203','03131133210','03131133212','03131133220','03131133221','03131133222','03131133223','03131133230','03131133232','03131133323','03131133330','03131133332','03131201311','03131201313','03131201331','03131210202','03131211012','03131211013','03131301222','03131301223','03131301232','03131301323','03131301332','03131301333','03131303000','03131303001','03131303010','03131303101','03131303102','03131303103','03131303110','03131303111','03131303112','03131303120','03131303121','03131303130','03131303131','03131303133','03131303233','03131303312','03131303322','03131310010','03131310011','03131310012','03131310013','03131310022','03131310031','03131310033','03131310100','03131310101','03131310102','03131310103','03131310110','03131310111','03131310112','03131310113','03131310120','03131310121','03131310130','03131310131','03131310200','03131310212','03131310213','03131310230','03131310231','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','03131311320','03131311321','03131311322','03131311323','03131311330','03131311331','03131311332','03131311333','03131312000','03131312001','03131312002','03131312003','03131312010','03131312012','03131312013','03131312020','03131312021','03131312022','03131312030','03131312031','03131312101','03131312103','03131312110','03131312112','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','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','03133111233','03133113232','03133113233','03133131010','03133131011','03133131222','03133131223','03133131303','03133131321','03133213132','03133213133','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','03133233311','03133233333','03133302200','03133303201','03133303202','03133303203','03133303210','03133303212','03133303220','03133303221','03133311102','03133311103','03133311120','03133311121','03133312221','03133312223','03133312230','03133312231','03133312232','03133312233','03133312303','03133312312','03133312320','03133312321','03133312322','03133320022','03133320332','03133321212','03133321213','03133322110','03133322120','03133322121','03133322122','03133322123','03133322222','03133323222','03133330001','03133330002','03133330003','03133330010','03133330011','03133330012','03133330021','03133330100','03133330112','03133330130','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','03200000232','03200000300','03200000301','03200000302','03200000303','03200000310','03200000311','03200000312','03200000313','03200000320','03200000321','03200000322','03200000323','03200000330','03200000331','03200000332','03200000333','03200001002','03200001020','03200001022','03200001200','03200001202','03200001203','03200001210','03200001212','03200001220','03200001221','03200001223','03200001230','03200001231','03200001232','03200002001','03200002003','03200002010','03200002012','03200002021','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','03200003200','03200003201','03200003210','03200003211','03200010232','03200010233','03200010302','03200010303','03200010312','03200010313','03200010320','03200010321','03200010322','03200010323','03200010330','03200010331','03200010332','03200010333','03200011010','03200011011','03200011100','03200011101','03200011201','03200011203','03200011210','03200011211','03200011212','03200011213','03200011220','03200011221','03200011223','03200011230','03200011231','03200011232','03200011233','03200011322','03200011323','03200011333','03200012010','03200012011','03200012012','03200012013','03200012030','03200012031','03200012032','03200012033','03200012100','03200012101','03200012102','03200012103','03200012110','03200012111','03200012112','03200012113','03200012120','03200012121','03200012122','03200012123','03200012130','03200012131','03200012132','03200012133','03200012210','03200012211','03200012212','03200012213','03200012230','03200012231','03200012232','03200012233','03200012300','03200012301','03200012302','03200012303','03200012310','03200012311','03200012320','03200012321','03200012322','03200012323','03200013011','03200013013','03200013100','03200013101','03200013102','03200013103','03200013111','03200013113','03200013121','03200013123','03200013130','03200013131','03200013132','03200013133','03200013301','03200013303','03200013310','03200013311','03200013312','03200013313','03200013321','03200013330','03200013331','03200013332','03200013333','03200020000','03200020001','03200020002','03200020003','03200020010','03200020012','03200020020','03200020021','03200020022','03200020023','03200020200','03200021301','03200021303','03200021310','03200021312','03200021321','03200021323','03200021330','03200023113','03200023130','03200023131','03200023132','03200023133','03200023311','03200023313','03200030113','03200030130','03200030131','03200030132','03200030133','03200030310','03200030311','03200030312','03200030313','03200030331','03200031002','03200031003','03200031012','03200031020','03200031021','03200031022','03200031023','03200031030','03200031032','03200031110','03200031111','03200031200','03200031201','03200031202','03200031203','03200031210','03200031212','03200031220','03200031310','03200031311','03200031312','03200031313','03200031321','03200031323','03200031330','03200031331','03200031332','03200031333','03200032002','03200032020','03200032021','03200032022','03200032023','03200032200','03200032201','03200032202','03200032203','03200032211','03200032213','03200032231','03200032300','03200032301','03200032302','03200032303','03200032320','03200033110','03200033111','03200100132','03200100133','03200100221','03200100222','03200100223','03200100230','03200100231','03200100232','03200100233','03200100310','03200100311','03200100312','03200100313','03200100320','03200100321','03200100322','03200100323','03200100330','03200100331','03200100332','03200100333','03200101010','03200101011','03200101012','03200101013','03200101022','03200101031','03200101033','03200101100','03200101101','03200101102','03200101103','03200101110','03200101111','03200101112','03200101113','03200101120','03200101121','03200101122','03200101130','03200101131','03200101133','03200101200','03200101201','03200101202','03200101203','03200101220','03200101221','03200101222','03200101223','03200102000','03200102001','03200102002','03200102003','03200102010','03200102011','03200102012','03200102013','03200102020','03200102021','03200102022','03200102023','03200102030','03200102031','03200102032','03200102100','03200102101','03200102102','03200102103','03200102110','03200102111','03200102112','03200102113','03200102120','03200102121','03200102122','03200102123','03200102130','03200102131','03200102132','03200102133','03200102200','03200102201','03200102202','03200102203','03200102210','03200102212','03200102220','03200102221','03200102222','03200102223','03200102230','03200102232','03200102300','03200102301','03200102303','03200102310','03200102311','03200102312','03200102313','03200103000','03200103001','03200103002','03200103003','03200103020','03200103021','03200103022','03200103023','03200103200','03200103201','03200103202','03200103203','03200110000','03200110001','03200110002','03200110003','03200110010','03200110011','03200110012','03200110020','03200110021','03200110030','03200110100','03200110101','03200110103','03200110110','03200110111','03200110112','03200110113','03200110121','03200110130','03200110131','03200110132','03200110133','03200110310','03200110311','03200110312','03200110313','03200110323','03200110330','03200110331','03200110332','03200110333','03200111000','03200111001','03200111002','03200111003','03200111010','03200111012','03200111020','03200111021','03200111022','03200111023','03200111030','03200111031','03200111032','03200111033','03200111122','03200111123','03200111132','03200111200','03200111201','03200111202','03200111203','03200111210','03200111211','03200111212','03200111213','03200111220','03200111221','03200111222','03200111223','03200111230','03200111231','03200111300','03200111301','03200111302','03200111303','03200111310','03200111312','03200111320','03200111321','03200111322','03200111323','03200111330','03200112101','03200112103','03200112110','03200112111','03200112112','03200112113','03200113000','03200113001','03200113002','03200113003','03200120000','03200120001','03200120010','03200120120','03200120121','03200120122','03200120123','03200120132','03200120200','03200120202','03200120211','03200120213','03200120220','03200120222','03200120300','03200120301','03200120302','03200120303','03200120310','03200120311','03200120312','03200120320','03200120321','03200121113','03200121121','03200121123','03200121130','03200121131','03200121132','03200121133','03200121310','03200121311','03200121312','03200121313','03200130020','03200130022','03200130123','03200130200','03200130201','03200130202','03200130203','03200130301','03200130310','03200133020','03200133021','03200133022','03200133023','03200200010','03200200011','03200200012','03200200013','03200200021','03200200023','03200200030','03200200031','03200200032','03200200033','03200200100','03200200101','03200200102','03200200103','03200200110','03200200111','03200200112','03200200113','03200200120','03200200121','03200200122','03200200123','03200200130','03200200131','03200200132','03200200133','03200200201','03200200210','03200200211','03200200213','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','03200201200','03200201201','03200201202','03200201203','03200201210','03200201211','03200201212','03200201213','03200201223','03200201232','03200201233','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','03200203001','03200203003','03200203010','03200203011','03200203012','03200203013','03200203020','03200203021','03200203022','03200203023','03200203030','03200203031','03200203032','03200203033','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','03200210002','03200210003','03200210012','03200210013','03200210020','03200210021','03200210022','03200210023','03200210030','03200210031','03200210032','03200210033','03200210120','03200210122','03200210200','03200210201','03200210210','03200210211','03200210212','03200210213','03200210230','03200210231','03200210232','03200210233','03200210300','03200210301','03200210302','03200210303','03200210310','03200210320','03200210321','03200210322','03200210323','03200211131','03200211133','03200211233','03200211301','03200211303','03200211310','03200211311','03200211312','03200211313','03200211321','03200211322','03200211330','03200211331','03200211332','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','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','03200221322','03200221331','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','03200223200','03200223201','03200223202','03200223203','03200223220','03200223221','03200230000','03200230001','03200230002','03200230003','03200230010','03200230011','03200230012','03200230013','03200230020','03200230021','03200230022','03200230023','03200230030','03200