//(1) lon: -86.1581 lat: 39.7671 scale: 75  bb_pc: 
// Copyright (c) 2001-2010 Maptuit Corporation.
//     All rights reserved.
var m3map = {
created:false,
NAME: 'm3map',
config: 'TrafficT.WFMS-FM',
appid: '02372',
tilesets: [{'tileset': 0, 'zindex': 0, 'active': 1, 'opacity':1.0}],
tdomain: '.service.maptuit.com',
imagepath: 'http://castle.service.traffic.maptuit.com/nc/controls/',
csspath: 'http://castle.service.traffic.maptuit.com/nc/nc.css',
printable: 0,
xhtml: 0,
Loaded: false,
altKey: false,
ctrlKey: false,
shiftKey: false,
X: 0,
Y: 0,
down: 0,
M: 0,
N: 0,
minHeight: 200,
minWidth: 200,
contentHeight: 0,
contentWidth: 0,
bugMax: 100,
Lon: -86.1581,
Lat: 39.7671,
xhLon: null,
xhLat: null,
Scale: 1.0,
ScaleStep: 7,
Ybase:0,
Xbase:0,
Cylinder:0,
mapHeight: 400,
mapWidth: 400,
cellMap: [],
Slot: 0,
Frames: [],
resize: 0,
didautoscale: false,
ctrlpos: {},
zoomtool: 12,
zoomorient: 'v',
crosshair: 'none',
hoverX: -20,
hoverY: -20,
HoverTimer: null,
tgurl: 'http://service.maptuit.com/htmlclient/tipgen.cgi?',
tgfunction: 'none',
tgfilter: /^[dDpj]/,
painterurl: 'http://service.maptuit.com/htmlclient/map.cgi?',
Markup: '',
tgmarkup: '',
PI: 3.1415926,
boundN: 90,
boundS: -90,
boundE: 180,
boundW: -180,
zoomDown: false,
zoomPos: -2,
zoomPosMin: -2,
zoomPosMax: 64,
centerOnWheelZoom: 0,
wheelZoomAnimation: 0,
homeLon: -86.1581,
homeLat: 39.7671,
homeScale: 75,
hoverLon: null,
hoverLat: null
};
m3map.ctrlpos["tl,top"] = 4;
m3map.ctrlpos["bl,left"] = 4;
m3map.ctrlpos["tr,top"] = 179;
m3map.ctrlpos["tl,left"] = 4;
m3map.ctrlpos["br,right"] = 4;
m3map.ctrlpos["br,bottom"] = 20;
m3map.ctrlpos["tr,right"] = 4;
m3map.ctrlpos["bl,bottom"] = 36;

function isRegExp(a)
{return a.constructor==RegExp;}
function m3_start(MAP)
{if(navigator.userAgent.toLowerCase().indexOf("safari")!=-1)
{MAP.isSafari=true;}
else
{MAP.isSafari=false;}
if(!window.$)
{window.$=function(){return document.getElementById(arguments[0]);}}
String.prototype.trim=function()
{return this.replace(/^\s*|\s*$/g,'');};var mapname=MAP.NAME;if(!MAP.printable)
{var f=$(MAP.NAME+'_skin');f.onmousemove=function(e){return m3_mouse_move(e,mapname);};f.onmousedown=function(e){return m3_mouse_down(e,mapname);};f.onmouseup=function(e){return m3_mouse_up(e,mapname);};f.onmouseout=function(e){return m3_mouse_out(e,mapname);};f.onclick=function(e){return m3_mouse_click(e,mapname);};f.ondblclick=function(e){return m3_mouse_doubleclick(e,mapname);};if(f.addEventListener)
f.addEventListener('DOMMouseScroll',m3_mouse_wheel,false);f.onmousewheel=m3_mouse_wheel;if((MAP.zoomtool>8)&&$(MAP.NAME+'_zoom_pointer'))
{var zp=$(MAP.NAME+'_zoom_pointer');zp.onmousedown=function(e){return m3_zoom_mousedown(e,mapname);};zp.onmouseup=function(e){return m3_zoom_mouseup(e,mapname);};zp.onmousemove=function(e){return m3_zoom_mousemove(e,mapname);};zp.onmouseout=function(e){return m3_zoom_mouseout(e,mapname);};}}
if(MAP.usexhtml)
{MAP.usexhtml="/";}
MAP.isMaptuitMap=1;MAP.mydoc=window.document;if(!MAP.mydoc.importNode)
{MAP.mydoc._importNode=function(oNode,bImportChildren)
{var oNew;if(oNode.nodeType==1)
{oNew=MAP.mydoc.createElement(oNode.nodeName);for(var i=0;i<oNode.attributes.length;i++)
{var attr=oNode.attributes[i];if(attr.nodeValue!=null&&attr.nodeValue!='')
{oNew.setAttribute(attr.name,attr.nodeValue);}}
oNew.style.cssText=oNode.style.cssText;}
else if(oNode.nodeType==3)
{oNew=MAP.mydoc.createTextNode(oNode.nodeValue);}
if(bImportChildren&&oNode.hasChildNodes())
{for(var oChild=oNode.firstChild;oChild;oChild=oChild.nextSibling)
{oNew.appendChild(MAP.mydoc._importNode(oChild,true));}}
return oNew;}}
else
{MAP.mydoc._importNode=MAP.mydoc.importNode;}
var tmpdomain=MAP.tdomain.split(',');MAP.tdomain=tmpdomain[0];if(tmpdomain.length!=1)
{var adomain=document.domain.split('.');var sdomain=adomain[adomain.length-2]+'.'+adomain[adomain.length-1];for(var i=0;i<tmpdomain.length;i++)
{if(tmpdomain[i].indexOf(sdomain)!=-1)
{MAP.tdomain=tmpdomain[i];break;}}}
MAP.Canvases={};MAP.CanvasesZ=[];MAP.ZindexShift=3;MAP.canvasesAreHidden=false;MAP.tipClickIDs={};MAP.tipHoverIDs={};MAP.tipHoverPos={};MAP.tipAnimateSpeed=25;MAP.cssLoaded=false;MAP.MUPSEQ=0;MAP.m3DoubleClick=MAP.m3SingleClick=MAP.m3Change=MAP.m3Hover=MAP.m3GetTipText=MAP.m3MapTrans=null;MAP.gotoLL=function(lon,lat){return m3_gotoLL(lon,lat,MAP);}
MAP.centerCH=function(){return m3_centerCH(MAP);}
MAP.addBug=function(q,w){m3_addBug(q,w,MAP);}
MAP.addLocalStyle=function(s,i){return m3_addLocalStyle(M,s,i);}
MAP.hoverX=-1;MAP.hoverY=-1;MAP.initialSize=0;MAP.transFlag=false;MAP.addCanvas=function(q,w,e,r){return m3_addCanvas(q,w,e,MAP);}
MAP.deleteCanvas=function(q){return m3_deleteCanvas(q,MAP);}
MAP.showCanvas=function(q,w){return m3_showCanvas(q,w,MAP);}
MAP.toolTip=function(q,w,e,r,t,y,u,i){return m3_popTip(q,w,e,r,t,y,u,i,MAP);}
MAP.clearTips=function(q){return m3_clearTips(q,MAP);}
MAP.closeTip=function(q){return m3_closeTip(q,MAP);}
MAP.xy_tray=function(q,w){return m3_xy_tray({x:q,y:w},MAP);}
MAP.xy_skin=function(q,w){return m3_xy_skin({x:q,y:w},MAP);}
MAP.autoscale=function(q){return m3_autoscale(q,MAP);}
MAP.autocenter=function(q){return m3_autocenter(q,MAP);}
MAP.autocentre=function(q){return m3_autocenter(q,MAP);}
MAP.computebox=function(q){return m3_computebox(q,MAP);}
MAP.c2g=function(q,w){return m3_c2g(q,w,MAP);}
MAP.g2c=function(q,w){return m3_g2c(q,w,MAP);}
MAP.getState=function(){return m3_getState(MAP);}
MAP.setState=function(s){m3_setState(MAP,s);}
MAP.drawMarkup=function(){return m3_drawMarkup(MAP);}
MAP.print=function(){return m3_print(MAP);}
MAP.xhX=MAP.xhY=MAP.HoverTimer=null;MAP.Busy=false;MAP.WheelBusy=false;MAP.Dirty=true;MAP.FrameWork=false;MAP.OverlayTimer=false;m3_prep_tg_markup(MAP);m3_resize(MAP);m3_size_calc(MAP);if(MAP.printable)
{if($(MAP.NAME+'_pan_control')){$(MAP.NAME+'_pan_control').style.display="none";}
if($(MAP.NAME+'_zoom_control')){$(MAP.NAME+'_zoom_control').style.display="none";}}
if(MAP.didautoscale&&MAP.resize)
{MAP.Lon=(MAP.bb1+MAP.bb3)/2;MAP.Lat=(MAP.bb2+MAP.bb4)/2;MAP.Cylinder=Math.round(Math.cos(MAP.PI*MAP.Lat/180)*20);var tempscale=m3_autoscale({top:MAP.bb4,bottom:MAP.bb2,left:MAP.bb1,right:MAP.bb3},MAP);MAP.ScaleStep=m3_scale_to_scalestep(tempscale);}
m3_init_map(MAP);m3_fill_frames(MAP);if((MAP.xhLon!=null)&&(MAP.xhLat!=null))
{var xh_xy=m3_g2c(MAP.xhLon,MAP.xhLat,MAP);m3_move_xhair(xh_xy,MAP);MAP.xhX=xh_xy.x;MAP.xhY=xh_xy.y;}
MAP.Loaded=true;}
function m3_init_map(MAP)
{MAP.TrayDivId=MAP.NAME+'_tray';MAP.XHairLayerDivId=MAP.NAME+'_xhair_layer';MAP.MarkupDivId=MAP.NAME+'_markup';if(MAP.Busy)return;MAP.Busy=true;MAP.Scale=1.0;var i;for(i=0;i<MAP.ScaleStep;i++)MAP.Scale*=1.778;MAP.Scale=Math.round(MAP.Scale);MAP.Cylinder=Math.round(Math.cos(MAP.PI*MAP.Lat/180)*20);if(MAP.Cylinder<5)MAP.Cylinder=5;m3_move_zoom_ptr(MAP.ScaleStep,MAP);var X,Y;X=(MAP.Lon+180)*111195*MAP.Cylinder/(20*MAP.Scale);Y=(MAP.Lat+90)*111195/MAP.Scale;MAP.Xbase=Math.floor(X/256);MAP.Ybase=Math.floor(Y/256);m3_compute_c2g_constants(MAP);var Xo,Yo;Xo=X-256*MAP.Xbase;Yo=Y-256*MAP.Ybase;var cx,cy;cx=Math.round(MAP.mapWidth/2-Xo);cy=Math.round(MAP.mapHeight/2-(256-Yo));m3_movetray(cy,cx,MAP,true);MAP.M=cx;MAP.N=cy;m3_purge($(MAP.TrayDivId));$(MAP.TrayDivId).innerHTML="";MAP.cellMap=[];MAP.Frames=[];MAP.Slot=0;if($(MAP.NAME+'_scalecontainer'))
{$(MAP.NAME+'_scalecontainer').innerHTML=m3_redraw_scale(MAP);}
if(MAP.crosshair=="static"){m3_center_crosshair(MAP);}
if(MAP.crosshair=="dynamic")
{if(MAP.xhLon&&MAP.xhLat)
{var xh_xy=m3_g2c(MAP.xhLon,MAP.xhLat,MAP);m3_move_xhair(xh_xy,MAP);MAP.xhX=xh_xy.x;MAP.xhY=xh_xy.y;}}
if(MAP.Markup)m3_drawMarkup(MAP);m3_canvas_tray_snap(MAP);m3_tipRedraw(MAP);m3_boundstotray(MAP);MAP.Busy=false;MAP.transFlag=true;MAP.Dirty=true;m3_fill_frames(MAP);}
function m3_size_calc(MAP)
{var tw=Math.ceil(MAP.mapWidth/256);var th=Math.ceil(MAP.mapHeight/256);MAP.initialSize=tw*th;}
function m3_pan(dir,MAP,newtop,newleft,skiptest)
{var tray=$(MAP.TrayDivId);var mtop=parseInt(tray.style.top);var ttop;var mleft=parseInt(tray.style.left);var tleft;if(!newtop||!newleft)
{ttop=mtop;tleft=mleft;switch(dir)
{case"n":ttop=(mtop+(MAP.mapHeight/2));break;case"s":ttop=(mtop-(MAP.mapHeight/2));break;case"e":tleft=(mleft-(MAP.mapWidth/2));break;case"w":tleft=(mleft+(MAP.mapWidth/2));break;case"ne":ttop=(mtop+(MAP.mapHeight/2));tleft=(mleft-(MAP.mapWidth/2));break;case"nw":ttop=(mtop+(MAP.mapHeight/2));tleft=(mleft+(MAP.mapWidth/2));break;case"se":ttop=(mtop-(MAP.mapHeight/2));tleft=(mleft-(MAP.mapWidth/2));break;case"sw":ttop=(mtop-(MAP.mapHeight/2));tleft=(mleft+(MAP.mapWidth/2));break;default:return;}
var tcount=1;ttop=Math.round(ttop);tleft=Math.round(tleft);}
else
{ttop=newtop;tleft=newleft;}
var dx=mleft-tleft;var dy=mtop-ttop;if((Math.abs(dx)>(MAP.mapWidth*1.5))||(Math.abs(dy)>(MAP.mapHeight*1.5)))
{m3_hide_canvases(MAP);m3_movetray(ttop,tleft,MAP,skiptest);m3_fill_frames(MAP);m3_mapmove_event_bubble(dx,dy,MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);}
else
{var tstep=Math.round(32000/(Math.abs(mtop-ttop)+Math.abs(mleft-tleft)));m3_hide_canvases(MAP);m3_pan_recr(ttop,tleft,mtop,mleft,tstep,dx,dy,MAP);}
return false;}
function m3_pan_recr(ttop,tleft,mtop,mleft,tstep,dx,dy,MAP)
{var keepgoing=false;if(mtop!=ttop)
{if(ttop>mtop)
{if((mtop+tstep)>ttop)
{mtop=ttop;}
else
{mtop+=tstep;keepgoing=true;}}
else if(ttop<mtop)
{if((mtop-tstep)<ttop)
{mtop=ttop;}
else
{mtop-=tstep;keepgoing=true;}}}
if(mleft!=tleft)
{if(tleft>mleft)
{if((mleft+tstep)>tleft)
{mleft=tleft;keepgoing?keepgoing=true:keepgoing=false;}
else
{mleft+=tstep;keepgoing=true;}}
else if(tleft<mleft)
{if((mleft-tstep)<tleft)
{mleft=tleft;keepgoing?keepgoing=true:keepgoing=false;}
else
{mleft-=tstep;keepgoing=true;}}}
m3_movetray(mtop,mleft,MAP);if(keepgoing)
{setTimeout('m3_pan_recr('+ttop+','+tleft+','+mtop+','+mleft+','+tstep+','+dx+','+dy+','+MAP.NAME+')',1);}
else
{m3_drawMarkup(MAP);m3_fill_frames(MAP);m3_mapmove_event_bubble(dx,dy,MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);}}
function m3_calctraypos(p,MAP)
{var tray=$(MAP.TrayDivId);var centerx=Math.round(MAP.mapWidth/2);var centery=Math.round(MAP.mapHeight/2);var _newx=parseInt(tray.style.left);var _newy=parseInt(tray.style.top);var _dx=p.x-centerx;var _dy=p.y-centery;if(_dx<0){_newx+=Math.abs(_dx);}
else{_newx-=_dx;}
if(_dy<0){_newy+=Math.abs(_dy);}
else{_newy-=_dy;}
return{dx:_dx,dy:_dy,newx:_newx,newy:_newy};}
function m3_movetray(ntop,nleft,MAP,skiptest)
{var otop=parseInt($(MAP.TrayDivId).style.top);var oleft=parseInt($(MAP.TrayDivId).style.left);var testres;if(skiptest)
{testres=0;}
else
{testres=m3_testboundary(ntop,nleft,MAP);}
if(testres&1)
{ntop=ntop-Math.abs(ntop-otop);}
else if(testres&2)
{ntop=ntop+Math.abs(ntop-otop);}
if(testres&4)
{nleft=nleft-Math.abs(nleft-oleft);}
else if(testres&8)
{nleft=nleft+Math.abs(nleft-oleft);}
var tray=$(MAP.TrayDivId);var xhair=$(MAP.XHairLayerDivId);tray.style.top=xhair.style.top=ntop+"px";tray.style.left=xhair.style.left=nleft+"px";for(var i in MAP.tipClickIDs)
{if(MAP.tipClickIDs.hasOwnProperty(i)){var el=$(MAP.tipClickIDs[i].id);el.style.left=(parseInt(el.style.left)+(nleft-oleft))+'px';el.style.top=(parseInt(el.style.top)+(ntop-otop))+'px';}}
var tp=m3_xy_tray({x:MAP.mapWidth/2,y:MAP.mapHeight/2},MAP);var ll=m3_c2g(tp.x,tp.y,MAP);MAP.Lon=ll.lon;MAP.Lat=ll.lat;MAP.Dirty=true;}
function m3_canvas_tray_snap(MAP)
{var tray=$(MAP.TrayDivId);var i;for(i in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(i)){if(!MAP.Canvases[i].sta_tic)
{var el=$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id);el.style.left=tray.style.left;el.style.top=tray.style.top;}}}}
function m3_zoom(d,MAP,exact)
{var ns;if(exact)
{ns=d;}
else
{ns=MAP.ScaleStep+d;}
if(((MAP.zoomtool)>8)&&(ns>(MAP.zoomtool-1)))return;if((ns<0)||(ns>15))return;var tray=$(MAP.TrayDivId);var n=parseInt(tray.style.top);var m=parseInt(tray.style.left);var xo=Math.round(MAP.mapWidth/2-m);var yo=Math.round(MAP.mapHeight/2-n);var ll=m3_c2g(xo,yo,MAP);MAP.ScaleStep=ns;MAP.Lon=ll.lon;MAP.Lat=ll.lat;m3_init_map(MAP);m3_mapinit_event_bubble(MAP);}
function m3_url(cellx,celly,tileset,MAP)
{var ytile=MAP.Ybase-celly;if(ytile<0)return"";var xtile=MAP.Xbase+cellx;if(xtile<0)return"";var t=["http://",'tile',MAP.tdomain,'/',MAP.appid,'.',MAP.initialSize,'.',(MAP.transFlag?1:0),'.',tileset,'.',MAP.ScaleStep,'.',ytile,'.',MAP.Cylinder,'.',xtile].join('');if(MAP.transFlag&&MAP.m3MapTrans)MAP.m3MapTrans();MAP.transFlag=false;return t;}
function m3_resize(MAP)
{if(MAP.Busy)return;MAP.Busy=true;var origH,origW,cH,cW,dad,oH,oW,f,tp,sp,positions;if(MAP.resize==1)
{f=$(MAP.NAME+'_map');dad=f.parentNode;cH=xHeight(dad);cW=xWidth(dad);origH=MAP.mapHeight;origW=MAP.mapWidth;oH=MAP.minHeight;oW=MAP.minWidth;if(cH>MAP.minHeight){oH=cH-2;}
if(cW>MAP.minWidth){oW=cW-2;}
if(oH!=origH||oW!=origW)
{MAP.mapHeight=oH;MAP.mapWidth=oW;f.style.height=oH+'px';f.style.width=oW+'px';f=$(MAP.NAME+'_skinimg');f.height=oH;f.width=oW;if(MAP.Loaded)
{m3_hide_canvases(MAP);tp=m3_g2c(MAP.Lon,MAP.Lat,MAP);sp=m3_xy_skin(tp,MAP);positions=m3_calctraypos(sp,MAP);m3_movetray(positions.newy,positions.newx,MAP,true);m3_mapmove_event_bubble(positions.dx,positions.dy,MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);}}
else
{MAP.Busy=false;return false;}}
else
{f=$(MAP.NAME+'_map');f.style.height=MAP.mapHeight+'px';f.style.width=MAP.mapWidth+'px';f=$(MAP.NAME+'_skinimg');f.height=MAP.mapHeight;f.width=MAP.mapWidth;}
if(MAP.crosshair=="static")
{m3_center_crosshair(MAP);}
MAP.Busy=false;MAP.Dirty=true;m3_size_calc(MAP);if(MAP.Loaded)
{m3_fill_frames(MAP);m3_boundstotray(MAP);m3_drawMarkup(MAP);m3_mapresize_event_bubble(MAP.mapWidth,MAP.mapHeight,MAP);}
return false;}
function m3_fill_frames(MAP)
{if(!MAP){return;}
if(!MAP.Dirty||MAP.WheelBusy||MAP.FillFrameMutex)
{return;}
MAP.FillFrameMutex=true;var tray=$(MAP.TrayDivId);var N=parseInt(tray.style.top);var M=parseInt(tray.style.left);var m=Math.floor(M/256);var n=Math.floor(N/256);var h=Math.ceil(MAP.mapHeight/256);var w=Math.ceil(MAP.mapWidth/256);var i,j,k;for(i=0;i<MAP.Slot;i++)MAP.Frames[i].active=0;var r=0;for(i=-m-1;i<=w-m-1;i++){for(j=-n-1;j<=h-n-1;j++){k=i+","+j;if(MAP.cellMap[k]!=null)MAP.Frames[MAP.cellMap[k]].active=1;else r++;}}
if(r){var rover=0;for(i=-m-1;i<=w-m-1;i++){for(j=-n-1;j<=h-n-1;j++){k=i+","+j;if(MAP.cellMap[k]==null){while((rover<MAP.Slot)&&MAP.Frames[rover].active)rover++;if(rover<MAP.Slot)m3_old_frame(rover,i,j,MAP);else m3_new_frame(i,j,tray,MAP);}}}}
MAP.Dirty=MAP.FillFrameMutex=false;}
function m3_add_tileset(tileset,zindex,opacity,active,MAP)
{for(var i=0;i<MAP.tilesets.length;i++){if(MAP.tilesets[i].tileset==tileset){MAP.tilesets[i].zindex=zindex;m3_show_tileset(tileset,active,MAP);return;}}
MAP.tilesets.push({'tileset':tileset,'zindex':zindex,'active':active,'opacity':opacity});m3_show_tileset(tileset,active,MAP);MAP.OverlayTimer=setInterval("m3_refresh_tilesets("+MAP.NAME+");",300000);return;}
function m3_refresh_tilesets(MAP)
{for(var i=1;i<MAP.tilesets.length;i++){if(MAP.tilesets[i].active){m3_show_tileset(MAP.tilesets[i].tileset,true,MAP);}}}
function m3_delete_tileset(tileset,zindex,MAP)
{m3_show_tileset(tileset,false,MAP);for(var i=0;i<MAP.tilesets.length;i++){if(MAP.tilesets[i].tileset==tileset){MAP.tilesets.splice(i,1);if(MAP.tilesets.length==1)
clearInterval(MAP.OverlayTimer);return;}}}
function m3_show_tileset(tileset,active,MAP)
{if(MAP.FillFrameMutex){setTimeout(function(){m3_show_tileset(tileset,active,MAP);},20);return;}
MAP.FillFrameMutex=true;var zidx;var opacity;for(var i=0;i<MAP.tilesets.length;i++){if(MAP.tilesets[i].tileset==tileset){MAP.tilesets[i].active=active;zidx=MAP.tilesets[i].zindex;opacity=MAP.tilesets[i].opacity;break;}}
var fn;var Frames=MAP.Frames;for(var slot=0;slot<MAP.Slot;slot++){if(!Frames[slot].active)continue;var nd=$(MAP.NAME+'_frame'+slot);var img=$([MAP.NAME,'img',tileset,slot].join('_'));if(img){m3_purge(img);nd.removeChild(img);}
if(active){m3_add_tile_to_frame(nd,tileset,zidx,opacity,slot,Frames[slot].cellX,Frames[slot].cellY,MAP);}}
MAP.FillFrameMutex=false;}
function m3_add_tile_to_frame(nd,tileset,zidx,opacity,slot,cellX,cellY,MAP)
{var mysrc=m3_url(cellX,cellY,tileset,MAP);if(mysrc==""&&tileset==MAP.tilesets[0].tileset)
{mysrc=MAP.imagepath+'/bluetile.png';}
if(mysrc=="")return;var ni=document.createElement('IMG');ni.border=0;ni.id=[MAP.NAME,'img',tileset,slot].join('_');ni.galleryimg='no';ni.height=256;ni.width=256;ni.style.zIndex=zidx;ni.src=mysrc;ni.style.position="absolute";ni.style.display="block";if(opacity!=1){ni.style.opacity=opacity;ni.style.filter="alpha(opacity="+(opacity*100)+")";}
ni.style.top="0px";ni.style.left="0px";nd.appendChild(ni);}
function m3_fill_frame_with_tiles(cellX,cellY,nd,slot,MAP)
{var tilesets=MAP.tilesets;for(var i=0;i<tilesets.length;i++){var tsi=tilesets[i];if(!tsi.active)continue;var ts=tsi.tileset;var zidx=tsi.zindex;var opacity=tsi.opacity;m3_add_tile_to_frame(nd,ts,zidx,opacity,slot,cellX,cellY,MAP);}}
function m3_new_frame(cellX,cellY,tray,MAP)
{var tray=$(MAP.TrayDivId);var nd=document.createElement('DIV');nd.id=MAP.NAME+'_frame'+MAP.Slot;nd.style.position='absolute';nd.style.top=(256*cellY)+'px';nd.style.left=(256*cellX)+'px';nd.style.width="256px";nd.style.height="256px";nd.style.background='#FAEDCF';m3_fill_frame_with_tiles(cellX,cellY,nd,MAP.Slot,MAP);var f={};f.cellX=cellX;f.cellY=cellY;f.active=1;MAP.Frames[MAP.Slot]=f;var k=cellX+','+cellY;MAP.cellMap[k]=MAP.Slot;tray.appendChild(nd);MAP.Slot++;}
function m3_old_frame(slot,cellX,cellY,MAP)
{var c=$(MAP.NAME+'_frame'+slot);var tilesets=MAP.tilesets;for(var i=0;i<tilesets.length;i++){var tsi=tilesets[i];var ts=tsi.tileset;var img=$([MAP.NAME,'img',ts,slot].join('_'));if(img){m3_purge(img);c.removeChild(img);}}
var k=MAP.Frames[slot].cellX+','+MAP.Frames[slot].cellY;delete MAP.cellMap[k];k=cellX+','+cellY;MAP.cellMap[k]=slot;MAP.Frames[slot].cellX=cellX;MAP.Frames[slot].cellY=cellY;MAP.Frames[slot].active=1;c.style.top=(256*cellY)+'px';c.style.left=(256*cellX)+'px';m3_fill_frame_with_tiles(cellX,cellY,c,slot,MAP);}
function m3_check_cylinder(MAP)
{var tmp;var tl_tray=m3_xy_tray({x:0,y:0},MAP);var bl_tray=m3_xy_tray({x:0,y:MAP.mapHeight},MAP);var tl_ll=m3_c2g(tl_tray.x,tl_tray.y,MAP);var bl_ll=m3_c2g(bl_tray.x,bl_tray.y,MAP);var top_cyl=Math.round(Math.cos(MAP.PI*tl_ll.lat/180)*20);var bot_cyl=Math.round(Math.cos(MAP.PI*bl_ll.lat/180)*20);var dc=Math.abs(top_cyl-bot_cyl);if(bl_ll.lat<0)
{tmp=top_cyl;top_cyl=bot_cyl;bot_cyl=tmp;}
if((top_cyl==bot_cyl)&&(top_cyl!=MAP.Cylinder))
{m3_init_map(MAP);m3_mapinit_event_bubble(MAP);}
else if((dc>=1)&&((MAP.Cylinder>bot_cyl)||(MAP.Cylinder<top_cyl)))
{if(bot_cyl>4)
{m3_init_map(MAP);m3_mapinit_event_bubble(MAP);}}}
function m3_getState(MAP)
{var s={Lon:MAP.Lon.toFixed(6),Lat:MAP.Lat.toFixed(6),Scale:MAP.Scale,homeLon:MAP.homeLon.toFixed(6),homeLat:MAP.homeLat.toFixed(6),homeScale:MAP.homeScale,ScaleStep:MAP.ScaleStep,Markup:MAP.Markup,mapW:MAP.mapWidth,mapH:MAP.mapHeight,boundN:MAP.boundN.toFixed(6),boundS:MAP.boundS.toFixed(6),boundE:MAP.boundE.toFixed(6),boundW:MAP.boundW.toFixed(6),Loaded:MAP.Loaded,hoverLon:(MAP.hoverLon===''?'':m3_fixf(MAP.hoverLon,6)),hoverLat:(MAP.hoverLat===''?'':m3_fixf(MAP.hoverLat,6))};if(MAP.xhX&&MAP.xhY)
{var xhS=m3_xy_skin({x:MAP.xhX,y:MAP.xhY},MAP);s.xhX=xhS.x;s.xhY=xhS.y;}
if(MAP.xhLon&&MAP.xhLat)
{s.xhLon=MAP.xhLon?MAP.xhLon.toFixed(6):'';s.xhLat=MAP.xhLat?MAP.xhLat.toFixed(6):'';}
var tp_tl=m3_xy_tray({x:0,y:0},MAP);var ll=m3_c2g(tp_tl.x,tp_tl.y,MAP);s.Top=(ll.lat).toFixed(6);s.Left=(ll.lon).toFixed(6);s.Bottom=(2*MAP.Lat-ll.lat).toFixed(6);s.Right=(2*MAP.Lon-ll.lon).toFixed(6);return s;}
function m3_setState(MAP,s)
{var dirtypos=false;var dirtyscale=false;var dirtymarkup=false;if(("Lon"in s)&&(s.Lon!=(MAP.Lon).toFixed(6)))
{MAP.Lon=parseFloat(s.Lon);dirtypos=true;}
if(("Lat"in s)&&(s.Lat!=(MAP.Lat).toFixed(6)))
{MAP.Lat=parseFloat(s.Lat);dirtypos=true;}
if(("Scale"in s)&&(s.Scale!=MAP.Scale))
{dirtyscale=true;MAP.ScaleStep=m3_scale_to_scalestep(parseFloat(s.Scale));}
if(("Markup"in s)&&(s.Markup!=MAP.Markup))
{dirtymarkup=true;MAP.Markup=s.Markup;m3_prep_tg_markup(MAP);}
if(("boundN"in s)||("boundS"in s)||("boundE"in s)||("boundS"in s))
{if((s.boundN!=(MAP.boundN).toFixed(6))||(s.boundS!=(MAP.boundS).toFixed(6))||(s.boundE!=(MAP.boundE).toFixed(6))||(s.boundW!=(MAP.boundW).toFixed(6)))
{MAP.boundN=parseFloat(s.boundN);MAP.boundS=parseFloat(s.boundS);MAP.boundE=parseFloat(s.boundE);MAP.boundW=parseFloat(s.boundW);}}
if(dirtypos||dirtyscale)
{m3_init_map(MAP);m3_mapinit_event_bubble(MAP);}
if(dirtymarkup)
{m3_drawMarkup(MAP);}
m3_boundstotray(MAP);if(("xhLon"in s)&&("xhLat"in s)&&(MAP.crosshair=="dynamic"))
{var xh_xy=m3_g2c(s.xhLon,s.xhLat,MAP);m3_move_xhair(xh_xy,MAP);MAP.xhX=xh_xy.x;MAP.xhY=xh_xy.y;MAP.xhLon=parseFloat(s.xhLon);MAP.xhLat=parseFloat(s.xhLat);}
if(("homeLon"in s)&&(s.homeLon!=(MAP.homeLon).toFixed(6)))
{MAP.homeLon=parseFloat(s.homeLon);}
if(("homeLat"in s)&&(s.homeLat!=(MAP.homeLat).toFixed(6)))
{MAP.homeLat=parseFloat(s.homeLat);}
if(("homeScale"in s)&&(parseFloat(s.homeScale)!=MAP.homeScale))
{MAP.homeScale=parseInt(s.homeScale);}}
function m3_print(MAP)
{if(!MAP.printable)
{$(MAP.NAME+'_skin').style.visibility=$(MAP.NAME+'_pan_control').style.visibility=$(MAP.NAME+'_zoom_control').style.visibility="hidden";if($(MAP.NAME+'_xhair_static'))
{$(MAP.NAME+'_xhair_static').style.visibility="hidden";}
if($(MAP.NAME+'_xhair_layer'))
{$(MAP.NAME+'_xhair_layer').style.visibility="hidden";}
MAP.printable=true;}
else
{$(MAP.NAME+'_skin').style.visibility=$(MAP.NAME+'_pan_control').style.visibility=$(MAP.NAME+'_zoom_control').style.visibility="visible";if($(MAP.NAME+'_xhair_static'))
{$(MAP.NAME+'_xhair_static').style.visibility="visible";}
if($(MAP.NAME+'_xhair_layer'))
{$(MAP.NAME+'_xhair_layer').style.visibility="visible";}
MAP.printable=false;}
return MAP.printable;}
function m3_autoscale(o,MAP)
{if(o.constructor!=Object){return false;}
var top=o.top;var left=o.left;var right=o.right;var bottom=o.bottom;if(typeof(left)!="number"){left=parseFloat(left);}
if(typeof(right)!="number"){right=parseFloat(right);}
if(typeof(top)!="number"){top=parseFloat(top);}
if(typeof(bottom)!="number"){bottom=parseFloat(bottom);}
return Math.max((right-left)/(MAP.mapWidth*0.8)*MAP.Cylinder/20,(top-bottom)/(MAP.mapHeight*0.8))*111195*2.0;}
function m3_autocenter(boundingbox,MAP)
{var _lon=parseFloat(((boundingbox.right-boundingbox.left)/2)+boundingbox.left);var _lat=parseFloat(((boundingbox.top-boundingbox.bottom)/2)+boundingbox.bottom);return{lon:_lon,lat:_lat};}
function m3_computebox(mup,MAP)
{if(typeof(mup)=="string")
{mup=mup.replace(/\+/,' ');mup=mup.split(' ');}
if(mup.constructor!=Array){return false;}
var o={top:-180,left:180,bottom:180,right:-180};for(var i=0;i<mup.length;i++)
{if((/^[0-9\.\-]+,[0-9\.\-]+$/).test(mup[i]))
{var ll=mup[i].split(",");ll[0]=parseFloat(ll[0]);ll[1]=parseFloat(ll[1]);if(ll[0]<o.left){o.left=ll[0];}
if(ll[0]>o.right){o.right=ll[0];}
if(ll[1]>o.top){o.top=ll[1];}
if(ll[1]<o.bottom){o.bottom=ll[1];}}}
return o;}
function m3_bugloaded(pos,mapname,img)
{var MAP=eval(mapname);if(pos.charAt(0)=="t")
{MAP.ctrlpos[pos+',top']+=(img.height<=MAP.bugMax?img.height:MAP.bugMax)+4;}
else if(pos.charAt(0)=="b")
{MAP.ctrlpos[pos+',bottom']+=(img.height<=MAP.bugMax?img.height:MAP.bugMax)+4;}
img.parentNode.style.height=(img.height<=MAP.bugMax?img.height:MAP.bugMax)+'px';img.parentNode.style.width=(img.width<=MAP.bugMax?img.width:MAP.bugMax)+'px';}
function m3_addBug(url,pos,MAP)
{pos=pos.toLowerCase();var ndiv=document.createElement('DIV');ndiv.style.position="absolute";ndiv.style.width=MAP.bugMax+'px';ndiv.style.height=MAP.bugMax+'px';ndiv.style.overflow='hidden';ndiv.style.zIndex=105;ndiv.innerHTML='<img src="'+url+'" galleryimg="no" onload="m3_bugloaded(\''+pos+'\',\''+MAP.NAME+'\',this)" '+MAP.usexhtml+'>';if(pos.charAt(0)=="t")
{ndiv.style.top=MAP.ctrlpos[pos+',top']+'px';}
else if(pos.charAt(0)=="b")
{ndiv.style.bottom=MAP.ctrlpos[pos+',bottom']+'px';}
else
{return false;}
if(pos.charAt(1)=="l")
{ndiv.style.left=MAP.ctrlpos[pos+',left']+'px';}
else if(pos.charAt(1)=="r")
{ndiv.style.right=MAP.ctrlpos[pos+',right']+'px';}
else
{return false;}
$(MAP.NAME+'_map').appendChild(ndiv);return true;}
function m3_boundstotray(MAP)
{var wn=m3_g2c(MAP.boundW,MAP.boundN,MAP);var es=m3_g2c(MAP.boundE,MAP.boundS,MAP);MAP.boundW_tray=wn.x;MAP.boundE_tray=es.x;MAP.boundN_tray=wn.y;MAP.boundS_tray=es.y;}
function m3_testboundary(top,left,MAP)
{var b=0;var sp={x:MAP.mapWidth/2,y:MAP.mapHeight/2};var tp=m3_xy_tray(sp,MAP);if(!(tp.x<MAP.boundE_tray))
{b|=8;}
if(!(tp.x>MAP.boundW_tray))
{b|=4;}
if(!(tp.y<MAP.boundS_tray))
{b|=2;}
if(!(tp.y>MAP.boundN_tray))
{b|=1;}
return b;}
function m3_scalestep_to_scale(s)
{if((s<0)||(s>15))return null;var a=[1,2,3,6,10,18,32,56,100,178,316,561,998,1775,3155,5610];return a[s];}
function m3_scale_to_scalestep(s)
{if(s<=1){return 0;}
if(s<=2){return 1;}
if(s<=3){return 2;}
if(s<=6){return 3;}
if(s<=10){return 4;}
if(s<=18){return 5;}
if(s<=32){return 6;}
if(s<=56){return 7;}
if(s<=100){return 8;}
if(s<=178){return 9;}
if(s<=316){return 10;}
if(s<=561){return 11;}
if(s<=998){return 12;}
if(s<=1775){return 13;}
if(s<=3155){return 14;}
else{return 15;}}
function m3_compute_c2g_constants(MAP)
{MAP.C2GC_xbase_256=MAP.Xbase*256;MAP.C2GC_ybase_256=MAP.Ybase*256;MAP.C2GC_c2g_lon=MAP.Scale*20/(111195.0*MAP.Cylinder);MAP.C2GC_c2g_lat=MAP.Scale/111195.0;MAP.C2GC_g2c_lon=(111195.0*MAP.Cylinder)/(20*MAP.Scale);MAP.C2GC_g2c_lat=111195.0/MAP.Scale;}
function m3_c2g(x,y,MAP)
{return{lon:(MAP.C2GC_xbase_256+x)*MAP.C2GC_c2g_lon-180,lat:(MAP.C2GC_ybase_256+256-y)*MAP.C2GC_c2g_lat-90};}
function m3_g2c(lon,lat,MAP)
{return{x:Math.round((parseFloat(lon)+180)*MAP.C2GC_g2c_lon-MAP.C2GC_xbase_256),y:Math.round(256-((parseFloat(lat)+90)*MAP.C2GC_g2c_lat-MAP.C2GC_ybase_256))};}
function m3_get_modifiers(MAP,e)
{if(!e)e=event;MAP.altKey=e.altKey;MAP.ctrlKey=e.ctrlKey;MAP.shiftKey=e.shiftKey;}
function m3_findMe(e)
{var p;if(!e)e=event;if(e.target)p=e.target;else p=e.srcElement;if(!p)return null;if(!p.id)return null;var a=p.id.split('_');var M=eval(a[0]);if(!M||!M.isMaptuitMap)return null;return M;}
function m3_get_xy(e)
{var r={};if(!e)e=event;if(e&&(e.layerX!=null))
{r.x=e.layerX;r.y=e.layerY;}
else if(e&&(e.offsetX!=null))
{r.x=e.offsetX;r.y=e.offsetY;}
return r;}
function m3_xy_tray(p,MAP)
{var tray=$(MAP.TrayDivId);return{x:p.x-parseInt(tray.style.left),y:p.y-parseInt(tray.style.top)};}
function m3_xy_skin(p,MAP)
{var tray=$(MAP.TrayDivId);return{x:p.x+parseInt(tray.style.left),y:p.y+parseInt(tray.style.top)};}
function m3_fixf(x,d)
{var m=1;var z=1;var p='0';var n='';var i,s,f,b,k;if(x<0)
{x=-1*x;n='-';}
for(i=0;i<d;i++)
{m+=10;p+='0';}
i=Math.round(x*m);s=p+i.toString();k=s.length;f=1*s.substr(0,k-d);b=s.substr(k-d,d);return n+f+'.'+b;}
function m3_mapinit_event_bubble(MAP)
{var visi,displ,id,i,tmpcanvas;var damap=$(MAP.NAME+'_map');for(i=MAP.CanvasesZ.length-1;i>=0;i--)
{if(MAP.Canvases[MAP.CanvasesZ[i]])
{id=MAP.Canvases[MAP.CanvasesZ[i]].id;visi=$(MAP.NAME+'_canvas_'+id).style.visibility;displ=$(MAP.NAME+'_canvas_'+id).style.display;m3_purge($(MAP.NAME+'_canvas_'+id));damap.removeChild($(MAP.NAME+'_canvas_'+id));tmpcanvas=m3_makeCanvas(id,MAP.CanvasesZ[i],MAP.Canvases[MAP.CanvasesZ[i]].sta_tic,MAP);tmpcanvas.style.visibility=visi;tmpcanvas.style.display=displ;damap.appendChild(tmpcanvas);MAP.Canvases[MAP.CanvasesZ[i]].c.reInit(MAP.NAME+'_canvas_'+id);}}
if(MAP.m3Change){MAP.m3Change();}
m3_canvas_tray_snap(MAP);}
function m3_mapmove_event_bubble(dx,dy,MAP)
{if((dx==0)&&(dy==0))return false;MAP.transFlag=true;if(MAP.m3Change){MAP.m3Change();}
var i;for(i=MAP.CanvasesZ.length-1;i>=0;i--)
{if(MAP.Canvases[MAP.CanvasesZ[i]])
{MAP.Canvases[MAP.CanvasesZ[i]].c.trayMoveCallback(dx,dy);}}
m3_check_cylinder(MAP);}
function m3_mapresize_event_bubble(w,h,MAP)
{var i;for(i=MAP.CanvasesZ.length-1;i>=0;i--)
{if(MAP.Canvases[MAP.CanvasesZ[i]])
{MAP.Canvases[MAP.CanvasesZ[i]].c.resizeCallback(w,h);}}}
function m3_mouse_event_bubble(etype,skinx,skiny,MAP)
{var i;var retval=true;for(i=MAP.CanvasesZ.length-1;i>=0;i--)
{if(MAP.Canvases[MAP.CanvasesZ[i]])
{switch(etype)
{case'singleClick':retval=MAP.Canvases[MAP.CanvasesZ[i]].c.singleClickCallback(skinx,skiny);break;case'doubleClick':retval=MAP.Canvases[MAP.CanvasesZ[i]].c.doubleClickCallback(skinx,skiny);break;case'hover':retval=MAP.Canvases[MAP.CanvasesZ[i]].c.hoverCallback(skinx,skiny);break;default:break;}}
if(!retval)
{break;}}
return retval;}
function m3_mouse_wheel_handle(delta,MAP)
{if(((delta+MAP.ScaleStep)<0)&&(MAP.ScaleStep!==0))
{while((delta+MAP.ScaleStep)<0){delta++;}}
if(MAP.centerOnWheelZoom&&MAP.WheelEvtPos&&(0<(delta+MAP.ScaleStep))&&((delta+MAP.ScaleStep)<16))
{var positions=m3_calctraypos(MAP.WheelEvtPos,MAP);m3_hide_canvases(MAP);m3_movetray(positions.newy,positions.newx,MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);}
m3_zoom_animate_destroy(MAP);MAP.WheelTimer=null;MAP.prevWheelDelta=null;MAP.WheelEvtPos=null;m3_zoom(delta,MAP,false);}
function m3_zoom_animate_start(delta,p,MAP)
{if(!delta||!p||!MAP){return;}
if(MAP.ZoomAnimation){m3_zoom_animate_destroy(MAP);}
if((delta+MAP.ScaleStep)>15){return;}
var sf=(m3_scalestep_to_scale(MAP.ScaleStep+delta)/MAP.Scale);var sf2=(m3_scalestep_to_scale(MAP.ScaleStep-delta)/MAP.Scale);MAP.ZoomAnimation=new xAnimation();MAP.ZoomAnimation2=new xAnimation();var d1=MAP.mydoc.createElement('DIV');var d2=MAP.mydoc.createElement('DIV');d1.id=MAP.NAME+'_zanim_1';d1.className='m2i_zoomanim_d1';d2.id=MAP.NAME+'_zanim_2';d2.className='m2i_zoomanim_d2';if(delta<0)
{d1.style.width=Math.round(sf*MAP.mapWidth)+'px';d1.style.height=Math.round(sf*MAP.mapHeight)+'px';d1.style.left=p.x-Math.round((sf*MAP.mapWidth)/2)+'px';d1.style.top=p.y-Math.round((sf*MAP.mapHeight)/2)+'px';d2.style.width=d1.style.width;d2.style.height=d1.style.height;d2.style.left=d1.style.left;d2.style.top=d1.style.top;$(MAP.NAME+'_map').appendChild(d2);$(MAP.NAME+'_map').appendChild(d1);MAP.ZoomAnimation.size(d2.id,0,0,750,1);MAP.ZoomAnimation2.line(d2.id,p.x,p.y,750,1);}
else if(delta>0)
{d2.style.height=d2.style.width='0px';d2.style.left=p.x;d2.style.top=p.y;$(MAP.NAME+'_map').appendChild(d2);MAP.ZoomAnimation.corner(d2.id,'nw',0,0,750);MAP.ZoomAnimation2.corner(d2.id,'se',MAP.mapWidth,MAP.mapHeight,750);}}
function m3_zoom_animate_destroy(MAP)
{if(MAP.ZoomAnimation)
{MAP.ZoomAnimation.pause();MAP.ZoomAnimation2.pause();var mhand=$(MAP.NAME+'_map');if(m3_purge($(MAP.NAME+'_zanim_1'))){mhand.removeChild($(MAP.NAME+'_zanim_1'));}
if(m3_purge($(MAP.NAME+'_zanim_2'))){mhand.removeChild($(MAP.NAME+'_zanim_2'));}}
MAP.ZoomAnimation=null;MAP.ZoomAnimation2=null;}
function m3_mouse_wheel(event)
{var MAP=m3_findMe(event);if(!MAP)return false;if(MAP.WheelBusy)return;MAP.WheelBusy=true;if(MAP.WheelTimer){clearTimeout(MAP.WheelTimer);MAP.WheelTimer=null;}
if(MAP.ZoomAnimation)m3_zoom_animate_destroy(MAP);var delta,ndelta;if(!event)event=window.event;if(event.wheelDelta){delta=event.wheelDelta/120;if(window.opera)delta=-delta;}else if(event.detail){delta=-event.detail/3;}
if(delta!=0)
{ndelta=(delta<0?1:-1);if(MAP.prevWheelDelta)
{ndelta=ndelta+MAP.prevWheelDelta;}
MAP.prevWheelDelta=ndelta;if(ndelta==0)
{MAP.prevWheelDelta=null;MAP.WheelEvtPos=null;MAP.WheelBusy=false;return false;}
MAP.WheelEvtPos=m3_get_xy(event);if(MAP.wheelZoomAnimation)
{m3_zoom_animate_start(ndelta,MAP.WheelEvtPos,MAP);MAP.WheelTimer=setTimeout("m3_mouse_wheel_handle("+ndelta+","+MAP.NAME+")",750);}
else
{MAP.WheelTimer=setTimeout("m3_mouse_wheel_handle("+ndelta+","+MAP.NAME+")",250);}
if(event.preventDefault)
event.preventDefault();event.returnValue=false;}
MAP.WheelBusy=false;return false;}
function m3_mouse_doubleclick(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;var p=m3_get_xy(e);if(MAP.m3DoubleClick&&!MAP.m3DoubleClick(p.x,p.y))return false;if(!m3_mouse_event_bubble('doubleClick',p.x,p.y,MAP))
{return false;}
var positions=m3_calctraypos(p,MAP);m3_hide_canvases(MAP);m3_movetray(positions.newy,positions.newx,MAP);m3_mapmove_event_bubble(positions.dx,positions.dy,MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);m3_zoom(-1,MAP,false);return false;}
function m3_mouse_click(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
var p=m3_get_xy(e);var tp=m3_xy_tray(p,MAP);var dx=Math.abs(p.x-MAP.X);var dy=Math.abs(p.y-MAP.Y);if((dx<3)&&(dy<3))
{if(MAP.crosshair=="dynamic")
{m3_move_xhair(tp,MAP);}
var ll=m3_c2g(tp.x,tp.y,MAP);MAP.xhLon=ll.lon;MAP.xhLat=ll.lat;MAP.xhX=tp.x;MAP.xhY=tp.y;if(MAP.m3SingleClick&&!MAP.m3SingleClick(p.x,p.y))return false;if(!m3_mouse_event_bubble('singleClick',p.x,p.y,MAP))
{return;}}
return false;}
function m3_set_pointer(MAP,p,t)
{($(MAP.NAME+'_skinimg')).style.cursor=p;}
function m3_mouse_down(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;var p=m3_get_xy(e);MAP.X=p.x;MAP.Y=p.y;var tray=$(MAP.TrayDivId);MAP.N=parseInt(tray.style.top);MAP.M=parseInt(tray.style.left);MAP.down=1;m3_boundstotray(MAP);m3_set_pointer(MAP,"move");return false;}
function m3_mouse_up(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;m3_drawMarkup(MAP);m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);MAP.down=0;m3_set_pointer(MAP,"auto");m3_get_modifiers(MAP,e);m3_fill_frames(MAP);var p=m3_get_xy(e);m3_mapmove_event_bubble(MAP.X-p.x,MAP.Y-p.y,MAP);return false;}
function m3_mouse_out(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;m3_canvas_tray_snap(MAP);m3_show_canvases(MAP);if(MAP.down)
{MAP.down=0;var p=m3_get_xy(e);m3_mapmove_event_bubble(MAP.X-p.x,MAP.Y-p.y,MAP);}
m3_set_pointer(MAP,"default");if(MAP.HoverTimer!=null)clearTimeout(MAP.HoverTimer);return false;}
function m3_mouse_move(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)
e.preventDefault();e.returnValue=false;var MAP;if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(MAP)
{var p=m3_get_xy(e);var dx=Math.abs(MAP.hoverX-p.x);var dy=Math.abs(MAP.hoverY-p.y);if((dx!=0)&&(dy!=0))
{if(MAP.down)
{m3_hide_canvases(MAP);m3_movetray((MAP.N-MAP.Y+p.y),(MAP.M-MAP.X+p.x),MAP);m3_fill_frames(MAP);return false;}
if((dx>4)||(dy>4))
{m3_cancelTT(MAP);MAP.hoverX=p.x;MAP.hoverY=p.y;MAP.HoverTimer=setTimeout('m3_mouse_hover('+MAP.NAME+')',750);}}}
return false;}
function m3_mouse_hover(MAP)
{if(!MAP.down)
{if(MAP.m3Hover&&!MAP.m3Hover(MAP.hoverX,MAP.hoverY))return false;if(!m3_mouse_event_bubble('hover',MAP.hoverX,MAP.hoverY,MAP))
{return false;}
m3_showTT(MAP);}
else
{m3_cancelTT(MAP);}}
function m3_hide_canvases(MAP)
{if(MAP.canvasesAreHidden)return;MAP.canvasesAreHidden=true;if($(MAP.NAME+'_mupimg'))
{$(MAP.MarkupDivId).removeChild($(MAP.NAME+'_mupimg'));}
var i;for(i in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(i))
{if($(MAP.NAME+'_canvas_'+MAP.Canvases[i].id))
{if(MAP.Canvases[i].sta_tic)
{if(MAP.isSafari)
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.visibility="hidden";}
else
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.display="none";}}
else
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.display="none";}}}}}
function m3_show_canvases(MAP)
{if(!MAP.canvasesAreHidden)return;MAP.canvasesAreHidden=false;$(MAP.NAME+'_markup').style.visibility="visible";var i;for(i in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(i)){if(MAP.Canvases[i].sta_tic)
{if(MAP.isSafari)
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.visibility="visible";}
else
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.display="block";}}
else
{$(MAP.NAME+'_canvas_'+MAP.Canvases[i].id).style.display="block";}}}}
function m3_redraw_scale(MAP)
{var sc1=m3_generate_scale_ruler(MAP.mapWidth/5,1000,'km',MAP);if(sc1==0)
{sc1=m3_generate_scale_ruler(MAP.mapWidth/5,1,'m',MAP);if(sc1==0)
{sc1=m3_generate_scale_ruler(MAP.mapWidth/5,0.01,'cm',MAP);}}
var sc2=m3_generate_scale_ruler(MAP.mapWidth/5,1609.344,'mi',MAP,true);if(sc2==0)
{sc2=m3_generate_scale_ruler(MAP.mapWidth/5,0.3034,'ft',MAP,true);if(sc2==0)
{sc2=m3_generate_scale_ruler(MAP.mapWidth/5,0.0254,'in',MAP,true);}}
sc1+=''+sc2;return sc1;}
function m3_generate_scale_ruler(bi,uf,un,MAP,flip)
{var bdr,k,l,m,n,nn,p,s,t;bi=100;m=MAP.Scale/uf;l=bi*m;t=Math.log(10);k=Math.round((Math.log(l)/t+100)-100);n=Math.exp(t*k);s=l/n;if(s>7){nn=n*10;}
else if(s>4){nn=n*5;}
else if(s>1.5){nn=n*2;}
else{nn=n;}
p=Math.round(nn/m+0.5);if(nn<1)return 0;nn=Math.round(nn);bdr='border-bottom: 1px solid black; border-top: none;';if(flip)
{bdr='border-top: 1px solid black; border-bottom: none; padding-top:2px;';}
return'<div id="'
+MAP.NAME
+'_scale1'+(flip?'_flip':'')+'" '
+'style="border-left: 1px solid black;'
+'border-right: 1px solid black;'
+bdr
+'width: '+p+'px;'
+'font-size: 9px;'
+'font-family: sans-serif;">&nbsp;'
+nn+' '+un+'</div>';}
function m3_move_zoom_ptr(val,MAP)
{var i,z,base,newval;if((MAP.zoomtool>8)&&$(MAP.NAME+'_zoom_pointer'))
{z=$(MAP.NAME+'_zoom_pointer');base=MAP.zoomPosMin;for(i=0;i<val;i++)
{base+=6;}
newval=base+'px';MAP.zoomPos=base;switch(MAP.zoomorient)
{case"v":z.style.top=newval;break;case"h":z.style.left=newval;break;}}
return false;}
function m3_zoom_mousedown(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;var MAP,p;p=m3_zoom_getTarget(e);if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;if(p==MAP.NAME+'_zoom_pointer')
{MAP.zoomDown=true;MAP.zoomDragEvtPos=(MAP.zoomorient=="v"?e.clientY:e.clientX);MAP.savedScaleStep=MAP.ScaleStep;}}
function m3_zoom_mousemove(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;var MAP,p,dy,dx,np;p=m3_zoom_getTarget(e);if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;if((MAP.zoomDown)&&((p==MAP.NAME+'_zoom_pointer')||(p==MAP.NAME+'_zoom_scale')))
{switch(MAP.zoomorient)
{case"v":dy=e.clientY-MAP.zoomDragEvtPos;np=MAP.zoomPos+dy;if(np>MAP.zoomPosMax){np=MAP.zoomPosMax;}
if(np<MAP.zoomPosMin){np=MAP.zoomPosMin;}
$(MAP.NAME+'_zoom_pointer').style.top=np+'px';MAP.zoomPos=np;MAP.zoomDragEvtPos=e.clientY;break;case"h":dx=e.clientX-MAP.zoomDragEvtPos;np=MAP.zoomPos+dx;if(np>MAP.zoomPosMax){np=MAP.zoomPosMax;}
if(np<MAP.zoomPosMin){np=MAP.zoomPosMin;}
$(MAP.NAME+'_zoom_pointer').style.left=np+'px';MAP.zoomPos=np;MAP.zoomDragEvtPos=e.clientX;break;}}}
function m3_zoom_mouseup(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;var MAP,p,pos,ss=0;p=m3_zoom_getTarget(e);if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;if(p==MAP.NAME+'_zoom_pointer')
{MAP.zoomDown=false;switch(MAP.zoomorient)
{case"v":pos=parseInt($(MAP.NAME+'_zoom_pointer').style.top);break;case"h":pos=parseInt($(MAP.NAME+'_zoom_pointer').style.left);break;}
for(var i=-5;i<99;i+=6)
{if((pos>=i)&&(pos<i+6))
{pos=i+3;break;}
ss++;}
if(ss!=MAP.savedScaleStep)
{m3_zoom(ss,MAP,true);}}}
function m3_zoom_mouseout(e,mapname)
{if(!e)e=window.event;if(e.preventDefault)e.preventDefault();e.returnValue=false;var MAP,p;p=m3_zoom_getTarget(e);if(mapname){MAP=eval(mapname);}
else{MAP=m3_findMe(e);}
if(!MAP)return false;if(MAP.zoomDown&&(p==MAP.NAME+'_zoom_pointer'))
{MAP.zoomDown=false;MAP.ScaleStep=MAP.savedScaleStep;switch(MAP.zoomorient)
{case"v":$(MAP.NAME+'_zoom_pointer').style.top=((MAP.ScaleStep*6)-2)+'px';break;case"h":$(MAP.NAME+'_zoom_pointer').style.left=((MAP.ScaleStep*6)-2)+'px';break;}
MAP.zoomPos=MAP.ScaleStep*6;}}
function m3_zoom_getTarget(e)
{var p;if(e.target){p=e.target;}
else{p=e.srcElement;}
if(!p.id||(p.id=="")){return null;}
return p.id;}
function m3_move_xhair(p,MAP)
{var xh=$(MAP.NAME+'_xhair');xh.style.left=(p.x-14)+'px';xh.style.top=(p.y-14)+'px';xh.style.visibility='visible';return false;}
function m3_centerCH(MAP)
{if(MAP.crosshair=='dynamic')
{var sp={x:Math.round(MAP.mapWidth/2),y:Math.round(MAP.mapHeight/2)};var tp=m3_xy_tray(sp,MAP);var xh=$(MAP.NAME+'_xhair');m3_move_xhair(tp,MAP);MAP.xhX=tp.x;MAP.xhY=tp.y;var ll=m3_c2g(tp.x,tp.y,MAP);MAP.xhLon=ll[0];MAP.xhLat=ll[1];}}
function m3_center_crosshair(MAP)
{var xh,x,y;x=(MAP.mapWidth/2-14)+'px';y=(MAP.mapHeight/2-14)+'px';xh=$(MAP.NAME+'_xhair_static');xh.style.left=x;xh.style.top=y;}
function m3_center_on_xhair(MAP)
{if((MAP.crosshair=="dynamic")&&(MAP.xhX))
{var tp={x:MAP.xhX,y:MAP.xhY};var p=m3_xy_skin(tp,MAP);var positions=m3_calctraypos(p,MAP);m3_hide_canvases(MAP);m3_movetray(positions.newy,positions.newx,MAP);m3_mapmove_event_bubble(positions.dx,positions.dy,MAP);m3_canvas_tray_snap(MAP);if(MAP.Markup)m3_drawMarkup(MAP);m3_show_canvases(MAP);}
return false;}
function m3_gotoLL(lon,lat,MAP)
{var tp=m3_g2c(lon,lat,MAP);var sp=m3_xy_skin(tp,MAP);var positions=m3_calctraypos(sp,MAP);m3_pan('',MAP,positions.newy,positions.newx,true);m3_centerCH(MAP);}
function m3_go_home(MAP)
{if(!MAP.homeLon)return false;MAP.Lon=MAP.homeLon;MAP.Lat=MAP.homeLat;MAP.ScaleStep=m3_scale_to_scalestep(MAP.homeScale);m3_init_map(MAP);m3_mapinit_event_bubble(MAP);return false;}
function m3_prep_tg_markup(MAP)
{if(!(MAP.tgfilter&&MAP.tgfunction&&MAP.tgurl)){return;}
var fr='',i,ml;if(!MAP.Markup){MAP.Markup='';}
ml=MAP.Markup.split('+');for(i=1;i<ml.length;i++){if((MAP.tgfilter).test(ml[i])){fr+='+'+ml[i];}}
MAP.tgmarkup=fr;}
function m3_showTT(MAP)
{if((MAP.tgfunction=='')||(MAP.tgfunction=='none')||(MAP.tgurl=='none'))return;MAP.ttActive=1;var tp=m3_xy_tray({x:MAP.hoverX,y:MAP.hoverY},MAP);var ll=m3_c2g(tp.x,tp.y,MAP);var url=MAP.tgurl;url+=MAP.config+','+ll.lon+','+ll.lat+',';url+=MAP.Scale+','+MAP.mapWidth+','+MAP.mapHeight+',';url+=Math.round(Math.random()*1000000)+'+';url+=MAP.tgfunction+MAP.tgmarkup;if(MAP.m3GetTipText&&(MAP.tgfunction.indexOf('et')!=-1))
{var t=MAP.m3GetTipText(ll.lon,ll.lat);if(t){url+='+--+'+t;}}
var ttimg='<IMG SRC="'+url+'" onLoad="m3_tt_loaded('+MAP.NAME+')" id="'+MAP.NAME+'_ttimg" border="0" galleryimg="no"'+MAP.usexhtml+'>';var tgt=$(MAP.NAME+'_ttlayer');tgt.style.visibility='hidden';tgt.innerHTML=ttimg;}
function m3_tt_loaded(MAP)
{if(!MAP.ttActive)return false;var o=3;var oo=18;var t=$(MAP.NAME+'_ttimg');var h=t.height;var w=t.width;var v=MAP.hoverX+o+w-MAP.mapWidth;if(v<0)v=0;var x=MAP.hoverX+o-v;if(x<0)x=0;var y=MAP.hoverY-o-h;if(y<0)y=MAP.hoverY+oo;var s=$(MAP.NAME+'_ttlayer');s.style.left=x+'px';s.style.top=y+'px';s.style.visibility='visible';return false;}
function m3_cancelTT(MAP)
{if(!MAP)return;m3_hideTip('hover',MAP.hoverX,MAP.hoverY,MAP);MAP.ttActive=0;if(MAP.HoverTimer)clearTimeout(MAP.HoverTimer);var s=$(MAP.NAME+'_ttlayer');if(s)s.style.visibility='hidden';MAP.hoverLon='';MAP.hoverLat='';}
function m3_drawMarkup(MAP)
{if(MAP.Markup=="")
{if($(MAP.NAME+'_mupimg'))
{$(MAP.MarkupDivId).removeChild($(MAP.NAME+'_mupimg'));}
else return;}
var nimg,isnew=true;if($(MAP.NAME+'_mupimg'))
{nimg=$(MAP.NAME+'_mupimg');isnew=false;}
else
{nimg=document.createElement('IMG');nimg.id=MAP.NAME+'_mupimg';}
nimg.src=m3_composeMarkupReq(MAP);nimg.width=MAP.mapWidth;nimg.height=MAP.mapHeight;if(isnew){$(MAP.MarkupDivId).appendChild(nimg);}}
function m3_composeMarkupReq(MAP)
{var rv=MAP.painterurl+
[(MAP.Lon).toFixed(6),(MAP.Lat).toFixed(6),MAP.mapWidth,MAP.mapHeight,0,MAP.Scale,0,'AM3Markup'+(MAP.MUPSEQ++),0,MAP.config+'..noborder'].join(",")+",+A"+
(MAP.Cylinder/20);var tmpmup='+'+MAP.Markup;tmpmup=tmpmup.replace(/%20/g,'+');tmpmup=tmpmup.replace(/\s/g,'+');tmpmup=tmpmup.replace(/\+m/g,'');tmpmup=tmpmup.replace(/\+o(?:png)|(?:gif)|(?:w?bmp(?:_nolevel)?)/g,'');if(tmpmup.charAt(0)!="+")tmpmup='+'+tmpmup;tmpmup=tmpmup.replace(/[\s]/g,'+');return rv+tmpmup;}
function m3_addCanvas(id,canvas,zidx,MAP)
{var q;if(zidx<1){return false;}
if(zidx>100){return false;}
for(q in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(q)){if(MAP.Canvases[q].id==id)
{return false;}
if(q==zidx)
{zidx=m3_CanvasZidx(zidx,MAP);}}}
if(!zidx){return false;}
MAP.CanvasesZ.push(zidx);MAP.CanvasesZ.sort(function(a,b){return a-b;});MAP.Canvases[zidx]={};MAP.Canvases[zidx].id=id;MAP.Canvases[zidx].c=canvas;MAP.Canvases[zidx].sta_tic=canvas.sta_tic?true:false;$(MAP.NAME+'_map').appendChild(m3_makeCanvas(id,zidx,canvas.sta_tic,MAP));canvas.init(MAP.NAME+'_canvas_'+id,MAP);return true;}
function m3_makeCanvas(id,zidx,sta_tic,MAP)
{var tempD=MAP.mydoc.createElement('DIV');tempD.style.position='absolute';tempD.style.visibility='visible';tempD.style.display='block';tempD.id=MAP.NAME+'_canvas_'+id;if(sta_tic)
{tempD.style.top='0px';tempD.style.left='0px';}
else
{tempD.style.top=$(MAP.TrayDivId).style.top;tempD.style.left=$(MAP.TrayDivId).style.left;}
tempD.style.zIndex=zidx+MAP.ZindexShift;return tempD;}
function m3_CanvasZidx(zidx,MAP)
{var i;for(i=zidx;i<=100;i++)
{if(!MAP.Canvases[i])
{return i;}}
for(i=zidx;i>0;i--)
{if(!MAP.Canvases[i])
{return i;}}
return false;}
function m3_deleteCanvas(id,MAP)
{var i,j,mhand=$(MAP.NAME+'_map');for(i in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(i)){if(MAP.Canvases[i].id==id)
{for(j=0;j<MAP.CanvasesZ.length;j++)
{if(MAP.CanvasesZ[j]==i)
{MAP.CanvasesZ.splice(j,1);break;}}
m3_purge($(MAP.NAME+'_canvas_'+id));mhand.removeChild($(MAP.NAME+'_canvas_'+id));delete(MAP.Canvases[i].id);delete(MAP.Canvases[i].c);delete(MAP.Canvases[i].sta_tic);delete(MAP.Canvases[i]);return true;}}}
return false;}
function m3_showCanvas(id,isShown,MAP)
{var chand=$(MAP.NAME+'_canvas_'+id);if(!chand){return false;}
if(isShown!=null)
{isShown?chand.style.visibility='visible':chand.style.visibility='hidden';}
else
{chand.style.visibility=='visible'?chand.style.visibility='hidden':chand.style.visibility='visible';}
var i;for(i in MAP.Canvases)
{if(MAP.Canvases.hasOwnProperty(i)){if(MAP.Canvases[i].id==id)
{MAP.Canvases[i].c.showCallback(chand.style.visibility=='visible'?true:false);}}}
return true;}
function m3_clearTips(q,MAP)
{var domid,x,y,re,str,e;if(q!=null)
{if(isRegExp(q))
{re=eval(q);}
else
{str=q+"";}}
if(re||str)
{for(x in MAP.tipClickIDs)
{if(MAP.tipClickIDs.hasOwnProperty(x)){if((re&&re.test(MAP.tipClickIDs[x].id))||(str&&(MAP.tipClickIDs[x].id).indexOf(str)!=-1))
{domid=MAP.tipClickIDs[x].id;m3_purge($(domid));try
{$(MAP.NAME+'_map').removeChild($(domid));}catch(e){}
delete(MAP.tipClickIDs[x]);}}}}
else
{for(x in MAP.tipClickIDs)
{if(MAP.tipClickIDs.hasOwnProperty(x)){domid=MAP.tipClickIDs[x].id;m3_purge($(domid));try
{$(MAP.NAME+'_map').removeChild($(domid));}catch(e){}}}
MAP.tipClickIDs={};}
for(t in MAP.tipHoverIDs)
{if(MAP.tipHoverIDs.hasOwnProperty(t)){domid=MAP.NAME+'_tip_'+t;m3_purge($(domid));try
{$(MAP.NAME+'_map').removeChild($(domid));}catch(e){}}}
MAP.tipHoverPos={};MAP.tipHoverIDs={};return true;}
function m3_closeTip(domid,MAP)
{if($(domid))
{m3_purge($(domid));$(MAP.NAME+'_map').removeChild($(domid));}
var t;for(t in MAP.tipClickIDs)
{if(MAP.tipClickIDs.hasOwnProperty(t)){if(MAP.tipClickIDs[t].id==domid)
{delete(MAP.tipClickIDs[t]);break;}}}}
function m3_hideTip(etype,sx,sy,MAP)
{var tp=m3_xy_tray({x:sx,y:sy},MAP);var xc,yc,killMe,idxx=0,idxy=0;if(etype=='hover')
{for(xc in MAP.tipHoverPos)
{if(MAP.tipHoverPos.hasOwnProperty(xc)){idxx=Math.abs(parseInt(xc)-tp.x);if(idxx>10)
{for(yc in MAP.tipHoverPos[xc])
{if(MAP.tipHoverPos[xc].hasOwnProperty(yc)){idxy=Math.abs(parseInt(yc)-tp.y);if(idxy>10)
{killMe=$(MAP.tipHoverPos[xc][yc].id);m3_purge(killMe);$(MAP.NAME+'_map').removeChild(killMe);delete(MAP.tipHoverIDs[MAP.tipHoverPos[xc][yc].oid]);delete(MAP.tipHoverPos[xc][yc]);return true;}}}}}}}
return false;}
function m3_popTip(id,type,lon,lat,width,height,domnode,cssClass,MAP)
{var isBalloon=false;if((id=='')||(!id)||(domnode.tagName!='DIV'))
{return false;}
var tp=m3_g2c(lon,lat,MAP);var sp=m3_xy_skin(tp,MAP);m3_hideTip('hover',sp.x,sp.y,MAP);if((id in MAP.tipClickIDs)||(id in MAP.tipHoverIDs))
{if((sp.x<0)||(sp.y<0)||(sp.x>MAP.mapWidth)||(sp.y>MAP.mapHeight))
{var positions=m3_calctraypos(sp,MAP);m3_pan('',MAP,positions.newy,positions.newx,true);}
return false;}
if((sp.x<0)||(sp.y<0)||(sp.x>MAP.mapWidth)||(sp.y>MAP.mapHeight))
{var positions=m3_calctraypos(sp,MAP);m3_pan('',MAP,positions.newy,positions.newx,true);}
sp=m3_xy_skin(tp,MAP);domnode.style.overflow='hidden';domnode.style.width=width+'px';domnode.style.height=height+'px';domnode.id=MAP.NAME+'_tip_'+id+'_content';var oo=18;var o=3;if((!cssClass)||(cssClass==''))
{height+=28;width+=13;oo=o=0;}
var vert='b';var horiz='l';var v=sp.x+o+width-MAP.mapWidth;var v2=sp.x-o-width;if(v<0)
{var x=sp.x+o;}
else if(v2<0)
{var tray=$(MAP.TrayDivId);m3_pan('',MAP,parseInt(tray.style.top),parseInt(tray.style.left)-(v),true);sp=m3_xy_skin(tp,MAP);var x=sp.x+o;}
else
{v=width;var x=sp.x-o-v;horiz='r';}
var y=sp.y-o-height;var y2=sp.y+o+height;if((y<0)&&(y2>MAP.mapHeight))
{var tray=$(MAP.TrayDivId);m3_pan('',MAP,parseInt(tray.style.top)+(-y),parseInt(tray.style.left),true);sp=m3_xy_skin(tp,MAP);y=sp.y-o-height;}
else if(y<0)
{y=sp.y+oo;vert='t';}
var ptr_side=horiz;var ptr_vert=vert=='b'?'d':'u';var tDiv;if((!cssClass)||(cssClass==''))
{isBalloon=true;domnode.className='m2i_tip_content';tDiv=m3_balloontip_create(domnode,MAP.NAME+'_tip_'+id,id,ptr_vert+ptr_side,type=='click',MAP);if(ptr_side=='l')x-=10;else x+=10;if(type=='hover')
{if(!MAP.tipHoverPos[sp.x])
{MAP.tipHoverPos[sp.x]={};}
MAP.tipHoverPos[sp.x][sp.y]={};MAP.tipHoverPos[sp.x][sp.y].id=tDiv.id;MAP.tipHoverPos[sp.x][sp.y].oid=id;MAP.tipHoverIDs[id]=true;}
tDiv.style.left=x+'px';tDiv.style.top=y+'px';}
else
{tDiv=MAP.mydoc.createElement('DIV')
tDiv.id=MAP.NAME+'_tip_'+id;tDiv.style.width=parseInt(width)+'px';tDiv.style.height=parseInt(height)+'px';tDiv.style.overflow='hidden';tDiv.style.position='absolute';tDiv.className=cssClass;if(type=='click')
{var tClose=MAP.mydoc.createElement('DIV');tClose.id=MAP.NAME+'_'+id+'_close';tClose.style.position='absolute';tClose.style.background='transparent';tClose.style.zIndex=108;tClose.style.top='0px';tClose.style.right='0px';tClose.style.width='14px';tClose.style.height='14px';tClose.innerHTML='<img src="'+MAP.imagepath+'close.gif" width="14" height="14" alt="Close" galleryimg="no" border="0"'+MAP.usexhtml+'>';tClose.onclick=function()
{var killMe=$(tDiv.id);m3_purge(killMe);$(MAP.NAME+'_map').removeChild(killMe);delete(MAP.tipClickIDs[id]);}
tDiv.appendChild(tClose);}
tDiv.style.left=x+'px';tDiv.style.top=y+'px';}
if(type=='click')
{MAP.tipClickIDs[id]={};MAP.tipClickIDs[id].id=tDiv.id;MAP.tipClickIDs[id].lon=parseFloat(lon);MAP.tipClickIDs[id].lat=parseFloat(lat);MAP.tipClickIDs[id].isBalloon=isBalloon;if(isBalloon)
{MAP.tipClickIDs[id].ptr_side=ptr_side;MAP.tipClickIDs[id].ptr_vert=ptr_vert;}}
else if(type=='hover')
{if(!MAP.tipHoverPos[sp.x])
{MAP.tipHoverPos[sp.x]={};}
MAP.tipHoverPos[sp.x][sp.y]={};MAP.tipHoverPos[sp.x][sp.y].id=tDiv.id;MAP.tipHoverPos[sp.x][sp.y].oid=id;MAP.tipHoverIDs[id]=true;}
tDiv.style.zIndex=108;tDiv.style.clip=m3_tipAnimateInitialClip(width,height,vert,horiz);$(MAP.NAME+'_map').appendChild(tDiv);if(!isBalloon)
{var somethingnew=MAP.mydoc._importNode(domnode,true);tDiv.appendChild(somethingnew);}
setTimeout('m3_tipAnimateOpen("'+tDiv.id+'",'+width+','+height+',"'+vert+'","'+horiz+'",'+MAP.NAME+')',1);return tDiv.id;}
function m3_getClipProp(cl)
{if(!(/,/.test(cl)))
{cl=cl.replace(/\s+/g,",");}
cl=cl.replace(/ /g,'');cl=cl.replace(/[a-z]+/g,'');cl=cl.replace(/\(|\)/g,'');var cl_a=cl.split(',');return new Object({top:parseInt(cl_a[0]),right:parseInt(cl_a[1]),bottom:parseInt(cl_a[2]),left:parseInt(cl_a[3])});}
function m3_tipAnimateInitialClip(targetW,targetH,vert,horiz)
{var pos=vert+horiz;switch(pos)
{case'tl':return'rect(0px, 0px, 0px, 0px)';break;case'bl':return'rect('+targetH+'px, 0px, '+targetH+'px, 0px)';break;case'tr':return'rect(0px, '+targetW+'px, 0px, '+targetW+'px)';break;case'br':return'rect('+targetH+'px, '+targetW+'px, '+targetH+'px, '+targetW+'px)';break;}}
function m3_tipAnimateOpen(myDiv,targetW,targetH,vert,horiz,MAP)
{var keepgoing=false;var md=$(myDiv);if(md)
{var cv=m3_getClipProp(md.style.clip);switch(vert)
{case't':if(cv.bottom<targetH)
{if((cv.bottom+MAP.tipAnimateSpeed)>targetH)
{cv.bottom=targetH;keepgoing=false;}
else
{cv.bottom=cv.bottom+MAP.tipAnimateSpeed;keepgoing=true;}}
break;case'b':if(cv.top>0)
{if((cv.top-MAP.tipAnimateSpeed)<0)
{cv.top=0;keepgoing=false;}
else
{cv.top=cv.top-MAP.tipAnimateSpeed;keepgoing=true;}}
break;}
switch(horiz)
{case'l':if(cv.right<targetW)
{if((cv.right+MAP.tipAnimateSpeed)>targetW)
{cv.right=targetW;keepgoing?keepgoing=true:keepgoing=false;}
else
{cv.right=cv.right+MAP.tipAnimateSpeed;keepgoing=true;}}
break;case'r':if(cv.left>0)
{if((cv.left-MAP.tipAnimateSpeed)<0)
{cv.left=0;keepgoing?keepgoing=true:keepgoing=false;}
else
{cv.left=cv.left-MAP.tipAnimateSpeed;keepgoing=true;}}
break;}
if(keepgoing)
{md.style.clip='rect('+cv.top+'px '+cv.right+'px '+cv.bottom+'px '+cv.left+'px)';setTimeout('m3_tipAnimateOpen("'+myDiv+'",'+targetW+','+targetH+',"'+vert+'","'+horiz+'",'+MAP.NAME+')',1);}
else
{md.style.clip='rect(auto auto auto auto)';}}}
function m3_tipRedraw(MAP)
{var hd=$(MAP.NAME+'_map');var xc;var yc;var killMe;var tp;var sp;for(xc in MAP.tipHoverPos)
{if(MAP.tipHoverPos.hasOwnProperty(xc)){for(yc in MAP.tipHoverPos[xc])
{if(MAP.tipHoverPos[xc].hasOwnProperty(yc)){killMe=$(MAP.tipHoverPos[xc][yc].id);m3_purge(killMe);hd.removeChild(killMe);}}}}
MAP.tipHoverPos={};var th_tmp=MAP.tipClickIDs;var w;var h;MAP.tipClickIDs={};for(id in th_tmp)
{if(th_tmp.hasOwnProperty(id)){tp=m3_g2c(th_tmp[id].lon,th_tmp[id].lat,MAP);sp=m3_xy_skin(tp,MAP);dh=$(th_tmp[id].id);w=parseInt(dh.style.width);h=parseInt(dh.style.height);if(th_tmp[id].isBalloon)
{if(th_tmp[id].ptr_vert=='d')
{dh.style.top=(sp.y-h)+'px';}
else
{dh.style.top=sp.y+'px';}
if(th_tmp[id].ptr_side=='l')
{dh.style.left=(sp.x-10)+'px';}
else
{dh.style.left=(sp.x-w+10)+'px';}}
else
{var o=3;var oo=18;var vert='d';var horiz='l';var v=sp.x+o+w-MAP.mapWidth;if(v<0)
{var x=sp.x+o;}
else
{v=w;var x=sp.x-o-v;}
var y=sp.y-o-h;if(y<0)
{y=sp.y+oo;}
var nxc=x+w-7;var nyc=y+7;dh.style.left=x+'px';dh.style.top=y+'px';}
MAP.tipClickIDs[id]={};MAP.tipClickIDs[id].id=th_tmp[id].id;MAP.tipClickIDs[id].lon=th_tmp[id].lon;MAP.tipClickIDs[id].lat=th_tmp[id].lat;MAP.tipClickIDs[id].isBalloon=th_tmp[id].isBalloon;if(th_tmp[id].isBalloon)
{MAP.tipClickIDs[id].ptr_side=th_tmp[id].ptr_side;MAP.tipClickIDs[id].ptr_vert=th_tmp[id].ptr_vert;}}}}
function m3_balloontip_create(content,id,oid,ppos,closebox,MAP)
{if(!MAP.cssLoaded)m3_addBalloonCSS(MAP);var cwidth=parseInt(content.style.width);var cheight=parseInt(content.style.height);if(cwidth<30)cwidth=30;if(cheight<30)cheight=30;content.style.position='absolute';content.className='m2i_tip_content';var container=MAP.mydoc.createElement('DIV');var border_l=MAP.mydoc.createElement('DIV');var border_r=MAP.mydoc.createElement('DIV');var border_t=MAP.mydoc.createElement('DIV');var border_b=MAP.mydoc.createElement('DIV');container.id=id;container.className='m2i_tip_container';container.style.position='absolute';container.style.width=(cwidth+13)+'px';container.style.height=(cheight+28)+'px';xStyle('height',cheight+'px',border_l,border_r,content);xStyle('width',cwidth+'px',border_t,border_b,content);xAddClass('m2i_tip_border',border_l,border_r,border_t,border_b);xAddClass('m2i_left',border_l);xAddClass('m2i_right',border_r);xAddClass('m2i_top',border_t);xAddClass('m2i_bottom',border_b);border_b.innerHTML=border_t.innerHTML=border_r.innerHTML=border_l.innerHTML='&nbsp;';var inrsrc=' width="7" height="7" alt="" galleryimg="no"';var corner_tl=MAP.mydoc.createElement('DIV');var corner_tr=MAP.mydoc.createElement('DIV');var corner_br=MAP.mydoc.createElement('DIV');var corner_bl=MAP.mydoc.createElement('DIV');xAddClass('m2i_tip_corner',corner_tl,corner_tr,corner_br,corner_bl);xAddClass('m2i_tl',corner_tl);xAddClass('m2i_tr',corner_tr);xAddClass('m2i_bl',corner_bl);xAddClass('m2i_br',corner_br);corner_tl.innerHTML='<img src="'+MAP.imagepath+'/tooltip/tip-corner-tl.gif"'+inrsrc+MAP.usexhtml+'>';corner_tr.innerHTML='<img src="'+MAP.imagepath+'/tooltip/tip-corner-tr.gif"'+inrsrc+MAP.usexhtml+'>';corner_br.innerHTML='<img src="'+MAP.imagepath+'/tooltip/tip-corner-br.gif"'+inrsrc+MAP.usexhtml+'>';corner_bl.innerHTML='<img src="'+MAP.imagepath+'/tooltip/tip-corner-bl.gif"'+inrsrc+MAP.usexhtml+'>';var pointer=MAP.mydoc.createElement('DIV');pointer.className='m2i_tip_pointer m2i_'+ppos;pointer.innerHTML='<img src="'+MAP.imagepath+'/tooltip/tip-pointer-'+ppos+'.gif" width="17" height="18" alt=""'+MAP.usexhtml+'>';if(closebox)
{var cb=MAP.mydoc.createElement('DIV');cb.className='m2i_tip_close_box';cb.innerHTML='&nbsp;';cb.zIndex=108;cb.onclick=function()
{var killMe=$(id);m3_purge(killMe);$(MAP.NAME+'_map').removeChild(killMe);delete(MAP.tipClickIDs[oid]);}}
var p=ppos.split('');switch(p[0])
{case'u':content.style.top=border_l.style.top=border_r.style.top='23px';corner_tr.style.top=corner_tl.style.top=border_t.style.top='16px';pointer.style.top=corner_br.style.bottom=corner_bl.style.bottom=border_b.style.bottom='0px';if(closebox)cb.style.top='20px';break;case'd':content.style.top=border_l.style.top=border_r.style.top='7px';pointer.style.bottom=corner_tr.style.top=corner_tl.style.top=border_t.style.top='0px';corner_br.style.bottom=corner_bl.style.bottom=border_b.style.bottom='16px';if(closebox)cb.style.top='4px';break;}
switch(p[1])
{case'l':pointer.style.left='10px';break;case'r':pointer.style.right='10px';break;}
container.appendChild(corner_tl);container.appendChild(corner_tr);container.appendChild(corner_bl);container.appendChild(corner_br);container.appendChild(border_l);container.appendChild(border_r);container.appendChild(border_t);container.appendChild(border_b);container.appendChild(pointer);container.appendChild(content);if(closebox)container.appendChild(cb);return container;}
function m3_addBalloonCSS(MAP)
{var l=MAP.mydoc.createElement('LINK');l.type='text/css';l.rel='stylesheet';l.media='screen';l.href=MAP.csspath;MAP.mydoc.getElementsByTagName('HEAD')[0].appendChild(l);MAP.cssLoaded=true;}
function m3_purge(d){if(!d){return false;}
var a=d.attributes,i,n;if(a)
{for(i=0;i<a.length;i++)
{if(a[i])
{n=a[i].name;if(typeof d[n]==='function')
{d[n]=null;}}}}
a=d.childNodes;if(a)
{for(i=0;i<a.length;i++)
{m3_purge(d.childNodes[i]);}}
return true;}
function xAddClass(c)
{var i,e,s;for(i=1;i<arguments.length;++i){if((e=xGetElementById(arguments[i]))!=null){var s='';if(e.className.length&&e.className.charAt(e.className.length-1)!=' '){s=' ';}
if(!xHasClass(e,c)){e.className+=s+c;}}}}
function xHasClass(e,c)
{e=xGetElementById(e);if(!e||e.className=='')return false;var re=new RegExp("(^|\\s)"+c+"(\\s|$)");return re.test(e.className);}
function xStyle(sProp,sVal)
{var i,e;for(i=2;i<arguments.length;++i){e=xGetElementById(arguments[i]);if(e.style){try{e.style[sProp]=sVal;}
catch(err){e.style[sProp]='';}}}}
function xIntersection(e1,e2,o)
{var ix1,iy2,iw,ih,intersect=true;var e1x1=xPageX(e1);var e1x2=e1x1+xWidth(e1);var e1y1=xPageY(e1);var e1y2=e1y1+xHeight(e1);var e2x1=xPageX(e2);var e2x2=e2x1+xWidth(e2);var e2y1=xPageY(e2);var e2y2=e2y1+xHeight(e2);if(e1x1<=e2x1){ix1=e2x1;if(e1x2<e2x1)intersect=false;else iw=Math.min(e1x2,e2x2)-e2x1;}
else{ix1=e1x1;if(e2x2<e1x1)intersect=false;else iw=Math.min(e1x2,e2x2)-e1x1;}
if(e1y2>=e2y2){iy2=e2y2;if(e1y1>e2y2)intersect=false;else ih=e2y2-Math.max(e1y1,e2y1);}
else{iy2=e1y2;if(e2y1>e1y2)intersect=false;else ih=e1y2-Math.max(e1y1,e2y1);}
if(intersect&&typeof(o)=='object'){o.x=ix1;o.y=iy2-ih;o.w=iw;o.h=ih;}
return intersect;}
function xInsertRule(ss,sel,rule,idx)
{if(!(ss=xGetElementById(ss)))return false;if(ss.insertRule){ss.insertRule(sel+"{"+rule+"}",(idx>=0?idx:ss.cssRules.length));}
else if(ss.addRule){ss.addRule(sel,rule,idx);}
else return false;return true;}
function xAddEventListener(e,eT,eL,cap)
{if(!(e=xGetElementById(e)))return;eT=eT.toLowerCase();if(e.addEventListener)e.addEventListener(eT,eL,cap||false);else if(e.attachEvent)e.attachEvent('on'+eT,eL);else{var o=e['on'+eT];e['on'+eT]=typeof o=='function'?function(v){o(v);eL(v);}:eL;}}
function xGetElementById(e)
{if(typeof(e)=='string'){if(document.getElementById)e=document.getElementById(e);else if(document.all)e=document.all[e];else e=null;}
return e;}
function xNum()
{for(var i=0;i<arguments.length;++i){if(isNaN(arguments[i])||typeof(arguments[i])!='number')return false;}
return true;}
function xDef()
{for(var i=0;i<arguments.length;++i){if(typeof(arguments[i])=='undefined')return false;}
return true;}
function xStr(s)
{for(var i=0;i<arguments.length;++i){if(typeof(arguments[i])!='string')return false;}
return true;}
function xTop(e,iY)
{if(!(e=xGetElementById(e)))return 0;var css=xDef(e.style);if(css&&xStr(e.style.top)){if(xNum(iY))e.style.top=iY+'px';else{iY=parseInt(e.style.top);if(isNaN(iY))iY=xGetComputedStyle(e,'top',1);if(isNaN(iY))iY=0;}}
else if(css&&xDef(e.style.pixelTop)){if(xNum(iY))e.style.pixelTop=iY;else iY=e.style.pixelTop;}
return iY;}
function xLeft(e,iX)
{if(!(e=xGetElementById(e)))return 0;var css=xDef(e.style);if(css&&xStr(e.style.left)){if(xNum(iX))e.style.left=iX+'px';else{iX=parseInt(e.style.left);if(isNaN(iX))iX=xGetComputedStyle(e,'left',1);if(isNaN(iX))iX=0;}}
else if(css&&xDef(e.style.pixelLeft)){if(xNum(iX))e.style.pixelLeft=iX;else iX=e.style.pixelLeft;}
return iX;}
function xGetComputedStyle(e,p,i)
{if(!(e=xGetElementById(e)))return null;var s,v='undefined',dv=document.defaultView;if(dv&&dv.getComputedStyle){s=dv.getComputedStyle(e,'');if(s)v=s.getPropertyValue(p);}
else if(e.currentStyle){v=e.currentStyle[xCamelize(p)];}
else return null;return i?(parseInt(v)||0):v;}
function xCamelize(cssPropStr)
{var i,c,a=cssPropStr.split('-');var s=a[0];for(i=1;i<a.length;++i){c=a[i].charAt(0);s+=a[i].replace(c,c.toUpperCase());}
return s;}
function xHeight(e,h)
{if(!(e=xGetElementById(e)))return 0;if(xNum(h)){if(h<0)h=0;else h=Math.round(h);}
else h=-1;var css=xDef(e.style);if(e==document||e.tagName.toLowerCase()=='html'||e.tagName.toLowerCase()=='body'){h=xClientHeight();}
else if(css&&xDef(e.offsetHeight)&&xStr(e.style.height)){if(h>=0){var pt=0,pb=0,bt=0,bb=0;if(document.compatMode=='CSS1Compat'){var gcs=xGetComputedStyle;pt=gcs(e,'padding-top',1);if(pt!==null){pb=gcs(e,'padding-bottom',1);bt=gcs(e,'border-top-width',1);bb=gcs(e,'border-bottom-width',1);}
else if(xDef(e.offsetHeight,e.style.height)){e.style.height=h+'px';pt=e.offsetHeight-h;}}
h-=(pt+pb+bt+bb);if(isNaN(h)||h<0)return;else e.style.height=h+'px';}
h=e.offsetHeight;}
else if(css&&xDef(e.style.pixelHeight)){if(h>=0)e.style.pixelHeight=h;h=e.style.pixelHeight;}
return h;}
function xWidth(e,w)
{if(!(e=xGetElementById(e)))return 0;if(xNum(w)){if(w<0)w=0;else w=Math.round(w);}
else w=-1;var css=xDef(e.style);if(e==document||e.tagName.toLowerCase()=='html'||e.tagName.toLowerCase()=='body'){w=xClientWidth();}
else if(css&&xDef(e.offsetWidth)&&xStr(e.style.width)){if(w>=0){var pl=0,pr=0,bl=0,br=0;if(document.compatMode=='CSS1Compat'){var gcs=xGetComputedStyle;pl=gcs(e,'padding-left',1);if(pl!==null){pr=gcs(e,'padding-right',1);bl=gcs(e,'border-left-width',1);br=gcs(e,'border-right-width',1);}
else if(xDef(e.offsetWidth,e.style.width)){e.style.width=w+'px';pl=e.offsetWidth-w;}}
w-=(pl+pr+bl+br);if(isNaN(w)||w<0)return;else e.style.width=w+'px';}
w=e.offsetWidth;}
else if(css&&xDef(e.style.pixelWidth)){if(w>=0)e.style.pixelWidth=w;w=e.style.pixelWidth;}
return w;}
function xClientHeight()
{var v=0,d=document,w=window;if((!d.compatMode||d.compatMode=='CSS1Compat')&&!w.opera&&d.documentElement&&d.documentElement.clientHeight)
{v=d.documentElement.clientHeight;}
else if(d.body&&d.body.clientHeight)
{v=d.body.clientHeight;}
else if(xDef(w.innerWidth,w.innerHeight,d.width)){v=w.innerHeight;if(d.width>w.innerWidth)v-=16;}
return v;}
function xClientWidth()
{var v=0,d=document,w=window;if((!d.compatMode||d.compatMode=='CSS1Compat')&&!w.opera&&d.documentElement&&d.documentElement.clientWidth)
{v=d.documentElement.clientWidth;}
else if(d.body&&d.body.clientWidth)
{v=d.body.clientWidth;}
else if(xDef(w.innerWidth,w.innerHeight,d.height)){v=w.innerWidth;if(d.height>w.innerHeight)v-=16;}
return v;}
function xAnimation(r)
{this.res=r||10;}
xAnimation.prototype.init=function(e,t,or,ot,oe,a,b)
{var i=this;i.e=xGetElementById(e);i.t=t;i.or=or;i.ot=ot;i.oe=oe;i.a=a||0;i.v=xAnimation.vf[i.a];i.qc=1+(b||0);i.fq=1/i.t;if(i.a){i.fq*=i.qc*Math.PI;if(i.a==1||i.a==2){i.fq/=2;}}
else{i.qc=1;}
i.xd=i.x2-i.x1;i.yd=i.y2-i.y1;i.zd=i.z2-i.z1;};xAnimation.prototype.run=function(r)
{var i=this;if(!r)i.t1=new Date().getTime();if(!i.tmr)i.tmr=setInterval(function(){i.et=new Date().getTime()-i.t1;if(i.et<i.t){i.f=i.v(i.et*i.fq);i.x=i.xd*i.f+i.x1;i.y=i.yd*i.f+i.y1;i.z=i.zd*i.f+i.z1;i.or(i);}
else{clearInterval(i.tmr);i.tmr=null;if(i.qc%2){i.x=i.x2;i.y=i.y2;i.z=i.z2;}
else{i.x=i.x1;i.y=i.y1;i.z=i.z1;}
i.ot(i);var rep=false;if(typeof i.oe=='function')rep=i.oe(i);else if(typeof i.oe=='string')rep=eval(i.oe);if(rep)i.resume(1);}},i.res);};xAnimation.vf=[function(r){return r;},function(r){return Math.abs(Math.sin(r));},function(r){return 1-Math.abs(Math.cos(r));},function(r){return(1-Math.cos(r))/2;}];xAnimation.prototype.pause=function()
{clearInterval(this.tmr);this.tmr=null;};xAnimation.prototype.resume=function(fs)
{if(typeof this.tmr!='undefined'&&!this.tmr){this.t1=new Date().getTime();if(!fs){this.t1-=this.et;}
this.run(!fs);}};xAnimation.prototype.size=function(e,w,h,t,a,b,oe)
{var i=this;i.x1=xWidth(e);i.y1=xHeight(e);i.x2=Math.round(w);i.y2=Math.round(h);i.init(e,t,o,o,oe,a,b);i.run();function o(i){xWidth(i.e,Math.round(i.x));xHeight(i.e,Math.round(i.y));}};xAnimation.prototype.line=function(e,x,y,t,a,b,oe)
{var i=this;i.x1=xLeft(e);i.y1=xTop(e);i.x2=Math.round(x);i.y2=Math.round(y);i.init(e,t,h,h,oe,a,b);i.run();function h(i){i.e.style.left=Math.round(i.x)+'px';i.e.style.top=Math.round(i.y)+'px';}};xAnimation.prototype.corner=function(e,c,x,y,t,a,b,oe)
{var i=this;i.x2=x;i.y2=y;var ex=xLeft(e),ey=xTop(e);var ew=xWidth(e),eh=xHeight(e);i.cornerStr=c.toLowerCase();switch(i.cornerStr){case'nw':i.x1=ex;i.y1=ey;break;case'sw':i.x1=ex;i.y1=ey+eh;break;case'ne':i.x1=ex+ew;i.y1=ey;break;case'se':i.x1=ex+ew;i.y1=ey+eh;break;default:return;}
i.init(e,t,h,h,oe,a,b);i.run();function h(i){var e=i.e,x=Math.round(i.x),y=Math.round(i.y);var nwx=xLeft(e),nwy=xTop(e);var sex=nwx+xWidth(e),sey=nwy+xHeight(e);switch(i.cornerStr){case'nw':e.style.left=x+'px';e.style.top=y+'px';xResizeTo(e,sex-x,sey-y);break;case'sw':e.style.left=x+'px';xWidth(e,sex-x);xHeight(e,y-nwy);break;case'ne':xWidth(e,x-nwx);e.style.top=y+'px';xHeight(e,sey-y);break;case'se':xWidth(e,x-nwx);xHeight(e,y-nwy);break;}}};function xResizeTo(e,w,h){return{w:xWidth(e,w),h:xHeight(e,h)};}
    m3map.styles = [];
m3map.create = function (ele)
{
    MAP = m3map;
    if (!ele) { ele = m3map_target; }
    if (!ele || !MAP) {return false;}
    if (MAP.created) { return; }
    if (!document.body)
    {
        setTimeout(arguments.callee, 13);
        return;
    }
    try
    {
        if (document.removeEventListener)
        {
            document.removeEventListener("DOMContentLoaded", arguments.callee.caller, false);
            window.removeEventListener("load", arguments.callee.caller, false);
        }
        else if (document.detachEvent)
        {
            if (document.readyState !== "complete")
            {
                return;
            }
            document.detachEvent("onreadystatechange", arguments.callee.caller);
            window.detachEvent("onload", arguments.callee.caller);
        }
    } catch (e) {}
    MAP.created = true;
    if (!xGetElementById('AM3dynstyle'))
    {
        var cssNode = document.createElement('style');
        cssNode.type = 'text/css';
        cssNode.rel = 'stylesheet';
        cssNode.id = 'AM3dynstyle';
        cssNode.media = 'screen';
        cssNode.title = 'dynamicSheet';
        document.getElementsByTagName("head")[0].appendChild(cssNode);
        var css = xGetElementById('AM3dynstyle').styleSheet ? xGetElementById('AM3dynstyle').styleSheet : xGetElementById('AM3dynstyle').sheet;
        xInsertRule(css, 'DIV.m2i_zoomanim_d1', 'position:absolute; background-color: white; -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; filter: alpha(opacity=80); opacity:0.8; z-index:106;', -1);
        xInsertRule(css, 'DIV.m2i_zoomanim_d2', 'position:absolute; border: 1px solid black; z-index:106;', -1);
    }
    var mapdiv = document.createElement('DIV');
    mapdiv.id = MAP.NAME + '_map';
    var s = mapdiv.style;
    s.border = '1px solid black';
    s.position = 'relative';
    s.height = MAP.mapHeight + 'px';
    s.width = MAP.mapWidth + 'px';
    s.overflow = 'hidden';
    s.zIndex = 0;
    s.mozUserSelect = 'none';
    var html = '<div id="m3map_tray" style="position: absolute;top:0px;left:0px;z-index:1;"></div>';
    html += '<div id="m3map_xhair_layer" style="position:absolute;top:0px;left:0px;z-index:2;width:100%;height:100%;"><div id="m3map_xhair" style="position:absolute; top:-14px;left:-14px; z-index: 11; visibility: hidden;"><img border="0" src="http://castle.service.traffic.maptuit.com/nc/controls/ch29-ci.gif" width="29" height="29" galleryimg="no" ></div></div>';
    html += '<div id="m3map_markup" style="position:absolute;top:0px;left:0px;z-index:3;"></div>';
    html += '<div id="m3map_copybug" style="position: absolute; bottom: 4px;  right: 4px;  z-index: 106; font-size:10px; font-family: sans-serif;">&copy; 2010 Maptuit, NAVTEQ.</div>';
    html += '<div id="m3map_scalecontainer" style="position: absolute; bottom: 4px;  left: 4px;  z-index: 106;"></div>';
    html += '<div id="m3map_ttlayer" style="position: absolute; top: -50px; left: -50px; z-index: 106;"></div>';
    html += '<div id="m3map_skin" style="position:absolute;top:0px;left:0px;z-index:107;height:100%;width:100%;"><img border="0" src="http://castle.service.traffic.maptuit.com/nc/blank.gif" height="400" width="400" galleryimg="no" id="m3map_skinimg" ></div>';
    html += '<div id="m3map_pan_control" class="m3_pan_control" style="position: absolute; top: 119px;  right: 4px;  z-index: 109;"><img border="0" galleryimg="no" usemap="#m3map_pantool" alt="Pan Map" src="http://castle.service.traffic.maptuit.com/nc/controls/powh-8w.gif"><map name="m3map_pantool"><area shape="rect" onClick="m3_pan(\'n\', m3map)" coords="20,2,35,17"><area shape="rect" onClick="m3_pan(\'s\', m3map)" coords="20,38,35,53"><area shape="rect" onClick="m3_pan(\'w\', m3map)" coords="2,20,17,35"><area shape="rect" onClick="m3_pan(\'e\', m3map)" coords="38,20,53,35"><area shape="rect" onClick="m3_go_home(m3map)" coords="20,20,35,35"><area shape="rect" onClick="m3_pan(\'ne\', m3map)" coords="34,2,49,17"><area shape="rect" onClick="m3_pan(\'se\', m3map)" coords="34,34,49,49"><area shape="rect" onClick="m3_pan(\'sw\', m3map)" coords="2,34,17,49"><area shape="rect" onClick="m3_pan(\'nw\', m3map)" coords="2,2,17,17"></map></div>';
    html += '<div id="m3map_zoom_control" class="m3_zoom_control" style="position:absolute; overflow:hidden; width:20px; height:111px; z-index:109; top: 4px;  right: 4px; "><div style="top:0px; right:0px; position:absolute; width:16px; height:16px; font-size:1px; line-height:0; cursor:pointer;"  onClick="m3_zoom(-1, m3map,false); return false;"><img src="http://castle.service.traffic.maptuit.com/nc/controls/zoom-plus.gif"></div><div id="m3map_zoom_scale" style="overflow:hidden; position:absolute; top:18px; right:0px; width:20px; height:75px;"><img src="http://castle.service.traffic.maptuit.com/nc/controls/zoom-scale-12.gif" border="0" galleryimg="no" style="position:absolute; right:0px;" usemap="#m3map_zoomtool"><map name="m3map_zoomtool"><area shape="rect" coords="0,1,15,6" onClick="m3_zoom(0, m3map,true);return false;"><area shape="rect" coords="0,7,15,12" onClick="m3_zoom(1, m3map,true);return false;"><area shape="rect" coords="0,13,15,18" onClick="m3_zoom(2, m3map,true);return false;"><area shape="rect" coords="0,19,15,24" onClick="m3_zoom(3, m3map,true);return false;"><area shape="rect" coords="0,25,15,30" onClick="m3_zoom(4, m3map,true);return false;"><area shape="rect" coords="0,31,15,36" onClick="m3_zoom(5, m3map,true);return false;"><area shape="rect" coords="0,37,15,42" onClick="m3_zoom(6, m3map,true);return false;"><area shape="rect" coords="0,43,15,48" onClick="m3_zoom(7, m3map,true);return false;"><area shape="rect" coords="0,49,15,54" onClick="m3_zoom(8, m3map,true);return false;"><area shape="rect" coords="0,55,15,60" onClick="m3_zoom(9, m3map,true);return false;"><area shape="rect" coords="0,61,15,66" onClick="m3_zoom(10, m3map,true);return false;"><area shape="rect" coords="0,67,15,72" onClick="m3_zoom(11, m3map,true);return false;"></map><div id="m3map_zoom_pointer" style="left:0px; width:20px; height:13px; position:absolute; background: url(http://castle.service.traffic.maptuit.com/nc/controls/zoom-ctl.gif) no-repeat; background-position: right center; font-size: 1px; line-height: 0; top:-2px; cursor:pointer;">&nbsp;</div></div><div style="bottom:0px; right:0px; position:absolute; width:16px; height:16px; font-size:1px; line-height:0; cursor:pointer;" onClick="m3_zoom(1,m3map,false)"><img src="http://castle.service.traffic.maptuit.com/nc/controls/zoom-minus.gif"></div></div>';
    mapdiv.innerHTML = html;
    ele.appendChild(mapdiv);
    xAddEventListener(window, 'resize', function() { m3_resize(m3map); }, false);
    m3_start(MAP);
    return true;
};
function doScrollCheck() {
    if ( m3map.created )
    {
        return;
    }
    try
    {
        // If IE is used, use the trick by Diego Perini
        // http://javascript.nwbox.com/IEContentLoaded/
        document.documentElement.doScroll("left");
    } catch( error ) {
        setTimeout( doScrollCheck, 1 );
        return;
    }
    // and execute any waiting functions
    m3map.create();
}
var sctags = document.getElementsByTagName('SCRIPT');
var i;
var m3map_target;
for (i = 0; i < sctags.length; i++)
{
    if (sctags[i].src.match(/nc\.cgi\?.*name=m3map/))
    {
        if (sctags[i].parentNode.tagName !== "HEAD")
        {
            m3map_target = sctags[i].parentNode;
            //xAddEventListener(window, 'load', function() { m3map.create(m3map_target); }, false);
            //m3map.create(sctags[i].parentNode);
            var evtfx = function() { m3map.create(); } ;
            if (document.addEventListener)
            {
                document.addEventListener("DOMContentLoaded", evtfx, false);
                window.addEventListener("load", evtfx, false);
            }
            else if (document.attachEvent) {
                document.attachEvent("onreadystatechange", evtfx);
                window.attachEvent("onload", evtfx);
                var toplevel = false;
                try {
                    toplevel = window.frameElement == null;
                } catch(e) {}
                if ( document.documentElement.doScroll && toplevel )
                {
                    doScrollCheck();
                }
            }
            break;
        }
    }
}
