/*
	Copyright (c) 2004-2008, The Dojo Foundation
	All Rights Reserved.

	Licensed under the Academic Free License version 2.1 or above OR the
	modified BSD license. For more information on Dojo licensing, see:

		http://dojotoolkit.org/book/dojo-book-0-9/introduction/licensing
*/

/*
	This is a compiled version of Dojo, built for deployment and not for
	development. To get an editable version, please visit:

		http://dojotoolkit.org

	for documentation and information on getting the source.
*/

if(!dojo._hasResource["dojox.gfx.matrix"]){dojo._hasResource["dojox.gfx.matrix"]=true;dojo.provide("dojox.gfx.matrix");(function(){var m=dojox.gfx.matrix;m._degToRad=function(_2){return Math.PI*_2/180;};m._radToDeg=function(_3){return _3/Math.PI*180;};m.Matrix2D=function(_4){if(_4){if(typeof _4=="number"){this.xx=this.yy=_4;}else{if(_4 instanceof Array){if(_4.length>0){var _5=m.normalize(_4[0]);for(var i=1;i<_4.length;++i){var l=_5,r=dojox.gfx.matrix.normalize(_4[i]);_5=new m.Matrix2D();_5.xx=l.xx*r.xx+l.xy*r.yx;_5.xy=l.xx*r.xy+l.xy*r.yy;_5.yx=l.yx*r.xx+l.yy*r.yx;_5.yy=l.yx*r.xy+l.yy*r.yy;_5.dx=l.xx*r.dx+l.xy*r.dy+l.dx;_5.dy=l.yx*r.dx+l.yy*r.dy+l.dy;}dojo.mixin(this,_5);}}else{dojo.mixin(this,_4);}}}};dojo.extend(m.Matrix2D,{xx:1,xy:0,yx:0,yy:1,dx:0,dy:0});dojo.mixin(m,{identity:new m.Matrix2D(),flipX:new m.Matrix2D({xx:-1}),flipY:new m.Matrix2D({yy:-1}),flipXY:new m.Matrix2D({xx:-1,yy:-1}),translate:function(a,b){if(arguments.length>1){return new m.Matrix2D({dx:a,dy:b});}return new m.Matrix2D({dx:a.x,dy:a.y});},scale:function(a,b){if(arguments.length>1){return new m.Matrix2D({xx:a,yy:b});}if(typeof a=="number"){return new m.Matrix2D({xx:a,yy:a});}return new m.Matrix2D({xx:a.x,yy:a.y});},rotate:function(_d){var c=Math.cos(_d);var s=Math.sin(_d);return new m.Matrix2D({xx:c,xy:-s,yx:s,yy:c});},rotateg:function(_10){return m.rotate(m._degToRad(_10));},skewX:function(_11){return new m.Matrix2D({xy:-Math.tan(_11)});},skewXg:function(_12){return m.skewX(m._degToRad(_12));},skewY:function(_13){return new m.Matrix2D({yx:Math.tan(_13)});},skewYg:function(_14){return m.skewY(m._degToRad(_14));},reflect:function(a,b){if(arguments.length==1){b=a.y;a=a.x;}var a2=a*a,b2=b*b,n2=a2+b2,xy=2*a*b/n2;return new m.Matrix2D({xx:2*a2/n2-1,xy:xy,yx:xy,yy:2*b2/n2-1});},project:function(a,b){if(arguments.length==1){b=a.y;a=a.x;}var a2=a*a,b2=b*b,n2=a2+b2,xy=a*b/n2;return new m.Matrix2D({xx:a2/n2,xy:xy,yx:xy,yy:b2/n2});},normalize:function(_21){return (_21 instanceof m.Matrix2D)?_21:new m.Matrix2D(_21);},clone:function(_22){var obj=new m.Matrix2D();for(var i in _22){if(typeof (_22[i])=="number"&&typeof (obj[i])=="number"&&obj[i]!=_22[i]){obj[i]=_22[i];}}return obj;},invert:function(_25){var M=m.normalize(_25),D=M.xx*M.yy-M.xy*M.yx,M=new m.Matrix2D({xx:M.yy/D,xy:-M.xy/D,yx:-M.yx/D,yy:M.xx/D,dx:(M.xy*M.dy-M.yy*M.dx)/D,dy:(M.yx*M.dx-M.xx*M.dy)/D});return M;},_multiplyPoint:function(_28,x,y){return {x:_28.xx*x+_28.xy*y+_28.dx,y:_28.yx*x+_28.yy*y+_28.dy};},multiplyPoint:function(_2b,a,b){var M=m.normalize(_2b);if(typeof a=="number"&&typeof b=="number"){return m._multiplyPoint(M,a,b);}return m._multiplyPoint(M,a.x,a.y);},multiply:function(_2f){var M=m.normalize(_2f);for(var i=1;i<arguments.length;++i){var l=M,r=m.normalize(arguments[i]);M=new m.Matrix2D();M.xx=l.xx*r.xx+l.xy*r.yx;M.xy=l.xx*r.xy+l.xy*r.yy;M.yx=l.yx*r.xx+l.yy*r.yx;M.yy=l.yx*r.xy+l.yy*r.yy;M.dx=l.xx*r.dx+l.xy*r.dy+l.dx;M.dy=l.yx*r.dx+l.yy*r.dy+l.dy;}return M;},_sandwich:function(_34,x,y){return m.multiply(m.translate(x,y),_34,m.translate(-x,-y));},scaleAt:function(a,b,c,d){switch(arguments.length){case 4:return m._sandwich(m.scale(a,b),c,d);case 3:if(typeof c=="number"){return m._sandwich(m.scale(a),b,c);}return m._sandwich(m.scale(a,b),c.x,c.y);}return m._sandwich(m.scale(a),b.x,b.y);},rotateAt:function(_3b,a,b){if(arguments.length>2){return m._sandwich(m.rotate(_3b),a,b);}return m._sandwich(m.rotate(_3b),a.x,a.y);},rotategAt:function(_3e,a,b){if(arguments.length>2){return m._sandwich(m.rotateg(_3e),a,b);}return m._sandwich(m.rotateg(_3e),a.x,a.y);},skewXAt:function(_41,a,b){if(arguments.length>2){return m._sandwich(m.skewX(_41),a,b);}return m._sandwich(m.skewX(_41),a.x,a.y);},skewXgAt:function(_44,a,b){if(arguments.length>2){return m._sandwich(m.skewXg(_44),a,b);}return m._sandwich(m.skewXg(_44),a.x,a.y);},skewYAt:function(_47,a,b){if(arguments.length>2){return m._sandwich(m.skewY(_47),a,b);}return m._sandwich(m.skewY(_47),a.x,a.y);},skewYgAt:function(_4a,a,b){if(arguments.length>2){return m._sandwich(m.skewYg(_4a),a,b);}return m._sandwich(m.skewYg(_4a),a.x,a.y);}});})();dojox.gfx.Matrix2D=dojox.gfx.matrix.Matrix2D;}if(!dojo._hasResource["dojox.gfx._base"]){dojo._hasResource["dojox.gfx._base"]=true;dojo.provide("dojox.gfx._base");(function(){var g=dojox.gfx,b=g._base;g._hasClass=function(_4f,_50){return ((" "+_4f.getAttribute("className")+" ").indexOf(" "+_50+" ")>=0);};g._addClass=function(_51,_52){var cls=_51.getAttribute("className");if((" "+cls+" ").indexOf(" "+_52+" ")<0){_51.setAttribute("className",cls+(cls?" ":"")+_52);}};g._removeClass=function(_54,_55){_54.setAttribute("className",_54.getAttribute("className").replace(new RegExp("(^|\\s+)"+_55+"(\\s+|$)"),"$1$2"));};b._getFontMeasurements=function(){var _56={"1em":0,"1ex":0,"100%":0,"12pt":0,"16px":0,"xx-small":0,"x-small":0,"small":0,"medium":0,"large":0,"x-large":0,"xx-large":0};if(dojo.isIE){dojo.doc.documentElement.style.fontSize="100%";}var div=dojo.doc.createElement("div");div.style.position="absolute";div.style.left="-100px";div.style.top="0";div.style.width="30px";div.style.height="1000em";div.style.border="0";div.style.margin="0";div.style.padding="0";div.style.outline="0";div.style.lineHeight="1";div.style.overflow="hidden";dojo.body().appendChild(div);for(var p in _56){div.style.fontSize=p;_56[p]=Math.round(div.offsetHeight*12/16)*16/12/1000;}dojo.body().removeChild(div);div=null;return _56;};var _59=null;b._getCachedFontMeasurements=function(_5a){if(_5a||!_59){_59=b._getFontMeasurements();}return _59;};var _5b=null,_5c={};b._getTextBox=function(_5d,_5e,_5f){var m;if(!_5b){m=_5b=dojo.doc.createElement("div");m.style.position="absolute";m.style.left="-10000px";m.style.top="0";dojo.body().appendChild(m);}else{m=_5b;}m.className="";m.style.border="0";m.style.margin="0";m.style.padding="0";m.style.outline="0";if(arguments.length>1&&_5e){for(var i in _5e){if(i in _5c){continue;}m.style[i]=_5e[i];}}if(arguments.length>2&&_5f){m.className=_5f;}m.innerHTML=_5d;return dojo.marginBox(m);};var _62=0;b._getUniqueId=function(){var id;do{id=dojo._scopeName+"Unique"+(++_62);}while(dojo.byId(id));return id;};})();dojo.mixin(dojox.gfx,{defaultPath:{type:"path",path:""},defaultPolyline:{type:"polyline",points:[]},defaultRect:{type:"rect",x:0,y:0,width:100,height:100,r:0},defaultEllipse:{type:"ellipse",cx:0,cy:0,rx:200,ry:100},defaultCircle:{type:"circle",cx:0,cy:0,r:100},defaultLine:{type:"line",x1:0,y1:0,x2:100,y2:100},defaultImage:{type:"image",x:0,y:0,width:0,height:0,src:""},defaultText:{type:"text",x:0,y:0,text:"",align:"start",decoration:"none",rotated:false,kerning:true},defaultTextPath:{type:"textpath",text:"",align:"start",decoration:"none",rotated:false,kerning:true},defaultStroke:{type:"stroke",color:"black",style:"solid",width:1,cap:"butt",join:4},defaultLinearGradient:{type:"linear",x1:0,y1:0,x2:100,y2:100,colors:[{offset:0,color:"black"},{offset:1,color:"white"}]},defaultRadialGradient:{type:"radial",cx:0,cy:0,r:100,colors:[{offset:0,color:"black"},{offset:1,color:"white"}]},defaultPattern:{type:"pattern",x:0,y:0,width:0,height:0,src:""},defaultFont:{type:"font",style:"normal",variant:"normal",weight:"normal",size:"10pt",family:"serif"},normalizeColor:function(_64){return (_64 instanceof dojo.Color)?_64:new dojo.Color(_64);},normalizeParameters:function(_65,_66){if(_66){var _67={};for(var x in _65){if(x in _66&&!(x in _67)){_65[x]=_66[x];}}}return _65;},makeParameters:function(_69,_6a){if(!_6a){return dojo.clone(_69);}var _6b={};for(var i in _69){if(!(i in _6b)){_6b[i]=dojo.clone((i in _6a)?_6a[i]:_69[i]);}}return _6b;},formatNumber:function(x,_6e){var val=x.toString();if(val.indexOf("e")>=0){val=x.toFixed(4);}else{var _70=val.indexOf(".");if(_70>=0&&val.length-_70>5){val=x.toFixed(4);}}if(x<0){return val;}return _6e?" "+val:val;},makeFontString:function(_71){return _71.style+" "+_71.variant+" "+_71.weight+" "+_71.size+" "+_71.family;},splitFontString:function(str){var _73=dojo.clone(dojox.gfx.defaultFont);var t=str.split(/\s+/);do{if(t.length<5){break;}_73.style=t[0];_73.varian=t[1];_73.weight=t[2];var i=t[3].indexOf("/");_73.size=i<0?t[3]:t[3].substring(0,i);var j=4;if(i<0){if(t[4]=="/"){j=6;break;}if(t[4].substr(0,1)=="/"){j=5;break;}}if(j+3>t.length){break;}_73.size=t[j];_73.family=t[j+1];}while(false);return _73;},cm_in_pt:72/2.54,mm_in_pt:7.2/2.54,px_in_pt:function(){return dojox.gfx._base._getCachedFontMeasurements()["12pt"]/12;},pt2px:function(len){return len*dojox.gfx.px_in_pt();},px2pt:function(len){return len/dojox.gfx.px_in_pt();},normalizedLength:function(len){if(len.length==0){return 0;}if(len.length>2){var _7a=dojox.gfx.px_in_pt();var val=parseFloat(len);switch(len.slice(-2)){case "px":return val;case "pt":return val*_7a;case "in":return val*72*_7a;case "pc":return val*12*_7a;case "mm":return val/dojox.gfx.mm_in_pt*_7a;case "cm":return val/dojox.gfx.cm_in_pt*_7a;}}return parseFloat(len);},pathVmlRegExp:/([A-Za-z]+)|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g,pathSvgRegExp:/([A-Za-z])|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g,equalSources:function(a,b){return a&&b&&a==b;}});}if(!dojo._hasResource["dojox.gfx"]){dojo._hasResource["dojox.gfx"]=true;dojo.provide("dojox.gfx");(function(){var _7e=(typeof dojo.config["gfxRenderer"]=="string"?dojo.config["gfxRenderer"]:"svg,vml,silverlight,canvas").split(",");for(var i=0;i<_7e.length;++i){switch(_7e[i]){case "svg":if(!dojo.isIE&&(navigator.userAgent.indexOf("iPhone")<0)&&(navigator.userAgent.indexOf("iPod")<0)){dojox.gfx.renderer="svg";}break;case "vml":if(dojo.isIE!=0){dojox.gfx.renderer="vml";}break;case "silverlight":if(window.Silverlight){dojox.gfx.renderer="silverlight";}break;case "canvas":if(dojo.isIE==0){dojox.gfx.renderer="canvas";}break;}if(dojox.gfx.renderer){break;}}console.log("gfx renderer = "+dojox.gfx.renderer);})();dojo.requireIf(dojox.gfx.renderer=="svg","dojox.gfx.svg");dojo.requireIf(dojox.gfx.renderer=="vml","dojox.gfx.vml");dojo.requireIf(dojox.gfx.renderer=="silverlight","dojox.gfx.silverlight");dojo.requireIf(dojox.gfx.renderer=="canvas","dojox.gfx.canvas");}if(!dojo._hasResource["esri.geometry"]){dojo._hasResource["esri.geometry"]=true;dojo.provide("esri.geometry");dojo.mixin(esri.geometry,{defaultPoint:{type:"point",x:0,y:0},defaultMultipoint:{type:"multipoint",points:null},defaultExtent:{type:"extent",xmin:0,ymin:0,xmax:0,ymax:0},defaultPolyline:{type:"polyline",paths:null},defaultPolygon:{type:"polygon",rings:null},_rectToExtent:function(_80){return new esri.geometry.Extent(parseFloat(_80.x),parseFloat(_80.y)-parseFloat(_80.height),parseFloat(_80.x)+parseFloat(_80.width),parseFloat(_80.y),_80.spatialReference);},_extentToRect:function(_81){return new esri.geometry.Rect(_81.xmin,_81.ymax,_81.getWidth(),_81.getHeight(),_81.spatialReference);},fromJson:function(_82){if(_82.x&&_82.y){return new esri.geometry.Point(_82);}else{if(_82.paths){return new esri.geometry.Polyline(_82);}else{if(_82.rings){return new esri.geometry.Polygon(_82);}else{if(_82.points){return new esri.geometry.Multipoint(_82);}else{if(_82.xmin&&_82.ymin&&_82.xmax&&_82.ymax){return new esri.geometry.Extent(_82);}}}}}},getJsonType:function(_83){if(_83 instanceof esri.geometry.Point){return "esriGeometryPoint";}else{if(_83 instanceof esri.geometry.Polyline){return "esriGeometryPolyline";}else{if(_83 instanceof esri.geometry.Polygon){return "esriGeometryPolygon";}else{if(_83 instanceof esri.geometry.Extent){return "esriGeometryEnvelope";}else{if(_83 instanceof esri.geometry.Multipoint){return "esriGeometryMultipoint";}}}}}return null;},isClockwise:function(arr){var _85=0,_86=dojo.isArray(arr[0])?(function(p1,p2){return p1[0]*p2[1]-p2[0]*p1[1];}):(function(p1,p2){return p1.x*p2.y-p2.x*p1.y;});for(var i=0,il=arr.length;i<il;i++){_85+=_86(arr[i],arr[(i+1)%il]);}return (_85/2)<=0;},toScreenPoint:function(ext,wd,ht,pt){return new esri.geometry.Point(Math.round((pt.x-ext.xmin)*(wd/ext.getWidth())),Math.round((ext.ymax-pt.y)*(ht/ext.getHeight())));},toScreenGeometry:function(ext,wd,ht,g){var x=ext.xmin,y=ext.ymax,rwd=wd/ext.getWidth(),rht=ht/ext.getHeight(),_99=dojo.forEach,_9a=Math.round;if(g instanceof esri.geometry.Point){return new esri.geometry.Point(_9a((g.x-x)*rwd),_9a((y-g.y)*rht));}else{if(g instanceof esri.geometry.Multipoint){var mp=new esri.geometry.Multipoint(),mpp=mp.points;_99(g.points,function(pt,i){mpp[i]=[_9a((pt[0]-x)*rwd),_9a((y-pt[1])*rht)];});return mp;}else{if(g instanceof esri.geometry.Extent){return new esri.geometry.Extent(_9a((g.xmin-x)*rwd),_9a((y-g.ymin)*rht),_9a((g.xmax-x)*rwd),_9a((y-g.ymax)*rwd));}else{if(g instanceof esri.geometry.Polyline){var _9f=new esri.geometry.Polyline(),_a0=_9f.paths,_a1;_99(g.paths,function(_a2,i){_a1=(_a0[i]=[]);_99(_a2,function(pt,j){_a1[j]=[_9a((pt[0]-x)*rwd),_9a((y-pt[1])*rht)];});});return _9f;}else{if(g instanceof esri.geometry.Polygon){var _a6=new esri.geometry.Polygon(),_a7=_a6.rings,_a8;_99(g.rings,function(_a9,i){_a8=(_a7[i]=[]);_99(_a9,function(pt,j){_a8[j]=[_9a((pt[0]-x)*rwd),_9a((y-pt[1])*rht)];});});return _a6;}}}}}},_toScreenPath:function(ext,wd,ht,g){var x=ext.xmin,y=ext.ymax,rwd=wd/ext.getWidth(),rht=ht/ext.getHeight(),_b5=dojo.forEach,_b6=Math.round;if(g instanceof esri.geometry.Polyline){var _b7=[];_b5(g.paths,function(_b8,i){_b7.push("M");_b5(_b8,function(pt,j){_b7.push(_b6((pt[0]-x)*rwd)+","+_b6((y-pt[1])*rht));});});return _b7;}else{if(g instanceof esri.geometry.Polygon){var _bc=[];_b5(g.rings,function(_bd,i){_bc.push("M");_b5(_bd,function(pt,j){_bc.push(_b6((pt[0]-x)*rwd)+","+_b6((y-pt[1])*rht));});_bc.push("Z");});return _bc;}}},toMapPoint:function(ext,wd,ht,pt){return new esri.geometry.Point(ext.xmin+(pt.x/(wd/ext.getWidth())),ext.ymax-(pt.y/(ht/ext.getHeight())),ext.spatialReference);},toMapGeometry:function(ext,wd,ht,g){var x=ext.xmin,y=ext.ymax,sr=ext.spatialReference,rwd=wd/ext.getWidth(),rht=ht/ext.getHeight(),_ce=dojo.forEach;if(g instanceof esri.geometry.Point){return new esri.geometry.Point(x+(g.x/rwd),y-(g.y/rht),sr);}else{if(g instanceof esri.geometry.Multipoint){var mp=new esri.geometry.Multipoint(sr),mpp=mp.points;_ce(g.points,function(pt,i){mpp[i]=[x+(pt[0]/rwd),y-(pt[1]/rht)];});return mp;}else{if(g instanceof esri.geometry.Extent){return new esri.geometry.Extent(x+(g.xmin/rwd),y-(g.ymin/rht),x+(g.xmax/rwd),y-(g.ymax/rht),sr);}else{if(g instanceof esri.geometry.Polyline){var _d3=new esri.geometry.Polyline(sr),_d4=_d3.paths,_d5;_ce(g.paths,function(_d6,i){_d5=(_d4[i]=[]);_ce(_d6,function(pt,j){_d5[j]=[x+(pt[0]/rwd),y-(pt[1]/rht)];});});return _d3;}else{if(g instanceof esri.geometry.Polygon){var _da=new esri.geometry.Polygon(sr),_db=_da.rings,_dc;_ce(g.rings,function(_dd,i){_dc=(_db[i]=[]);_ce(_dd,function(pt,j){_dc[j]=[x+(pt[0]/rwd),y-(pt[1]/rht)];});});return _da;}}}}}},getLength:function(pt1,pt2){var dx=pt2.x-pt1.x,dy=pt2.y-pt1.y;return Math.sqrt(dx*dx+dy*dy);},_getLength:function(pt1,pt2){var dx=pt2[0]-pt1[0],dy=pt2[1]-pt1[1];return Math.sqrt(dx*dx+dy*dy);},_equals:function(n1,n2){return Math.abs(n1-n2)<1e-8;},getLineIntersection:function(_eb,_ec,_ed,_ee){var pt=esri.geometry._getLineIntersection([_eb.x,_eb.y],[_ec.x,_ec.y],[_ed.x,_ed.y],[_ee.x,_ee.y]);if(pt){pt=new esri.geometry.Point(pt[0],pt[1]);}return pt;},_getLineIntersection:function(p0,p1,p2,p3){var _f4=10000000000,a0=esri.geometry._equals(p0[0],p1[0])?_f4:(p0[1]-p1[1])/(p0[0]-p1[0]),a1=esri.geometry._equals(p2[0],p3[0])?_f4:(p2[1]-p3[1])/(p2[0]-p3[0]),b0=p0[1]-a0*p0[0],b1=p2[1]-a1*p2[0];if(esri.geometry._equals(a0,a1)){if(!esri.geometry._equals(b0,b1)){return null;}else{if(Geometry.equals(p0[0],p1[0])){if(Math.min(p0[1],p1[1])<Math.max(p2[1],p3[1])||Math.max(p0[1],p1[1])>Math.min(p2[1],p3[1])){y=(p0[1]+p1[1]+p2[1]+p3[1]-Math.min(p0[1],p1[1],p2[1],p3[1])-Math.max(p0[1],p1[1],p2[1],p3[1]))/2;x=(y-b0)/a0;}else{return null;}}else{if(Math.min(p0[0],p1[0])<Math.max(p2[0],p3[0])||Math.max(p0[0],p1[0])>Math.min(p2[0],p3[0])){x=(p0[0]+p1[0]+p2[0]+p3[0]-Math.min(p0[0],p1[0],p2[0],p3[0])-Math.max(p0[0],p1[0],p2[0],p3[0]))/2;y=a0*x+b0;}else{return null;}}return [x,y];}}if(esri.geometry._equals(a0,_f4)){x=x0;y=a1*x+b1;}else{if(esri.geometry._equals(a1,_f4)){x=x2;y=a0*x+b0;}else{x=-(b0-b1)/(a0-a1);y=a0*x+b0;}}return [x,y];}});dojo.declare("esri.SpatialReference",null,{constructor:function(_f9){if(_f9){dojo.mixin(this,_f9);}},wkid:null,wkt:null,toJson:function(){if(this.wkid!==null){return {wkid:this.wkid};}else{if(this.wkt!==null){return {wkt:this.wkt};}}return null;}});dojo.declare("esri.geometry.Geometry",null,{spatialReference:null,type:null,setSpatialReference:function(sr){this.spatialReference=sr;}});dojo.declare("esri.geometry.Point",esri.geometry.Geometry,{constructor:function(x,y,_fd){dojo.mixin(this,esri.geometry.defaultPoint);if(dojo.isArray(x)){this.x=x[0];this.y=x[1];this.spatialReference=y;}else{if(dojo.isObject(x)){dojo.mixin(this,x);if(this.spatialReference){this.spatialReference=new esri.SpatialReference(this.spatialReference);}}else{this.x=x;this.y=y;this.spatialReference=_fd;}}},offset:function(x,y){return new esri.geometry.Point(this.x+x,this.y+y,this.spatialReference);},setX:function(x){this.x=x;},setY:function(y){this.y=y;},toJson:function(){var json={x:this.x,y:this.y},sr=this.spatialReference;if(sr){json.spatialReference=sr.toJson();}return json;}});dojo.declare("esri.geometry.Polyline",esri.geometry.Geometry,{constructor:function(obj){dojo.mixin(this,esri.geometry.defaultPolyline);this.paths=[];this._path=0;if(obj){if(obj.paths){dojo.mixin(this,obj);}else{this.spatialReference=obj;}this.spatialReference=new esri.SpatialReference(this.spatialReference);}},_extent:null,addPath:function(_105){this._extent=null;this._path=this.paths.length;this.paths[this._path]=[];if(dojo.isArray(_105[0])){dojo.forEach(_105,this._addPointArr,this);}else{dojo.forEach(_105,this._addPoint,this);}},_addPointArr:function(_106){this.paths[this._path].push(_106);},_addPoint:function(_107){this.paths[this._path].push([_107.x,_107.y]);},_insertPoints:function(_108,_109){this._extent=null;this._path=_109;if(!this.paths[this._path]){this.paths[this._path]=[];}dojo.forEach(_108,this._addPoint,this);},_validateInputs:function(_10a,_10b){if((_10a!==null&&_10a!==undefined)&&(_10a<0||_10a>=this.paths.length)){return false;}if((_10b!==null&&_10a!==undefined)&&(_10b<0||_10b>=this.paths[_10a].length)){return false;}return true;},getPoint:function(_10c,_10d){if(this._validateInputs(_10c,_10d)){return new esri.geometry.Point(this.paths[_10c][_10d],this.spatialReference);}},removePath:function(_10e){if(this._validateInputs(_10e,null)){this._extent=null;var arr=this.paths.splice(_10e,1)[0],_110=esri.geometry.Point,sr=this.spatialReference;for(var i=0,il=arr.length;i<il;i++){arr[i]=new _110(arr[i],sr);}return arr;}},getExtent:function(){if(this._extent){return this._extent;}var _114=this.paths,path,_116,x,y,xmax,ymax,xmin=(xmax=this.paths[0][0][0]),ymin=(ymax=this.paths[0][0][1]),min=Math.min,max=Math.max;for(var pa=0,pal=_114.length;pa<pal;pa++){path=_114[pa];for(var pt=0,ptl=path.length;pt<ptl;pt++){_116=path[pt];x=_116[0];y=_116[1];xmin=min(xmin,x);ymin=min(ymin,y);xmax=max(xmax,x);ymax=max(ymax,y);}}return (this._extent=new esri.geometry.Extent(xmin,ymin,xmax,ymax,this.spatialReference));},toJson:function(){var json={paths:[].concat(this.paths)},sr=this.spatialReference;if(sr){json.spatialReference=sr.toJson();}return json;}});dojo.declare("esri.geometry.Polygon",esri.geometry.Geometry,{constructor:function(obj){dojo.mixin(this,esri.geometry.defaultPolygon);this.rings=[];this._ring=0;if(obj){if(obj.rings){dojo.mixin(this,obj);}else{this.spatialReference=obj;}this.spatialReference=new esri.SpatialReference(this.spatialReference);}},_extent:null,addRing:function(_126){this._extent=null;this._ring=this.rings.length;this.rings[this._ring]=[];if(dojo.isArray(_126[0])){dojo.forEach(_126,this._addPointArr,this);}else{dojo.forEach(_126,this._addPoint,this);}},_addPointArr:function(_127){this.rings[this._ring].push(_127);},_addPoint:function(_128){this.rings[this._ring].push([_128.x,_128.y]);},_insertPoints:function(_129,_12a){this._extent=null;this._ring=_12a;if(!this.rings[this._ring]){this.rings[this._ring]=[];}dojo.forEach(_129,this._addPoint,this);},_validateInputs:function(_12b,_12c){if((_12b!==null&&_12b!==undefined)&&(_12b<0||_12b>=this.rings.length)){return false;}if((_12c!==null&&_12b!==undefined)&&(_12c<0||_12c>=this.rings[_12b].length)){return false;}return true;},getPoint:function(_12d,_12e){if(this._validateInputs(_12d,_12e)){return new esri.geometry.Point(this.rings[_12d][_12e],this.spatialReference);}},removeRing:function(_12f){if(this._validateInputs(_12f,null)){this._extent=null;var arr=this.rings.splice(_12f,1)[0],_131=esri.geometry.Point,sr=this.spatialReference;for(var i=0,il=arr.length;i<il;i++){arr[i]=new _131(arr[i],sr);}return arr;}},getExtent:function(){if(this._extent){return this._extent;}var _135=this.rings,ring,_137,x,y,xmax,ymax,xmin=(xmax=this.rings[0][0][0]),ymin=(ymax=this.rings[0][0][1]),min=Math.min,max=Math.max;for(var pa=0,pal=_135.length;pa<pal;pa++){ring=_135[pa];for(var pt=0,ptl=ring.length;pt<ptl;pt++){_137=ring[pt];x=_137[0];y=_137[1];xmin=min(xmin,x);ymin=min(ymin,y);xmax=max(xmax,x);ymax=max(ymax,y);}}return (this._extent=new esri.geometry.Extent(xmin,ymin,xmax,ymax,this.spatialReference));},contains:function(_144){var _145=this.rings,ring,_147=false,pi,pj,_14a,j;for(var pa=0,pal=_145.length;pa<pal;pa++){ring=_145[pa];_14a=ring.length;j=0;for(var i=0;i<_14a;i++){j++;if(j==_14a){j=0;}pi=ring[i];pj=ring[j];if((pi[1]<_144.y&&pj[1]>=_144.y||pj[1]<_144.y&&pi[1]>=_144.y)&&(pi[0]+(_144.y-pi[1])/(pj[1]-pi[1])*(pj[0]-pi[0])<_144.x)){_147=!_147;}}}return _147;},toJson:function(){var json={rings:[].concat(this.rings)},sr=this.spatialReference;if(sr){json.spatialReference=sr.toJson();}return json;}});dojo.declare("esri.geometry.Multipoint",esri.geometry.Geometry,{constructor:function(obj){dojo.mixin(this,esri.geometry.defaultMultipoint);this.points=[];if(obj){if(obj.points){dojo.mixin(this,obj);}else{this.spatialReference=obj;}this.spatialReference=new esri.SpatialReference(this.spatialReference);}},_extent:null,addPoint:function(_152){this._extent=null;if(dojo.isArray(_152)){this.points.push(_152);}else{this.points.push([_152.x,_152.y]);}},removePoint:function(_153){if(this._validateInputs(_153)){this._extent=null;return new esri.geometry.Point(this.points.splice(_153,1)[0],this.spatialReference);}},getExtent:function(){if(this._extent){return this._extent;}var _154=this.points,_155=_154[0],xmin=(xmax=_155[0]),ymin=(ymax=_155[1]),min=Math.min,max=Math.max,x,y;for(var i=0,il=this.points.length;i<il;i++){_155=_154[i];x=_155[0];y=_155[1];xmin=min(xmin,x);ymin=min(ymin,y);xmax=max(xmax,x);ymax=max(ymax,y);}return (this._extent=new esri.geometry.Extent(xmin,ymin,xmax,ymax,this.spatialReference));},_validateInputs:function(_15e){if(_15e===null||_15e<0||_15e>=this.points.length){return false;}return true;},getPoint:function(_15f){if(this._validateInputs(_15f)){var _160=this.points[_15f];return new esri.geometry.Point(_160[0],_160[1],this.spatialReference);}},toJson:function(){var json={points:[].concat(this.points)},sr=this.spatialReference;if(sr){json.spatialReference=sr.toJson();}return json;}});dojo.declare("esri.geometry.Extent",esri.geometry.Geometry,{constructor:function(xmin,ymin,xmax,ymax,_167){dojo.mixin(this,esri.geometry.defaultExtent);if(dojo.isObject(xmin)){dojo.mixin(this,xmin);this.spatialReference=new esri.SpatialReference(this.spatialReference);}else{this.update(xmin,ymin,xmax,ymax,_167);}},getWidth:function(){return Math.abs(this.xmax-this.xmin);},getHeight:function(){return Math.abs(this.ymax-this.ymin);},getCenter:function(){return new esri.geometry.Point((this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2,this.spatialReference);},centerAt:function(_168){var _169=this.getCenter(),dx=_168.x-_169.x,dy=_168.y-_169.y;return new esri.geometry.Extent(this.xmin+dx,this.ymin+dy,this.xmax+dx,this.ymax+dy,this.spatialReference);},update:function(xmin,ymin,xmax,ymax,_170){this.xmin=xmin;this.ymin=ymin;this.xmax=xmax;this.ymax=ymax;this.spatialReference=_170;},offset:function(ox,oy){return new esri.geometry.Extent(this.xmin+ox,this.ymin+oy,this.xmax+ox,this.ymax+oy,this.spatialReference);},expand:function(_173){var _174=(1-_173)/2,_175=this.getWidth()*_174,_176=this.getHeight()*_174;return new esri.geometry.Extent(this.xmin+_175,this.ymin+_176,this.xmax-_175,this.ymax-_176,this.spatialReference);},intersects:function(_177){var xmin,ymin,_17a,_17b,_17c=false;if(this.xmin<=_177.xmin){xmin=_177.xmin;if(this.xmax<_177.xmin){_17c=true;}else{_17a=Math.min(this.xmax,_177.xmax)-_177.xmin;}}else{xmin=this.xmin;if(_177.xmax<this.xmin){_17c=true;}else{_17a=Math.min(_177.xmax,this.xmax)-this.xmin;}}if(this.ymin<=_177.ymin){ymin=_177.ymin;if(this.ymax<_177.ymin){_17c=true;}else{_17b=Math.min(this.ymax,_177.ymax)-_177.ymin;}}else{ymin=this.ymin;if(_177.ymax<this.ymin){_17c=true;}else{_17b=Math.min(_177.ymax,this.ymax)-this.ymin;}}if(_17c){return null;}return new esri.geometry.Extent(xmin,ymin,xmin+_17a,ymin+_17b);},contains:function(_17d){return _17d!==null&&_17d.x>=this.xmin&&_17d.x<=this.xmax&&_17d.y>=this.ymin&&_17d.y<=this.ymax;},union:function(_17e){return new esri.geometry.Extent(Math.min(this.xmin,_17e.xmin),Math.min(this.ymin,_17e.ymin),Math.max(this.xmax,_17e.xmax),Math.max(this.ymax,_17e.ymax),this.spatialReference);},toJson:function(){var json={xmin:this.xmin,ymin:this.ymin,xmax:this.xmax,ymax:this.ymax},sr=this.spatialReference;if(sr){json.spatialReference=sr.toJson();}return json;}});dojo.declare("esri.geometry.Rect",esri.geometry.Geometry,{constructor:function(json,y,_183,_184,_185){dojo.mixin(this,dojox.gfx.defaultRect);if(dojo.isObject(json)){dojo.mixin(this,json);this.spatialReference=new esri.SpatialReference(this.spatialReference);}else{this.x=json;this.y=y;this.width=_183;this.height=_184;this.spatialReference=_185;}},getCenter:function(){return new esri.geometry.Point(this.x+this.width/2,this.y+this.height/2,this.spatialReference);},offset:function(ox,oy){return new esri.geometry.Rect(this.x+ox,this.y+oy,this.width,this.height,this.spatialReference);},intersects:function(rect){if((rect.x+rect.width)<=this.x){return false;}if((rect.y+rect.height)<=this.y){return false;}if(rect.y>=(this.y+this.height)){return false;}if(rect.x>=(this.x+this.width)){return false;}return true;},update:function(x,y,_18b,_18c,_18d){this.x=x;this.y=y;this.width=_18b;this.height=_18c;this.spatialReference=_18d;}});}if(!dojo._hasResource["dojo.io.script"]){dojo._hasResource["dojo.io.script"]=true;dojo.provide("dojo.io.script");dojo.io.script={get:function(args){var dfd=this._makeScriptDeferred(args);var _190=dfd.ioArgs;dojo._ioAddQueryToUrl(_190);this.attach(_190.id,_190.url,args.frameDoc);dojo._ioWatch(dfd,this._validCheck,this._ioCheck,this._resHandle);return dfd;},attach:function(id,url,_193){var doc=(_193||dojo.doc);var _195=doc.createElement("script");_195.type="text/javascript";_195.src=url;_195.id=id;doc.getElementsByTagName("head")[0].appendChild(_195);},remove:function(id){dojo._destroyElement(dojo.byId(id));if(this["jsonp_"+id]){delete this["jsonp_"+id];}},_makeScriptDeferred:function(args){var dfd=dojo._ioSetArgs(args,this._deferredCancel,this._deferredOk,this._deferredError);var _199=dfd.ioArgs;_199.id=dojo._scopeName+"IoScript"+(this._counter++);_199.canDelete=false;if(args.callbackParamName){_199.query=_199.query||"";if(_199.query.length>0){_199.query+="&";}_199.query+=args.callbackParamName+"="+(args.frameDoc?"parent.":"")+"dojo.io.script.jsonp_"+_199.id+"._jsonpCallback";_199.canDelete=true;dfd._jsonpCallback=this._jsonpCallback;this["jsonp_"+_199.id]=dfd;}return dfd;},_deferredCancel:function(dfd){dfd.canceled=true;if(dfd.ioArgs.canDelete){dojo.io.script._deadScripts.push(dfd.ioArgs.id);}},_deferredOk:function(dfd){if(dfd.ioArgs.canDelete){dojo.io.script._deadScripts.push(dfd.ioArgs.id);}if(dfd.ioArgs.json){return dfd.ioArgs.json;}else{return dfd.ioArgs;}},_deferredError:function(_19c,dfd){if(dfd.ioArgs.canDelete){if(_19c.dojoType=="timeout"){dojo.io.script.remove(dfd.ioArgs.id);}else{dojo.io.script._deadScripts.push(dfd.ioArgs.id);}}console.debug("dojo.io.script error",_19c);return _19c;},_deadScripts:[],_counter:1,_validCheck:function(dfd){var _19f=dojo.io.script;var _1a0=_19f._deadScripts;if(_1a0&&_1a0.length>0){for(var i=0;i<_1a0.length;i++){_19f.remove(_1a0[i]);}dojo.io.script._deadScripts=[];}return true;},_ioCheck:function(dfd){if(dfd.ioArgs.json){return true;}var _1a3=dfd.ioArgs.args.checkString;if(_1a3&&eval("typeof("+_1a3+") != 'undefined'")){return true;}return false;},_resHandle:function(dfd){if(dojo.io.script._ioCheck(dfd)){dfd.callback(dfd);}else{dfd.errback(new Error("inconceivable dojo.io.script._resHandle error"));}},_jsonpCallback:function(json){this.ioArgs.json=json;}};}if(!dojo._hasResource["esri.utils"]){dojo._hasResource["esri.utils"]=true;dojo.provide("esri.utils");dojo.mouseButtons={LEFT:dojo.isIE?1:0,MIDDLE:dojo.isIE?4:1,RIGHT:2};esri.show=function(node){node.style.display="block";};esri.hide=function(node){node.style.display="none";};esri.toggle=function(node){if(node.style.display=="none"){node.style.display="block";}else{node.style.display="none";}};esri.valueOf=function(_1a9,_1aa){for(var i in _1a9){if(_1a9[i]==_1aa){return i;}}return null;};esri.substitute=function(){var _1ac="${*}",_1ad="${key} = ${value}<br/>";return (function(data,_1af,_1b0){if(!_1af||_1af==_1ac){var s=[],d={key:null,value:null},i,_tws=_1ad;for(i in data){d.key=i;d.value=data[i];s.push(dojo.string.substitute(_tws,d));if(_1b0){break;}}return s.join("");}else{return dojo.string.substitute(_1af,data);}});}();esri.documentBox=dojo.isIE?{w:document.documentElement.clientWidth,h:document.documentElement.clientHeight}:{w:window.innerWidth,h:window.innerHeight};esri.urlToObject=function(url){var iq=url.indexOf("?");if(iq==-1){return {path:url,query:{}};}else{return {path:url.substring(0,iq),query:dojo.queryToObject(url.substring(iq+1))};}};esri._getProxyUrl=function(){var _1b7=esriConfig.defaults.io.proxyUrl;if(!_1b7){throw new Error("esriConfig.defaults.io.proxyUrl is not set");}return esri.urlToObject(_1b7);};esri._getProxiedUrl=function(url){if(esriConfig.defaults.io.alwaysUseProxy){var _1b9=esri._getProxyUrl(),_url=esri.urlToObject(url);url=_1b9.path+"?"+_url.path;var _1bb=dojo.objectToQuery(dojo.mixin(_1b9.query,_url.query));if(_1bb){url+=("?"+_1bb);}}return url;};esri.request=function(_1bc){var _1bd=_1bc.content,path=_1bc.url,herr=_1bc.error||esriConfig.defaults.io.errorHandler,_1c0=_1bc.load;_1bc.load=(function(_1c1,io){if(_1c1.error){herr(_1c1,io);return;}else{if(_1c0){_1c0(_1c1,io);return;}}});var len=0;if(_1bd&&path){len=dojo.objectToQuery(_1bd).length+path.length;}if(len>esriConfig.defaults.io.postLength||esriConfig.defaults.io.alwaysUseProxy){var _1c4=esri._getProxyUrl();dojo.xhrPost(dojo.mixin(_1bc,{url:_1c4.path+"?"+_1bc.url,content:dojo.mixin(_1c4.query,_1bc.content),handleAs:"json"}));}else{dojo.io.script.get(_1bc);}};}if(!dojo._hasResource["esri.symbol"]){dojo._hasResource["esri.symbol"]=true;dojo.provide("esri.symbol");dojo.mixin(esri.symbol,{toDojoColor:function(clr){return new dojo.Color([clr[0],clr[1],clr[2],clr[3]/255]);},toJsonColor:function(clr){return [clr.r,clr.g,clr.b,Math.round(clr.a*255)];},fromJson:function(json){var _1c8=json.style,_1c9=null;switch(_1c8.substring(0,"esriXXX".length)){case "esriSMS":_1c9=new esri.symbol.SimpleMarkerSymbol(json);break;case "esriPMS":_1c9=new esri.symbol.PictureMarkerSymbol(json);break;case "esriTS":_1c9=new esri.symbol.TextSymbol(json);break;case "esriSLS":_1c9=new esri.symbol.SimpleLineSymbol(json);break;case "esriCLS":_1c9=new esri.symbol.CartographicLineSymbol(json);break;case "esriSFS":_1c9=new esri.symbol.SimpleFillSymbol(json);break;case "esriPFS":_1c9=new esri.symbol.PictureFillSymbol(json);break;}return _1c9;}});dojo.declare("esri.symbol.Symbol",null,{color:new dojo.Color([0,0,0,1]),type:null,_stroke:null,_fill:null,constructor:function(json){if(json&&dojo.isObject(json)){dojo.mixin(this,json);this.color=esri.symbol.toDojoColor(this.color);}},setColor:function(_1cb){this.color=_1cb;return this;},toJson:function(){return {color:esri.symbol.toJsonColor(this.color)};}});dojo.declare("esri.symbol.MarkerSymbol",esri.symbol.Symbol,{constructor:function(json){if(json&&dojo.isObject(json)){this.size=dojox.gfx.pt2px(this.size);this.xoffset=dojox.gfx.pt2px(this.xoffset);this.yoffset=dojox.gfx.pt2px(this.yoffset);}},setAngle:function(_1cd){this.angle=_1cd;return this;},setSize:function(size){this.size=size;return this;},setOffset:function(x,y){this.xoffset=x;this.yoffset=y;return this;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{size:dojox.gfx.px2pt(this.size),angle:this.angle,xoffset:dojox.gfx.px2pt(this.xoffset),yoffset:dojox.gfx.px2pt(this.yoffset)});},angle:0,xoffset:0,yoffset:0,size:12});dojo.declare("esri.symbol.SimpleMarkerSymbol",esri.symbol.MarkerSymbol,{constructor:function(json,size,_1d3,_1d4){if(json){if(dojo.isString(json)){this.style=json;if(size){this.size=size;}if(_1d3){this.outline=_1d3;}if(_1d4){this.color=_1d4;}}else{this.style=esri.valueOf(this._styles,this.style);if(json.outline){this.outline=new esri.symbol.SimpleLineSymbol(json.outline);}}}else{dojo.mixin(this,esri.symbol.defaultSimpleMarkerSymbol);this.size=dojox.gfx.pt2px(this.size);this.outline=new esri.symbol.SimpleLineSymbol(this.outline);this.color=new dojo.Color(this.color);}if(!this.style){this.style=this.STYLE_CIRCLE;}},type:"simplemarkersymbol",setStyle:function(_1d5){this.style=_1d5;return this;},setOutline:function(_1d6){this.outline=_1d6;return this;},getStroke:function(){return this.outline.getStroke();},getFill:function(){return this.color;},toJson:function(){var json=dojo.mixin(this.inherited("toJson",arguments),{style:this._styles[this.style]}),_1d8=this.outline;if(_1d8){json.outline=_1d8.toJson();}else{json.outline=false;}return json;},_styles:{circle:"esriSMSCircle",square:"esriSMSSquare",cross:"esriSMSCross",x:"esriSMSX",diamond:"esriSMSDiamond"}});dojo.mixin(esri.symbol.SimpleMarkerSymbol,{STYLE_CIRCLE:"circle",STYLE_SQUARE:"square",STYLE_CROSS:"cross",STYLE_X:"x",STYLE_DIAMOND:"diamond"});dojo.declare("esri.symbol.PictureMarkerSymbol",esri.symbol.MarkerSymbol,{constructor:function(json,_1da,_1db){if(json){if(dojo.isString(json)){this.url=json;if(_1da){this.width=_1da;}if(_1db){this.height=_1db;}}else{this.width=this.height=dojox.gfx.pt2px(json.size);}}else{dojo.mixin(this,esri.symbol.defaultPictureMarkerSymbol);this.width=dojox.gfx.pt2px(this.width);this.height=dojox.gfx.pt2px(this.height);}},type:"picturemarkersymbol",getStroke:function(){return null;},getFill:function(){return null;},setWidth:function(_1dc){this.width=_1dc;return this;},setHeight:function(_1dd){this.height=_1dd;return this;},setUrl:function(url){this.url=url;return this;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{url:this.url,size:dojox.gfx.px2pt(this.height)});}});dojo.declare("esri.symbol.LineSymbol",esri.symbol.Symbol,{constructor:function(json){if(dojo.isObject(json)){this.width=dojox.gfx.pt2px(this.width);}else{this.width=12;}},setWidth:function(_1e0){this.width=_1e0;return this;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{width:dojox.gfx.px2pt(this.width)});}});dojo.declare("esri.symbol.SimpleLineSymbol",esri.symbol.LineSymbol,{constructor:function(json,_1e2,_1e3){if(json){if(dojo.isString(json)){this.style=json;if(_1e2){this.color=_1e2;}if(_1e3){this.width=_1e3;}}else{this.style=esri.valueOf(this._styles,json.style);}}else{dojo.mixin(this,esri.symbol.defaultSimpleLineSymbol);this.color=new dojo.Color(this.color);this.width=dojox.gfx.pt2px(this.width);}},type:"simplelinesymbol",setStyle:function(_1e4){this.style=_1e4;return this;},getStroke:function(){return {color:this.color,style:this.style,width:this.width};},getFill:function(){return null;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{style:this._styles[this.style]});},_styles:{solid:"esriSLSSolid",dash:"esriSLSDash",dot:"esriSLSDot",dashdot:"esriSLSDashDot",dashdotdot:"esriSLSDashDotDot",none:"esriSLSNull",insideframe:"esriSLSInsideFrame"}});dojo.mixin(esri.symbol.SimpleLineSymbol,{STYLE_SOLID:"solid",STYLE_DASH:"dash",STYLE_DOT:"dot",STYLE_DASHDOT:"dashdot",STYLE_DASHDOTDOT:"dashdotdot",STYLE_NULL:"none"});dojo.declare("esri.symbol.CartographicLineSymbol",esri.symbol.SimpleLineSymbol,{constructor:function(json,_1e6,_1e7,cap,join,_1ea){if(json){if(dojo.isString(json)){this.style=json;if(_1e6){this.color=_1e6;}if(_1e7!==undefined){this.width=_1e7;}if(cap){this.cap=cap;}if(join){this.join=join;}if(_1ea!==undefined){this.miterLimit=_1ea;}}else{this.cap=esri.valueOf(this._caps,json.cap);this.join=esri.valueOf(this._joins,json.join);this.width=dojox.gfx.pt2px(json.width);this.miterLimit=dojox.gfx.pt2px(json.miterLimit);}}else{dojo.mixin(this,esri.symbol.defaultCartographicLineSymbol);this.color=new dojo.Color(this.color);this.width=dojox.gfx.pt2px(this.width);this.miterLimit=dojox.gfx.pt2px(this.miterLimit);}},type:"cartographiclinesymbol",setCap:function(cap){this.cap=cap;return this;},setJoin:function(join){this.join=join;return this;},setMiterLimit:function(_1ed){this.miterLimit=_1ed;return this;},getStroke:function(){return dojo.mixin(this.inherited("getStroke",arguments),{cap:this.cap,join:(this.join===esri.symbol.CartographicLineSymbol.JOIN_MITER?this.miterLimit:this.join)});},getFill:function(){return null;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{cap:this._caps[this.cap],join:this._joins[this.join],miterLimit:dojox.gfx.px2pt(this.miterLimit)});},_caps:{butt:"esriLCSButt",round:"esriLCSRound",square:"esriLCSSquare"},_joins:{miter:"esriLJSMiter",round:"esriLJSRound",bevel:"esriLJSBevel"}});dojo.mixin(esri.symbol.CartographicLineSymbol,{STYLE_SOLID:"solid",STYLE_DASH:"dash",STYLE_DOT:"dot",STYLE_DASHDOT:"dashdot",STYLE_DASHDOTDOT:"dashdotdot",STYLE_NULL:"none",STYLE_INSIDE_FRAME:"insideframe",CAP_BUTT:"butt",CAP_ROUND:"round",CAP_SQUARE:"square",JOIN_MITER:"miter",JOIN_ROUND:"round",JOIN_BEVEL:"bevel"});dojo.declare("esri.symbol.FillSymbol",esri.symbol.Symbol,{constructor:function(json){if(json&&dojo.isObject(json)&&json.outline){this.outline=new esri.symbol.SimpleLineSymbol(json.outline);}},setOutline:function(_1ef){this.outline=_1ef;return this;},toJson:function(){var json=this.inherited("toJson",arguments);if(this.outline){json.outline=this.outline.toJson();}return json;}});dojo.declare("esri.symbol.SimpleFillSymbol",esri.symbol.FillSymbol,{constructor:function(json,_1f2,_1f3){if(json){if(dojo.isString(json)){this.style=json;if(_1f2!==undefined){this.outline=_1f2;}if(_1f3!==undefined){this.color=_1f3;}}else{this.style=esri.valueOf(this._styles,json.style);}}else{dojo.mixin(this,esri.symbol.defaultSimpleFillSymbol);this.outline=new esri.symbol.SimpleLineSymbol(this.outline);this.color=new dojo.Color(this.color);}var _1f4=this.style;if(_1f4!=="solid"&&_1f4!=="none"){this._src=esriConfig.baseUrl+"images/symbol/sfs/"+_1f4+".png";}},type:"simplefillsymbol",setStyle:function(_1f5){this.style=_1f5;return this;},getStroke:function(){return this.outline.getStroke();},getFill:function(){var _1f6=this.style;if(_1f6===esri.symbol.SimpleFillSymbol.STYLE_NULL){return null;}else{if(_1f6===esri.symbol.SimpleFillSymbol.STYLE_SOLID){return this.color;}else{return dojo.mixin(dojo.mixin({},dojox.gfx.defaultPattern),{src:this._src,width:10,height:10});}}},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{style:this._styles[this.style]});},_styles:{solid:"esriSFSSolid",none:"esriSFSNull",horizontal:"esriSFSHorizontal",vertical:"esriSFSVertical",forwarddiagonal:"esriSFSForwardDiagonal",backwarddiagonal:"esriSFSBackwardDiagonal",cross:"esriSFSCross",diagonalcross:"esriSFSDiagonalCross"}});dojo.mixin(esri.symbol.SimpleFillSymbol,{STYLE_SOLID:"solid",STYLE_NULL:"none",STYLE_HORIZONTAL:"horizontal",STYLE_VERTICAL:"vertical",STYLE_FORWARDDIAGONAL:"forwarddiagonal",STYLE_BACKWARDDIAGONAL:"backwarddiagonal",STYLE_CROSS:"cross",STYLE_DIAGONALCROSS:"diagonalcross"});dojo.declare("esri.symbol.PictureFillSymbol",esri.symbol.FillSymbol,{constructor:function(json,_1f8,_1f9,_1fa){if(json){if(dojo.isString(json)){this.url=json;if(_1f8!==undefined){this.outline=_1f8;}if(_1f9!==undefined){this.width=_1f9;}if(_1fa!==undefined){this.height=_1fa;}}else{this.xoffset=dojox.gfx.pt2px(json.xoffset);this.yoffset=dojox.gfx.pt2px(json.yoffset);this.width=dojox.gfx.pt2px(json.width);this.height=dojox.gfx.pt2px(json.height);}}else{dojo.mixin(this,esri.symbol.defaultPictureFillSymbol);this.width=dojox.gfx.pt2px(this.width);this.height=dojox.gfx.pt2px(this.height);}},type:"picturefillsymbol",xscale:1,yscale:1,xoffset:0,yoffset:0,setWidth:function(_1fb){this.width=_1fb;return this;},setHeight:function(_1fc){this.height=_1fc;return this;},setOffset:function(x,y){this.xoffset=x;this.yoffset=y;return this;},setUrl:function(url){this.url=url;return this;},setXScale:function(_200){this.xscale=_200;return this;},setYScale:function(_201){this.yscale=_201;return this;},getStroke:function(){return this.outline.getStroke();},getFill:function(){return dojo.mixin(dojo.mixin({},dojox.gfx.defaultPattern),{src:this.url,width:(this.width*this.xscale),height:(this.height*this.yscale),x:this.xoffset,y:this.yoffset});},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{url:this.url,width:dojox.gfx.px2pt(this.width),height:dojox.gfx.px2pt(this.height),xoffset:dojox.gfx.px2pt(this.xoffset),yoffset:dojox.gfx.px2pt(this.yoffset),xscale:this.xscale,yscale:this.yscale});}});dojo.declare("esri.symbol.Font",null,{constructor:function(json,_203,_204,_205,_206){if(json){if(dojo.isObject(json)){dojo.mixin(this,json);}else{this.size=json;if(_203!==undefined){this.style=_203;}if(_204!==undefined){this.variant=_204;}if(_205!==undefined){this.weight=_205;}if(_206!==undefined){this.family=_206;}}}else{dojo.mixin(this,dojox.gfx.defaultFont);}},setSize:function(size){this.size=size;return this;},setStyle:function(_208){this.style=_208;return this;},setVariant:function(_209){this.variant=_209;return this;},setWeight:function(_20a){this.weight=_20a;return this;},setFamily:function(_20b){this.family=_20b;return this;},toJson:function(){return {size:this.size,style:this.style,variant:this.variant,weight:this.weight,family:this.family};}});dojo.mixin(esri.symbol.Font,{STYLE_NORMAL:"normal",STYLE_ITALIC:"italic",STYLE_OBLIQUE:"oblique",VARIANT_NORMAL:"normal",VARIANT_SMALLCAPS:"small-caps",WEIGHT_NORMAL:"normal",WEIGHT_BOLD:"bold",WEIGHT_BOLDER:"bolder",WEIGHT_LIGHTER:"lighter"});dojo.declare("esri.symbol.TextSymbol",esri.symbol.Symbol,{constructor:function(json,font,_20e){dojo.mixin(this,esri.symbol.defaultTextSymbol);this.font=new esri.symbol.Font(this.font);this.color=new dojo.Color(this.color);if(json){if(dojo.isObject(json)){dojo.mixin(this,json);this.color=esri.symbol.toDojoColor(this.color);this.font=new esri.symbol.Font(this.font);this.xoffset=dojox.gfx.pt2px(this.xoffset);this.yoffset=dojox.gfx.pt2px(this.yoffset);}else{this.text=json;if(font){this.font=font;}if(_20e){this.color=_20e;}}}},angle:0,xoffset:0,yoffset:0,setFont:function(font){this.font=font;return this;},setAngle:function(_210){this.angle=_210;return this;},setOffset:function(x,y){this.xoffset=x;this.yoffset=y;return this;},setAlign:function(_213){this.align=_213;return this;},setDecoration:function(_214){this.decoration=_214;return this;},setRotated:function(_215){this.rotated=_215;return this;},setKerning:function(_216){this.kerning=_216;return this;},setText:function(text){this.text=text;return this;},getStroke:function(){return null;},getFill:function(){return this.color;},toJson:function(){return dojo.mixin(this.inherited("toJson",arguments),{style:"esriTS",angle:this.angle,xoffset:dojox.gfx.px2pt(this.xoffset),yoffset:dojox.gfx.px2pt(this.yoffset),text:this.text,align:this.align,decoration:this.decoration,rotated:this.rotated,kerning:this.kerning,font:this.font.toJson()});}});dojo.mixin(esri.symbol.TextSymbol,{ALIGN_START:"start",ALIGN_MIDDLE:"middle",ALIGN_END:"end",DECORATION_NONE:"none",DECORATION_UNDERLINE:"underline",DECORATION_OVERLINE:"overline",DECORATION_LINETHROUGH:"line-through"});dojo.mixin(esri.symbol,{defaultSimpleLineSymbol:{color:[0,0,0,1],style:esri.symbol.SimpleLineSymbol.STYLE_SOLID,width:1},defaultSimpleMarkerSymbol:{style:esri.symbol.SimpleMarkerSymbol.STYLE_CIRCLE,color:[255,255,255,0.25],outline:esri.symbol.defaultSimpleLineSymbol,size:12,angle:0,xoffset:0,yoffset:0},defaultPictureMarkerSymbol:{url:"",width:12,height:12,angle:0,xoffset:0,yoffset:0},defaultCartographicLineSymbol:{color:[0,0,0,1],style:esri.symbol.CartographicLineSymbol.STYLE_SOLID,width:1,cap:esri.symbol.CartographicLineSymbol.CAP_BUTT,join:esri.symbol.CartographicLineSymbol.JOIN_MITER,miterLimit:10},defaultSimpleFillSymbol:{style:esri.symbol.SimpleFillSymbol.STYLE_SOLID,color:[0,0,0,0.25],outline:esri.symbol.defaultSimpleLineSymbol},defaultPictureFillSymbol:{xoffset:0,yoffset:0,width:12,height:12},defaultTextSymbol:{color:[0,0,0,1],font:dojox.gfx.defaultFont,angle:0,xoffset:0,yoffset:0}});dojo.mixin(esri.symbol.defaultTextSymbol,dojox.gfx.defaultText,{type:"textsymbol",align:"middle"});}if(!dojo._hasResource["esri.graphic"]){dojo._hasResource["esri.graphic"]=true;dojo.provide("esri.graphic");dojo.declare("esri.Graphic",null,{constructor:function(json,_219,_21a,_21b){if(json&&!(json instanceof esri.geometry.Geometry)){this.geometry=json.geometry?esri.geometry.fromJson(json.geometry):null;this.symbol=json.symbol?esri.symbol.fromJson(json.symbol):null;this.attributes=json.attributes?json.attributes:null;this.infoTemplate=json.infoTemplate?new esri.InfoTemplate(json.infoTemplate):null;}else{this.geometry=json;this.symbol=_219;this.attributes=_21a;this.infoTemplate=_21b;}},_shape:null,_graphicsLayer:null,getDojoShape:function(){return this._shape;},setGeometry:function(_21c){this.geometry=_21c;var gl=this._graphicsLayer;if(gl){var type=_21c.type;if(type==="point"||type==="multipoint"){gl._draw(this);}else{gl._drawShape(this);}}return this;},setSymbol:function(_21f){this.symbol=_21f;this.symbol._stroke=this.symbol._fill=null;var gl=this._graphicsLayer;if(gl){var type=this.geometry.type;if(type==="point"||type==="multipoint"){gl._draw(this);}else{gl._symbolizeShape(this);}}return this;},setAttributes:function(_222){this.attributes=_222;return this;},setInfoTemplate:function(_223){this.infoTemplate=_223;return this;},getTitle:function(){return esri.substitute(this.attributes,(this.infoTemplate&&this.infoTemplate.title),true);},getContent:function(){return esri.substitute(this.attributes,(this.infoTemplate&&this.infoTemplate.content),false);},show:function(){esri.show(this.getDojoShape().getEventSource()||this.getDojoShape().rawNode);return this;},hide:function(){esri.hide(this.getDojoShape().getEventSource()||this.getDojoShape().rawNode);return this;},toJson:function(){var json={};if(this.geometry){json.geometry=this.geometry.toJson();}if(this.attributes){json.attributes=dojo.mixin({},this.attributes);}if(this.symbol){json.symbol=this.symbol.toJson();}if(this.infoTemplate){json.infoTemplate=this.infoTemplate.toJson();}return json;}});dojo.declare("esri.InfoTemplate",null,{constructor:function(_225,_226){if(_225&&dojo.isObject(_225)){dojo.mixin(this,_225);}else{this.title=_225?_225:"${*}";this.content=_226?_226:"${*}";}},setTitle:function(_227){this.title=_227;return this;},setContent:function(_228){this.content=_228;return this;},toJson:function(){return {title:this.title,content:this.content};}});}if(!dojo._hasResource["esri.layers.layer"]){dojo._hasResource["esri.layers.layer"]=true;dojo.provide("esri.layers.layer");dojo.declare("esri.layers.Layer",null,{constructor:function(url,_22a){this.url=url;this._url=null;if(url){this._url=esri.urlToObject(url);}this._map=null;this._div=null;if(_22a){if(_22a.id){this.id=_22a.id;}if(_22a.visible===false){this.visible=false;}if(_22a.opacity!==undefined){this.opacity=_22a.opacity;}}},id:null,visible:true,opacity:1,loaded:false,_setVisibility:function(v){if(this.visible!=v){this.visible=v;this.onVisibilityChange(this.visible);}},_opacityChangeHandler:function(_22c){var djs=dojo.style;dojo.forEach(this._div.childNodes,function(node){djs(node,"opacity",_22c);});},_setMap:function(map,_230,_231,lod){},_cleanUp:function(){this._map=this._div=null;},show:function(){this._setVisibility(true);},hide:function(){this._setVisibility(false);},setOpacity:function(o){if(this.opacity!=o){this.opacity=o;this.onOpacityChange(this.opacity);}},onLoad:function(){},onVisibilityChange:function(){},onOpacityChange:function(){}});}if(!dojo._hasResource["esri.layers.graphics"]){dojo._hasResource["esri.layers.graphics"]=true;dojo.provide("esri.layers.graphics");dojo.declare("esri.layers._GraphicsLayer",esri.layers.Layer,{constructor:function(url,_235){this._params={displayOnPan:true};if(_235){dojo.mixin(this._params,_235);}this.graphics=[];this._extent=null;this._draw=dojo.hitch(this,this._draw);this._cleanUp=dojo.hitch(this,this._cleanUp);},_cleanUp:function(map){this.clear();dojo.disconnect(this._onExtentChangeHandler_connect);dojo.disconnect(this._onZoomStartHandler_connect);dojo.disconnect(this._onZoomEndHandler_connect);if(this._params.displayOnPan){dojo.disconnect(this._onPanHandler_connect);}else{dojo.disconnect(this._onPanStartHandler_connect);dojo.disconnect(this._onPanEndHandler_connect);}dojo.disconnect(this._onVisibilityChangeHandler_connect);dojo.disconnect(this._onResizeHandler_connect);dojo.disconnect(this._cleanUp_connect);},_setMap:function(map,_238){this._map=map;var _239=(this._div=dojox.gfx.createSurface(_238,map.width,map.height));this._root=_239.createGroup();var es=_239.getEventSource()||_239.rawNode;if(dojo.isIE){es=es.parentNode;}dojo.style(es,{overflow:"visible",position:"relative"});this._cleanUp_connect=dojo.connect(map,"onUnload",this,"_cleanUp");this._onVisibilityChangeHandler_connect=dojo.connect(this,"onVisibilityChange",this,"_visibilityChangeHandler");if(this._params.displayOnPan){this._onPanHandler_connect=dojo.connect(map,"onPan",this,"_onPanHandler");}else{this._onPanStartHandler_connect=dojo.connect(map,"onPanStart",this,"_onPanStartHandler");this._onPanEndHandler_connect=dojo.connect(map,"onPanEnd",this,"_onPanEndHandler");}this._onZoomStartHandler_connect=dojo.connect(map,"onZoomStart",this,"_onZoomStartHandler");this._onExtentChangeHandler_connect=dojo.connect(map,"onExtentChange",this,"_onExtentChangeHandler");this._onResizeHandler_connect=dojo.connect(map,"onResize",this,"_onResizeHandler");return es;},_onZoomStartHandler:function(_23b,_23c,_23d){esri.hide(this._div.getEventSource()||this._div.rawNode);},_onExtentChangeHandler:function(_23e,_23f,_240,lod){if(_240||this._extent==null){var map=this._map,gs=this.graphics,_mvr=map._visibleRect,_245=this._draw;this._extent=new esri.geometry.Extent(_23e);for(var i=0,il=gs.length;i<il;i++){_245(gs[i]);}this._root.setTransform(dojox.gfx.matrix.translate({x:_mvr.x,y:_mvr.y}));esri.show(this._div.getEventSource()||this._div.rawNode);}},_onPanHandler:function(_248,_249){var _mvr=this._map._visibleRect;this._root.setTransform(dojox.gfx.matrix.translate({x:_mvr.x+_249.x,y:_mvr.y+_249.y}));},_onPanStartHandler:function(_24b,_24c){esri.hide(this._div.getEventSource()||this._div.rawNode);},_onPanEndHandler:function(_24d,_24e){var _mvr=this._map._visibleRect;this._root.setTransform(dojox.gfx.matrix.translate({x:_mvr.x,y:_mvr.y}));esri.show(this._div.getEventSource()||this._div.rawNode);},_visibilityChangeHandler:function(v){if(v){esri.show(this._div.getEventSource()||this._div.rawNode);}else{esri.hide(this._div.getEventSource()||this._div.rawNode);}},_onResizeHandler:function(_251,_252,_253){var es=this._div.getEventSource()||this._div.rawNode;this._extent=new esri.geometry.Extent(_251);if(dojo.isIE){es=es.parentNode;}es.setAttribute("width",_252);es.setAttribute("height",_253);},_draw:function(_255){var type=_255.geometry.type;if(type==="point"){this._drawMarker(_255);this._symbolizeMarker(_255);}else{if(type==="multipoint"){this._drawMarkers(_255);this._symbolizeMarkers(_255);}else{this._drawShape(_255);this._symbolizeShape(_255);}}},_drawShape:function(_257){var _258=_257.geometry,type=_258.type,map=this._map,me=this._extent,mw=map.width,mh=map.height,tsg=esri.geometry.toScreenGeometry;if(type==="rect"||type==="extent"){var rect;if(type==="extent"){rect=esri.geometry.toScreenGeometry(me,mw,mh,_258);rect={x:rect.xmin,y:rect.ymax,width:rect.getWidth(),height:rect.getHeight()};}else{var xy=esri.geometry.toScreenPoint(me,mw,mh,_258),wh=esri.geometry.toScreenPoint(me,mw,mh,{x:_258.x+_258.width,y:_258.y+_258.height});rect={x:xy.x,y:xy.y,width:wh.x-xy.x,height:xy.y-wh.y};}if(rect.width===0){rect.width=1;}if(rect.height===0){rect.height=1;}_257._shape=this._drawRect(this._root,_257.getDojoShape(),rect);}else{if(type==="polyline"){_257._shape=this._drawPath(this._root,_257.getDojoShape(),esri.geometry._toScreenPath(me,mw,mh,_258));}else{if(type==="polygon"){_257._shape=this._drawPath(this._root,_257.getDojoShape(),esri.geometry._toScreenPath(me,mw,mh,_258));}}}},_drawRect:function(_262,_263,rect){if(_263){return _263.setShape(rect);}else{return _262.createRect(rect);}},_drawImage:function(_265,_266,_267){if(_266){return _266.setShape(_267);}else{return _265.createImage(_267);}},_drawCircle:function(_268,_269,_26a){if(_269){return _269.setShape(_26a);}else{return _268.createCircle(_26a);}},_drawPath:function(_26b,_26c,path){if(_26c){return _26c.setShape(path.join(" "));}else{return _26b.createPath(path.join(" "));}},_drawText:function(_26e,_26f,text){if(_26f){return _26f.setShape(text);}else{return _26e.createText(text);}},_symbolizeShape:function(_271){var _272=_271.symbol,_273=_272._stroke,fill=_272._fill;if(_273===null||fill===null){_273=_272.getStroke();fill=_272.getFill();}_271.getDojoShape().setFill(fill).setStroke(_273);_272._stroke=_273;_272._fill=fill;},_drawPoint:function(_275,_276,_277){var type=_276.type,map=this._map,_27a=esri.geometry.toScreenPoint(this._extent,map.width,map.height,_275),px=_27a.x,py=_27a.y,half=_276.size/2,_27e;if(type==="simplemarkersymbol"){switch(_276.style){case esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE:_27e=this._drawPath(this._root,_277,["M",(px-half)+","+(py-half),(px+half)+","+(py-half),(px+half)+","+(py+half),(px-half)+","+(py+half),"Z"]);break;case esri.symbol.SimpleMarkerSymbol.STYLE_CROSS:_27e=this._drawPath(this._root,_277,["M",px+","+(py-half),px+","+(py+half),"M",(px-half)+","+py,(px+half)+","+py]);break;case esri.symbol.SimpleMarkerSymbol.STYLE_X:_27e=this._drawPath(this._root,_277,["M",(px-half)+","+(py-half),(px+half)+","+(py+half),"M",(px-half)+","+(py+half),(px+half)+","+(py-half)]);break;case esri.symbol.SimpleMarkerSymbol.STYLE_DIAMOND:_27e=this._drawPath(this._root,_277,["M",px+","+(py-half),(px+half)+","+py,px+","+(py+half),(px-half)+","+py,"Z"]);break;default:_27e=this._drawCircle(this._root,_277,{cx:px,cy:py,r:half});}}else{if(type==="picturemarkersymbol"){var w=_276.width,h=_276.height;_27e=this._drawImage(this._root,_277,{x:px-(w/2),y:py-(h/2),width:w,height:h,src:_276.url});}else{if(type==="textsymbol"){_27e=this._drawText(this._root,_277,{type:"text",text:_276.text,x:px,y:py,align:_276.align,decoration:_276.decoration,rotated:_276.rotated,kerning:_276.kerning});}}}_27e.setTransform(dojox.gfx.matrix.multiply(dojox.gfx.matrix.translate(_276.xoffset,-_276.yoffset),dojox.gfx.matrix.rotategAt(_276.angle,_27a)));return _27e;},_symbolizePoint:function(_281,_282){var type=_282.type;if(type==="picturemarkersymbol"){return;}var _284=_282._stroke,fill=_282._fill;if(type==="textsymbol"){_281.setFont(_282.font).setFill(_282.getFill());}else{if(_284===null||fill===null){_284=_282.getStroke();fill=_282.getFill();}if(type==="simplemarkersymbol"){_281.setFill(fill).setStroke(_284);}_282._stroke=_284;_282._fill=fill;}},_drawMarker:function(_286){_286._shape=this._drawPoint(_286.geometry,_286.symbol,_286.getDojoShape());},_symbolizeMarker:function(_287){this._symbolizePoint(_287.getDojoShape(),_287.symbol);},_drawMarkers:function(_288){var _289=_288.geometry,_28a=_289.points,_28b=_288.symbol,_28c=_288.getDojoShape()||this._root.createGroup(),_28d;for(var i=0,il=_28a.length;i<il;i++){_28d=_28a[i];_28c.add(this._drawPoint({x:_28d[0],y:_28d[1]},_28b,_28c.children[i]));}_288._shape=_28c;},_symbolizeMarkers:function(_290){var _291=_290.symbol,_292=_290.getDojoShape(),_293=_292.children;for(var i=0,il=_293.length;i<il;i++){this._symbolizePoint(_293[i],_291);}},onGraphicAdd:function(){},onGraphicRemove:function(){},onGraphicsClear:function(){},add:function(_296){var _297=arguments[1];if((i=dojo.indexOf(this.graphics,_296))!=-1){return this.graphics[i];}if(!_297){this.graphics.push(_296);}this._draw(_296);_296._graphicsLayer=this;if(!_297){this.onGraphicAdd(_296);}return _296;},remove:function(_298){var _299=arguments[1];if(!_299){var _29a=this.graphics,i;if((i=dojo.indexOf(_29a,_298))==-1){return null;}_298=this.graphics.splice(i,1)[0];}_298.getDojoShape().removeShape();this.onGraphicRemove(_298);_298._shape=_298._graphicsLayer=null;return _298;},clear:function(){var _29c=arguments[1],g=this.graphics;while(g.length>0){this.remove(g[0]);}if(!_29c){this.onGraphicsClear();}}});dojo.declare("esri.layers.GraphicsLayer",esri.layers._GraphicsLayer,{constructor:function(){this._onGraphicAddHandler_connect=dojo.connect(this,"onGraphicAdd",this,"_onGraphicAddHandler");this._onGraphicRemoveHandler_connect=dojo.connect(this,"onGraphicRemove",this,"_onGraphicRemoveHandler");this._processEvent=dojo.hitch(this,this._processEvent);this._addEventHandlers=dojo.hitch(this,this._addEventHandlers);this._removeEventHandlers=dojo.hitch(this,this._removeEventHandlers);this._onMouseOverHandler=dojo.hitch(this,this._onMouseOverHandler);this._onMouseMoveHandler=dojo.hitch(this,this._onMouseMoveHandler);this._onMouseOutHandler=dojo.hitch(this,this._onMouseOutHandler);this._onClickHandler=dojo.hitch(this,this._onClickHandler);this.loaded=true;this.onLoad(this);},_cleanUp:function(){this.inherited("_cleanUp",arguments);dojo.disconnect(this._onGraphicAddHandler_connect);dojo.disconnect(this._onGraphicRemoveHandler_connect);},_mouseEvents:true,_mouseDown:false,_onGraphicAddHandler:function(g){var r=g.getDojoShape();g._onmouseover_connect=r.connect("onmouseover",this,"_onMouseOverHandler");g._onmousemove_connect=r.connect("onmousemove",this,"_onMouseMoveHandler");g._onmouseout_connect=r.connect("onmouseout",this,"_onMouseOutHandler");g._onmousedown_connect=r.connect("onmousedown",this,"_onMouseDownHandler");g._onmouseup_connect=r.connect("onmouseup",this,"_onMouseUpHandler");g._onclick_connect=r.connect("onclick",this,"_onClickHandler");},_onGraphicRemoveHandler:function(g){var r=g.getDojoShape();r.disconnect(g._onmouseover_connect);r.disconnect(g._onmousemove_connect);r.disconnect(g._onmouseout_connect);r.disconnect(g._onmousedown_connect);r.disconnect(g._onmouseup_connect);r.disconnect(g._onclick_connect);g._onmouseover_connect=g._onmousemove_connect=g._onmouseout_connect=g._onmousedown_connect=g._onmouseup_connect=g._onclick_connect=null;},_processEvent:function(evt){var _m=this._map,g=this.graphics,gl=g.length;evt.screenPoint=new esri.geometry.Point(evt.pageX-_m._pos.x,evt.pageY-_m._pos.y);evt.mapPoint=_m.toMap(evt.screenPoint);var i,es,gr,_2a9=evt.target,_2aa=_2a9.parentNode;for(i=0;i<gl;i++){gr=g[i];es=gr.getDojoShape().getEventSource()||gr.getDojoShape().rawNode;if(es==_2a9||es==_2aa){evt.graphic=gr;break;}}return evt;},_onMouseOverHandler:function(evt){if(this._mouseEvents){this.onMouseOver(this._processEvent(evt));}},_onMouseMoveHandler:function(evt){if(this._mouseEvents){if(this._mouseDown){this.onMouseDrag(this._processEvent(evt));}else{this.onMouseMove(this._processEvent(evt));}}},_onMouseOutHandler:function(evt){if(this._mouseEvents){this.onMouseOut(this._processEvent(evt));}},_onMouseDownHandler:function(evt){if(this._mouseEvents){this._mouseDown=true;this.onMouseDown(this._processEvent(evt));}},_onMouseUpHandler:function(evt){if(this._mouseEvents){this._mouseDown=false;this.onMouseUp(this._processEvent(evt));}},_onClickHandler:function(evt){if(this._mouseEvents){this.onClick(this._processEvent(evt));}},onMouseOver:function(){},onMouseMove:function(){},onMouseDrag:function(){},onMouseOut:function(){},onMouseDown:function(){},onMouseUp:function(){},onClick:function(){},enableMouseEvents:function(){this._mouseEvents=true;},disableMouseEvents:function(){this._mouseEvents=false;}});}if(!dojo._hasResource["esri.layers.agscommon"]){dojo._hasResource["esri.layers.agscommon"]=true;dojo.provide("esri.layers.agscommon");dojo.declare("esri.layers.ArcGISMapServiceLayer",esri.layers.Layer,{constructor:function(){this.layerInfos=[];},_load:function(){esri.request({url:this._url.path,content:{f:"json",token:this._params.token},callbackParamName:"callback",load:this._initLayer,error:esriConfig.defaults.io.errorHandler});},spatialReference:null,initialExtent:null,fullExtent:null,description:null,units:null,_initLayer:function(_2b1,io){this.description=_2b1.description;this.copyright=_2b1.copyrightText;this.spatialReference=new esri.SpatialReference(_2b1.spatialReference);this.initialExtent=new esri.geometry.Extent(_2b1.initialExtent);this.fullExtent=new esri.geometry.Extent(_2b1.fullExtent);this.units=_2b1.units;var _2b3=(this.layerInfos=[]),lyrs=_2b1.layers;for(var i=0,il=lyrs.length;i<il;i++){_2b3.push(new esri.layers.LayerInfo(lyrs[i]));}},_getAdjustedExtent:function(_2b7){return {extent:_2b7};}});dojo.declare("esri.layers.LayerInfo",null,{constructor:function(json){this.subLayerIds=[];dojo.mixin(this,json);},id:null,name:null,parentLayerId:null,defaultVisibility:null});}if(!dojo._hasResource["dojox.data.dom"]){dojo._hasResource["dojox.data.dom"]=true;dojo.provide("dojox.data.dom");dojo.experimental("dojox.data.dom");dojox.data.dom.createDocument=function(str,_2ba){var _2bb=dojo.doc;if(!_2ba){_2ba="text/xml";}if(str&&(typeof dojo.global["DOMParser"])!=="undefined"){var _2bc=new DOMParser();return _2bc.parseFromString(str,_2ba);}else{if((typeof dojo.global["ActiveXObject"])!=="undefined"){var _2bd=["MSXML2","Microsoft","MSXML","MSXML3"];for(var i=0;i<_2bd.length;i++){try{var doc=new ActiveXObject(_2bd[i]+".XMLDOM");if(str){if(doc){doc.async=false;doc.loadXML(str);return doc;}else{console.log("loadXML didn't work?");}}else{if(doc){return doc;}}}catch(e){}}}else{if((_2bb.implementation)&&(_2bb.implementation.createDocument)){if(str){if(_2bb.createElement){var tmp=_2bb.createElement("xml");tmp.innerHTML=str;var _2c1=_2bb.implementation.createDocument("foo","",null);for(var i=0;i<tmp.childNodes.length;i++){_2c1.importNode(tmp.childNodes.item(i),true);}return _2c1;}}else{return _2bb.implementation.createDocument("","",null);}}}}return null;};dojox.data.dom.textContent=function(node,text){if(arguments.length>1){var _2c4=node.ownerDocument||dojo.doc;dojox.data.dom.replaceChildren(node,_2c4.createTextNode(text));return text;}else{if(node.textContent!==undefined){return node.textContent;}var _2c5="";if(node==null){return _2c5;}for(var i=0;i<node.childNodes.length;i++){switch(node.childNodes[i].nodeType){case 1:case 5:_2c5+=dojox.data.dom.textContent(node.childNodes[i]);break;case 3:case 2:case 4:_2c5+=node.childNodes[i].nodeValue;break;default:break;}}return _2c5;}};dojox.data.dom.replaceChildren=function(node,_2c8){var _2c9=[];if(dojo.isIE){for(var i=0;i<node.childNodes.length;i++){_2c9.push(node.childNodes[i]);}}dojox.data.dom.removeChildren(node);for(var i=0;i<_2c9.length;i++){dojo._destroyElement(_2c9[i]);}if(!dojo.isArray(_2c8)){node.appendChild(_2c8);}else{for(var i=0;i<_2c8.length;i++){node.appendChild(_2c8[i]);}}};dojox.data.dom.removeChildren=function(node){var _2cc=node.childNodes.length;while(node.hasChildNodes()){node.removeChild(node.firstChild);}return _2cc;};dojox.data.dom.innerXML=function(node){if(node.innerXML){return node.innerXML;}else{if(node.xml){return node.xml;}else{if(typeof XMLSerializer!="undefined"){return (new XMLSerializer()).serializeToString(node);}}}};}if(!dojo._hasResource["esri.layers.agsdynamic"]){dojo._hasResource["esri.layers.agsdynamic"]=true;dojo.provide("esri.layers.agsdynamic");dojo.declare("esri.layers.ArcGISDynamicMapServiceLayer",esri.layers.ArcGISMapServiceLayer,{constructor:function(url,_2cf){this._params=dojo.mixin({},{transparent:this.imageTransparency,format:this.imageFormat,dpi:this.dpi});var _2d0=this._url.query.token;if(_2d0){this._params.token=_2d0;}this._exportMapImageHandler=dojo.hitch(this,this._exportMapImageHandler);this._getImagePath=dojo.hitch(this,this._getImagePath);this._getImageParams=dojo.hitch(this,this._getImageParams);this._img=null;this._initLayer=dojo.hitch(this,this._initLayer);this._load=dojo.hitch(this,this._load);this._img_onload_connect=null;this._img_loading=null;this._img_dragOrigin={x:0,y:0};this._layerDefinitions=[];if(arguments[2]===undefined||arguments[2]===false){this._load();}},dpi:96,imageFormat:"png8",imageTransparency:true,_cleanUp:function(){esri.layers.ArcGISDynamicMapServiceLayer.superclass._cleanUp();dojo._destroyElement(this._div);this._map=this._layerIndex=this._div=null;dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onExtentChangeHandler_connect);dojo.disconnect(this._cleanUp_connect);dojo.disconnect(this._onZoomHandler_connect);dojo.disconnect(this._onLayerReorderHandler_connect);dojo.disconnect(this._onResizeHandler_connect);dojo.disconnect(this._opacityChangeHandler_connect);dojo.disconnect(this._visibilityChangeHandler_connect);},_initLayer:function(_2d1,io){this.inherited("_initLayer",arguments);this.loaded=true;this.onLoad(this);},_setMap:function(map,_2d4,_2d5){this._map=map;this._div=_2d4.appendChild(document.createElement("div"));this._layerIndex=_2d5;dojo.mixin(this._params,{size:(map.width+","+map.height)});this._onPanHandler_connect=dojo.connect(map,"onPan",this,"_onPanHandler");this._onExtentChangeHandler_connect=dojo.connect(map,"onExtentChange",this,"_onExtentChangeHandler");this._cleanUp_connect=dojo.connect(map,"onUnload",this,"_cleanUp");this._onZoomHandler_connect=dojo.connect(map,"onZoom",this,"_onZoomHandler");this._onLayerReorderHandler_connect=dojo.connect(map,"onLayerReorder",this,"_onLayerReorderHandler");this._onResizeHandler_connect=dojo.connect(map,"onResize",this,"_onResizeHandler");this._opacityChangeHandler_connect=dojo.connect(this,"onOpacityChange",this,"_opacityChangeHandler");this._visibilityChangeHandler_connect=dojo.connect(this,"onVisibilityChange",this,"_visibilityChangeHandler");if(!this.visible){this._visibilityChangeHandler(this.visible);}else{if(this._map.extent!==null&&map._baseLayerId!=this.id){this._onExtentChangeHandler(this._map.extent);}}return this._div;},_onResizeHandler:function(_2d6,_2d7,_2d8){dojo.style(this._div,{width:_2d7+"px",height:_2d8+"px"});dojo.mixin(this._params,{size:(_2d7+","+_2d8)});this._onExtentChangeHandler(_2d6);},_visibilityChangeHandler:function(v){if(v){this._onExtentChangeHandler(this._map.extent);this._onPanHandler_connect=dojo.connect(this._map,"onPan",this,"_onPanHandler");this._onExtentChangeHandler_connect=dojo.connect(this._map,"onExtentChange",this,"_onExtentChangeHandler");this._onZoomHandler_connect=dojo.connect(this._map,"onZoom",this,"_onZoomHandler");}else{esri.hide(this._div);dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onExtentChangeHandler_connect);dojo.disconnect(this._onZoomHandler_connect);dojo.disconnect(this._img_onload_connect);}},_onPanHandler:function(_2da,_2db){var _do=this._img_dragOrigin,img=this._img;if(img){dojo.style(img,{left:(_do.x+_2db.x)+"px",top:(_do.y+_2db.y)+"px"});}},_getImagePath:function(){return this._url.path+"/export";},_getImageParams:function(map,_2df){var _2e0={},_2e1=this._layerOption,wkid=map.spatialReference.wkid,_2e3=this._layerDefinitions,defs=[],_2e5=this.layerInfos,id;for(var i=0,il=_2e5.length;i<il;i++){id=_2e5[i].id;if(_2e3[id]){defs.push(id+":"+_2e3[id]);}}dojo.mixin(_2e0,this._params);dojo.mixin(_2e0,{f:"image",token:this._params.token,bbox:dojo.toJson(_2df.toJson()),bboxSR:wkid,imageSR:wkid,layers:(_2e1?_2e1+":"+this._layerIds.join(","):null),layerDefs:(defs.length>0)?defs.join(";"):null});return _2e0;},_onExtentChangeHandler:function(_2e9,_2ea,_2eb){if(!this.visible){return;}var _m=this._map,_2ed=this._getImageParams(_m,_2e9),_i=this._img,_do=this._img_dragOrigin;if(_i){var _2f0=_i.style;_do.x=parseInt(_2f0.left);_do.y=parseInt(_2f0.top);}else{_do.x=(_do.y=0);}if(this._img_onload_connect){dojo.disconnect(this._img_onload_connect);dojo._destroyElement(this._img_loading);this._img_onload_connect=(this._img_loading=null);}var img=(this._img_loading=document.createElement("img")),iurl=this._getImagePath()+"?"+dojo.objectToQuery(_2ed),_d=this._div;img.id=_m.id+"_"+this.id+"_"+new Date().getTime();dojo.style(img,{position:"absolute",left:"0px",top:"0px",width:_m.width+"px",height:_m.height+"px",opacity:this.opacity,zIndex:this._layerIndex});var _2f4=null,func=(function(){return function(){dojo.disconnect(_2f4);if(_m._panning){dojo._destroyElement(img);return;}dojox.data.dom.removeChildren(_d);this._img=img;_d.appendChild(img);esri.show(_d);this._img_onload_connect=null;this._img_loading=null;_do.x=(_do.y=0);};})();_2f4=(this._img_onload_connect=dojo.connect(img,"onload",this,func));img.src=esri._getProxiedUrl(iurl);this._startRect={left:0,top:0,width:_m.width,height:_m.height};},_onLayerReorderHandler:function(_2f6,_2f7){if(_2f6==this&&this._img){this._layerIndex=_2f7;dojo.style(this._img,"zIndex",_2f7);}},_onZoomHandler:function(_2f8,_2f9,_2fa){var _2fb=this._startRect,size={width:_2fb.width*_2f9,height:_2fb.height*_2f9},img=this._img;if(img){dojo.style(img,{left:(_2fb.left-((size.width-_2fb.width)*(_2fa.x-_2fb.left)/_2fb.width))+"px",top:(_2fb.top-((size.height-_2fb.height)*(_2fa.y-_2fb.top)/_2fb.height))+"px",width:size.width+"px",height:size.height+"px"});}},_setLayers:function(_2fe,_2ff){this._layerOption=_2fe;this._layerIds=_2ff;if(this._map){this._onExtentChangeHandler(this._map.extent);}},_clearLayers:function(){this._layerOption=(this._layerIds=null);if(this._map){this._onExtentChangeHandler(this._map.extent);}},setDPI:function(dpi){this.dpi=dpi;dojo.mixin(this._params,{dpi:dpi});},setImageFormat:function(_301){this.imageFormat=_301;dojo.mixin(this._params,{format:_301});},setImageTransparency:function(_302){this.imageTransparency=_302;dojo.mixin(this._params,{transparent:_302});},setVisibleLayers:function(_303){this._setLayers(esri.layers.ImageParameters.LAYER_OPTION_SHOW,_303);},setDefaultVisibleLayers:function(){this._clearLayers();},setLayerDefinitions:function(_304){this._layerDefinitions=_304;if(this._map){this._onExtentChangeHandler(this._map.extent);}},setDefaultLayerDefinitions:function(){this._layerDefinitions=[];if(this._map){this._onExtentChangeHandler(this._map.extent);}},exportMapImage:function(_305,_306){var _307=dojo.mixin({f:"json"},this._params);dojo.mixin(_307,{bbox:dojo.toJson(_305.bbox.toJson()),size:(_305.width+","+_305.height),dpi:this.dpi});if(_305){dojo.mixin(_307,_305.toJson());}var _h=this._exportMapImageHandler;esri.request({url:this._getImagePath(),content:_307,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_306);}),error:esriConfig.defaults.io.errorHandler});},_exportMapImageHandler:function(_309,io,_30b){var _30c=new esri.layers.MapImage(_309);this.onMapImageExport(_30c);if(_30b){_30b(_30c);}},onMapImageExport:function(){}});dojo.declare("esri.layers.ImageParameters",null,{constructor:function(){this.layerDefinitions=[];},bbox:null,width:esriConfig.defaults.map.width,height:esriConfig.defaults.map.height,dpi:96,format:"png8",imageSpatialReference:null,layerOption:null,layerIds:null,transparent:true,toJson:function(){var json={size:this.width+","+this.height,dpi:this.dpi,format:this.format,transparent:this.transparent},bb=this.bbox,_30f=this.layerOption,_310=this.imageSpatialReference,_311=this.layerDefinitions,defs=[];if(bb){var bbsr=bb.spatialReference;json.bbox=bb.xmin+","+bb.ymin+","+bb.xmax+","+bb.ymax;json.bboxSR=bbsr.wkid;}if(_30f){json.layers=_30f+":"+this.layerIds.join(",");}if(_310!==null){json.imageSR=_310.wkid;}else{if(bb){json.imageSR=bb.spatialReference.wkid;}}for(var id in _311){if(_311.hasOwnProperty(id)&&id&&_311[id]){defs.push(id+":"+_311[id]);}}if(defs.length>0){json.layerDefs=defs.join(";");}return json;}});dojo.mixin(esri.layers.ImageParameters,{LAYER_OPTION_SHOW:"show",LAYER_OPTION_HIDE:"hide",LAYER_OPTION_INCLUDE:"include",LAYER_OPTION_EXCLUDE:"exclude"});dojo.declare("esri.layers.MapImage",null,{constructor:function(json){if(json){dojo.mixin(this,json);this.extent=new esri.geometry.Extent(this.extent);}},href:null,width:esriConfig.defaults.map.width,height:esriConfig.defaults.map.height,extent:null,scale:null});}if(!dojo._hasResource["dojox.collections._base"]){dojo._hasResource["dojox.collections._base"]=true;dojo.provide("dojox.collections._base");dojox.collections.DictionaryEntry=function(k,v){this.key=k;this.value=v;this.valueOf=function(){return this.value;};this.toString=function(){return String(this.value);};};dojox.collections.Iterator=function(arr){var a=arr;var _31a=0;this.element=a[_31a]||null;this.atEnd=function(){return (_31a>=a.length);};this.get=function(){if(this.atEnd()){return null;}this.element=a[_31a++];return this.element;};this.map=function(fn,_31c){return dojo.map(a,fn,_31c);};this.reset=function(){_31a=0;this.element=a[_31a];};};dojox.collections.DictionaryIterator=function(obj){var a=[];var _31f={};for(var p in obj){if(!_31f[p]){a.push(obj[p]);}}var _321=0;this.element=a[_321]||null;this.atEnd=function(){return (_321>=a.length);};this.get=function(){if(this.atEnd()){return null;}this.element=a[_321++];return this.element;};this.map=function(fn,_323){return dojo.map(a,fn,_323);};this.reset=function(){_321=0;this.element=a[_321];};};}if(!dojo._hasResource["dojox.collections.ArrayList"]){dojo._hasResource["dojox.collections.ArrayList"]=true;dojo.provide("dojox.collections.ArrayList");dojox.collections.ArrayList=function(arr){var _325=[];if(arr){_325=_325.concat(arr);}this.count=_325.length;this.add=function(obj){_325.push(obj);this.count=_325.length;};this.addRange=function(a){if(a.getIterator){var e=a.getIterator();while(!e.atEnd()){this.add(e.get());}this.count=_325.length;}else{for(var i=0;i<a.length;i++){_325.push(a[i]);}this.count=_325.length;}};this.clear=function(){_325.splice(0,_325.length);this.count=0;};this.clone=function(){return new dojox.collections.ArrayList(_325);};this.contains=function(obj){for(var i=0;i<_325.length;i++){if(_325[i]==obj){return true;}}return false;};this.forEach=function(fn,_32d){dojo.forEach(_325,fn,_32d);};this.getIterator=function(){return new dojox.collections.Iterator(_325);};this.indexOf=function(obj){for(var i=0;i<_325.length;i++){if(_325[i]==obj){return i;}}return -1;};this.insert=function(i,obj){_325.splice(i,0,obj);this.count=_325.length;};this.item=function(i){return _325[i];};this.remove=function(obj){var i=this.indexOf(obj);if(i>=0){_325.splice(i,1);}this.count=_325.length;};this.removeAt=function(i){_325.splice(i,1);this.count=_325.length;};this.reverse=function(){_325.reverse();};this.sort=function(fn){if(fn){_325.sort(fn);}else{_325.sort();}};this.setByIndex=function(i,obj){_325[i]=obj;this.count=_325.length;};this.toArray=function(){return [].concat(_325);};this.toString=function(_339){return _325.join((_339||","));};};}if(!dojo._hasResource["dojo.i18n"]){dojo._hasResource["dojo.i18n"]=true;dojo.provide("dojo.i18n");dojo.i18n.getLocalization=function(_33a,_33b,_33c){_33c=dojo.i18n.normalizeLocale(_33c);var _33d=_33c.split("-");var _33e=[_33a,"nls",_33b].join(".");var _33f=dojo._loadedModules[_33e];if(_33f){var _340;for(var i=_33d.length;i>0;i--){var loc=_33d.slice(0,i).join("_");if(_33f[loc]){_340=_33f[loc];break;}}if(!_340){_340=_33f.ROOT;}if(_340){var _343=function(){};_343.prototype=_340;return new _343();}}throw new Error("Bundle not found: "+_33b+" in "+_33a+" , locale="+_33c);};dojo.i18n.normalizeLocale=function(_344){var _345=_344?_344.toLowerCase():dojo.locale;if(_345=="root"){_345="ROOT";}return _345;};dojo.i18n._requireLocalization=function(_346,_347,_348,_349){var _34a=dojo.i18n.normalizeLocale(_348);var _34b=[_346,"nls",_347].join(".");var _34c="";if(_349){var _34d=_349.split(",");for(var i=0;i<_34d.length;i++){if(_34a.indexOf(_34d[i])==0){if(_34d[i].length>_34c.length){_34c=_34d[i];}}}if(!_34c){_34c="ROOT";}}var _34f=_349?_34c:_34a;var _350=dojo._loadedModules[_34b];var _351=null;if(_350){if(dojo.config.localizationComplete&&_350._built){return;}var _352=_34f.replace(/-/g,"_");var _353=_34b+"."+_352;_351=dojo._loadedModules[_353];}if(!_351){_350=dojo["provide"](_34b);var syms=dojo._getModuleSymbols(_346);var _355=syms.concat("nls").join("/");var _356;dojo.i18n._searchLocalePath(_34f,_349,function(loc){var _358=loc.replace(/-/g,"_");var _359=_34b+"."+_358;var _35a=false;if(!dojo._loadedModules[_359]){dojo["provide"](_359);var _35b=[_355];if(loc!="ROOT"){_35b.push(loc);}_35b.push(_347);var _35c=_35b.join("/")+".js";_35a=dojo._loadPath(_35c,null,function(hash){var _35e=function(){};_35e.prototype=_356;_350[_358]=new _35e();for(var j in hash){_350[_358][j]=hash[j];}});}else{_35a=true;}if(_35a&&_350[_358]){_356=_350[_358];}else{_350[_358]=_356;}if(_349){return true;}});}if(_349&&_34a!=_34c){_350[_34a.replace(/-/g,"_")]=_350[_34c.replace(/-/g,"_")];}};(function(){var _360=dojo.config.extraLocale;if(_360){if(!_360 instanceof Array){_360=[_360];}var req=dojo.i18n._requireLocalization;dojo.i18n._requireLocalization=function(m,b,_364,_365){req(m,b,_364,_365);if(_364){return;}for(var i=0;i<_360.length;i++){req(m,b,_360[i],_365);}};}})();dojo.i18n._searchLocalePath=function(_367,down,_369){_367=dojo.i18n.normalizeLocale(_367);var _36a=_367.split("-");var _36b=[];for(var i=_36a.length;i>0;i--){_36b.push(_36a.slice(0,i).join("-"));}_36b.push(false);if(down){_36b.reverse();}for(var j=_36b.length-1;j>=0;j--){var loc=_36b[j]||"ROOT";var stop=_369(loc);if(stop){break;}}};dojo.i18n._preloadLocalizations=function(_370,_371){function preload(_372){_372=dojo.i18n.normalizeLocale(_372);dojo.i18n._searchLocalePath(_372,true,function(loc){for(var i=0;i<_371.length;i++){if(_371[i]==loc){dojo["require"](_370+"_"+loc);return true;}}return false;});};preload();var _375=dojo.config.extraLocale||[];for(var i=0;i<_375.length;i++){preload(_375[i]);}};}if(!dojo._hasResource["esri.layers.agstiled"]){dojo._hasResource["esri.layers.agstiled"]=true;dojo.provide("esri.layers.agstiled");dojo.declare("esri.layers.ArcGISTiledMapServiceLayer",esri.layers.ArcGISMapServiceLayer,{constructor:function(url,_378){this._TILE_FORMATS={PNG:"png",PNG8:"png",PNG24:"png",PNG32:"png",JPG:"jpg",JPEG:"jpg",GIF:"gif"};this._params={};this._bundle=dojo.i18n.getLocalization("esri","jsapi");var _379=this._url.query.token;if(_379){this._params.token=_379;}if(_378){if(_378.roundrobin){dojo.deprecated(this.declaredClass+" : "+this._bundle.layers.agstiled.deprecateRoundrobin);_378.tileServers=_378.roundrobin;}var _rr=(this._roundrobin=_378.tileServers);if(_rr){if(_rr.length===0){_rr=null;}else{for(var i=0,il=_rr.length;i<il;i++){_rr[i]=esri.urlToObject(_rr[i]).path;}}}}this._rrIndex=0;this._urlPath=this._url.path;this.getNumLevels=dojo.hitch(this,this.getNumLevels);this.getLevel=dojo.hitch(this,this.getLevel);this.setLevel=dojo.hitch(this,this.setLevel);this._addImage=dojo.hitch(this,this._addImage);this._tileLoadHandler=dojo.hitch(this,this._tileLoadHandler);this._tileErrorHandler=dojo.hitch(this,this._tileErrorHandler);this._tilePopPop=dojo.hitch(this,this._tilePopPop);this._cleanUpRemovedImages=dojo.hitch(this,this._cleanUpRemovedImages);this._initLayer=dojo.hitch(this,this._initLayer);this._load=dojo.hitch(this,this._load);if(arguments[2]===undefined||arguments[2]===false){this._load();}},_initLayer:function(_37d,io){this._tileIds=[];this._tiles=[];this._tileBounds=[];this._ct=null;this._removeList=new dojox.collections.ArrayList();this._loadingList=new dojox.collections.ArrayList();this.inherited("_initLayer",arguments);var ti=(this.tileInfo=new esri.layers.TileInfo(_37d.tileInfo)),lods=(this._lods=ti.lods);this._tileOrigin=new esri.geometry.Point(dojo.mixin(ti.origin,this.spatialReference));this._tileW=ti.width;this._tileH=ti.height;this._tileFormat=this._TILE_FORMATS[ti.format];var _381=(this.scales=[]),ul=new esri.geometry.Point(this.fullExtent.xmin,this.fullExtent.ymax),lr=new esri.geometry.Point(this.fullExtent.xmax,this.fullExtent.ymin),_384=dojo.hitch(this,this._getContainingTileCoords),_385,lod;for(var i=0,il=lods.length;i<il;i++){lod=lods[i];_381[i]=lod.scale;_385=_384(ul,lod);lod.startTileRow=_385.row<0?0:_385.row;lod.startTileCol=_385.col<0?0:_385.col;_385=_384(lr,lod);lod.endTileRow=_385.row;lod.endTileCol=_385.col;}this.loaded=true;this.onLoad(this);},_getCandidateTileInfo:function(_389){var lod=this._getClosestLodInfo(_389),_38b=this.__getAdjustedExtent(_389,lod),ct=this._getContainingTile(new esri.geometry.Point(_38b.xmin,_38b.ymax),lod);return {tile:ct,lod:lod,extent:_38b};},__getAdjustedExtent:function(_38d,lod){var _map=this._map,res=lod.resolution,cx=(_38d.xmin+_38d.xmax)/2,cy=(_38d.ymin+_38d.ymax)/2,w2=_map.width/2,h2=_map.height/2;return new esri.geometry.Extent(cx-(w2*res),cy-(h2*res),cx+(w2*res),cy+(h2*res),_38d.spatialReference);},_getContainingTile:function(_395,lod){var _397=lod.resolution,_398=this._tileW,_399=this._tileH,_39a=this._tileOrigin,_mv=this._map._visibleDelta,_39c=_398*_397,_39d=_399*_397,_39e=Math.floor((_39a.y-_395.y)/_39d),_39f=Math.floor((_395.x-_39a.x)/_39c),_3a0=_39a.x+(_39f*_39c),_3a1=_39a.y-(_39e*_39d),_3a2=Math.floor(Math.abs((_395.x-_3a0)*_398/_39c))+_mv.x,_3a3=Math.floor(Math.abs((_395.y-_3a1)*_399/_39d))+_mv.y;return {point:_395,coords:{row:_39e,col:_39f},offsets:{x:_3a2,y:_3a3}};},_getContainingTileCoords:function(_3a4,lod){var _3a6=this._tileOrigin,_3a7=lod.resolution,_3a8=this._tileW*_3a7,_3a9=this._tileH*_3a7,_3aa=Math.floor((_3a4.x-_3a6.x)/_3a8),_3ab=Math.floor((_3a6.y-_3a4.y)/_3a9);return {row:_3ab,col:_3aa};},_getClosestLodInfo:function(_3ac){var _3ad=this._tileW,_3ae=this._tileH,_map=this._map,_3b0=_map.width/_3ad,_3b1=_map.height/_3ae,_3b2=_3ac.xmax-_3ac.xmin,_3b3=_3ac.ymax-_3ac.ymin,_3b4=-1,lods=this._lods,lod,_3b7,_3b8;for(var i=0,il=lods.length;i<il;i++){_3b7=lods[i];_3b8=_3b2>_3b3?Math.abs(_3b3-(_3b1*_3ae*_3b7.resolution)):Math.abs(_3b2-(_3b0*_3ad*_3b7.resolution));if(_3b4<0||_3b8<=_3b4){lod=_3b7;_3b4=_3b8;}else{break;}}return lod;},_cleanUp:function(){esri.layers.ArcGISTiledMapServiceLayer.superclass._cleanUp();dojo._destroyElement(this._div);this._map=this._layerIndex=this._div=null;dojo.disconnect(this._onExtentChangeHandler_connect);dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onZoomHandler_connect);dojo.disconnect(this._cleanUp_connect);dojo.disconnect(this._onLayerReorderHandler_connect);dojo.disconnect(this._onResizeHandler_connect);dojo.disconnect(this._opacityChangeHandler_connect);dojo.disconnect(this._visibilityChangeHandler_connect);},_setMap:function(map,_3bc,_3bd,lod){this._map=map;this._div=_3bc.appendChild(document.createElement("div"));this._layerIndex=_3bd;var _mv=map._visibleDelta;dojo.style(this._div,{position:"absolute",left:-_mv.x+"px",top:-_mv.y+"px",width:map.width+"px",height:map.height+"px",overflow:"visible"});this._onExtentChangeHandler_connect=dojo.connect(map,"onExtentChange",this,"_onExtentChangeHandler");this._onPanHandler_connect=dojo.connect(map,"onPan",this,"_onPanHandler");this._onZoomHandler_connect=dojo.connect(map,"onZoom",this,"_onZoomHandler");this._cleanUp_connect=dojo.connect(map,"onUnload",this,"_cleanUp");this._onLayerReorderHandler_connect=dojo.connect(map,"onLayerReorder",this,"_onLayerReorderHandler");this._onResizeHandler_connect=dojo.connect(map,"onResize",this,"_onResizeHandler");this._opacityChangeHandler_connect=dojo.connect(this,"onOpacityChange",this,"_opacityChangeHandler");this._visibilityChangeHandler_connect=dojo.connect(this,"onVisibilityChange",this,"_visibilityChangeHandler");var _3c0=map.extent;if(!this.visible){this._visibilityChangeHandler(this.visible);}if(_3c0&&map._baseLayerId!=this.id){this._onExtentChangeHandler(_3c0,null,null,lod);}if(map._baseLayerId==this.id){this._ct=this._getCandidateTileInfo(_3c0||this.initialExtent);}return this._div;},_onResizeHandler:function(_3c1,_3c2,_3c3){dojo.style(this._div,{width:_3c2+"px",height:_3c3+"px"});},_visibilityChangeHandler:function(v){if(v){esri.show(this._div);var map=this._map;this._onPanHandler_connect=dojo.connect(map,"onPan",this,"_onPanHandler");this._onZoomHandler_connect=dojo.connect(map,"onZoom",this,"_onZoomHandler");this._onExtentChangeHandler(map.extent,null,true);}else{esri.hide(this._div);dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onZoomHandler_connect);}},_onExtentChangeHandler:function(_3c6,_3c7,_3c8,lod){var _3ca=true;if(!this.visible){_3ca=false;}var map=this._map,_3cc;if(lod){_3cc=dojo.indexOf(this.scales,lod.scale)==-1;}else{var _lev=map.getLevel(),_3ce=(_lev!=-1)?map._baseLayer._lods[_lev].scale:-1;_3cc=(dojo.indexOf(this.scales,_3ce)==-1);}if(_3ca){if(_3cc){_3ca=false;esri.hide(this._div);dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onZoomHandler_connect);}else{esri.show(this._div);dojo.disconnect(this._onPanHandler_connect);dojo.disconnect(this._onZoomHandler_connect);this._onPanHandler_connect=dojo.connect(map,"onPan",this,"_onPanHandler");this._onZoomHandler_connect=dojo.connect(map,"onZoom",this,"_onZoomHandler");}}this._rrIndex=0;var ct=this._getCandidateTileInfo(_3c6),mv=map._visibleDelta;if(!this._ct||ct.lod.level!=this._ct.lod.level||_3c8){this._ct=ct;var _3d1=this._tiles,_3d2=this._tileIds,_3d3=this._tileBounds,_3d4=this._removeList,tile,id;this._cleanUpRemovedImages();for(var i=0,il=_3d2.length;i<il;i++){id=_3d2[i];tile=_3d1[id];_3d3[id]=_3d2[i]=null;_3d4.add(id);}if(_3c8){this._tileIds=[];this._tiles=[];this._tileBounds=[];}}var mx=mv.x,my=mv.y;dojo.style(this._div,{left:mx+"px",top:my+"px"});if(_3ca&&!_3cc){this.__coords_dx=mx;this.__coords_dy=my;this._updateImages(new esri.geometry.Rect(0,0,mv.width,mv.height));}else{this._cleanUpRemovedImages();}var id,_3db,img,_3dd=this._tileW,_3de=this._tileH;mv=new esri.geometry.Rect(-mv.x,-mv.y,mv.width,mv.height);for(var i=this._tileIds.length-1;i>=0;i--){id=this._tileIds[i];if(id){img=this._tiles[id];_3db=dojo.coords(img);var rect=new esri.geometry.Rect(_3db.l,_3db.t,_3dd,_3de);if(mv.intersects(rect)){this._tileBounds[id]=rect;}else{if(this._loadingList.contains(id)){this._tilePopPop(img);}dojo._destroyElement(img);this._tileIds.splice(i,1);delete this._tileBounds[id];delete this._tiles[id];}}else{this._tileIds.splice(i,1);delete this._tileBounds[id];delete this._tiles[id];}}},_onPanHandler:function(_3e0,_3e1){var mv=this._map._visibleDelta.offset(_3e1.x,_3e1.y);dojo.style(this._div,{left:mv.x+"px",top:mv.y+"px"});this.__coords_dx=this.__coords_dy=0;this._updateImages({x:-mv.x,y:-mv.y,width:mv.width,height:mv.height});},_onZoomHandler:function(_3e3,_3e4,_3e5){var _3e6=dojo.coords(this._div);_3e5=_3e5.offset(-_3e6.l,-_3e6.t);var id,_3e8,_3e9=this._tileW*_3e4,_3ea=this._tileH*_3e4,es=dojo.style;for(var i=0,il=this._tileIds.length;i<il;i++){id=this._tileIds[i];_3e8=this._tileBounds[id];es(this._tiles[id],{left:(_3e8.x-((_3e9-_3e8.width)*(_3e5.x-_3e8.x)/_3e8.width))+"px",top:(_3e8.y-((_3ea-_3e8.height)*(_3e5.y-_3e8.y)/_3e8.height))+"px",width:_3e9+"px",height:_3ea+"px"});}},_updateImages:function(rect){var id,_3f0=this._tileW,_3f1=this._tileH,_ct=this._ct,lod=_ct.lod,tile=_ct.tile,_3f5=tile.offsets,_3f6=tile.coords,cr=_3f6.row,cc=_3f6.col,_3f9=lod.level,_3fa=this.opacity,_3fb=this._tileIds,_3fc=this._loadingList,_3fd=this._cleanUpRemovedImages,_3fe=this._addImage,_rr=this._roundrobin,mId=this._map.id,tId=this.id,rx=rect.x,ry=rect.y,str=lod.startTileRow,etr=lod.endTileRow,stc=lod.startTileCol,etc=lod.endTileCol,_408=dojo.indexOf,r,c,mvx=-rect.x,mvy=-rect.y,_40d=_3f5.x-this.__coords_dx,_40e=_3f5.y-this.__coords_dy,vx=((_3f0-_40d)+mvx),vy=((_3f1-_40e)+mvy),_411=(vx>0)?(vx%_3f0):((_3f0-(Math.abs(vx)%_3f0))),_412=(vy>0)?(vy%_3f1):((_3f1-(Math.abs(vy)%_3f1))),_413=(rx>0)?Math.floor((rx+_40d)/_3f0):Math.ceil((rx-(_3f0-_40d))/_3f0),_414=(ry>0)?Math.floor((ry+_40e)/_3f1):Math.ceil((ry-(_3f1-_40e))/_3f1),_415=_413+Math.ceil((rect.width-_411)/_3f0),_416=_414+Math.ceil((rect.height-_412)/_3f1);for(var col=_413;col<=_415;col++){for(var row=_414;row<=_416;row++){r=cr+row;c=cc+col;if(r>=str&&r<=etr&&c>=stc&&c<=etc){id=mId+"_"+tId+"_tile_"+_3f9+"_"+r+"_"+c;if(_408(_3fb,id)===-1){_3fc.add(id);_3fb.push(id);_3fe(_3f9,row,r,col,c,id,_3f0,_3f1,_3fa,tile,_3f5);}}}}},_cleanUpRemovedImages:function(){var list=this._removeList,_41a=dojo._destroyElement,byId=dojo.byId;list.forEach(function(item,_41d){_41a(byId(item));});list.clear();},_addImage:function(_41e,row,r,col,c,id,_424,_425,_426,tile,_428){var img=(this._tiles[id]=document.createElement("img"));img.id=id;dojo.addClass(img,"layerTile");dojo.style(img,{left:((_424*col)-_428.x)+"px",top:((_425*row)-_428.y)+"px",width:_424+"px",height:_425+"px",opacity:_426,zIndex:this._layerIndex,visibility:"hidden"});img._connect_onload=dojo.connect(img,"onload",this,"_tileLoadHandler");img._connect_onerror=dojo.connect(img,"onerror",this,"_tileErrorHandler");img._connect_onabort=dojo.connect(img,"onabort",this,"_tileErrorHandler");var _rr=this._roundrobin,iurl=(_rr?_rr[this._rrIndex++%_rr.length]:this._urlPath)+"/tile/"+_41e+"/"+r+"/"+c+"."+this._tileFormat;token=this._params.token;if(token){iurl+=("?"+dojo.objectToQuery({token:token}));}img.src=esri._getProxiedUrl(iurl);this._div.appendChild(img);},_tilePopPop:function(img){var _42d=this._loadingList;_42d.remove(img.id);dojo.disconnect(img._connect_onload);dojo.disconnect(img._connect_onerror);dojo.disconnect(img._connect_onabort);img._connect_onload=img._connect_onerror=img._connect_onabort=null;if(_42d.count===0){this._cleanUpRemovedImages();}},_tileLoadHandler:function(evt){var img=evt.currentTarget;dojo.style(img,"visibility","visible");this._tilePopPop(img);},_tileErrorHandler:function(evt){var img=evt.currentTarget;dojo.style(img,"visibility","hidden");this._tilePopPop(img);},_onLayerReorderHandler:function(_432,_433){if(_432==this){this._layerIndex=_433;var _434=this._tileIds,_435=this._tiles,djs=dojo.style;for(var i=0,il=_434.length;i<il;i++){djs(_435[_434[i]],"zIndex",_433);}}},_getAdjustedExtent:function(_439){var ct=this._getCandidateTileInfo(_439);return {extent:ct.extent,lod:ct.lod};},getNumLevels:function(){return this._lods.length;},getLevel:function(){if(this._ct){return this._ct.lod.level;}else{return -1;}},setLevel:function(_43b){var _43c=this._lods.length;if(_43b<0||_43b>_43c-1){return;}var map=this._map,lod=this._lods[_43b],_43f=map.width*lod.resolution/2,_440=map.height*lod.resolution/2,_441=map.extent.getCenter();map.setExtent(new esri.geometry.Extent(_441.x-_43f,_441.y-_440,_441.x+_43f,_441.y+_440,_441.spatialReference));}});dojo.declare("esri.layers.TileInfo",null,{constructor:function(json){this.spatialReference=new esri.SpatialReference(json.spatialReference);this.width=json.cols;this.height=json.rows;this.origin=new esri.geometry.Point(dojo.mixin(json.origin,json.spatialReference));this.dpi=json.dpi;this.format=json.format;var _443=json.lods,lods=(this.lods=[]);for(var i=0,il=_443.length;i<il;i++){lods.push(new esri.layers.LOD(_443[i]));}},width:null,height:null,origin:null,format:null,dpi:null,spatialReference:null});dojo.declare("esri.layers.LOD",null,{constructor:function(json){dojo.mixin(this,json);},level:null,scale:null,resolution:null});}if(!dojo._hasResource["dojo.fx"]){dojo._hasResource["dojo.fx"]=true;dojo.provide("dojo.fx");dojo.provide("dojo.fx.Toggler");(function(){var _448={_fire:function(evt,args){if(this[evt]){this[evt].apply(this,args||[]);}return this;}};var _44b=function(_44c){this._index=-1;this._animations=_44c||[];this._current=this._onAnimateCtx=this._onEndCtx=null;this.duration=0;dojo.forEach(this._animations,function(a){this.duration+=a.duration;if(a.delay){this.duration+=a.delay;}},this);};dojo.extend(_44b,{_onAnimate:function(){this._fire("onAnimate",arguments);},_onEnd:function(){dojo.disconnect(this._onAnimateCtx);dojo.disconnect(this._onEndCtx);this._onAnimateCtx=this._onEndCtx=null;if(this._index+1==this._animations.length){this._fire("onEnd");}else{this._current=this._animations[++this._index];this._onAnimateCtx=dojo.connect(this._current,"onAnimate",this,"_onAnimate");this._onEndCtx=dojo.connect(this._current,"onEnd",this,"_onEnd");this._current.play(0,true);}},play:function(_44e,_44f){if(!this._current){this._current=this._animations[this._index=0];}if(!_44f&&this._current.status()=="playing"){return this;}var _450=dojo.connect(this._current,"beforeBegin",this,function(){this._fire("beforeBegin");}),_451=dojo.connect(this._current,"onBegin",this,function(arg){this._fire("onBegin",arguments);}),_453=dojo.connect(this._current,"onPlay",this,function(arg){this._fire("onPlay",arguments);dojo.disconnect(_450);dojo.disconnect(_451);dojo.disconnect(_453);});if(this._onAnimateCtx){dojo.disconnect(this._onAnimateCtx);}this._onAnimateCtx=dojo.connect(this._current,"onAnimate",this,"_onAnimate");if(this._onEndCtx){dojo.disconnect(this._onEndCtx);}this._onEndCtx=dojo.connect(this._current,"onEnd",this,"_onEnd");this._current.play.apply(this._current,arguments);return this;},pause:function(){if(this._current){var e=dojo.connect(this._current,"onPause",this,function(arg){this._fire("onPause",arguments);dojo.disconnect(e);});this._current.pause();}return this;},gotoPercent:function(_457,_458){this.pause();var _459=this.duration*_457;this._current=null;dojo.some(this._animations,function(a){if(a.duration<=_459){this._current=a;return true;}_459-=a.duration;return false;});if(this._current){this._current.gotoPercent(_459/_current.duration,_458);}return this;},stop:function(_45b){if(this._current){if(_45b){for(;this._index+1<this._animations.length;++this._index){this._animations[this._index].stop(true);}this._current=this._animations[this._index];}var e=dojo.connect(this._current,"onStop",this,function(arg){this._fire("onStop",arguments);dojo.disconnect(e);});this._current.stop();}return this;},status:function(){return this._current?this._current.status():"stopped";},destroy:function(){if(this._onAnimateCtx){dojo.disconnect(this._onAnimateCtx);}if(this._onEndCtx){dojo.disconnect(this._onEndCtx);}}});dojo.extend(_44b,_448);dojo.fx.chain=function(_45e){return new _44b(_45e);};var _45f=function(_460){this._animations=_460||[];this._connects=[];this._finished=0;this.duration=0;dojo.forEach(_460,function(a){var _462=a.duration;if(a.delay){_462+=a.delay;}if(this.duration<_462){this.duration=_462;}this._connects.push(dojo.connect(a,"onEnd",this,"_onEnd"));},this);this._pseudoAnimation=new dojo._Animation({curve:[0,1],duration:this.duration});dojo.forEach(["beforeBegin","onBegin","onPlay","onAnimate","onPause","onStop"],function(evt){this._connects.push(dojo.connect(this._pseudoAnimation,evt,dojo.hitch(this,"_fire",evt)));},this);};dojo.extend(_45f,{_doAction:function(_464,args){dojo.forEach(this._animations,function(a){a[_464].apply(a,args);});return this;},_onEnd:function(){if(++this._finished==this._animations.length){this._fire("onEnd");}},_call:function(_467,args){var t=this._pseudoAnimation;t[_467].apply(t,args);},play:function(_46a,_46b){this._finished=0;this._doAction("play",arguments);this._call("play",arguments);return this;},pause:function(){this._doAction("pause",arguments);this._call("pause",arguments);return this;},gotoPercent:function(_46c,_46d){var ms=this.duration*_46c;dojo.forEach(this._animations,function(a){a.gotoPercent(a.duration<ms?1:(ms/a.duration),_46d);});this._call("gotoProcent",arguments);return this;},stop:function(_470){this._doAction("stop",arguments);this._call("stop",arguments);return this;},status:function(){return this._pseudoAnimation.status();},destroy:function(){dojo.forEach(this._connects,dojo.disconnect);}});dojo.extend(_45f,_448);dojo.fx.combine=function(_471){return new _45f(_471);};})();dojo.declare("dojo.fx.Toggler",null,{constructor:function(args){var _t=this;dojo.mixin(_t,args);_t.node=args.node;_t._showArgs=dojo.mixin({},args);_t._showArgs.node=_t.node;_t._showArgs.duration=_t.showDuration;_t.showAnim=_t.showFunc(_t._showArgs);_t._hideArgs=dojo.mixin({},args);_t._hideArgs.node=_t.node;_t._hideArgs.duration=_t.hideDuration;_t.hideAnim=_t.hideFunc(_t._hideArgs);dojo.connect(_t.showAnim,"beforeBegin",dojo.hitch(_t.hideAnim,"stop",true));dojo.connect(_t.hideAnim,"beforeBegin",dojo.hitch(_t.showAnim,"stop",true));},node:null,showFunc:dojo.fadeIn,hideFunc:dojo.fadeOut,showDuration:200,hideDuration:200,show:function(_474){return this.showAnim.play(_474||0);},hide:function(_475){return this.hideAnim.play(_475||0);}});dojo.fx.wipeIn=function(args){args.node=dojo.byId(args.node);var node=args.node,s=node.style;var anim=dojo.animateProperty(dojo.mixin({properties:{height:{start:function(){s.overflow="hidden";if(s.visibility=="hidden"||s.display=="none"){s.height="1px";s.display="";s.visibility="";return 1;}else{var _47a=dojo.style(node,"height");return Math.max(_47a,1);}},end:function(){return node.scrollHeight;}}}},args));dojo.connect(anim,"onEnd",function(){s.height="auto";});return anim;};dojo.fx.wipeOut=function(args){var node=args.node=dojo.byId(args.node);var s=node.style;var anim=dojo.animateProperty(dojo.mixin({properties:{height:{end:1}}},args));dojo.connect(anim,"beforeBegin",function(){s.overflow="hidden";s.display="";});dojo.connect(anim,"onEnd",function(){s.height="auto";s.display="none";});return anim;};dojo.fx.slideTo=function(args){var node=(args.node=dojo.byId(args.node));var top=null;var left=null;var init=(function(n){return function(){var cs=dojo.getComputedStyle(n);var pos=cs.position;top=(pos=="absolute"?n.offsetTop:parseInt(cs.top)||0);left=(pos=="absolute"?n.offsetLeft:parseInt(cs.left)||0);if(pos!="absolute"&&pos!="relative"){var ret=dojo.coords(n,true);top=ret.y;left=ret.x;n.style.position="absolute";n.style.top=top+"px";n.style.left=left+"px";}};})(node);init();var anim=dojo.animateProperty(dojo.mixin({properties:{top:{end:args.top||0},left:{end:args.left||0}}},args));dojo.connect(anim,"beforeBegin",anim,init);return anim;};}if(!dojo._hasResource["esri.fx"]){dojo._hasResource["esri.fx"]=true;dojo.provide("esri.fx");esri.fx.animateRange=function(args){var _48a=args.range;return new dojo._Animation(dojo.mixin({curve:new dojo._Line(_48a.start,_48a.end)},args));};esri.fx.resize=function(args){var node=(args.node=dojo.byId(args.node)),_48d=args.start,end=args.end;if(!_48d){var mb=dojo._getMarginBox(node),pb=dojo._getPadBorderExtents(node);_48d=(args.start={left:mb.l+pb.l,top:mb.t+pb.t,width:mb.w-pb.w,height:mb.h-pb.h});}if(!end){var _491=args.anchor?args.anchor:{x:_48d.left,y:_48d.top},size=args.size;end=args.end={left:(_48d.left-((size.width-_48d.width)*(_491.x-_48d.left)/_48d.width)),top:(_48d.top-((size.height-_48d.height)*(_491.y-_48d.top)/_48d.height)),width:size.width,height:size.height};}return dojo.animateProperty(dojo.mixin({properties:{left:{start:_48d.left,end:end.left},top:{start:_48d.top,end:end.top},width:{start:_48d.width,end:end.width},height:{start:_48d.height,end:end.height}}},args));};esri.fx.slideTo=function(args){var node=(args.node=dojo.byId(args.node)),_495=dojo.getComputedStyle,top=null,left=null,init=(function(){var _499=node;return function(){var pos=_499.style.position=="absolute"?"absolute":"relative";top=(pos=="absolute"?node.offsetTop:parseInt(_495(node).top)||0);left=(pos=="absolute"?node.offsetLeft:parseInt(_495(node).left)||0);if(pos!="absolute"&&pos!="relative"){var ret=dojo.coords(_499,true);top=ret.y;left=ret.x;_499.style.position="absolute";_499.style.top=top+"px";_499.style.left=left+"px";}};})();init();var anim=dojo.animateProperty(dojo.mixin({properties:{top:{start:top,end:args.top||0},left:{start:left,end:args.left||0}}},args));dojo.connect(anim,"beforeBegin",anim,init);return anim;};esri.fx.flash=function(args){args=dojo.mixin({end:"#f00",duration:500,count:1},args);args.duration/=args.count*2;var node=dojo.byId(args.node),_49f=args.start;if(!_49f){_49f=dojo.getComputedStyle(node).backgroundColor;}var end=args.end,_4a1=args.duration,_4a2=[],base={node:node,duration:_4a1};for(var i=0,il=args.count;i<il;i++){_4a2.push(dojo.animateProperty(dojo.mixin({properties:{backgroundColor:{start:_49f,end:end}}},base)));_4a2.push(dojo.animateProperty(dojo.mixin({properties:{backgroundColor:{start:end,end:_49f}}},base)));}return dojo.fx.chain(_4a2);};}if(!dojo._hasResource["dijit._base.focus"]){dojo._hasResource["dijit._base.focus"]=true;dojo.provide("dijit._base.focus");dojo.mixin(dijit,{_curFocus:null,_prevFocus:null,isCollapsed:function(){var _4a6=dojo.global;var _4a7=dojo.doc;if(_4a7.selection){return !_4a7.selection.createRange().text;}else{var _4a8=_4a6.getSelection();if(dojo.isString(_4a8)){return !_4a8;}else{return _4a8.isCollapsed||!_4a8.toString();}}},getBookmark:function(){var _4a9,_4aa=dojo.doc.selection;if(_4aa){var _4ab=_4aa.createRange();if(_4aa.type.toUpperCase()=="CONTROL"){if(_4ab.length){_4a9=[];var i=0,len=_4ab.length;while(i<len){_4a9.push(_4ab.item(i++));}}else{_4a9=null;}}else{_4a9=_4ab.getBookmark();}}else{if(window.getSelection){_4aa=dojo.global.getSelection();if(_4aa){_4ab=_4aa.getRangeAt(0);_4a9=_4ab.cloneRange();}}else{console.warn("No idea how to store the current selection for this browser!");}}return _4a9;},moveToBookmark:function(_4ae){var _4af=dojo.doc;if(_4af.selection){var _4b0;if(dojo.isArray(_4ae)){_4b0=_4af.body.createControlRange();dojo.forEach(_4ae,"range.addElement(item)");}else{_4b0=_4af.selection.createRange();_4b0.moveToBookmark(_4ae);}_4b0.select();}else{var _4b1=dojo.global.getSelection&&dojo.global.getSelection();if(_4b1&&_4b1.removeAllRanges){_4b1.removeAllRanges();_4b1.addRange(_4ae);}else{console.warn("No idea how to restore selection for this browser!");}}},getFocus:function(menu,_4b3){return {node:menu&&dojo.isDescendant(dijit._curFocus,menu.domNode)?dijit._prevFocus:dijit._curFocus,bookmark:!dojo.withGlobal(_4b3||dojo.global,dijit.isCollapsed)?dojo.withGlobal(_4b3||dojo.global,dijit.getBookmark):null,openedForWindow:_4b3};},focus:function(_4b4){if(!_4b4){return;}var node="node" in _4b4?_4b4.node:_4b4,_4b6=_4b4.bookmark,_4b7=_4b4.openedForWindow;if(node){var _4b8=(node.tagName.toLowerCase()=="iframe")?node.contentWindow:node;if(_4b8&&_4b8.focus){try{_4b8.focus();}catch(e){}}dijit._onFocusNode(node);}if(_4b6&&dojo.withGlobal(_4b7||dojo.global,dijit.isCollapsed)){if(_4b7){_4b7.focus();}try{dojo.withGlobal(_4b7||dojo.global,dijit.moveToBookmark,null,[_4b6]);}catch(e){}}},_activeStack:[],registerWin:function(_4b9){if(!_4b9){_4b9=window;}dojo.connect(_4b9.document,"onmousedown",function(evt){dijit._justMouseDowned=true;setTimeout(function(){dijit._justMouseDowned=false;},0);dijit._onTouchNode(evt.target||evt.srcElement);});var body=_4b9.document.body||_4b9.document.getElementsByTagName("body")[0];if(body){if(dojo.isIE){body.attachEvent("onactivate",function(evt){if(evt.srcElement.tagName.toLowerCase()!="body"){dijit._onFocusNode(evt.srcElement);}});body.attachEvent("ondeactivate",function(evt){dijit._onBlurNode(evt.srcElement);});}else{body.addEventListener("focus",function(evt){dijit._onFocusNode(evt.target);},true);body.addEventListener("blur",function(evt){dijit._onBlurNode(evt.target);},true);}}body=null;},_onBlurNode:function(node){dijit._prevFocus=dijit._curFocus;dijit._curFocus=null;if(dijit._justMouseDowned){return;}if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);}dijit._clearActiveWidgetsTimer=setTimeout(function(){delete dijit._clearActiveWidgetsTimer;dijit._setStack([]);dijit._prevFocus=null;},100);},_onTouchNode:function(node){if(dijit._clearActiveWidgetsTimer){clearTimeout(dijit._clearActiveWidgetsTimer);delete dijit._clearActiveWidgetsTimer;}var _4c2=[];try{while(node){if(node.dijitPopupParent){node=dijit.byId(node.dijitPopupParent).domNode;}else{if(node.tagName&&node.tagName.toLowerCase()=="body"){if(node===dojo.body()){break;}node=dijit.getDocumentWindow(node.ownerDocument).frameElement;}else{var id=node.getAttribute&&node.getAttribute("widgetId");if(id){_4c2.unshift(id);}node=node.parentNode;}}}}catch(e){}dijit._setStack(_4c2);},_onFocusNode:function(node){if(node&&node.tagName&&node.tagName.toLowerCase()=="body"){return;}dijit._onTouchNode(node);if(node==dijit._curFocus){return;}if(dijit._curFocus){dijit._prevFocus=dijit._curFocus;}dijit._curFocus=node;dojo.publish("focusNode",[node]);},_setStack:function(_4c5){var _4c6=dijit._activeStack;dijit._activeStack=_4c5;for(var _4c7=0;_4c7<Math.min(_4c6.length,_4c5.length);_4c7++){if(_4c6[_4c7]!=_4c5[_4c7]){break;}}for(var i=_4c6.length-1;i>=_4c7;i--){var _4c9=dijit.byId(_4c6[i]);if(_4c9){_4c9._focused=false;_4c9._hasBeenBlurred=true;if(_4c9._onBlur){_4c9._onBlur();}if(_4c9._setStateClass){_4c9._setStateClass();}dojo.publish("widgetBlur",[_4c9]);}}for(i=_4c7;i<_4c5.length;i++){_4c9=dijit.byId(_4c5[i]);if(_4c9){_4c9._focused=true;if(_4c9._onFocus){_4c9._onFocus();}if(_4c9._setStateClass){_4c9._setStateClass();}dojo.publish("widgetFocus",[_4c9]);}}}});dojo.addOnLoad(dijit.registerWin);}if(!dojo._hasResource["dijit._base.manager"]){dojo._hasResource["dijit._base.manager"]=true;dojo.provide("dijit._base.manager");dojo.declare("dijit.WidgetSet",null,{constructor:function(){this._hash={};},add:function(_4ca){if(this._hash[_4ca.id]){throw new Error("Tried to register widget with id=="+_4ca.id+" but that id is already registered");}this._hash[_4ca.id]=_4ca;},remove:function(id){delete this._hash[id];},forEach:function(func){for(var id in this._hash){func(this._hash[id]);}},filter:function(_4ce){var res=new dijit.WidgetSet();this.forEach(function(_4d0){if(_4ce(_4d0)){res.add(_4d0);}});return res;},byId:function(id){return this._hash[id];},byClass:function(cls){return this.filter(function(_4d3){return _4d3.declaredClass==cls;});}});dijit.registry=new dijit.WidgetSet();dijit._widgetTypeCtr={};dijit.getUniqueId=function(_4d4){var id;do{id=_4d4+"_"+(_4d4 in dijit._widgetTypeCtr?++dijit._widgetTypeCtr[_4d4]:dijit._widgetTypeCtr[_4d4]=0);}while(dijit.byId(id));return id;};if(dojo.isIE){dojo.addOnUnload(function(){dijit.registry.forEach(function(_4d6){_4d6.destroy();});});}dijit.byId=function(id){return (dojo.isString(id))?dijit.registry.byId(id):id;};dijit.byNode=function(node){return dijit.registry.byId(node.getAttribute("widgetId"));};dijit.getEnclosingWidget=function(node){while(node){if(node.getAttribute&&node.getAttribute("widgetId")){return dijit.registry.byId(node.getAttribute("widgetId"));}node=node.parentNode;}return null;};dijit._tabElements={area:true,button:true,input:true,object:true,select:true,textarea:true};dijit._isElementShown=function(elem){var _4db=dojo.style(elem);return (_4db.visibility!="hidden")&&(_4db.visibility!="collapsed")&&(_4db.display!="none");};dijit.isTabNavigable=function(elem){if(dojo.hasAttr(elem,"disabled")){return false;}var _4dd=dojo.hasAttr(elem,"tabindex");var _4de=dojo.attr(elem,"tabindex");if(_4dd&&_4de>=0){return true;}var name=elem.nodeName.toLowerCase();if(((name=="a"&&dojo.hasAttr(elem,"href"))||dijit._tabElements[name])&&(!_4dd||_4de>=0)){return true;}return false;};dijit._getTabNavigable=function(root){var _4e1,last,_4e3,_4e4,_4e5,_4e6;var _4e7=function(_4e8){dojo.query("> *",_4e8).forEach(function(_4e9){var _4ea=dijit._isElementShown(_4e9);if(_4ea&&dijit.isTabNavigable(_4e9)){var _4eb=dojo.attr(_4e9,"tabindex");if(!dojo.hasAttr(_4e9,"tabindex")||_4eb==0){if(!_4e1){_4e1=_4e9;}last=_4e9;}else{if(_4eb>0){if(!_4e3||_4eb<_4e4){_4e4=_4eb;_4e3=_4e9;}if(!_4e5||_4eb>=_4e6){_4e6=_4eb;_4e5=_4e9;}}}}if(_4ea){_4e7(_4e9);}});};if(dijit._isElementShown(root)){_4e7(root);}return {first:_4e1,last:last,lowest:_4e3,highest:_4e5};};dijit.getFirstInTabbingOrder=function(root){var _4ed=dijit._getTabNavigable(dojo.byId(root));return _4ed.lowest?_4ed.lowest:_4ed.first;};dijit.getLastInTabbingOrder=function(root){var _4ef=dijit._getTabNavigable(dojo.byId(root));return _4ef.last?_4ef.last:_4ef.highest;};}if(!dojo._hasResource["dijit._base.place"]){dojo._hasResource["dijit._base.place"]=true;dojo.provide("dijit._base.place");dijit.getViewport=function(){var _4f0=dojo.global;var _4f1=dojo.doc;var w=0,h=0;var de=_4f1.documentElement;var dew=de.clientWidth,deh=de.clientHeight;if(dojo.isMozilla){var minw,minh,maxw,maxh;var dbw=_4f1.body.clientWidth;if(dbw>dew){minw=dew;maxw=dbw;}else{maxw=dew;minw=dbw;}var dbh=_4f1.body.clientHeight;if(dbh>deh){minh=deh;maxh=dbh;}else{maxh=deh;minh=dbh;}w=(maxw>_4f0.innerWidth)?minw:maxw;h=(maxh>_4f0.innerHeight)?minh:maxh;}else{if(!dojo.isOpera&&_4f0.innerWidth){w=_4f0.innerWidth;h=_4f0.innerHeight;}else{if(dojo.isIE&&de&&deh){w=dew;h=deh;}else{if(dojo.body().clientWidth){w=dojo.body().clientWidth;h=dojo.body().clientHeight;}}}}var _4fd=dojo._docScroll();return {w:w,h:h,l:_4fd.x,t:_4fd.y};};dijit.placeOnScreen=function(node,pos,_500,_501){var _502=dojo.map(_500,function(_503){return {corner:_503,pos:pos};});return dijit._place(node,_502);};dijit._place=function(node,_505,_506){var view=dijit.getViewport();if(!node.parentNode||String(node.parentNode.tagName).toLowerCase()!="body"){dojo.body().appendChild(node);}var best=null;dojo.some(_505,function(_509){var _50a=_509.corner;var pos=_509.pos;if(_506){_506(node,_509.aroundCorner,_50a);}var _50c=node.style;var _50d=_50c.display;var _50e=_50c.visibility;_50c.visibility="hidden";_50c.display="";var mb=dojo.marginBox(node);_50c.display=_50d;_50c.visibility=_50e;var _510=(_50a.charAt(1)=="L"?pos.x:Math.max(view.l,pos.x-mb.w)),_511=(_50a.charAt(0)=="T"?pos.y:Math.max(view.t,pos.y-mb.h)),endX=(_50a.charAt(1)=="L"?Math.min(view.l+view.w,_510+mb.w):pos.x),endY=(_50a.charAt(0)=="T"?Math.min(view.t+view.h,_511+mb.h):pos.y),_514=endX-_510,_515=endY-_511,_516=(mb.w-_514)+(mb.h-_515);if(best==null||_516<best.overflow){best={corner:_50a,aroundCorner:_509.aroundCorner,x:_510,y:_511,w:_514,h:_515,overflow:_516};}return !_516;});node.style.left=best.x+"px";node.style.top=best.y+"px";if(best.overflow&&_506){_506(node,best.aroundCorner,best.corner);}return best;};dijit.placeOnScreenAroundElement=function(node,_518,_519,_51a){_518=dojo.byId(_518);var _51b=_518.style.display;_518.style.display="";var _51c=_518.offsetWidth;var _51d=_518.offsetHeight;var _51e=dojo.coords(_518,true);_518.style.display=_51b;var _51f=[];for(var _520 in _519){_51f.push({aroundCorner:_520,corner:_519[_520],pos:{x:_51e.x+(_520.charAt(1)=="L"?0:_51c),y:_51e.y+(_520.charAt(0)=="T"?0:_51d)}});}return dijit._place(node,_51f,_51a);};}if(!dojo._hasResource["dijit._base.window"]){dojo._hasResource["dijit._base.window"]=true;dojo.provide("dijit._base.window");dijit.getDocumentWindow=function(doc){if(dojo.isSafari&&!doc._parentWindow){var fix=function(win){win.document._parentWindow=win;for(var i=0;i<win.frames.length;i++){fix(win.frames[i]);}};fix(window.top);}if(dojo.isIE&&window!==document.parentWindow&&!doc._parentWindow){doc.parentWindow.execScript("document._parentWindow = window;","Javascript");var win=doc._parentWindow;doc._parentWindow=null;return win;}return doc._parentWindow||doc.parentWindow||doc.defaultView;};}if(!dojo._hasResource["dijit._base.popup"]){dojo._hasResource["dijit._base.popup"]=true;dojo.provide("dijit._base.popup");dijit.popup=new function(){var _526=[],_527=1000,_528=1;this.prepare=function(node){dojo.body().appendChild(node);var s=node.style;if(s.display=="none"){s.display="";}s.visibility="hidden";s.position="absolute";s.top="-9999px";};this.open=function(args){var _52c=args.popup,_52d=args.orient||{"BL":"TL","TL":"BL"},_52e=args.around,id=(args.around&&args.around.id)?(args.around.id+"_dropdown"):("popup_"+_528++);var _530=dojo.doc.createElement("div");dijit.setWaiRole(_530,"presentation");_530.id=id;_530.className="dijitPopup";_530.style.zIndex=_527+_526.length;_530.style.visibility="hidden";if(args.parent){_530.dijitPopupParent=args.parent.id;}dojo.body().appendChild(_530);var s=_52c.domNode.style;s.display="";s.visibility="";s.position="";_530.appendChild(_52c.domNode);var _532=new dijit.BackgroundIframe(_530);var best=_52e?dijit.placeOnScreenAroundElement(_530,_52e,_52d,_52c.orient?dojo.hitch(_52c,"orient"):null):dijit.placeOnScreen(_530,args,_52d=="R"?["TR","BR","TL","BL"]:["TL","BL","TR","BR"]);_530.style.visibility="visible";var _534=[];var _535=function(){for(var pi=_526.length-1;pi>0&&_526[pi].parent===_526[pi-1].widget;pi--){}return _526[pi];};_534.push(dojo.connect(_530,"onkeypress",this,function(evt){if(evt.keyCode==dojo.keys.ESCAPE&&args.onCancel){dojo.stopEvent(evt);args.onCancel();}else{if(evt.keyCode==dojo.keys.TAB){dojo.stopEvent(evt);var _538=_535();if(_538&&_538.onCancel){_538.onCancel();}}}}));if(_52c.onCancel){_534.push(dojo.connect(_52c,"onCancel",null,args.onCancel));}_534.push(dojo.connect(_52c,_52c.onExecute?"onExecute":"onChange",null,function(){var _539=_535();if(_539&&_539.onExecute){_539.onExecute();}}));_526.push({wrapper:_530,iframe:_532,widget:_52c,parent:args.parent,onExecute:args.onExecute,onCancel:args.onCancel,onClose:args.onClose,handlers:_534});if(_52c.onOpen){_52c.onOpen(best);}return best;};this.close=function(_53a){while(dojo.some(_526,function(elem){return elem.widget==_53a;})){var top=_526.pop(),_53d=top.wrapper,_53e=top.iframe,_53f=top.widget,_540=top.onClose;if(_53f.onClose){_53f.onClose();}dojo.forEach(top.handlers,dojo.disconnect);if(!_53f||!_53f.domNode){return;}this.prepare(_53f.domNode);_53e.destroy();dojo._destroyElement(_53d);if(_540){_540();}}};}();dijit._frames=new function(){var _541=[];this.pop=function(){var _542;if(_541.length){_542=_541.pop();_542.style.display="";}else{if(dojo.isIE){var html="<iframe src='javascript:\"\"'"+" style='position: absolute; left: 0px; top: 0px;"+"z-index: -1; filter:Alpha(Opacity=\"0\");'>";_542=dojo.doc.createElement(html);}else{_542=dojo.doc.createElement("iframe");_542.src="javascript:\"\"";_542.className="dijitBackgroundIframe";}_542.tabIndex=-1;dojo.body().appendChild(_542);}return _542;};this.push=function(_544){_544.style.display="";if(dojo.isIE){_544.style.removeExpression("width");_544.style.removeExpression("height");}_541.push(_544);};}();if(dojo.isIE&&dojo.isIE<7){dojo.addOnLoad(function(){var f=dijit._frames;dojo.forEach([f.pop()],f.push);});}dijit.BackgroundIframe=function(node){if(!node.id){throw new Error("no id");}if((dojo.isIE&&dojo.isIE<7)||(dojo.isFF&&dojo.isFF<3&&dojo.hasClass(dojo.body(),"dijit_a11y"))){var _547=dijit._frames.pop();node.appendChild(_547);if(dojo.isIE){_547.style.setExpression("width",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetWidth");_547.style.setExpression("height",dojo._scopeName+".doc.getElementById('"+node.id+"').offsetHeight");}this.iframe=_547;}};dojo.extend(dijit.BackgroundIframe,{destroy:function(){if(this.iframe){dijit._frames.push(this.iframe);delete this.iframe;}}});}if(!dojo._hasResource["dijit._base.scroll"]){dojo._hasResource["dijit._base.scroll"]=true;dojo.provide("dijit._base.scroll");dijit.scrollIntoView=function(node){if(dojo.isMozilla){node.scrollIntoView(false);}else{var _549=node.parentNode;var _54a=_549.scrollTop+dojo.marginBox(_549).h;var _54b=node.offsetTop+dojo.marginBox(node).h;if(_54a<_54b){_549.scrollTop+=(_54b-_54a);}else{if(_549.scrollTop>node.offsetTop){_549.scrollTop-=(_549.scrollTop-node.offsetTop);}}}};}if(!dojo._hasResource["dijit._base.sniff"]){dojo._hasResource["dijit._base.sniff"]=true;dojo.provide("dijit._base.sniff");(function(){var d=dojo;var ie=d.isIE;var _54e=d.isOpera;var maj=Math.floor;var ff=d.isFF;var _551={dj_ie:ie,dj_ie6:maj(ie)==6,dj_ie7:maj(ie)==7,dj_iequirks:ie&&d.isQuirks,dj_opera:_54e,dj_opera8:maj(_54e)==8,dj_opera9:maj(_54e)==9,dj_khtml:d.isKhtml,dj_safari:d.isSafari,dj_gecko:d.isMozilla,dj_ff2:maj(ff)==2};for(var p in _551){if(_551[p]){var html=dojo.doc.documentElement;if(html.className){html.className+=" "+p;}else{html.className=p;}}}})();}if(!dojo._hasResource["dijit._base.bidi"]){dojo._hasResource["dijit._base.bidi"]=true;dojo.provide("dijit._base.bidi");dojo.addOnLoad(function(){if(!dojo._isBodyLtr()){dojo.addClass(dojo.body(),"dijitRtl");}});}if(!dojo._hasResource["dijit._base.typematic"]){dojo._hasResource["dijit._base.typematic"]=true;dojo.provide("dijit._base.typematic");dijit.typematic={_fireEventAndReload:function(){this._timer=null;this._callback(++this._count,this._node,this._evt);this._currentTimeout=(this._currentTimeout<0)?this._initialDelay:((this._subsequentDelay>1)?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay));this._timer=setTimeout(dojo.hitch(this,"_fireEventAndReload"),this._currentTimeout);},trigger:function(evt,_555,node,_557,obj,_559,_55a){if(obj!=this._obj){this.stop();this._initialDelay=_55a||500;this._subsequentDelay=_559||0.9;this._obj=obj;this._evt=evt;this._node=node;this._currentTimeout=-1;this._count=-1;this._callback=dojo.hitch(_555,_557);this._fireEventAndReload();}},stop:function(){if(this._timer){clearTimeout(this._timer);this._timer=null;}if(this._obj){this._callback(-1,this._node,this._evt);this._obj=null;}},addKeyListener:function(node,_55c,_55d,_55e,_55f,_560){return [dojo.connect(node,"onkeypress",this,function(evt){if(evt.keyCode==_55c.keyCode&&(!_55c.charCode||_55c.charCode==evt.charCode)&&(_55c.ctrlKey===undefined||_55c.ctrlKey==evt.ctrlKey)&&(_55c.altKey===undefined||_55c.altKey==evt.ctrlKey)&&(_55c.shiftKey===undefined||_55c.shiftKey==evt.ctrlKey)){dojo.stopEvent(evt);dijit.typematic.trigger(_55c,_55d,node,_55e,_55c,_55f,_560);}else{if(dijit.typematic._obj==_55c){dijit.typematic.stop();}}}),dojo.connect(node,"onkeyup",this,function(evt){if(dijit.typematic._obj==_55c){dijit.typematic.stop();}})];},addMouseListener:function(node,_564,_565,_566,_567){var dc=dojo.connect;return [dc(node,"mousedown",this,function(evt){dojo.stopEvent(evt);dijit.typematic.trigger(evt,_564,node,_565,node,_566,_567);}),dc(node,"mouseup",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop();}),dc(node,"mouseout",this,function(evt){dojo.stopEvent(evt);dijit.typematic.stop();}),dc(node,"mousemove",this,function(evt){dojo.stopEvent(evt);}),dc(node,"dblclick",this,function(evt){dojo.stopEvent(evt);if(dojo.isIE){dijit.typematic.trigger(evt,_564,node,_565,node,_566,_567);setTimeout(dojo.hitch(this,dijit.typematic.stop),50);}})];},addListener:function(_56e,_56f,_570,_571,_572,_573,_574){return this.addKeyListener(_56f,_570,_571,_572,_573,_574).concat(this.addMouseListener(_56e,_571,_572,_573,_574));}};}if(!dojo._hasResource["dijit._base.wai"]){dojo._hasResource["dijit._base.wai"]=true;dojo.provide("dijit._base.wai");dijit.wai={onload:function(){var div=dojo.doc.createElement("div");div.id="a11yTestNode";div.style.cssText="border: 1px solid;"+"border-color:red green;"+"position: absolute;"+"height: 5px;"+"top: -999px;"+"background-image: url(\""+dojo.moduleUrl("dojo","resources/blank.gif")+"\");";dojo.body().appendChild(div);var cs=dojo.getComputedStyle(div);if(cs){var _577=cs.backgroundImage;var _578=(cs.borderTopColor==cs.borderRightColor)||(_577!=null&&(_577=="none"||_577=="url(invalid-url:)"));dojo[_578?"addClass":"removeClass"](dojo.body(),"dijit_a11y");dojo.body().removeChild(div);}}};if(dojo.isIE||dojo.isMoz){dojo._loaders.unshift(dijit.wai.onload);}dojo.mixin(dijit,{hasWaiRole:function(elem){return elem.hasAttribute?elem.hasAttribute("role"):!!elem.getAttribute("role");},getWaiRole:function(elem){var _57b=elem.getAttribute("role");if(_57b){var _57c=_57b.indexOf(":");return _57c==-1?_57b:_57b.substring(_57c+1);}else{return "";}},setWaiRole:function(elem,role){elem.setAttribute("role",(dojo.isFF&&dojo.isFF<3)?"wairole:"+role:role);},removeWaiRole:function(elem){elem.removeAttribute("role");},hasWaiState:function(elem,_581){if(dojo.isFF&&dojo.isFF<3){return elem.hasAttributeNS("http://www.w3.org/2005/07/aaa",_581);}else{return elem.hasAttribute?elem.hasAttribute("aria-"+_581):!!elem.getAttribute("aria-"+_581);}},getWaiState:function(elem,_583){if(dojo.isFF&&dojo.isFF<3){return elem.getAttributeNS("http://www.w3.org/2005/07/aaa",_583);}else{var _584=elem.getAttribute("aria-"+_583);return _584?_584:"";}},setWaiState:function(elem,_586,_587){if(dojo.isFF&&dojo.isFF<3){elem.setAttributeNS("http://www.w3.org/2005/07/aaa","aaa:"+_586,_587);}else{elem.setAttribute("aria-"+_586,_587);}},removeWaiState:function(elem,_589){if(dojo.isFF&&dojo.isFF<3){elem.removeAttributeNS("http://www.w3.org/2005/07/aaa",_589);}else{elem.removeAttribute("aria-"+_589);}}});}if(!dojo._hasResource["dijit._base"]){dojo._hasResource["dijit._base"]=true;dojo.provide("dijit._base");if(dojo.isSafari){dojo.connect(window,"load",function(){window.resizeBy(1,0);setTimeout(function(){window.resizeBy(-1,0);},10);});}}if(!dojo._hasResource["dijit._Widget"]){dojo._hasResource["dijit._Widget"]=true;dojo.provide("dijit._Widget");dojo.require("dijit._base");dojo.declare("dijit._Widget",null,{id:"",lang:"",dir:"","class":"",style:"",title:"",srcNodeRef:null,domNode:null,attributeMap:{id:"",dir:"",lang:"","class":"",style:"",title:""},postscript:function(_58a,_58b){this.create(_58a,_58b);},create:function(_58c,_58d){this.srcNodeRef=dojo.byId(_58d);this._connects=[];this._attaches=[];if(this.srcNodeRef&&(typeof this.srcNodeRef.id=="string")){this.id=this.srcNodeRef.id;}if(_58c){this.params=_58c;dojo.mixin(this,_58c);}this.postMixInProperties();if(!this.id){this.id=dijit.getUniqueId(this.declaredClass.replace(/\./g,"_"));}dijit.registry.add(this);this.buildRendering();if(this.domNode){for(var attr in this.attributeMap){var _58f=this[attr];if(typeof _58f!="object"&&((_58f!==""&&_58f!==false)||(_58c&&_58c[attr]))){this.setAttribute(attr,_58f);}}}if(this.domNode){this.domNode.setAttribute("widgetId",this.id);}this.postCreate();if(this.srcNodeRef&&!this.srcNodeRef.parentNode){delete this.srcNodeRef;}},postMixInProperties:function(){},buildRendering:function(){this.domNode=this.srcNodeRef||dojo.doc.createElement("div");},postCreate:function(){},startup:function(){this._started=true;},destroyRecursive:function(_590){this.destroyDescendants();this.destroy();},destroy:function(_591){this.uninitialize();dojo.forEach(this._connects,function(_592){dojo.forEach(_592,dojo.disconnect);});dojo.forEach(this._supportingWidgets||[],function(w){w.destroy();});this.destroyRendering(_591);dijit.registry.remove(this.id);},destroyRendering:function(_594){if(this.bgIframe){this.bgIframe.destroy();delete this.bgIframe;}if(this.domNode){dojo._destroyElement(this.domNode);delete this.domNode;}if(this.srcNodeRef){dojo._destroyElement(this.srcNodeRef);delete this.srcNodeRef;}},destroyDescendants:function(){dojo.forEach(this.getDescendants(),function(_595){_595.destroy();});},uninitialize:function(){return false;},onFocus:function(){},onBlur:function(){},_onFocus:function(e){this.onFocus();},_onBlur:function(){this.onBlur();},setAttribute:function(attr,_598){var _599=this[this.attributeMap[attr]||"domNode"];this[attr]=_598;switch(attr){case "class":dojo.addClass(_599,_598);break;case "style":if(_599.style.cssText){_599.style.cssText+="; "+_598;}else{_599.style.cssText=_598;}break;default:if(/^on[A-Z]/.test(attr)){attr=attr.toLowerCase();}if(typeof _598=="function"){_598=dojo.hitch(this,_598);}dojo.attr(_599,attr,_598);}},toString:function(){return "[Widget "+this.declaredClass+", "+(this.id||"NO ID")+"]";},getDescendants:function(){if(this.containerNode){var list=dojo.query("[widgetId]",this.containerNode);return list.map(dijit.byNode);}else{return [];}},nodesWithKeyClick:["input","button"],connect:function(obj,_59c,_59d){var _59e=[];if(_59c=="ondijitclick"){if(!this.nodesWithKeyClick[obj.nodeName]){_59e.push(dojo.connect(obj,"onkeydown",this,function(e){if(e.keyCode==dojo.keys.ENTER){return (dojo.isString(_59d))?this[_59d](e):_59d.call(this,e);}else{if(e.keyCode==dojo.keys.SPACE){dojo.stopEvent(e);}}}));_59e.push(dojo.connect(obj,"onkeyup",this,function(e){if(e.keyCode==dojo.keys.SPACE){return dojo.isString(_59d)?this[_59d](e):_59d.call(this,e);}}));}_59c="onclick";}_59e.push(dojo.connect(obj,_59c,this,_59d));this._connects.push(_59e);return _59e;},disconnect:function(_5a1){for(var i=0;i<this._connects.length;i++){if(this._connects[i]==_5a1){dojo.forEach(_5a1,dojo.disconnect);this._connects.splice(i,1);return;}}},isLeftToRight:function(){if(!("_ltr" in this)){this._ltr=dojo.getComputedStyle(this.domNode).direction!="rtl";}return this._ltr;},isFocusable:function(){return this.focus&&(dojo.style(this.domNode,"display")!="none");}});}if(!dojo._hasResource["dojo.string"]){dojo._hasResource["dojo.string"]=true;dojo.provide("dojo.string");dojo.string.pad=function(text,size,ch,end){var out=String(text);if(!ch){ch="0";}while(out.length<size){if(end){out+=ch;}else{out=ch+out;}}return out;};dojo.string.substitute=function(_5a8,map,_5aa,_5ab){return _5a8.replace(/\$\{([^\s\:\}]+)(?:\:([^\s\:\}]+))?\}/g,function(_5ac,key,_5ae){var _5af=dojo.getObject(key,false,map);if(_5ae){_5af=dojo.getObject(_5ae,false,_5ab)(_5af);}if(_5aa){_5af=_5aa(_5af,key);}return _5af.toString();});};dojo.string.trim=function(str){str=str.replace(/^\s+/,"");for(var i=str.length-1;i>0;i--){if(/\S/.test(str.charAt(i))){str=str.substring(0,i+1);break;}}return str;};}if(!dojo._hasResource["dojo.date.stamp"]){dojo._hasResource["dojo.date.stamp"]=true;dojo.provide("dojo.date.stamp");dojo.date.stamp.fromISOString=function(_5b2,_5b3){if(!dojo.date.stamp._isoRegExp){dojo.date.stamp._isoRegExp=/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(.\d+)?)?((?:[+-](\d{2}):(\d{2}))|Z)?)?$/;}var _5b4=dojo.date.stamp._isoRegExp.exec(_5b2);var _5b5=null;if(_5b4){_5b4.shift();if(_5b4[1]){_5b4[1]--;}if(_5b4[6]){_5b4[6]*=1000;}if(_5b3){_5b3=new Date(_5b3);dojo.map(["FullYear","Month","Date","Hours","Minutes","Seconds","Milliseconds"],function(prop){return _5b3["get"+prop]();}).forEach(function(_5b7,_5b8){if(_5b4[_5b8]===undefined){_5b4[_5b8]=_5b7;}});}_5b5=new Date(_5b4[0]||1970,_5b4[1]||0,_5b4[2]||1,_5b4[3]||0,_5b4[4]||0,_5b4[5]||0,_5b4[6]||0);var _5b9=0;var _5ba=_5b4[7]&&_5b4[7].charAt(0);if(_5ba!="Z"){_5b9=((_5b4[8]||0)*60)+(Number(_5b4[9])||0);if(_5ba!="-"){_5b9*=-1;}}if(_5ba){_5b9-=_5b5.getTimezoneOffset();}if(_5b9){_5b5.setTime(_5b5.getTime()+_5b9*60000);}}return _5b5;};dojo.date.stamp.toISOString=function(_5bb,_5bc){var _=function(n){return (n<10)?"0"+n:n;};_5bc=_5bc||{};var _5bf=[];var _5c0=_5bc.zulu?"getUTC":"get";var date="";if(_5bc.selector!="time"){var year=_5bb[_5c0+"FullYear"]();date=["0000".substr((year+"").length)+year,_(_5bb[_5c0+"Month"]()+1),_(_5bb[_5c0+"Date"]())].join("-");}_5bf.push(date);if(_5bc.selector!="date"){var time=[_(_5bb[_5c0+"Hours"]()),_(_5bb[_5c0+"Minutes"]()),_(_5bb[_5c0+"Seconds"]())].join(":");var _5c4=_5bb[_5c0+"Milliseconds"]();if(_5bc.milliseconds){time+="."+(_5c4<100?"0":"")+_(_5c4);}if(_5bc.zulu){time+="Z";}else{if(_5bc.selector!="time"){var _5c5=_5bb.getTimezoneOffset();var _5c6=Math.abs(_5c5);time+=(_5c5>0?"-":"+")+_(Math.floor(_5c6/60))+":"+_(_5c6%60);}}_5bf.push(time);}return _5bf.join("T");};}if(!dojo._hasResource["dojo.parser"]){dojo._hasResource["dojo.parser"]=true;dojo.provide("dojo.parser");dojo.parser=new function(){var d=dojo;var _5c8=d._scopeName+"Type";var qry="["+_5c8+"]";function val2type(_5ca){if(d.isString(_5ca)){return "string";}if(typeof _5ca=="number"){return "number";}if(typeof _5ca=="boolean"){return "boolean";}if(d.isFunction(_5ca)){return "function";}if(d.isArray(_5ca)){return "array";}if(_5ca instanceof Date){return "date";}if(_5ca instanceof d._Url){return "url";}return "object";};function str2obj(_5cb,type){switch(type){case "string":return _5cb;case "number":return _5cb.length?Number(_5cb):NaN;case "boolean":return typeof _5cb=="boolean"?_5cb:!(_5cb.toLowerCase()=="false");case "function":if(d.isFunction(_5cb)){_5cb=_5cb.toString();_5cb=d.trim(_5cb.substring(_5cb.indexOf("{")+1,_5cb.length-1));}try{if(_5cb.search(/[^\w\.]+/i)!=-1){_5cb=d.parser._nameAnonFunc(new Function(_5cb),this);}return d.getObject(_5cb,false);}catch(e){return new Function();}case "array":return _5cb.split(/\s*,\s*/);case "date":switch(_5cb){case "":return new Date("");case "now":return new Date();default:return d.date.stamp.fromISOString(_5cb);}case "url":return d.baseUrl+_5cb;default:return d.fromJson(_5cb);}};var _5cd={};function getClassInfo(_5ce){if(!_5cd[_5ce]){var cls=d.getObject(_5ce);if(!d.isFunction(cls)){throw new Error("Could not load class '"+_5ce+"'. Did you spell the name correctly and use a full path, like 'dijit.form.Button'?");}var _5d0=cls.prototype;var _5d1={};for(var name in _5d0){if(name.charAt(0)=="_"){continue;}var _5d3=_5d0[name];_5d1[name]=val2type(_5d3);}_5cd[_5ce]={cls:cls,params:_5d1};}return _5cd[_5ce];};this._functionFromScript=function(_5d4){var _5d5="";var _5d6="";var _5d7=_5d4.getAttribute("args");if(_5d7){d.forEach(_5d7.split(/\s*,\s*/),function(part,idx){_5d5+="var "+part+" = arguments["+idx+"]; ";});}var _5da=_5d4.getAttribute("with");if(_5da&&_5da.length){d.forEach(_5da.split(/\s*,\s*/),function(part){_5d5+="with("+part+"){";_5d6+="}";});}return new Function(_5d5+_5d4.innerHTML+_5d6);};this.instantiate=function(_5dc){var _5dd=[];d.forEach(_5dc,function(node){if(!node){return;}var type=node.getAttribute(_5c8);if((!type)||(!type.length)){return;}var _5e0=getClassInfo(type);var _5e1=_5e0.cls;var ps=_5e1._noScript||_5e1.prototype._noScript;var _5e3={};var _5e4=node.attributes;for(var name in _5e0.params){var item=_5e4.getNamedItem(name);if(!item||(!item.specified&&(!dojo.isIE||name.toLowerCase()!="value"))){continue;}var _5e7=item.value;switch(name){case "class":_5e7=node.className;break;case "style":_5e7=node.style&&node.style.cssText;}var _5e8=_5e0.params[name];_5e3[name]=str2obj(_5e7,_5e8);}if(!ps){var _5e9=[],_5ea=[];d.query("> script[type^='dojo/']",node).orphan().forEach(function(_5eb){var _5ec=_5eb.getAttribute("event"),type=_5eb.getAttribute("type"),nf=d.parser._functionFromScript(_5eb);if(_5ec){if(type=="dojo/connect"){_5e9.push({event:_5ec,func:nf});}else{_5e3[_5ec]=nf;}}else{_5ea.push(nf);}});}var _5ee=_5e1["markupFactory"];if(!_5ee&&_5e1["prototype"]){_5ee=_5e1.prototype["markupFactory"];}var _5ef=_5ee?_5ee(_5e3,node,_5e1):new _5e1(_5e3,node);_5dd.push(_5ef);var _5f0=node.getAttribute("jsId");if(_5f0){d.setObject(_5f0,_5ef);}if(!ps){d.forEach(_5e9,function(_5f1){d.connect(_5ef,_5f1.event,null,_5f1.func);});d.forEach(_5ea,function(func){func.call(_5ef);});}});d.forEach(_5dd,function(_5f3){if(_5f3&&_5f3.startup&&!_5f3._started&&(!_5f3.getParent||!_5f3.getParent())){_5f3.startup();}});return _5dd;};this.parse=function(_5f4){var list=d.query(qry,_5f4);var _5f6=this.instantiate(list);return _5f6;};}();(function(){var _5f7=function(){if(dojo.config["parseOnLoad"]==true){dojo.parser.parse();}};if(dojo.exists("dijit.wai.onload")&&(dijit.wai.onload===dojo._loaders[0])){dojo._loaders.splice(1,0,_5f7);}else{dojo._loaders.unshift(_5f7);}})();dojo.parser._anonCtr=0;dojo.parser._anon={};dojo.parser._nameAnonFunc=function(_5f8,_5f9){var jpn="$joinpoint";var nso=(_5f9||dojo.parser._anon);if(dojo.isIE){var cn=_5f8["__dojoNameCache"];if(cn&&nso[cn]===_5f8){return _5f8["__dojoNameCache"];}}var ret="__"+dojo.parser._anonCtr++;while(typeof nso[ret]!="undefined"){ret="__"+dojo.parser._anonCtr++;}nso[ret]=_5f8;return ret;};}if(!dojo._hasResource["dijit._Templated"]){dojo._hasResource["dijit._Templated"]=true;dojo.provide("dijit._Templated");dojo.declare("dijit._Templated",null,{templateNode:null,templateString:null,templatePath:null,widgetsInTemplate:false,containerNode:null,_skipNodeCache:false,_stringRepl:function(tmpl){var _5ff=this.declaredClass,_600=this;return dojo.string.substitute(tmpl,this,function(_601,key){if(key.charAt(0)=="!"){_601=_600[key.substr(1)];}if(typeof _601=="undefined"){throw new Error(_5ff+" template:"+key);}if(!_601){return "";}return key.charAt(0)=="!"?_601:_601.toString().replace(/"/g,"&quot;");},this);},buildRendering:function(){var _603=dijit._Templated.getCachedTemplate(this.templatePath,this.templateString,this._skipNodeCache);var node;if(dojo.isString(_603)){node=dijit._Templated._createNodesFromText(this._stringRepl(_603))[0];}else{node=_603.cloneNode(true);}this._attachTemplateNodes(node);var _605=this.srcNodeRef;if(_605&&_605.parentNode){_605.parentNode.replaceChild(node,_605);}this.domNode=node;if(this.widgetsInTemplate){var cw=this._supportingWidgets=dojo.parser.parse(node);this._attachTemplateNodes(cw,function(n,p){return n[p];});}this._fillContent(_605);},_fillContent:function(_609){var dest=this.containerNode;if(_609&&dest){while(_609.hasChildNodes()){dest.appendChild(_609.firstChild);}}},_attachTemplateNodes:function(_60b,_60c){_60c=_60c||function(n,p){return n.getAttribute(p);};var _60f=dojo.isArray(_60b)?_60b:(_60b.all||_60b.getElementsByTagName("*"));var x=dojo.isArray(_60b)?0:-1;for(;x<_60f.length;x++){var _611=(x==-1)?_60b:_60f[x];if(this.widgetsInTemplate&&_60c(_611,"dojoType")){continue;}var _612=_60c(_611,"dojoAttachPoint");if(_612){var _613,_614=_612.split(/\s*,\s*/);while((_613=_614.shift())){if(dojo.isArray(this[_613])){this[_613].push(_611);}else{this[_613]=_611;}}}var _615=_60c(_611,"dojoAttachEvent");if(_615){var _616,_617=_615.split(/\s*,\s*/);var trim=dojo.trim;while((_616=_617.shift())){if(_616){var _619=null;if(_616.indexOf(":")!=-1){var _61a=_616.split(":");_616=trim(_61a[0]);_619=trim(_61a[1]);}else{_616=trim(_616);}if(!_619){_619=_616;}this.connect(_611,_616,_619);}}}var role=_60c(_611,"waiRole");if(role){dijit.setWaiRole(_611,role);}var _61c=_60c(_611,"waiState");if(_61c){dojo.forEach(_61c.split(/\s*,\s*/),function(_61d){if(_61d.indexOf("-")!=-1){var pair=_61d.split("-");dijit.setWaiState(_611,pair[0],pair[1]);}});}}}});dijit._Templated._templateCache={};dijit._Templated.getCachedTemplate=function(_61f,_620,_621){var _622=dijit._Templated._templateCache;var key=_620||_61f;var _624=_622[key];if(_624){return _624;}if(!_620){_620=dijit._Templated._sanitizeTemplateString(dojo._getText(_61f));}_620=dojo.string.trim(_620);if(_621||_620.match(/\$\{([^\}]+)\}/g)){return (_622[key]=_620);}else{return (_622[key]=dijit._Templated._createNodesFromText(_620)[0]);}};dijit._Templated._sanitizeTemplateString=function(_625){if(_625){_625=_625.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");var _626=_625.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);if(_626){_625=_626[1];}}else{_625="";}return _625;};if(dojo.isIE){dojo.addOnUnload(function(){var _627=dijit._Templated._templateCache;for(var key in _627){var _629=_627[key];if(!isNaN(_629.nodeType)){dojo._destroyElement(_629);}delete _627[key];}});}(function(){var _62a={cell:{re:/^<t[dh][\s\r\n>]/i,pre:"<table><tbody><tr>",post:"</tr></tbody></table>"},row:{re:/^<tr[\s\r\n>]/i,pre:"<table><tbody>",post:"</tbody></table>"},section:{re:/^<(thead|tbody|tfoot)[\s\r\n>]/i,pre:"<table>",post:"</table>"}};var tn;dijit._Templated._createNodesFromText=function(text){if(!tn){tn=dojo.doc.createElement("div");tn.style.display="none";dojo.body().appendChild(tn);}var _62d="none";var _62e=text.replace(/^\s+/,"");for(var type in _62a){var map=_62a[type];if(map.re.test(_62e)){_62d=type;text=map.pre+text+map.post;break;}}tn.innerHTML=text;if(tn.normalize){tn.normalize();}var tag={cell:"tr",row:"tbody",section:"table"}[_62d];var _632=(typeof tag!="undefined")?tn.getElementsByTagName(tag)[0]:tn;var _633=[];while(_632.firstChild){_633.push(_632.removeChild(_632.firstChild));}tn.innerHTML="";return _633;};})();dojo.extend(dijit._Widget,{dojoAttachEvent:"",dojoAttachPoint:"",waiRole:"",waiState:""});}if(!dojo._hasResource["dijit._Container"]){dojo._hasResource["dijit._Container"]=true;dojo.provide("dijit._Container");dojo.declare("dijit._Contained",null,{getParent:function(){for(var p=this.domNode.parentNode;p;p=p.parentNode){var id=p.getAttribute&&p.getAttribute("widgetId");if(id){var _636=dijit.byId(id);return _636.isContainer?_636:null;}}return null;},_getSibling:function(_637){var node=this.domNode;do{node=node[_637+"Sibling"];}while(node&&node.nodeType!=1);if(!node){return null;}var id=node.getAttribute("widgetId");return dijit.byId(id);},getPreviousSibling:function(){return this._getSibling("previous");},getNextSibling:function(){return this._getSibling("next");}});dojo.declare("dijit._Container",null,{isContainer:true,addChild:function(_63a,_63b){if(_63b===undefined){_63b="last";}var _63c=this.containerNode||this.domNode;if(_63b&&typeof _63b=="number"){var _63d=dojo.query("> [widgetid]",_63c);if(_63d&&_63d.length>=_63b){_63c=_63d[_63b-1];_63b="after";}}dojo.place(_63a.domNode,_63c,_63b);if(this._started&&!_63a._started){_63a.startup();}},removeChild:function(_63e){var node=_63e.domNode;node.parentNode.removeChild(node);},_nextElement:function(node){do{node=node.nextSibling;}while(node&&node.nodeType!=1);return node;},_firstElement:function(node){node=node.firstChild;if(node&&node.nodeType!=1){node=this._nextElement(node);}return node;},getChildren:function(){return dojo.query("> [widgetId]",this.containerNode||this.domNode).map(dijit.byNode);},hasChildren:function(){var cn=this.containerNode||this.domNode;return !!this._firstElement(cn);},_getSiblingOfChild:function(_643,dir){var node=_643.domNode;var _646=(dir>0?"nextSibling":"previousSibling");do{node=node[_646];}while(node&&(node.nodeType!=1||!dijit.byNode(node)));return node?dijit.byNode(node):null;}});dojo.declare("dijit._KeyNavContainer",[dijit._Container],{_keyNavCodes:{},connectKeyNavHandlers:function(_647,_648){var _649=this._keyNavCodes={};var prev=dojo.hitch(this,this.focusPrev);var next=dojo.hitch(this,this.focusNext);dojo.forEach(_647,function(code){_649[code]=prev;});dojo.forEach(_648,function(code){_649[code]=next;});this.connect(this.domNode,"onkeypress","_onContainerKeypress");this.connect(this.domNode,"onfocus","_onContainerFocus");},startupKeyNavChildren:function(){dojo.forEach(this.getChildren(),dojo.hitch(this,"_startupChild"));},addChild:function(_64e,_64f){dijit._KeyNavContainer.superclass.addChild.apply(this,arguments);this._startupChild(_64e);},focus:function(){this.focusFirstChild();},focusFirstChild:function(){this.focusChild(this._getFirstFocusableChild());},focusNext:function(){if(this.focusedChild&&this.focusedChild.hasNextFocalNode&&this.focusedChild.hasNextFocalNode()){this.focusedChild.focusNext();return;}var _650=this._getNextFocusableChild(this.focusedChild,1);if(_650.getFocalNodes){this.focusChild(_650,_650.getFocalNodes()[0]);}else{this.focusChild(_650);}},focusPrev:function(){if(this.focusedChild&&this.focusedChild.hasPrevFocalNode&&this.focusedChild.hasPrevFocalNode()){this.focusedChild.focusPrev();return;}var _651=this._getNextFocusableChild(this.focusedChild,-1);if(_651.getFocalNodes){var _652=_651.getFocalNodes();this.focusChild(_651,_652[_652.length-1]);}else{this.focusChild(_651);}},focusChild:function(_653,node){if(_653){if(this.focusedChild&&_653!==this.focusedChild){this._onChildBlur(this.focusedChild);}this.focusedChild=_653;if(node&&_653.focusFocalNode){_653.focusFocalNode(node);}else{_653.focus();}}},_startupChild:function(_655){if(_655.getFocalNodes){dojo.forEach(_655.getFocalNodes(),function(node){dojo.attr(node,"tabindex",-1);this._connectNode(node);},this);}else{var node=_655.focusNode||_655.domNode;if(_655.isFocusable()){dojo.attr(node,"tabindex",-1);}this._connectNode(node);}},_connectNode:function(node){this.connect(node,"onfocus","_onNodeFocus");this.connect(node,"onblur","_onNodeBlur");},_onContainerFocus:function(evt){if(evt.target===this.domNode){this.focusFirstChild();}},_onContainerKeypress:function(evt){if(evt.ctrlKey||evt.altKey){return;}var func=this._keyNavCodes[evt.keyCode];if(func){func();dojo.stopEvent(evt);}},_onNodeFocus:function(evt){dojo.attr(this.domNode,"tabindex",-1);var _65d=dijit.getEnclosingWidget(evt.target);if(_65d&&_65d.isFocusable()){this.focusedChild=_65d;}dojo.stopEvent(evt);},_onNodeBlur:function(evt){if(this.tabIndex){dojo.attr(this.domNode,"tabindex",this.tabIndex);}dojo.stopEvent(evt);},_onChildBlur:function(_65f){},_getFirstFocusableChild:function(){return this._getNextFocusableChild(null,1);},_getNextFocusableChild:function(_660,dir){if(_660){_660=this._getSiblingOfChild(_660,dir);}var _662=this.getChildren();for(var i=0;i<_662.length;i++){if(!_660){_660=_662[(dir>0)?0:(_662.length-1)];}if(_660.isFocusable()){return _660;}_660=this._getSiblingOfChild(_660,dir);}return null;}});}if(!dojo._hasResource["esri.dijit.InfoWindow"]){dojo._hasResource["esri.dijit.InfoWindow"]=true;dojo.provide("esri.dijit.InfoWindow");dojo.declare("esri.dijit.InfoWindow",[dijit._Widget,dijit._Templated,dijit._Container],{isContainer:true,templatePath:esriDijitConfig.infoWindow.templatePath,templateString:esriDijitConfig.infoWindow.templateString,anchor:"upperright",fixedAnchor:null,coords:null,isShowing:true,isContentShowing:true,isTitleBarShowing:true,width:250,height:150,title:"Info Window",startup:function(){this._infowindow=this.domNode;var id=this.id;this._window=dojo.byId(id+".window");this._topleft=dojo.byId(id+".topleft");this._topright=dojo.byId(id+".topright");this._user=dojo.byId(id+".user");this._titlebar=dojo.byId(id+".titlebar");this._hide=dojo.byId(id+".hide");this._title=dojo.byId(id+".title");this._border=dojo.byId(id+".border");this._content=dojo.byId(id+".content");this._bottomleft=dojo.byId(id+".bottomleft");this._bottomright=dojo.byId(id+".bottomright");this._pointer=dojo.byId(id+".pointer");this._ANCHORS=[esri.dijit.InfoWindow.ANCHOR_UPPERRIGHT,esri.dijit.InfoWindow.ANCHOR_LOWERRIGHT,esri.dijit.InfoWindow.ANCHOR_LOWERLEFT,esri.dijit.InfoWindow.ANCHOR_UPPERLEFT];this._anchorsLength=this._ANCHORS.length;this.resize(this.width,this.height);this.hide();},resize:function(_665,_666){dojo.style(this._topleft,{height:_666+"px",marginLeft:_665+"px"});dojo.style(this._topright,{width:_665+"px",height:_666+"px"});dojo.style(this._user,"width",(_665-8)+"px");dojo.style(this._hide,"marginLeft",(_665-22)+"px");dojo.style(this._title,"width",(_665-25)+"px");dojo.style(this._content,"height",(_666-37)+"px");dojo.style(this._bottomleft,{marginLeft:_665+"px",marginTop:_666+"px"});dojo.style(this._bottomright,{width:(_665-5)+"px",marginTop:_666+"px"});this.width=_665;this.height=_666;},show:function(_667,_668){this.coords=_667;var _669=this._ANCHORS;if(!_668||dojo.indexOf(_669,_668)==-1){_668=_669[0];}dojo.removeClass(this._pointer,this.anchor);_668=(this.anchor=this.fixedAnchor?this.fixedAnchor:_668);dojo.style(this._infowindow,{left:_667.x+"px",top:_667.y+"px"});if(_668===esri.dijit.InfoWindow.ANCHOR_UPPERLEFT){dojo.style(this._window,{left:null,right:(this.width+18)+"px",top:null,bottom:(this.height+50)+"px"});}else{if(_668===esri.dijit.InfoWindow.ANCHOR_UPPERRIGHT){dojo.style(this._window,{left:"6px",right:null,top:null,bottom:(this.height+50)+"px"});}else{if(_668===esri.dijit.InfoWindow.ANCHOR_LOWERRIGHT){dojo.style(this._window,{left:"6px",right:null,top:"43px",bottom:null});}else{if(_668===esri.dijit.InfoWindow.ANCHOR_LOWERLEFT){dojo.style(this._window,{left:null,right:(this.width+18)+"px",top:"43px",bottom:null});}}}}dojo.addClass(this._pointer,_668);esri.show(this.domNode);this.isShowing=true;if(!arguments[2]){this.onShow();}},hide:function(evt){esri.hide(this.domNode);this.isShowing=false;if(!arguments[1]){this.onHide();}},showTitleBar:function(){esri.show(this._titlebar);esri.show(this._border);this.isTitleBarShowing=true;},hideTitleBar:function(){esri.hide(this._titlebar);esri.hide(this._border);this.isTitleBarShowing=false;},showContent:function(){esri.show(this._content);esri.show(this._border);this.isContentShowing=true;},hideContent:function(){esri.hide(this._content);esri.hide(this._border);this.isContentShowing=false;},move:function(_66b){dojo.style(this._infowindow,{left:_66b.x+"px",top:_66b.y+"px"});},setTitle:function(_66c){this.title=(this._title.innerHTML=_66c);return this;},setContent:function(_66d){if(dojo.isString(_66d)){this._content.innerHTML=_66d;}else{dojox.data.dom.replaceChildren(this._content,_66d);}return this;},onShow:function(){},onHide:function(){}});dojo.mixin(esri.dijit.InfoWindow,{ANCHOR_UPPERRIGHT:"upperright",ANCHOR_LOWERRIGHT:"lowerright",ANCHOR_LOWERLEFT:"lowerleft",ANCHOR_UPPERLEFT:"upperleft"});}if(!dojo._hasResource["dijit.form._FormWidget"]){dojo._hasResource["dijit.form._FormWidget"]=true;dojo.provide("dijit.form._FormWidget");dojo.declare("dijit.form._FormWidget",[dijit._Widget,dijit._Templated],{baseClass:"",name:"",alt:"",value:"",type:"text",tabIndex:"0",disabled:false,readOnly:false,intermediateChanges:false,attributeMap:dojo.mixin(dojo.clone(dijit._Widget.prototype.attributeMap),{value:"focusNode",disabled:"focusNode",readOnly:"focusNode",id:"focusNode",tabIndex:"focusNode",alt:"focusNode"}),setAttribute:function(attr,_66f){this.inherited(arguments);switch(attr){case "disabled":var _670=this[this.attributeMap["tabIndex"]||"domNode"];if(_66f){this._hovering=false;this._active=false;_670.removeAttribute("tabIndex");}else{_670.setAttribute("tabIndex",this.tabIndex);}dijit.setWaiState(this[this.attributeMap["disabled"]||"domNode"],"disabled",_66f);this._setStateClass();}},setDisabled:function(_671){dojo.deprecated("setDisabled("+_671+") is deprecated. Use setAttribute('disabled',"+_671+") instead.","","2.0");this.setAttribute("disabled",_671);},_onMouse:function(_672){var _673=_672.currentTarget;if(_673&&_673.getAttribute){this.stateModifier=_673.getAttribute("stateModifier")||"";}if(!this.disabled){switch(_672.type){case "mouseenter":case "mouseover":this._hovering=true;this._active=this._mouseDown;break;case "mouseout":case "mouseleave":this._hovering=false;this._active=false;break;case "mousedown":this._active=true;this._mouseDown=true;var _674=this.connect(dojo.body(),"onmouseup",function(){this._active=false;this._mouseDown=false;this._setStateClass();this.disconnect(_674);});if(this.isFocusable()){this.focus();}break;}this._setStateClass();}},isFocusable:function(){return !this.disabled&&!this.readOnly&&this.focusNode&&(dojo.style(this.domNode,"display")!="none");},focus:function(){setTimeout(dojo.hitch(this,dijit.focus,this.focusNode),0);},_setStateClass:function(){if(!("staticClass" in this)){this.staticClass=(this.stateNode||this.domNode).className;}var _675=[this.baseClass];function multiply(_676){_675=_675.concat(dojo.map(_675,function(c){return c+_676;}),"dijit"+_676);};if(this.checked){multiply("Checked");}if(this.state){multiply(this.state);}if(this.selected){multiply("Selected");}if(this.disabled){multiply("Disabled");}else{if(this.readOnly){multiply("ReadOnly");}else{if(this._active){multiply(this.stateModifier+"Active");}else{if(this._focused){multiply("Focused");}if(this._hovering){multiply(this.stateModifier+"Hover");}}}}(this.stateNode||this.domNode).className=this.staticClass+" "+_675.join(" ");},onChange:function(_678){},_onChangeMonitor:"value",_onChangeActive:false,_handleOnChange:function(_679,_67a){this._lastValue=_679;if(this._lastValueReported==undefined&&(_67a===null||!this._onChangeActive)){this._resetValue=this._lastValueReported=_679;}if((this.intermediateChanges||_67a||_67a===undefined)&&((_679&&_679.toString)?_679.toString():_679)!==((this._lastValueReported&&this._lastValueReported.toString)?this._lastValueReported.toString():this._lastValueReported)){this._lastValueReported=_679;if(this._onChangeActive){this.onChange(_679);}}},reset:function(){this._hasBeenBlurred=false;if(this.setValue&&!this._getValueDeprecated){this.setValue(this._resetValue,true);}else{if(this._onChangeMonitor){this.setAttribute(this._onChangeMonitor,(this._resetValue!==undefined&&this._resetValue!==null)?this._resetValue:"");}}},create:function(){this.inherited(arguments);this._onChangeActive=true;this._setStateClass();},destroy:function(){if(this._layoutHackHandle){clearTimeout(this._layoutHackHandle);}this.inherited(arguments);},setValue:function(_67b){dojo.deprecated("dijit.form._FormWidget:setValue("+_67b+") is deprecated.  Use setAttribute('value',"+_67b+") instead.","","2.0");this.setAttribute("value",_67b);},_getValueDeprecated:true,getValue:function(){dojo.deprecated("dijit.form._FormWidget:getValue() is deprecated.  Use widget.value instead.","","2.0");return this.value;},_layoutHack:function(){if(dojo.isFF==2){var node=this.domNode;var old=node.style.opacity;node.style.opacity="0.999";this._layoutHackHandle=setTimeout(dojo.hitch(this,function(){this._layoutHackHandle=null;node.style.opacity=old;}),0);}}});dojo.declare("dijit.form._FormValueWidget",dijit.form._FormWidget,{attributeMap:dojo.mixin(dojo.clone(dijit.form._FormWidget.prototype.attributeMap),{value:""}),postCreate:function(){this.setValue(this.value,null);},setValue:function(_67e,_67f){this.value=_67e;this._handleOnChange(_67e,_67f);},_getValueDeprecated:false,getValue:function(){return this._lastValue;},undo:function(){this.setValue(this._lastValueReported,false);},_valueChanged:function(){var v=this.getValue();var lv=this._lastValueReported;return ((v!==null&&(v!==undefined)&&v.toString)?v.toString():"")!==((lv!==null&&(lv!==undefined)&&lv.toString)?lv.toString():"");},_onKeyPress:function(e){if(e.keyCode==dojo.keys.ESCAPE&&!e.shiftKey&&!e.ctrlKey&&!e.altKey){if(this._valueChanged()){this.undo();dojo.stopEvent(e);return false;}}return true;}});}if(!dojo._hasResource["dojo.dnd.common"]){dojo._hasResource["dojo.dnd.common"]=true;dojo.provide("dojo.dnd.common");dojo.dnd._copyKey=navigator.appVersion.indexOf("Macintosh")<0?"ctrlKey":"metaKey";dojo.dnd.getCopyKeyState=function(e){return e[dojo.dnd._copyKey];};dojo.dnd._uniqueId=0;dojo.dnd.getUniqueId=function(){var id;do{id=dojo._scopeName+"Unique"+(++dojo.dnd._uniqueId);}while(dojo.byId(id));return id;};dojo.dnd._empty={};dojo.dnd.isFormElement=function(e){var t=e.target;if(t.nodeType==3){t=t.parentNode;}return " button textarea input select option ".indexOf(" "+t.tagName.toLowerCase()+" ")>=0;};}if(!dojo._hasResource["dojo.dnd.autoscroll"]){dojo._hasResource["dojo.dnd.autoscroll"]=true;dojo.provide("dojo.dnd.autoscroll");dojo.dnd.getViewport=function(){var d=dojo.doc,dd=d.documentElement,w=window,b=dojo.body();if(dojo.isMozilla){return {w:dd.clientWidth,h:w.innerHeight};}else{if(!dojo.isOpera&&w.innerWidth){return {w:w.innerWidth,h:w.innerHeight};}else{if(!dojo.isOpera&&dd&&dd.clientWidth){return {w:dd.clientWidth,h:dd.clientHeight};}else{if(b.clientWidth){return {w:b.clientWidth,h:b.clientHeight};}}}}return null;};dojo.dnd.V_TRIGGER_AUTOSCROLL=32;dojo.dnd.H_TRIGGER_AUTOSCROLL=32;dojo.dnd.V_AUTOSCROLL_VALUE=16;dojo.dnd.H_AUTOSCROLL_VALUE=16;dojo.dnd.autoScroll=function(e){var v=dojo.dnd.getViewport(),dx=0,dy=0;if(e.clientX<dojo.dnd.H_TRIGGER_AUTOSCROLL){dx=-dojo.dnd.H_AUTOSCROLL_VALUE;}else{if(e.clientX>v.w-dojo.dnd.H_TRIGGER_AUTOSCROLL){dx=dojo.dnd.H_AUTOSCROLL_VALUE;}}if(e.clientY<dojo.dnd.V_TRIGGER_AUTOSCROLL){dy=-dojo.dnd.V_AUTOSCROLL_VALUE;}else{if(e.clientY>v.h-dojo.dnd.V_TRIGGER_AUTOSCROLL){dy=dojo.dnd.V_AUTOSCROLL_VALUE;}}window.scrollBy(dx,dy);};dojo.dnd._validNodes={"div":1,"p":1,"td":1};dojo.dnd._validOverflow={"auto":1,"scroll":1};dojo.dnd.autoScrollNodes=function(e){for(var n=e.target;n;){if(n.nodeType==1&&(n.tagName.toLowerCase() in dojo.dnd._validNodes)){var s=dojo.getComputedStyle(n);if(s.overflow.toLowerCase() in dojo.dnd._validOverflow){var b=dojo._getContentBox(n,s),t=dojo._abs(n,true);b.l+=t.x+n.scrollLeft;b.t+=t.y+n.scrollTop;var w=Math.min(dojo.dnd.H_TRIGGER_AUTOSCROLL,b.w/2),h=Math.min(dojo.dnd.V_TRIGGER_AUTOSCROLL,b.h/2),rx=e.pageX-b.l,ry=e.pageY-b.t,dx=0,dy=0;if(rx>0&&rx<b.w){if(rx<w){dx=-dojo.dnd.H_AUTOSCROLL_VALUE;}else{if(rx>b.w-w){dx=dojo.dnd.H_AUTOSCROLL_VALUE;}}}if(ry>0&&ry<b.h){if(ry<h){dy=-dojo.dnd.V_AUTOSCROLL_VALUE;}else{if(ry>b.h-h){dy=dojo.dnd.V_AUTOSCROLL_VALUE;}}}var _69a=n.scrollLeft,_69b=n.scrollTop;n.scrollLeft=n.scrollLeft+dx;n.scrollTop=n.scrollTop+dy;if(_69a!=n.scrollLeft||_69b!=n.scrollTop){return;}}}try{n=n.parentNode;}catch(x){n=null;}}dojo.dnd.autoScroll(e);};}if(!dojo._hasResource["dojo.dnd.Mover"]){dojo._hasResource["dojo.dnd.Mover"]=true;dojo.provide("dojo.dnd.Mover");dojo.declare("dojo.dnd.Mover",null,{constructor:function(node,e,host){this.node=dojo.byId(node);this.marginBox={l:e.pageX,t:e.pageY};this.mouseButton=e.button;var h=this.host=host,d=node.ownerDocument,_6a1=dojo.connect(d,"onmousemove",this,"onFirstMove");this.events=[dojo.connect(d,"onmousemove",this,"onMouseMove"),dojo.connect(d,"onmouseup",this,"onMouseUp"),dojo.connect(d,"ondragstart",dojo,"stopEvent"),dojo.connect(d,"onselectstart",dojo,"stopEvent"),_6a1];if(h&&h.onMoveStart){h.onMoveStart(this);}},onMouseMove:function(e){dojo.dnd.autoScroll(e);var m=this.marginBox;this.host.onMove(this,{l:m.l+e.pageX,t:m.t+e.pageY});},onMouseUp:function(e){if(this.mouseButton==e.button){this.destroy();}},onFirstMove:function(){var s=this.node.style,l,t;switch(s.position){case "relative":case "absolute":l=Math.round(parseFloat(s.left));t=Math.round(parseFloat(s.top));break;default:s.position="absolute";var m=dojo.marginBox(this.node);l=m.l;t=m.t;break;}this.marginBox.l=l-this.marginBox.l;this.marginBox.t=t-this.marginBox.t;this.host.onFirstMove(this);dojo.disconnect(this.events.pop());},destroy:function(){dojo.forEach(this.events,dojo.disconnect);var h=this.host;if(h&&h.onMoveStop){h.onMoveStop(this);}this.events=this.node=null;}});}if(!dojo._hasResource["dojo.dnd.Moveable"]){dojo._hasResource["dojo.dnd.Moveable"]=true;dojo.provide("dojo.dnd.Moveable");dojo.declare("dojo.dnd.Moveable",null,{handle:"",delay:0,skip:false,constructor:function(node,_6ab){this.node=dojo.byId(node);if(!_6ab){_6ab={};}this.handle=_6ab.handle?dojo.byId(_6ab.handle):null;if(!this.handle){this.handle=this.node;}this.delay=_6ab.delay>0?_6ab.delay:0;this.skip=_6ab.skip;this.mover=_6ab.mover?_6ab.mover:dojo.dnd.Mover;this.events=[dojo.connect(this.handle,"onmousedown",this,"onMouseDown"),dojo.connect(this.handle,"ondragstart",this,"onSelectStart"),dojo.connect(this.handle,"onselectstart",this,"onSelectStart")];},markupFactory:function(_6ac,node){return new dojo.dnd.Moveable(node,_6ac);},destroy:function(){dojo.forEach(this.events,dojo.disconnect);this.events=this.node=this.handle=null;},onMouseDown:function(e){if(this.skip&&dojo.dnd.isFormElement(e)){return;}if(this.delay){this.events.push(dojo.connect(this.handle,"onmousemove",this,"onMouseMove"));this.events.push(dojo.connect(this.handle,"onmouseup",this,"onMouseUp"));this._lastX=e.pageX;this._lastY=e.pageY;}else{new this.mover(this.node,e,this);}dojo.stopEvent(e);},onMouseMove:function(e){if(Math.abs(e.pageX-this._lastX)>this.delay||Math.abs(e.pageY-this._lastY)>this.delay){this.onMouseUp(e);new this.mover(this.node,e,this);}dojo.stopEvent(e);},onMouseUp:function(e){dojo.disconnect(this.events.pop());dojo.disconnect(this.events.pop());},onSelectStart:function(e){if(!this.skip||!dojo.dnd.isFormElement(e)){dojo.stopEvent(e);}},onMoveStart:function(_6b2){dojo.publish("/dnd/move/start",[_6b2]);dojo.addClass(dojo.body(),"dojoMove");dojo.addClass(this.node,"dojoMoveItem");},onMoveStop:function(_6b3){dojo.publish("/dnd/move/stop",[_6b3]);dojo.removeClass(dojo.body(),"dojoMove");dojo.removeClass(this.node,"dojoMoveItem");},onFirstMove:function(_6b4){},onMove:function(_6b5,_6b6){this.onMoving(_6b5,_6b6);var s=_6b5.node.style;s.left=_6b6.l+"px";s.top=_6b6.t+"px";this.onMoved(_6b5,_6b6);},onMoving:function(_6b8,_6b9){},onMoved:function(_6ba,_6bb){}});}if(!dojo._hasResource["dojo.dnd.move"]){dojo._hasResource["dojo.dnd.move"]=true;dojo.provide("dojo.dnd.move");dojo.declare("dojo.dnd.move.constrainedMoveable",dojo.dnd.Moveable,{constraints:function(){},within:false,markupFactory:function(_6bc,node){return new dojo.dnd.move.constrainedMoveable(node,_6bc);},constructor:function(node,_6bf){if(!_6bf){_6bf={};}this.constraints=_6bf.constraints;this.within=_6bf.within;},onFirstMove:function(_6c0){var c=this.constraintBox=this.constraints.call(this,_6c0);c.r=c.l+c.w;c.b=c.t+c.h;if(this.within){var mb=dojo.marginBox(_6c0.node);c.r-=mb.w;c.b-=mb.h;}},onMove:function(_6c3,_6c4){var c=this.constraintBox,s=_6c3.node.style;s.left=(_6c4.l<c.l?c.l:c.r<_6c4.l?c.r:_6c4.l)+"px";s.top=(_6c4.t<c.t?c.t:c.b<_6c4.t?c.b:_6c4.t)+"px";}});dojo.declare("dojo.dnd.move.boxConstrainedMoveable",dojo.dnd.move.constrainedMoveable,{box:{},markupFactory:function(_6c7,node){return new dojo.dnd.move.boxConstrainedMoveable(node,_6c7);},constructor:function(node,_6ca){var box=_6ca&&_6ca.box;this.constraints=function(){return box;};}});dojo.declare("dojo.dnd.move.parentConstrainedMoveable",dojo.dnd.move.constrainedMoveable,{area:"content",markupFactory:function(_6cc,node){return new dojo.dnd.move.parentConstrainedMoveable(node,_6cc);},constructor:function(node,_6cf){var area=_6cf&&_6cf.area;this.constraints=function(){var n=this.node.parentNode,s=dojo.getComputedStyle(n),mb=dojo._getMarginBox(n,s);if(area=="margin"){return mb;}var t=dojo._getMarginExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="border"){return mb;}t=dojo._getBorderExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="padding"){return mb;}t=dojo._getPadExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;return mb;};}});dojo.dnd.move.constrainedMover=function(fun,_6d6){dojo.deprecated("dojo.dnd.move.constrainedMover, use dojo.dnd.move.constrainedMoveable instead");var _6d7=function(node,e,_6da){dojo.dnd.Mover.call(this,node,e,_6da);};dojo.extend(_6d7,dojo.dnd.Mover.prototype);dojo.extend(_6d7,{onMouseMove:function(e){dojo.dnd.autoScroll(e);var m=this.marginBox,c=this.constraintBox,l=m.l+e.pageX,t=m.t+e.pageY;l=l<c.l?c.l:c.r<l?c.r:l;t=t<c.t?c.t:c.b<t?c.b:t;this.host.onMove(this,{l:l,t:t});},onFirstMove:function(){dojo.dnd.Mover.prototype.onFirstMove.call(this);var c=this.constraintBox=fun.call(this);c.r=c.l+c.w;c.b=c.t+c.h;if(_6d6){var mb=dojo.marginBox(this.node);c.r-=mb.w;c.b-=mb.h;}}});return _6d7;};dojo.dnd.move.boxConstrainedMover=function(box,_6e3){dojo.deprecated("dojo.dnd.move.boxConstrainedMover, use dojo.dnd.move.boxConstrainedMoveable instead");return dojo.dnd.move.constrainedMover(function(){return box;},_6e3);};dojo.dnd.move.parentConstrainedMover=function(area,_6e5){dojo.deprecated("dojo.dnd.move.parentConstrainedMover, use dojo.dnd.move.parentConstrainedMoveable instead");var fun=function(){var n=this.node.parentNode,s=dojo.getComputedStyle(n),mb=dojo._getMarginBox(n,s);if(area=="margin"){return mb;}var t=dojo._getMarginExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="border"){return mb;}t=dojo._getBorderExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;if(area=="padding"){return mb;}t=dojo._getPadExtents(n,s);mb.l+=t.l,mb.t+=t.t,mb.w-=t.w,mb.h-=t.h;return mb;};return dojo.dnd.move.constrainedMover(fun,_6e5);};dojo.dnd.constrainedMover=dojo.dnd.move.constrainedMover;dojo.dnd.boxConstrainedMover=dojo.dnd.move.boxConstrainedMover;dojo.dnd.parentConstrainedMover=dojo.dnd.move.parentConstrainedMover;}if(!dojo._hasResource["dijit.form.Button"]){dojo._hasResource["dijit.form.Button"]=true;dojo.provide("dijit.form.Button");dojo.declare("dijit.form.Button",dijit.form._FormWidget,{label:"",showLabel:true,iconClass:"",type:"button",baseClass:"dijitButton",templateString:"<div class=\"dijit dijitReset dijitLeft dijitInline\"\r\n\tdojoAttachEvent=\"onclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse\"\r\n\twaiRole=\"presentation\"\r\n\t><button class=\"dijitReset dijitStretch dijitButtonNode dijitButtonContents\" dojoAttachPoint=\"focusNode,titleNode\"\r\n\t\ttype=\"${type}\" waiRole=\"button\" waiState=\"labelledby-${id}_label\"\r\n\t\t><span class=\"dijitReset dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\" \r\n \t\t\t><span class=\"dijitReset dijitToggleButtonIconChar\">&#10003;</span \r\n\t\t></span\r\n\t\t><div class=\"dijitReset dijitInline\"><center class=\"dijitReset dijitButtonText\" id=\"${id}_label\" dojoAttachPoint=\"containerNode\">${label}</center></div\r\n\t></button\r\n></div>\r\n",_onChangeMonitor:"",_onClick:function(e){if(this.disabled||this.readOnly){dojo.stopEvent(e);return false;}this._clicked();return this.onClick(e);},_onButtonClick:function(e){if(this._onClick(e)===false){dojo.stopEvent(e);}else{if(this.type=="submit"&&!this.focusNode.form){for(var node=this.domNode;node.parentNode;node=node.parentNode){var _6ee=dijit.byNode(node);if(_6ee&&typeof _6ee._onSubmit=="function"){_6ee._onSubmit(e);break;}}}}},postCreate:function(){if(this.showLabel==false){var _6ef="";this.label=this.containerNode.innerHTML;_6ef=dojo.trim(this.containerNode.innerText||this.containerNode.textContent||"");this.titleNode.title=_6ef;dojo.addClass(this.containerNode,"dijitDisplayNone");}dojo.setSelectable(this.focusNode,false);this.inherited(arguments);},onClick:function(e){return true;},_clicked:function(e){},setLabel:function(_6f2){this.containerNode.innerHTML=this.label=_6f2;this._layoutHack();if(this.showLabel==false){this.titleNode.title=dojo.trim(this.containerNode.innerText||this.containerNode.textContent||"");}}});dojo.declare("dijit.form.DropDownButton",[dijit.form.Button,dijit._Container],{baseClass:"dijitDropDownButton",templateString:"<div class=\"dijit dijitReset dijitLeft dijitInline\"\r\n\tdojoAttachEvent=\"onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse,onclick:_onDropDownClick,onkeydown:_onDropDownKeydown,onblur:_onDropDownBlur,onkeypress:_onKey\"\r\n\twaiRole=\"presentation\"\r\n\t><div class='dijitReset dijitRight' waiRole=\"presentation\"\r\n\t><button class=\"dijitReset dijitStretch dijitButtonNode dijitButtonContents\" type=\"${type}\"\r\n\t\tdojoAttachPoint=\"focusNode,titleNode\" waiRole=\"button\" waiState=\"haspopup-true,labelledby-${id}_label\"\r\n\t\t><div class=\"dijitReset dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\" waiRole=\"presentation\"></div\r\n\t\t><div class=\"dijitReset dijitInline dijitButtonText\"  dojoAttachPoint=\"containerNode,popupStateNode\" waiRole=\"presentation\"\r\n\t\t\tid=\"${id}_label\">${label}</div\r\n\t\t><div class=\"dijitReset dijitInline dijitArrowButtonInner\" waiRole=\"presentation\">&thinsp;</div\r\n\t\t><div class=\"dijitReset dijitInline dijitArrowButtonChar\" waiRole=\"presentation\">&#9660;</div\r\n\t></button\r\n></div></div>\r\n",_fillContent:function(){if(this.srcNodeRef){var _6f3=dojo.query("*",this.srcNodeRef);dijit.form.DropDownButton.superclass._fillContent.call(this,_6f3[0]);this.dropDownContainer=this.srcNodeRef;}},startup:function(){if(this._started){return;}if(!this.dropDown){var _6f4=dojo.query("[widgetId]",this.dropDownContainer)[0];this.dropDown=dijit.byNode(_6f4);delete this.dropDownContainer;}dijit.popup.prepare(this.dropDown.domNode);this.inherited(arguments);},destroyDescendants:function(){if(this.dropDown){this.dropDown.destroyRecursive();delete this.dropDown;}this.inherited(arguments);},_onArrowClick:function(e){if(this.disabled||this.readOnly){return;}this._toggleDropDown();},_onDropDownClick:function(e){var _6f7=dojo.isFF&&dojo.isFF<3&&navigator.appVersion.indexOf("Macintosh")!=-1;if(!_6f7||e.detail!=0||this._seenKeydown){this._onArrowClick(e);}this._seenKeydown=false;},_onDropDownKeydown:function(e){this._seenKeydown=true;},_onDropDownBlur:function(e){this._seenKeydown=false;},_onKey:function(e){if(this.disabled||this.readOnly){return;}if(e.keyCode==dojo.keys.DOWN_ARROW){if(!this.dropDown||this.dropDown.domNode.style.visibility=="hidden"){dojo.stopEvent(e);this._toggleDropDown();}}},_onBlur:function(){this._closeDropDown();this.inherited(arguments);},_toggleDropDown:function(){if(this.disabled||this.readOnly){return;}dijit.focus(this.popupStateNode);var _6fb=this.dropDown;if(!_6fb){return;}if(!this._opened){if(_6fb.href&&!_6fb.isLoaded){var self=this;var _6fd=dojo.connect(_6fb,"onLoad",function(){dojo.disconnect(_6fd);self._openDropDown();});_6fb._loadCheck(true);return;}else{this._openDropDown();}}else{this._closeDropDown();}},_openDropDown:function(){var _6fe=this.dropDown;var _6ff=_6fe.domNode.style.width;var self=this;dijit.popup.open({parent:this,popup:_6fe,around:this.domNode,orient:this.isLeftToRight()?{"BL":"TL","BR":"TR","TL":"BL","TR":"BR"}:{"BR":"TR","BL":"TL","TR":"BR","TL":"BL"},onExecute:function(){self._closeDropDown(true);},onCancel:function(){self._closeDropDown(true);},onClose:function(){_6fe.domNode.style.width=_6ff;self.popupStateNode.removeAttribute("popupActive");this._opened=false;}});if(this.domNode.offsetWidth>_6fe.domNode.offsetWidth){var _701=null;if(!this.isLeftToRight()){_701=_6fe.domNode.parentNode;var _702=_701.offsetLeft+_701.offsetWidth;}dojo.marginBox(_6fe.domNode,{w:this.domNode.offsetWidth});if(_701){_701.style.left=_702-this.domNode.offsetWidth+"px";}}this.popupStateNode.setAttribute("popupActive","true");this._opened=true;if(_6fe.focus){_6fe.focus();}},_closeDropDown:function(_703){if(this._opened){dijit.popup.close(this.dropDown);if(_703){this.focus();}this._opened=false;}}});dojo.declare("dijit.form.ComboButton",dijit.form.DropDownButton,{templateString:"<table class='dijit dijitReset dijitInline dijitLeft'\r\n\tcellspacing='0' cellpadding='0' waiRole=\"presentation\"\r\n\t><tbody waiRole=\"presentation\"><tr waiRole=\"presentation\"\r\n\t\t><td\tclass=\"dijitReset dijitStretch dijitButtonContents dijitButtonNode\"\r\n\t\t\ttabIndex=\"${tabIndex}\"\r\n\t\t\tdojoAttachEvent=\"ondijitclick:_onButtonClick,onmouseenter:_onMouse,onmouseleave:_onMouse,onmousedown:_onMouse\"  dojoAttachPoint=\"titleNode\"\r\n\t\t\twaiRole=\"button\" waiState=\"labelledby-${id}_label\"\r\n\t\t\t><div class=\"dijitReset dijitInline ${iconClass}\" dojoAttachPoint=\"iconNode\" waiRole=\"presentation\"></div\r\n\t\t\t><div class=\"dijitReset dijitInline dijitButtonText\" id=\"${id}_label\" dojoAttachPoint=\"containerNode\" waiRole=\"presentation\">${label}</div\r\n\t\t></td\r\n\t\t><td class='dijitReset dijitStretch dijitButtonNode dijitArrowButton dijitDownArrowButton'\r\n\t\t\tdojoAttachPoint=\"popupStateNode,focusNode\"\r\n\t\t\tdojoAttachEvent=\"ondijitclick:_onArrowClick, onkeypress:_onKey,onmouseenter:_onMouse,onmouseleave:_onMouse\"\r\n\t\t\tstateModifier=\"DownArrow\"\r\n\t\t\ttitle=\"${optionsTitle}\" name=\"${name}\"\r\n\t\t\twaiRole=\"button\" waiState=\"haspopup-true\"\r\n\t\t\t><div class=\"dijitReset dijitArrowButtonInner\" waiRole=\"presentation\">&thinsp;</div\r\n\t\t\t><div class=\"dijitReset dijitArrowButtonChar\" waiRole=\"presentation\">&#9660;</div\r\n\t\t></td\r\n\t></tr></tbody\r\n></table>\r\n",attributeMap:dojo.mixin(dojo.clone(dijit.form._FormWidget.prototype.attributeMap),{id:"",name:""}),optionsTitle:"",baseClass:"dijitComboButton",_focusedNode:null,postCreate:function(){this.inherited(arguments);this._focalNodes=[this.titleNode,this.popupStateNode];dojo.forEach(this._focalNodes,dojo.hitch(this,function(node){if(dojo.isIE){this.connect(node,"onactivate",this._onNodeFocus);this.connect(node,"ondeactivate",this._onNodeBlur);}else{this.connect(node,"onfocus",this._onNodeFocus);this.connect(node,"onblur",this._onNodeBlur);}}));},focusFocalNode:function(node){this._focusedNode=node;dijit.focus(node);},hasNextFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[1];},focusNext:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?1:0];dijit.focus(this._focusedNode);},hasPrevFocalNode:function(){return this._focusedNode!==this.getFocalNodes()[0];},focusPrev:function(){this._focusedNode=this.getFocalNodes()[this._focusedNode?0:1];dijit.focus(this._focusedNode);},getFocalNodes:function(){return this._focalNodes;},_onNodeFocus:function(evt){this._focusedNode=evt.currentTarget;var fnc=this._focusedNode==this.focusNode?"dijitDownArrowButtonFocused":"dijitButtonContentsFocused";dojo.addClass(this._focusedNode,fnc);},_onNodeBlur:function(evt){var fnc=evt.currentTarget==this.focusNode?"dijitDownArrowButtonFocused":"dijitButtonContentsFocused";dojo.removeClass(evt.currentTarget,fnc);},_onBlur:function(){this.inherited(arguments);this._focusedNode=null;}});dojo.declare("dijit.form.ToggleButton",dijit.form.Button,{baseClass:"dijitToggleButton",checked:false,_onChangeMonitor:"checked",attributeMap:dojo.mixin(dojo.clone(dijit.form.Button.prototype.attributeMap),{checked:"focusNode"}),_clicked:function(evt){this.setAttribute("checked",!this.checked);},setAttribute:function(attr,_70c){this.inherited(arguments);switch(attr){case "checked":dijit.setWaiState(this.focusNode||this.domNode,"pressed",this.checked);this._setStateClass();this._handleOnChange(this.checked,true);}},setChecked:function(_70d){dojo.deprecated("setChecked("+_70d+") is deprecated. Use setAttribute('checked',"+_70d+") instead.","","2.0");this.setAttribute("checked",_70d);},postCreate:function(){this.inherited(arguments);this.setAttribute("checked",this.checked);}});}if(!dojo._hasResource["dojo.regexp"]){dojo._hasResource["dojo.regexp"]=true;dojo.provide("dojo.regexp");dojo.regexp.escapeString=function(str,_70f){return str.replace(/([\.$?*!=:|{}\(\)\[\]\\\/^])/g,function(ch){if(_70f&&_70f.indexOf(ch)!=-1){return ch;}return "\\"+ch;});};dojo.regexp.buildGroupRE=function(arr,re,_713){if(!(arr instanceof Array)){return re(arr);}var b=[];for(var i=0;i<arr.length;i++){b.push(re(arr[i]));}return dojo.regexp.group(b.join("|"),_713);};dojo.regexp.group=function(_716,_717){return "("+(_717?"?:":"")+_716+")";};}if(!dojo._hasResource["dojo.number"]){dojo._hasResource["dojo.number"]=true;dojo.provide("dojo.number");dojo.number.format=function(_718,_719){_719=dojo.mixin({},_719||{});var _71a=dojo.i18n.normalizeLocale(_719.locale);var _71b=dojo.i18n.getLocalization("dojo.cldr","number",_71a);_719.customs=_71b;var _71c=_719.pattern||_71b[(_719.type||"decimal")+"Format"];if(isNaN(_718)){return null;}return dojo.number._applyPattern(_718,_71c,_719);};dojo.number._numberPatternRE=/[#0,]*[#0](?:\.0*#*)?/;dojo.number._applyPattern=function(_71d,_71e,_71f){_71f=_71f||{};var _720=_71f.customs.group;var _721=_71f.customs.decimal;var _722=_71e.split(";");var _723=_722[0];_71e=_722[(_71d<0)?1:0]||("-"+_723);if(_71e.indexOf("%")!=-1){_71d*=100;}else{if(_71e.indexOf("‰")!=-1){_71d*=1000;}else{if(_71e.indexOf("¤")!=-1){_720=_71f.customs.currencyGroup||_720;_721=_71f.customs.currencyDecimal||_721;_71e=_71e.replace(/\u00a4{1,3}/,function(_724){var prop=["symbol","currency","displayName"][_724.length-1];return _71f[prop]||_71f.currency||"";});}else{if(_71e.indexOf("E")!=-1){throw new Error("exponential notation not supported");}}}}var _726=dojo.number._numberPatternRE;var _727=_723.match(_726);if(!_727){throw new Error("unable to find a number expression in pattern: "+_71e);}return _71e.replace(_726,dojo.number._formatAbsolute(_71d,_727[0],{decimal:_721,group:_720,places:_71f.places}));};dojo.number.round=function(_728,_729,_72a){var _72b=String(_728).split(".");var _72c=(_72b[1]&&_72b[1].length)||0;if(_72c>_729){var _72d=Math.pow(10,_729);if(_72a>0){_72d*=10/_72a;_729++;}_728=Math.round(_728*_72d)/_72d;_72b=String(_728).split(".");_72c=(_72b[1]&&_72b[1].length)||0;if(_72c>_729){_72b[1]=_72b[1].substr(0,_729);_728=Number(_72b.join("."));}}return _728;};dojo.number._formatAbsolute=function(_72e,_72f,_730){_730=_730||{};if(_730.places===true){_730.places=0;}if(_730.places===Infinity){_730.places=6;}var _731=_72f.split(".");var _732=(_730.places>=0)?_730.places:(_731[1]&&_731[1].length)||0;if(!(_730.round<0)){_72e=dojo.number.round(_72e,_732,_730.round);}var _733=String(Math.abs(_72e)).split(".");var _734=_733[1]||"";if(_730.places){_733[1]=dojo.string.pad(_734.substr(0,_730.places),_730.places,"0",true);}else{if(_731[1]&&_730.places!==0){var pad=_731[1].lastIndexOf("0")+1;if(pad>_734.length){_733[1]=dojo.string.pad(_734,pad,"0",true);}var _736=_731[1].length;if(_736<_734.length){_733[1]=_734.substr(0,_736);}}else{if(_733[1]){_733.pop();}}}var _737=_731[0].replace(",","");pad=_737.indexOf("0");if(pad!=-1){pad=_737.length-pad;if(pad>_733[0].length){_733[0]=dojo.string.pad(_733[0],pad);}if(_737.indexOf("#")==-1){_733[0]=_733[0].substr(_733[0].length-pad);}}var _738=_731[0].lastIndexOf(",");var _739,_73a;if(_738!=-1){_739=_731[0].length-_738-1;var _73b=_731[0].substr(0,_738);_738=_73b.lastIndexOf(",");if(_738!=-1){_73a=_73b.length-_738-1;}}var _73c=[];for(var _73d=_733[0];_73d;){var off=_73d.length-_739;_73c.push((off>0)?_73d.substr(off):_73d);_73d=(off>0)?_73d.slice(0,off):"";if(_73a){_739=_73a;delete _73a;}}_733[0]=_73c.reverse().join(_730.group||",");return _733.join(_730.decimal||".");};dojo.number.regexp=function(_73f){return dojo.number._parseInfo(_73f).regexp;};dojo.number._parseInfo=function(_740){_740=_740||{};var _741=dojo.i18n.normalizeLocale(_740.locale);var _742=dojo.i18n.getLocalization("dojo.cldr","number",_741);var _743=_740.pattern||_742[(_740.type||"decimal")+"Format"];var _744=_742.group;var _745=_742.decimal;var _746=1;if(_743.indexOf("%")!=-1){_746/=100;}else{if(_743.indexOf("‰")!=-1){_746/=1000;}else{var _747=_743.indexOf("¤")!=-1;if(_747){_744=_742.currencyGroup||_744;_745=_742.currencyDecimal||_745;}}}var _748=_743.split(";");if(_748.length==1){_748.push("-"+_748[0]);}var re=dojo.regexp.buildGroupRE(_748,function(_74a){_74a="(?:"+dojo.regexp.escapeString(_74a,".")+")";return _74a.replace(dojo.number._numberPatternRE,function(_74b){var _74c={signed:false,separator:_740.strict?_744:[_744,""],fractional:_740.fractional,decimal:_745,exponent:false};var _74d=_74b.split(".");var _74e=_740.places;if(_74d.length==1||_74e===0){_74c.fractional=false;}else{if(_74e===undefined){_74e=_74d[1].lastIndexOf("0")+1;}if(_74e&&_740.fractional==undefined){_74c.fractional=true;}if(!_740.places&&(_74e<_74d[1].length)){_74e+=","+_74d[1].length;}_74c.places=_74e;}var _74f=_74d[0].split(",");if(_74f.length>1){_74c.groupSize=_74f.pop().length;if(_74f.length>1){_74c.groupSize2=_74f.pop().length;}}return "("+dojo.number._realNumberRegexp(_74c)+")";});},true);if(_747){re=re.replace(/(\s*)(\u00a4{1,3})(\s*)/g,function(_750,_751,_752,_753){var prop=["symbol","currency","displayName"][_752.length-1];var _755=dojo.regexp.escapeString(_740[prop]||_740.currency||"");_751=_751?"\\s":"";_753=_753?"\\s":"";if(!_740.strict){if(_751){_751+="*";}if(_753){_753+="*";}return "(?:"+_751+_755+_753+")?";}return _751+_755+_753;});}return {regexp:re.replace(/[\xa0 ]/g,"[\\s\\xa0]"),group:_744,decimal:_745,factor:_746};};dojo.number.parse=function(_756,_757){var info=dojo.number._parseInfo(_757);var _759=(new RegExp("^"+info.regexp+"$")).exec(_756);if(!_759){return NaN;}var _75a=_759[1];if(!_759[1]){if(!_759[2]){return NaN;}_75a=_759[2];info.factor*=-1;}_75a=_75a.replace(new RegExp("["+info.group+"\\s\\xa0"+"]","g"),"").replace(info.decimal,".");return Number(_75a)*info.factor;};dojo.number._realNumberRegexp=function(_75b){_75b=_75b||{};if(!("places" in _75b)){_75b.places=Infinity;}if(typeof _75b.decimal!="string"){_75b.decimal=".";}if(!("fractional" in _75b)||/^0/.test(_75b.places)){_75b.fractional=[true,false];}if(!("exponent" in _75b)){_75b.exponent=[true,false];}if(!("eSigned" in _75b)){_75b.eSigned=[true,false];}var _75c=dojo.number._integerRegexp(_75b);var _75d=dojo.regexp.buildGroupRE(_75b.fractional,function(q){var re="";if(q&&(_75b.places!==0)){re="\\"+_75b.decimal;if(_75b.places==Infinity){re="(?:"+re+"\\d+)?";}else{re+="\\d{"+_75b.places+"}";}}return re;},true);var _760=dojo.regexp.buildGroupRE(_75b.exponent,function(q){if(q){return "([eE]"+dojo.number._integerRegexp({signed:_75b.eSigned})+")";}return "";});var _762=_75c+_75d;if(_75d){_762="(?:(?:"+_762+")|(?:"+_75d+"))";}return _762+_760;};dojo.number._integerRegexp=function(_763){_763=_763||{};if(!("signed" in _763)){_763.signed=[true,false];}if(!("separator" in _763)){_763.separator="";}else{if(!("groupSize" in _763)){_763.groupSize=3;}}var _764=dojo.regexp.buildGroupRE(_763.signed,function(q){return q?"[-+]":"";},true);var _766=dojo.regexp.buildGroupRE(_763.separator,function(sep){if(!sep){return "(?:0|[1-9]\\d*)";}sep=dojo.regexp.escapeString(sep);if(sep==" "){sep="\\s";}else{if(sep==" "){sep="\\s\\xa0";}}var grp=_763.groupSize,grp2=_763.groupSize2;if(grp2){var _76a="(?:0|[1-9]\\d{0,"+(grp2-1)+"}(?:["+sep+"]\\d{"+grp2+"})*["+sep+"]\\d{"+grp+"})";return ((grp-grp2)>0)?"(?:"+_76a+"|(?:0|[1-9]\\d{0,"+(grp-1)+"}))":_76a;}return "(?:0|[1-9]\\d{0,"+(grp-1)+"}(?:["+sep+"]\\d{"+grp+"})*)";},true);return _764+_766;};}if(!dojo._hasResource["dijit.form.Slider"]){dojo._hasResource["dijit.form.Slider"]=true;dojo.provide("dijit.form.Slider");dojo.declare("dijit.form.HorizontalSlider",[dijit.form._FormValueWidget,dijit._Container],{templateString:"<table class=\"dijit dijitReset dijitSlider\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" rules=\"none\"\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\r\n\t\t><td dojoAttachPoint=\"containerNode,topDecoration\" class=\"dijitReset\" style=\"text-align:center;width:100%;\"></td\r\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\"\r\n\t\t\t><div class=\"dijitSliderDecrementIconH\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"decrementButton\" dojoAttachEvent=\"onclick: decrement\"><span class=\"dijitSliderButtonInner\">-</span></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"\r\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderLeftBumper dijitSliderLeftBumper\" dojoAttachEvent=\"onclick:_onClkDecBumper\"></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"\r\n\t\t\t><input dojoAttachPoint=\"valueNode\" type=\"hidden\" name=\"${name}\"\r\n\t\t\t/><div waiRole=\"presentation\" style=\"position:relative;\" dojoAttachPoint=\"sliderBarContainer\"\r\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"progressBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderProgressBar dijitSliderProgressBarH\" dojoAttachEvent=\"onclick:_onBarClick\"\r\n\t\t\t\t\t><div dojoAttachPoint=\"sliderHandle,focusNode\" class=\"dijitSliderMoveable dijitSliderMoveableH\" dojoAttachEvent=\"onkeypress:_onKeyPress,onmousedown:_onHandleClick\" waiRole=\"slider\" valuemin=\"${minimum}\" valuemax=\"${maximum}\"\r\n\t\t\t\t\t\t><div class=\"dijitSliderImageHandle dijitSliderImageHandleH\"></div\r\n\t\t\t\t\t></div\r\n\t\t\t\t></div\r\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"remainingBar\" class=\"dijitSliderBar dijitSliderBarH dijitSliderRemainingBar dijitSliderRemainingBarH\" dojoAttachEvent=\"onclick:_onBarClick\"></div\r\n\t\t\t></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"\r\n\t\t\t><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperH dijitSliderRightBumper dijitSliderRightBumper\" dojoAttachEvent=\"onclick:_onClkIncBumper\"></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerH\" style=\"right:0px;\"\r\n\t\t\t><div class=\"dijitSliderIncrementIconH\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"incrementButton\" dojoAttachEvent=\"onclick: increment\"><span class=\"dijitSliderButtonInner\">+</span></div\r\n\t\t></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\r\n\t\t><td dojoAttachPoint=\"containerNode,bottomDecoration\" class=\"dijitReset\" style=\"text-align:center;\"></td\r\n\t\t><td class=\"dijitReset\" colspan=\"2\"></td\r\n\t></tr\r\n></table>\r\n",value:0,showButtons:true,minimum:0,maximum:100,discreteValues:Infinity,pageIncrement:2,clickSelect:true,slideDuration:1000,widgetsInTemplate:true,attributeMap:dojo.mixin(dojo.clone(dijit.form._FormWidget.prototype.attributeMap),{id:"",name:"valueNode"}),baseClass:"dijitSlider",_mousePixelCoord:"pageX",_pixelCount:"w",_startingPixelCoord:"x",_startingPixelCount:"l",_handleOffsetCoord:"left",_progressPixelSize:"width",_onKeyPress:function(e){if(this.disabled||this.readOnly||e.altKey||e.ctrlKey){return;}switch(e.keyCode){case dojo.keys.HOME:this.setValue(this.minimum,true);break;case dojo.keys.END:this.setValue(this.maximum,true);break;case ((this._descending||this.isLeftToRight())?dojo.keys.RIGHT_ARROW:dojo.keys.LEFT_ARROW):case (this._descending===false?dojo.keys.DOWN_ARROW:dojo.keys.UP_ARROW):case (this._descending===false?dojo.keys.PAGE_DOWN:dojo.keys.PAGE_UP):this.increment(e);break;case ((this._descending||this.isLeftToRight())?dojo.keys.LEFT_ARROW:dojo.keys.RIGHT_ARROW):case (this._descending===false?dojo.keys.UP_ARROW:dojo.keys.DOWN_ARROW):case (this._descending===false?dojo.keys.PAGE_UP:dojo.keys.PAGE_DOWN):this.decrement(e);break;default:this.inherited(arguments);return;}dojo.stopEvent(e);},_onHandleClick:function(e){if(this.disabled||this.readOnly){return;}if(!dojo.isIE){dijit.focus(this.sliderHandle);}dojo.stopEvent(e);},_isReversed:function(){return !this.isLeftToRight();},_onBarClick:function(e){if(this.disabled||this.readOnly||!this.clickSelect){return;}dijit.focus(this.sliderHandle);dojo.stopEvent(e);var _76e=dojo.coords(this.sliderBarContainer,true);var _76f=e[this._mousePixelCoord]-_76e[this._startingPixelCoord];this._setPixelValue(this._isReversed()?(_76e[this._pixelCount]-_76f):_76f,_76e[this._pixelCount],true);},_setPixelValue:function(_770,_771,_772){if(this.disabled||this.readOnly){return;}_770=_770<0?0:_771<_770?_771:_770;var _773=this.discreteValues;if(_773<=1||_773==Infinity){_773=_771;}_773--;var _774=_771/_773;var _775=Math.round(_770/_774);this.setValue((this.maximum-this.minimum)*_775/_773+this.minimum,_772);},setValue:function(_776,_777){this.valueNode.value=this.value=_776;dijit.setWaiState(this.focusNode,"valuenow",_776);this.inherited(arguments);var _778=(_776-this.minimum)/(this.maximum-this.minimum);var _779=(this._descending===false)?this.remainingBar:this.progressBar;var _77a=(this._descending===false)?this.progressBar:this.remainingBar;if(_777&&this.slideDuration>0&&_779.style[this._progressPixelSize]){var _77b=this;var _77c={};var _77d=parseFloat(_779.style[this._progressPixelSize]);var _77e=this.slideDuration*(_778-_77d/100);if(_77e==0){return;}if(_77e<0){_77e=0-_77e;}_77c[this._progressPixelSize]={start:_77d,end:_778*100,units:"%"};dojo.animateProperty({node:_779,duration:_77e,onAnimate:function(v){_77a.style[_77b._progressPixelSize]=(100-parseFloat(v[_77b._progressPixelSize]))+"%";},properties:_77c}).play();}else{_779.style[this._progressPixelSize]=(_778*100)+"%";_77a.style[this._progressPixelSize]=((1-_778)*100)+"%";}},_bumpValue:function(_780){if(this.disabled||this.readOnly){return;}var s=dojo.getComputedStyle(this.sliderBarContainer);var c=dojo._getContentBox(this.sliderBarContainer,s);var _783=this.discreteValues;if(_783<=1||_783==Infinity){_783=c[this._pixelCount];}_783--;var _784=(this.value-this.minimum)*_783/(this.maximum-this.minimum)+_780;if(_784<0){_784=0;}if(_784>_783){_784=_783;}_784=_784*(this.maximum-this.minimum)/_783+this.minimum;this.setValue(_784,true);},_onClkIncBumper:function(){this.setValue(this._descending===false?this.minimum:this.maximum,true);},_onClkDecBumper:function(){this.setValue(this._descending===false?this.maximum:this.minimum,true);},decrement:function(e){this._bumpValue(e.keyCode==dojo.keys.PAGE_DOWN?-this.pageIncrement:-1);},increment:function(e){this._bumpValue(e.keyCode==dojo.keys.PAGE_UP?this.pageIncrement:1);},_mouseWheeled:function(evt){dojo.stopEvent(evt);var _788=0;if(typeof evt.wheelDelta=="number"){_788=evt.wheelDelta;}else{if(typeof evt.detail=="number"){_788=-evt.detail;}}if(_788>0){this.increment(evt);}else{if(_788<0){this.decrement(evt);}}},startup:function(){dojo.forEach(this.getChildren(),function(_789){if(this[_789.container]!=this.containerNode){this[_789.container].appendChild(_789.domNode);}},this);},postCreate:function(){if(this.showButtons){this.incrementButton.style.display="";this.decrementButton.style.display="";}this.connect(this.domNode,dojo.isIE?"onmousewheel":"DOMMouseScroll","_mouseWheeled");var _78a=this;var _78b=function(){dijit.form._SliderMover.apply(this,arguments);this.widget=_78a;};dojo.extend(_78b,dijit.form._SliderMover.prototype);this._movable=new dojo.dnd.Moveable(this.sliderHandle,{mover:_78b});dijit.setWaiState(this.focusNode,"valuemin",this.minimum);dijit.setWaiState(this.focusNode,"valuemax",this.maximum);this.inherited(arguments);},destroy:function(){this._movable.destroy();this.inherited(arguments);}});dojo.declare("dijit.form.VerticalSlider",dijit.form.HorizontalSlider,{templateString:"<table class=\"dijitReset dijitSlider\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\" rules=\"none\"\r\n><tbody class=\"dijitReset\"\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\"></td\r\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerV\"\r\n\t\t\t><div class=\"dijitSliderIncrementIconV\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"incrementButton\" dojoAttachEvent=\"onclick:_topButtonClicked\"><span class=\"dijitSliderButtonInner\">+</span></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\"></td\r\n\t\t><td class=\"dijitReset\"\r\n\t\t\t><center><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperV dijitSliderTopBumper dijitSliderTopBumper\" dojoAttachEvent=\"onclick:_onClkIncBumper\"></div></center\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td dojoAttachPoint=\"leftDecoration\" class=\"dijitReset\" style=\"text-align:center;height:100%;\"></td\r\n\t\t><td class=\"dijitReset\" style=\"height:100%;\"\r\n\t\t\t><input dojoAttachPoint=\"valueNode\" type=\"hidden\" name=\"${name}\"\r\n\t\t\t/><center waiRole=\"presentation\" style=\"position:relative;height:100%;\" dojoAttachPoint=\"sliderBarContainer\"\r\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"remainingBar\" class=\"dijitSliderBar dijitSliderBarV dijitSliderRemainingBar dijitSliderRemainingBarV\" dojoAttachEvent=\"onclick:_onBarClick\"><!--#5629--></div\r\n\t\t\t\t><div waiRole=\"presentation\" dojoAttachPoint=\"progressBar\" class=\"dijitSliderBar dijitSliderBarV dijitSliderProgressBar dijitSliderProgressBarV\" dojoAttachEvent=\"onclick:_onBarClick\"\r\n\t\t\t\t\t><div dojoAttachPoint=\"sliderHandle,focusNode\" class=\"dijitSliderMoveable\" dojoAttachEvent=\"onkeypress:_onKeyPress,onmousedown:_onHandleClick\" style=\"vertical-align:top;\" waiRole=\"slider\" valuemin=\"${minimum}\" valuemax=\"${maximum}\"\r\n\t\t\t\t\t\t><div class=\"dijitSliderImageHandle dijitSliderImageHandleV\"></div\r\n\t\t\t\t\t></div\r\n\t\t\t\t></div\r\n\t\t\t></center\r\n\t\t></td\r\n\t\t><td dojoAttachPoint=\"containerNode,rightDecoration\" class=\"dijitReset\" style=\"text-align:center;height:100%;\"></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\"></td\r\n\t\t><td class=\"dijitReset\"\r\n\t\t\t><center><div class=\"dijitSliderBar dijitSliderBumper dijitSliderBumperV dijitSliderBottomBumper dijitSliderBottomBumper\" dojoAttachEvent=\"onclick:_onClkDecBumper\"></div></center\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"></td\r\n\t></tr\r\n\t><tr class=\"dijitReset\"\r\n\t\t><td class=\"dijitReset\"></td\r\n\t\t><td class=\"dijitReset dijitSliderButtonContainer dijitSliderButtonContainerV\"\r\n\t\t\t><div class=\"dijitSliderDecrementIconV\" tabIndex=\"-1\" style=\"display:none\" dojoAttachPoint=\"decrementButton\" dojoAttachEvent=\"onclick:_bottomButtonClicked\"><span class=\"dijitSliderButtonInner\">-</span></div\r\n\t\t></td\r\n\t\t><td class=\"dijitReset\"></td\r\n\t></tr\r\n></tbody></table>\r\n",_mousePixelCoord:"pageY",_pixelCount:"h",_startingPixelCoord:"y",_startingPixelCount:"t",_handleOffsetCoord:"top",_progressPixelSize:"height",_descending:true,startup:function(){if(this._started){return;}if(!this.isLeftToRight()&&dojo.isMoz){if(this.leftDecoration){this._rtlRectify(this.leftDecoration);}if(this.rightDecoration){this._rtlRectify(this.rightDecoration);}}this.inherited(arguments);},_isReversed:function(){return this._descending;},_topButtonClicked:function(e){if(this._descending){this.increment(e);}else{this.decrement(e);}},_bottomButtonClicked:function(e){if(this._descending){this.decrement(e);}else{this.increment(e);}},_rtlRectify:function(_78e){var _78f=[];while(_78e.firstChild){_78f.push(_78e.firstChild);_78e.removeChild(_78e.firstChild);}for(var i=_78f.length-1;i>=0;i--){if(_78f[i]){_78e.appendChild(_78f[i]);}}}});dojo.declare("dijit.form._SliderMover",dojo.dnd.Mover,{onMouseMove:function(e){var _792=this.widget;var _793=_792._abspos;if(!_793){_793=_792._abspos=dojo.coords(_792.sliderBarContainer,true);_792._setPixelValue_=dojo.hitch(_792,"_setPixelValue");_792._isReversed_=_792._isReversed();}var _794=e[_792._mousePixelCoord]-_793[_792._startingPixelCoord];_792._setPixelValue_(_792._isReversed_?(_793[_792._pixelCount]-_794):_794,_793[_792._pixelCount],false);},destroy:function(e){dojo.dnd.Mover.prototype.destroy.apply(this,arguments);var _796=this.widget;_796.setValue(_796.value,true);}});dojo.declare("dijit.form.HorizontalRule",[dijit._Widget,dijit._Templated],{templateString:"<div class=\"dijitRuleContainer dijitRuleContainerH\"></div>",count:3,container:"containerNode",ruleStyle:"",_positionPrefix:"<div class=\"dijitRuleMark dijitRuleMarkH\" style=\"left:",_positionSuffix:"%;",_suffix:"\"></div>",_genHTML:function(pos,ndx){return this._positionPrefix+pos+this._positionSuffix+this.ruleStyle+this._suffix;},_isHorizontal:true,postCreate:function(){var _799;if(this.count==1){_799=this._genHTML(50,0);}else{var i;var _79b=100/(this.count-1);if(!this._isHorizontal||this.isLeftToRight()){_799=this._genHTML(0,0);for(i=1;i<this.count-1;i++){_799+=this._genHTML(_79b*i,i);}_799+=this._genHTML(100,this.count-1);}else{_799=this._genHTML(100,0);for(i=1;i<this.count-1;i++){_799+=this._genHTML(100-_79b*i,i);}_799+=this._genHTML(0,this.count-1);}}this.domNode.innerHTML=_799;}});dojo.declare("dijit.form.VerticalRule",dijit.form.HorizontalRule,{templateString:"<div class=\"dijitRuleContainer dijitRuleContainerV\"></div>",_positionPrefix:"<div class=\"dijitRuleMark dijitRuleMarkV\" style=\"top:",_isHorizontal:false});dojo.declare("dijit.form.HorizontalRuleLabels",dijit.form.HorizontalRule,{templateString:"<div class=\"dijitRuleContainer dijitRuleContainerH\"></div>",labelStyle:"",labels:[],numericMargin:0,minimum:0,maximum:1,constraints:{pattern:"#%"},_positionPrefix:"<div class=\"dijitRuleLabelContainer dijitRuleLabelContainerH\" style=\"left:",_labelPrefix:"\"><span class=\"dijitRuleLabel dijitRuleLabelH\">",_suffix:"</span></div>",_calcPosition:function(pos){return pos;},_genHTML:function(pos,ndx){return this._positionPrefix+this._calcPosition(pos)+this._positionSuffix+this.labelStyle+this._labelPrefix+this.labels[ndx]+this._suffix;},getLabels:function(){var _79f=this.labels;if(!_79f.length){_79f=dojo.query("> li",this.srcNodeRef).map(function(node){return String(node.innerHTML);});}this.srcNodeRef.innerHTML="";if(!_79f.length&&this.count>1){var _7a1=this.minimum;var inc=(this.maximum-_7a1)/(this.count-1);for(var i=0;i<this.count;i++){_79f.push((i<this.numericMargin||i>=(this.count-this.numericMargin))?"":dojo.number.format(_7a1,this.constraints));_7a1+=inc;}}return _79f;},postMixInProperties:function(){this.inherited(arguments);this.labels=this.getLabels();this.count=this.labels.length;}});dojo.declare("dijit.form.VerticalRuleLabels",dijit.form.HorizontalRuleLabels,{templateString:"<div class=\"dijitRuleContainer dijitRuleContainerV\"></div>",_positionPrefix:"<div class=\"dijitRuleLabelContainer dijitRuleLabelContainerV\" style=\"top:",_labelPrefix:"\"><span class=\"dijitRuleLabel dijitRuleLabelV\">",_calcPosition:function(pos){return 100-pos;},_isHorizontal:false});}if(!dojo._hasResource["esri.map"]){dojo._hasResource["esri.map"]=true;dojo.provide("esri.map");dojo.declare("esri._MapContainer",null,{constructor:function(_7a5){this.id=_7a5;var _7a6=(this.container=dojo.byId(_7a5));dojo.addClass(_7a6,"map");this._pos=dojo.coords(_7a6,true);var _box=dojo.contentBox(_7a6);this.width=_box.w||esriConfig.defaults.map.width;this.height=_box.h||esriConfig.defaults.map.height;if(_box.w===0){dojo.style(_7a6,"width",this.width+"px");}if(_box.h===0){dojo.style(_7a6,"height",this.height+"px");}var _7a8=(this._root=document.createElement("div"));_7a8.id=_7a5+"_root";dojo.addClass(_7a8,"container");dojo.style(_7a8,{width:this.width+"px",height:this.height+"px"});var _7a9=(this._container=_7a8.appendChild(document.createElement("div")));_7a9.id=_7a5+"_container";dojo.addClass(_7a9,"container");_7a6.appendChild(_7a8);this._dragOrigin=new esri.geometry.Point(0,0);this._isDragging=false;this._CLICK_DURATION=300;this._clickTimeStamp=0;this._clickTimer=null;this._clickEvent={};this._clickPageX=null;this._clickPageY=null;this._MOUSE_WHEEL_DURATION=300;this._MOUSE_WHEEL_MOZ=navigator.userAgent.indexOf("Macintosh")!==-1?1:3;this._MOUSE_WHEEL=120;this._MOUSE_WHEEL_MAX_VALUE=2;this._mouseWheelTimer=null;this._mouseWheelEvent={};this._downPageX=null;this._downPageY=null;this._onMouseOverHandler_connect=dojo.connect(_7a9,"onmouseover",this,"_onMouseOverHandler");this._onMouseMoveHandler_connect=dojo.connect(_7a9,"onmousemove",this,"_onMouseMoveHandler");this._onMouseOutHandler_connect=dojo.connect(_7a9,"onmouseout",this,"_onMouseOutHandler");this._onMouseDownHandler_connect=dojo.connect(_7a9,"onmousedown",this,"_onMouseDownHandler");this._onMouseUpHandler_connect=dojo.connect(_7a9,"onmouseup",this,"_onMouseUpHandler");this._onClickDblClickHandler_connect=dojo.connect(_7a9,"onclick",this,"_onClickDblClickHandler");if(dojo.isIE){this._onDblClickHandler_connect=dojo.connect(_7a9,"ondblclick",this,"_onDblClickHandler");}this._onMouseWheel_connect=dojo.connect(_7a9,dojo.isFF||dojo.isMozilla?"DOMMouseScroll":"onmousewheel",this,"_onMouseWheelHandler");if(dojo.isIE){this._onKeyDown_connect=dojo.connect(_7a9,"onkeydown",this,"_onKeyDownHandler");this._onKeyUp_connect=dojo.connect(_7a9,"onkeyup",this,"_onKeyUpHandler");}this._processEvent=dojo.hitch(this,this._processEvent);this._onClickDblClickHandler=dojo.hitch(this,this._onClickDblClickHandler);this._onClickHandler=dojo.hitch(this,this._onClickHandler);this._onDblClickHandler=dojo.hitch(this,this._onDblClickHandler);this._onMouseWheelHandler=dojo.hitch(this,this._onMouseWheelHandler);this.__onMouseWheelHandler=dojo.hitch(this,this.__onMouseWheelHandler);this._onKeyDownHandler=dojo.hitch(this,this._onKeyDownHandler);this._onKeyUpHandler=dojo.hitch(this,this._onKeyUpHandler);this._resize=dojo.hitch(this,this._resize);},_cleanUp:function(){dojo.disconnect(this._onMouseOverHandler_connect);dojo.disconnect(this._onMouseMoveHandler_connect);dojo.disconnect(this._onMouseOutHandler_connect);dojo.disconnect(this._onDocumentMouseOutHandler_connect);dojo.disconnect(this._onMouseDownHandler_connect);dojo.disconnect(this._onMouseDragHandler_connect);dojo.disconnect(this._onMouseUpHandler_connect);dojo.disconnect(this._onClickDblClickHandler_connect);if(dojo.isIE){dojo.disconnect(this._onDblClickHandler_connect);}},_processEvent:function(evt){evt=dojo.fixEvent(evt,evt.target);var pos=this._pos;if(evt.type==="DOMMouseScroll"&&dojo.isFF<3){evt.screenPoint=new esri.geometry.Point(window.scrollX+evt.screenX-pos.x,window.scrollY+evt.screenY-pos.y);}else{evt.screenPoint=new esri.geometry.Point(evt.pageX-pos.x,evt.pageY-pos.y);}return evt;},_onMouseOverHandler:function(evt){if(!dojo.isIE){dojo.disconnect(this._onKeyDown_connect);dojo.disconnect(this._onKeyUp_connect);this._onKeyDown_connect=dojo.connect(document,"onkeydown",this,"_onKeyDownHandler");this._onKeyUp_connect=dojo.connect(document,"onkeyup",this,"_onKeyUpHandler");}this.onMouseOver(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseMoveHandler:function(evt){this.onMouseMove(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseOutHandler:function(evt){if(!dojo.isIE){dojo.disconnect(this._onKeyDown_connect);dojo.disconnect(this._onKeyUp_connect);}this.onMouseOut(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseDownHandler:function(evt){this._downPageX=evt.pageX;this._downPageY=evt.pageY;dojo.disconnect(this._onMouseMoveHandler_connect);this._onMouseDragHandler_connect=dojo.connect(document,"onmousemove",this,"_onMouseDragHandler");this.onMouseDown(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseDragHandler:function(evt){dojo.disconnect(this._onMouseDragHandler_connect);this._onMouseDragHandler_connect=dojo.connect(document,"onmousemove",this,"_onMouseDraggingHandler");this.onMouseDragStart(this._processEvent(evt,this._pos));dojo.disconnect(this._onMouseUpHandler_connect);this._onMouseUpHandler_connect=dojo.connect(document,"onmouseup",this,"_onMouseUpHandler");this._isDragging=true;dojo.stopEvent(evt);return false;},_onMouseDraggingHandler:function(evt){this.onMouseDrag(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseUpHandler:function(evt){this._downPageX-=evt.pageX;this._downPageY-=evt.pageY;evt=this._processEvent(evt,this._pos);if((this._downPageX!==0||this._downPageY!==0)&&this._isDragging){this.onMouseDragEnd(evt);}dojo.disconnect(this._onMouseDragHandler_connect);dojo.disconnect(this._onMouseMoveHandler_connect);this._onMouseMoveHandler_connect=dojo.connect(this._container,"onmousemove",this,"_onMouseMoveHandler");if(this._isDragging){dojo.disconnect(this._onMouseUpHandler_connect);this._onMouseUpHandler_connect=dojo.connect(this._container,"onmouseup",this,"_onMouseUpHandler");this._isDragging=false;}this.onMouseUp(evt);dojo.stopEvent(evt);return false;},_onClickDblClickHandler:function(evt){if(this._downPageX!==0&&this._downPageY!==0){dojo.stopEvent(evt);return false;}var _7b4=evt.pageX,_7b5=evt.pageY,ts=new Date().getTime();if(this._clickTimer&&((ts-this._clickTimeStamp)<=this._CLICK_DURATION)&&(this._clickPageX==_7b4&&this._clickPageY==_7b5)){clearTimeout(this._clickTimer);this._clickTimer=null;this._clickTimeStamp=0;this._onDblClickHandler(evt);dojo.stopEvent(evt);return false;}this._clickPageX=_7b4;this._clickPageY=_7b5;this._clickTimeStamp=ts;dojo.mixin(this._clickEvent,evt);clearTimeout(this._clickTimer);this._clickTimer=null;this._clickTimer=setTimeout(this._onClickHandler,this._CLICK_DURATION);dojo.stopEvent(evt);return false;},_onClickHandler:function(){this.onClick(this._processEvent(this._clickEvent,this._pos));this._clickEvent={};this._clickTimer=null;},_onDblClickHandler:function(evt){if(this._clickTimer){clearTimeout(this._clickTimer);}this.onDblClick(this._processEvent(evt,this._pos));dojo.stopEvent(evt);return false;},_onMouseWheelHandler:function(evt){evt=this._processEvent(evt,this._pos);evt.value=dojo.isIE||dojo.isSafari?evt.wheelDelta/this._MOUSE_WHEEL:-evt.detail/this._MOUSE_WHEEL_MOZ;if(Math.abs(evt.value)>this._MOUSE_WHEEL_MAX_VALUE){evt.value=evt.value<0?-this._MOUSE_WHEEL_MAX_VALUE:this._MOUSE_WHEEL_MAX_VALUE;}dojo.mixin(this._mouseWheelEvent,evt);if(this._mouseWheelTimer){clearTimeout(this._mouseWheelTimer);}this._mouseWheelTimer=setTimeout(this.__onMouseWheelHandler,this._MOUSE_WHEEL_DURATION);dojo.stopEvent(evt);return false;},__onMouseWheelHandler:function(){this.onMouseWheel(this._mouseWheelEvent);this._mouseWheelEvent={};this._mouseWheelTimer=null;},_onKeyDownHandler:function(evt){this.onKeyDown(evt);},_onKeyUpHandler:function(evt){this.onKeyUp(evt);},reposition:function(){var _pos=(this._pos=dojo.coords(this.container,true));this.onReposition(_pos.x,_pos.y);},_resize:function(){var _box=dojo.contentBox(this.container);this.width=_box.w;this.height=_box.h;dojo.style(this._root,{width:this.width+"px",height:this.height+"px"});},resize:function(){this._resize();this.onResize(this.width,this.height);},onMouseOver:function(){},onMouseMove:function(){},onMouseOut:function(){},onMouseDown:function(){},onMouseDragStart:function(){},onMouseDrag:function(){},onMouseDragEnd:function(){},onMouseUp:function(){},onClick:function(){},onDblClick:function(){},onMouseWheel:function(){},onKeyDown:function(){},onKeyUp:function(){},onReposition:function(){},onResize:function(){}});dojo.declare("esri.Map",esri._MapContainer,{constructor:function(_7bd,_7be){dojo.addOnUnload(this,"_cleanUp");var _7bf=(this._params={slider:true,nav:false,extent:null,layer:null,scales:null,showInfoWindowOnClick:true,displayGraphicsOnPan:true});if(_7be){dojo.mixin(_7bf,_7be);}this.layerIds=[];this._internalLayerIds=[];this.spatialReference=null;this.extent=_7bf.extent;this.loaded=false;this.isDoubleClickZoom=false;this.isClickRecenter=false;this.isScrollWheelZoom=false;this.isPan=false;this.isRubberBandZoom=false;this.isKeyboardNavigation=false;this.isPanArrows=false;this.isZoomSlider=false;this._visibleRect=new esri.geometry.Rect(0,0,this.width,this.height);this._visibleDelta=new esri.geometry.Rect(0,0,this.width,this.height);this._ratioW=this._ratioH=1;this._toMapPoint=esri.geometry.toMapPoint;this._toScreenPoint=esri.geometry.toScreenPoint;this._layers=[];this._layerDivs=[];this._layerSize=0;this._layerOrderDirty=false;this._baseLayer=null;this._baseLayerId=null;this._baseLayerLod=null;this._layersDiv=document.createElement("div");this._layersDiv.id=this.id+"_layers";dojo.addClass(this._layersDiv,"layersDiv");this._container.appendChild(this._layersDiv);this._zooming=0;this._zoomRect=new esri.Graphic(null,new esri.symbol.SimpleFillSymbol(esriConfig.defaults.map.zoomSymbol));this._zoomAnim=null;this._zoomAnimDiv=document.createElement("div");dojo.style(this._zoomAnimDiv,"position","absolute");this._keyboardPanDx=this._keyboardPanDy=0;var keys=dojo.keys;this._navigationKeys=[keys.NUMPAD_PLUS,61,keys.NUMPAD_MINUS,keys.UP_ARROW,keys.NUMPAD_8,keys.RIGHT_ARROW,keys.NUMPAD_6,keys.DOWN_ARROW,keys.NUMPAD_2,keys.LEFT_ARROW,keys.NUMPAD_4,keys.PAGE_UP,keys.NUMPAD_9,keys.PAGE_DOWN,keys.NUMPAD_3,keys.END,keys.NUMPAD_1,keys.HOME,keys.NUMPAD_7];this._LEVEL_CHANGE_FACTOR=1000000;this._FIXED_PAN_FACTOR=0.75;this._KEYBOARD_PAN_PIXEL_SIZE=10;this._ZOOM_IN=1;this._ZOOM_OUT=-1;this._ZINDEX_GRAPHICS=40;this._ZINDEX_NAV=(this._ZINDEX_SLIDER=42);this._ZINDEX_INFO=43;this._infoWindowCoords=null;this._infoWindowIsShowing=false;this._infoDiv=this._root.appendChild(document.createElement("div"));this._infoWindowId=this.id+"_infowindow";var _iw=(this.infoWindow=new esri.dijit.InfoWindow({title:"",id:this._infoWindowId},this._infoDiv));_iw.startup();_iw.hide();dojo.style(_iw.domNode,"zIndex",this._ZINDEX_INFO);this._normalizeRect=dojo.hitch(this,this._normalizeRect);this._panHandler=dojo.hitch(this,this._panHandler);this._zoomHandler=dojo.hitch(this,this._zoomHandler);this._recenterHandler=dojo.hitch(this,this._recenterHandler);this._recenterZoomHandler=dojo.hitch(this,this._recenterZoomHandler);this._scrollZoomHandler=dojo.hitch(this,this._scrollZoomHandler);this._keyNavigatingHandler=dojo.hitch(this,this._keyNavigatingHandler);this._keyNavigationEndHandler=dojo.hitch(this,this._keyNavigationEndHandler);this._zoomStartHandler=dojo.hitch(this,this._zoomStartHandler);this._zoomingHandler=dojo.hitch(this,this._zoomingHandler);this._zoomEndHandler=dojo.hitch(this,this._zoomEndHandler);this._panningHandler=dojo.hitch(this,this._panningHandler);this._panEndHandler=dojo.hitch(this,this._panEndHandler);this._delta=null;this._gClickHandler=dojo.hitch(this,this._gClickHandler);this.getInfoWindowAnchor=dojo.hitch(this,this.getInfoWindowAnchor);this._infoWindowZoomStartHandler=dojo.hitch(this,this._infoWindowZoomStartHandler);this._infoWindowExtentChangeHandler=dojo.hitch(this,this._infoWindowExtentChangeHandler);this._infoWindowShowHandler_connect=dojo.connect(_iw,"onShow",this,"_infoWindowShowHandler");this._infoWindowHideHandler_connect=dojo.connect(_iw,"onHide",this,"_infoWindowHideHandler");var func;if(this._params.layer){func=eval(this._params.layer.type);this.addLayer(new func(this._params.layer.url,this._params.layer.options));}else{if(!(_7be&&"layer" in _7be&&_7be.layer===null)){if(esriConfig.defaults.map.layer){func=eval(esriConfig.defaults.map.layer.type);this.addLayer(new func(esriConfig.defaults.map.layer.url,esriConfig.defaults.map.layer.options));}}}},_cleanUp:function(){this.inherited("_cleanUp",arguments);this.onUnload(this);this.infoWindow.hide();this.disableMapNavigation();var fpn=this._fixedPanCardinal,i;for(i in fpn){dojo.disconnect(this["_"+i+"_connect"]);}fpn=this._fixedPanDiagonal;for(i in fpn){dojo.disconnect(this["_"+i+"_connect"]);}dojo.disconnect(this._gClick_connect);},_processEvent:function(evt){evt=this.inherited("_processEvent",arguments);evt.mapPoint=this.extent?this.toMap(evt.screenPoint):new esri.geometry.Point();return evt;},_downZoomHandler:function(evt){if(evt.button==dojo.mouseButtons.LEFT&&evt.shiftKey&&this.isRubberBandZoom){this._dragOrigin=new esri.geometry.Point(0,0);dojo.mixin(this._dragOrigin,evt.screenPoint);dojo.style(this._container,"cursor","crosshair");this._zoomHandler_connect=dojo.connect(this,"onMouseDrag",this,"_zoomHandler");this._upZoomHandler_connect=dojo.connect(this,"onMouseUp",this,"_upZoomHandler");if(evt.ctrlKey){this._zooming=this._ZOOM_OUT;}else{this._zooming=this._ZOOM_IN;}}},_downPanHandler:function(evt){if(evt.button==dojo.mouseButtons.LEFT&&!evt.shiftKey&&this.isPan){this._dragOrigin=new esri.geometry.Point(0,0);dojo.mixin(this._dragOrigin,evt.screenPoint);this._panHandler_connect=dojo.connect(this,"onMouseDrag",this,"_panHandler");this._upPanHandler_connect=dojo.connect(this,"onMouseUp",this,"_upPanHandler");}},_upZoomHandler:function(evt){dojo.disconnect(this._zoomHandler_connect);dojo.disconnect(this._upZoomHandler_connect);var _zR=this._zoomRect;if(this._canZoom(this._zooming)&&_zR.getDojoShape()){this.graphics.remove(this._zoomRect);var rect=this._normalizeRect(evt);rect.x+=this._visibleRect.x;rect.y+=this._visibleRect.y;var _7cb;if(this._zooming==this._ZOOM_OUT){var _7cc=this.extent.getWidth(),_7cd=(_7cc*this.width)/rect.width,_7ce=(_7cd-_7cc)/2,ext=this.extent;_7cb=new esri.geometry.Extent(ext.xmin-_7ce,ext.ymin-_7ce,ext.xmax+_7ce,ext.ymax+_7ce,this.spatialReference);}else{var min=this.toMap({x:rect.x,y:(rect.y+rect.height)}),max=this.toMap({x:(rect.x+rect.width),y:rect.y});_7cb=new esri.geometry.Extent(min.x,min.y,max.x,max.y,this.spatialReference);}this._setExtent(_7cb);}if(_zR.getDojoShape()){this.graphics.remove(_zR,true);}this._zooming=0;dojo.style(this._container,"cursor","default");},_upPanHandler:function(evt){dojo.disconnect(this._panHandler_connect);dojo.disconnect(this._upPanHandler_connect);if(this._panning){var dx=evt.screenPoint.x-this._dragOrigin.x,dy=evt.screenPoint.y-this._dragOrigin.y,d=new esri.geometry.Point(dx,dy);this._visibleRect.x+=dx;this._visibleRect.y+=dy;this._visibleDelta.x+=dx;this._visibleDelta.y+=dy;var _7d6=this.extent,_rw=this._ratioW,_rh=this._ratioH;_7d6=(this.extent=new esri.geometry.Extent(_7d6.xmin-(dx/_rw),_7d6.ymin+(dy/_rh),_7d6.xmax-(dx/_rw),_7d6.ymax+(dy/_rh),this.spatialReference));this.onPanEnd(_7d6,d);this.onExtentChange(_7d6,d,false,this._baseLayerLod);this._panning=false;}dojo.style(this._container,"cursor","default");},_panHandler:function(evt){if(!this._panning){this._panning=true;dojo.style(this._container,"cursor","move");this.onPanStart(this.extent,evt.screenPoint);}var dx=evt.screenPoint.x-this._dragOrigin.x,dy=evt.screenPoint.y-this._dragOrigin.y,_7dc=this.extent,_rw=this._ratioW,_rh=this._ratioH;this.onPan(new esri.geometry.Extent(_7dc.xmin-(dx/_rw),_7dc.ymin+(dy/_rh),_7dc.xmax-(dx/_rw),_7dc.ymax+(dy/_rh),this.spatialReference),new esri.geometry.Point(dx,dy));},_normalizeRect:function(evt){var xy=evt.screenPoint,dx=this._dragOrigin.x,dy=this._dragOrigin.y,rect=new esri.geometry.Rect((xy.x<dx?xy.x:dx)-this._visibleRect.x,(xy.y<dy?xy.y:dy)-this._visibleRect.y,Math.abs(xy.x-dx),Math.abs(xy.y-dy));if(rect.width===0){rect.width=1;}if(rect.height===0){rect.height=1;}return rect;},_zoomHandler:function(evt){var rect=this._normalizeRect(evt),_zR=this._zoomRect,g=this.graphics;if(!_zR.getDojoShape()){dojo.style(this._container,"cursor","crosshair");var tl=this.toMap(new esri.geometry.Point(rect.x,rect.y)),br=this.toMap(new esri.geometry.Point(rect.x+rect.width,rect.y+rect.height));_zR=this.graphics.add(_zR.setGeometry(new esri.geometry.Rect(tl.x,tl.y,br.x-tl.x,tl.y-br.y)),true);}else{_zR.getDojoShape().setShape(rect);}},_recenterHandler:function(evt){if(evt.shiftKey){this._panTo(evt.mapPoint);}},_recenterZoomHandler:function(evt){if(evt.shiftKey){evt.value=evt.ctrlKey?-1:1;this._scrollZoomHandler(evt);}},_canZoom:function(_7ec){var _7ed=this.getLevel(),_7ee=this._baseLayer.getNumLevels,_7ef=-1;if(_7ee){_7ef=_7ee();}if((_7ed===0&&_7ec<0)||(_7ed===_7ef-1&&_7ec>0)){return false;}return true;},_scrollZoomHandler:function(evt){if(!this._canZoom(evt.value)){return;}var _7f1=this.extent,size=this.extent.expand(evt.value>0?0.5*evt.value:2*-evt.value),_7f3=evt.mapPoint,xmin=_7f1.xmin-((size.getWidth()-_7f1.getWidth())*(_7f3.x-_7f1.xmin)/_7f1.getWidth()),ymax=_7f1.ymax-((size.getHeight()-_7f1.getHeight())*(_7f3.y-_7f1.ymax)/_7f1.getHeight());this._setExtent(new esri.geometry.Extent(xmin,ymax-size.getHeight(),xmin+size.getWidth(),ymax,this.spatialReference),null,evt.screenPoint);},_keyNavigatingHandler:function(evt){var kc=evt.keyCode;if(dojo.indexOf(this._navigationKeys,kc)!==-1){var dk=dojo.keys;if(kc===dk.NUMPAD_PLUS||kc===61){this._setExtent(this.extent.expand(0.5));}else{if(kc==dk.NUMPAD_MINUS){this._setExtent(this.extent.expand(2));}else{if(!this._panning){this.onPanStart(this.extent,new esri.geometry.Point(0,0));}this._panning=true;var _7f9=this._KEYBOARD_PAN_PIXEL_SIZE;switch(kc){case dk.UP_ARROW:case dk.NUMPAD_8:this._keyboardPanDy+=_7f9;break;case dk.RIGHT_ARROW:case dk.NUMPAD_6:this._keyboardPanDx-=_7f9;break;case dk.DOWN_ARROW:case dk.NUMPAD_2:this._keyboardPanDy-=_7f9;break;case dk.LEFT_ARROW:case dk.NUMPAD_4:this._keyboardPanDx+=_7f9;break;case dk.PAGE_UP:case dk.NUMPAD_9:this._keyboardPanDx-=_7f9;this._keyboardPanDy+=_7f9;break;case dk.PAGE_DOWN:case dk.NUMPAD_3:this._keyboardPanDx-=_7f9;this._keyboardPanDy-=_7f9;break;case dk.END:case dk.NUMPAD_1:this._keyboardPanDx+=_7f9;this._keyboardPanDy-=_7f9;break;case dk.HOME:case dk.NUMPAD_7:this._keyboardPanDx+=_7f9;this._keyboardPanDy+=_7f9;break;default:return;}var dx=this._keyboardPanDx,dy=this._keyboardPanDy,_7fc=this.extent,_rw=this._ratioW,_rh=this._ratioH;this.onPan(new esri.geometry.Extent(_7fc.xmin-(dx/_rw),_7fc.ymin+(dy/_rh),_7fc.xmax-(dx/_rw),_7fc.ymax+(dy/_rh),this.spatialReference),new esri.geometry.Point(dx,dy));}}dojo.stopEvent(evt);}},_keyNavigationEndHandler:function(evt){if(this._panning){this._panning=false;var kDx=this._keyboardPanDx,kDy=this._keyboardPanDy;this._visibleRect.x+=kDx;this._visibleRect.y+=kDy;this._visibleDelta.x+=kDx;this._visibleDelta.y+=kDy;var _802=new esri.geometry.Point(this._keyboardPanDx,this._keyboardPanDy),_803=this.extent,_rw=this._ratioW,_rh=this._ratioH;_803=(this.extent=new esri.geometry.Extent(_803.xmin-(kDx/_rw),_803.ymin+(kDy/_rh),_803.xmax-(kDx/_rw),_803.ymax+(kDy/_rh),this.spatialReference));this.onPanEnd(_803,_802);this.onExtentChange(_803,_802,false,this._baseLayerLod);this._keyboardPanDx=this._keyboardPanDy=0;}},_addLayer:function(_806,_807,_808){var id=esriConfig.defaults.map.layerNamePrefix+this._layerSize;if(_806.id){id=_806.id;}else{_806.id=id;}var i=_808;if(_807==this.layerIds){i=this._layerSize;this._layerSize++;}if(i===0){this._baseLayerId=id;this._layerOrderDirty=true;}if(dojo.indexOf(_807,id)===-1){_807.splice(i,0,id);this._layerOrderDirty=true;}var _80b=dojo.hitch(this,this._addLayerHandler),self=this,_80d=(function(){if(_806.loaded){_80b(_806);}else{self[_806.id+"_addLayerHandler_connect"]=dojo.connect(_806,"onLoad",self,"_addLayerHandler");}});if(this.loaded||i===0||_806.loaded){_80d();}else{dojo.connect(this,"onLoad",_80d);}},_addLayerHandler:function(_80e){var _80f=_80e.id,_810=dojo.indexOf(this.layerIds,_80f),_811=_810,_812=false;if(_810==-1){_810=dojo.indexOf(this._internalLayerIds,_80f);_811=this._ZINDEX_GRAPHICS+_810;_812=true;}this._layers[_80f]=_80e;var _813=_80e._setMap(this,this._layersDiv,_811,this._baseLayerLod);_813.id=this.id+"_"+_80f;dojo.style(_813,"zIndex",_811);this._layerDivs[_80f]=_813;if(this._layerOrderDirty){this._reorderLayers();}if(_80f===this._baseLayerId){this._baseLayer=_80e;this.spatialReference=this._baseLayer.spatialReference;this.graphics=new esri.layers.GraphicsLayer(null,{id:this.id+"_graphics",displayOnPan:this._params.displayGraphicsOnPan});this._addLayer(this.graphics,this._internalLayerIds,this._ZINDEX_GRAPHICS);}if(_80e===this.graphics){this.enableMapNavigation();this._createNav();this._createSlider();if(this.extent){var x=this._baseLayer._getAdjustedExtent(this.extent);this.extent=x.extent;this._baseLayerLod=x.lod;}this._setExtent(this.extent?this.extent:new esri.geometry.Extent(this._baseLayer.initialExtent));this.loaded=true;this.onLoad(this);if(this._params.showInfoWindowOnClick){this._gClick_connect=dojo.connect(this.graphics,"onClick",this,"_gClickHandler");}}if(!_812){this.onLayerAdd(_80e);}dojo.disconnect(this[_80f+"_addLayerHandler_connect"]);},_reorderLayers:function(){var g=this.graphics,gId=g?g.id:null,_817=this._layerDivs,djs=dojo.style,_819=this.layerIds,id,_81b,_81c;for(var i=0,il=this.layerIds.length;i<il;i++){id=_819[i];_81b=_817[id];_81c=_817[_819[i+1]];if(id!==gId&&_81b){if(_81c){this._layersDiv.insertBefore(_81b,_81c);}else{this._layersDiv.appendChild(_81b);}djs(_81b,"zIndex",i);this.onLayerReorder(this._layers[id],i);}}this.onLayersReordered(this.layerIds);this._layerOrderDirty=false;},_setExtent:function(_81f,_820,_821){if(this._zoomAnim){return;}if(!this._baseLayer){this.extent=_81f;return;}var twd=this.width,tht=this.height,_824=true,ext=this.extent,_826=this._reshapeExtent(_81f);_81f=_826.extent;var _827=_81f.getWidth(),_828=_81f.getHeight();if(ext){var tw=Math.round(ext.getWidth()*this._LEVEL_CHANGE_FACTOR),w=Math.round(_827*this._LEVEL_CHANGE_FACTOR),th=Math.round(ext.getHeight()*this._LEVEL_CHANGE_FACTOR),h=Math.round(_828*this._LEVEL_CHANGE_FACTOR);_824=(tw!=w)||(th!=h);}var _82d,end,_82f,_830,_831;if(esriConfig.defaults.map.zoomDuration&&_824&&ext){_82f=new esri.geometry.Extent(ext);_82d={left:ext.xmin,top:ext.ymax,width:ext.getWidth(),height:ext.getHeight()};end={left:_81f.xmin,top:_81f.ymax,width:_827,height:_828};_830=_82d.width/end.width;_831=_82d.height/end.height;}this._ratioW=twd/_827;this._ratioH=tht/_828;if(_824){dojo.style(this._layersDiv,{left:"0px",top:"0px"});_820=new esri.geometry.Point(0,0);this._visibleRect.x=(this._visibleRect.y=0);if(_82d&&end){this._delta=_820;var _zAD=this._zoomAnimDiv;_zAD.startingExtent=_82f;_zAD.extent=_81f;_zAD.levelChange=_824;_zAD.newLod=_826.lod;this._zoomAnim=esri.fx.resize({node:_zAD,start:_82d,end:end,duration:esriConfig.defaults.map.zoomDuration,rate:esriConfig.defaults.map.zoomRate,beforeBegin:this._zoomStartHandler,onAnimate:this._zoomingHandler,onEnd:this._zoomEndHandler});if(_821){_zAD.anchor=_821;}else{var mtl=new esri.geometry.Point(_81f.xmin,_81f.ymax),mbl=new esri.geometry.Point(_81f.xmin,_81f.ymin),etl=new esri.geometry.Point(ext.xmin,ext.ymax),ebl=new esri.geometry.Point(ext.xmin,ext.ymin);_zAD.anchor=this._toScreenPoint(ext,twd,tht,esri.geometry.getLineIntersection(etl,mtl,ebl,mbl));}this._zoomAnim.play();}else{this.extent=_81f;this.onExtentChange(this.extent,_820,_824,(this._baseLayerLod=_826.lod));}}else{if(!this._panning){if(this.loaded===false){this.extent=_81f;this.onExtentChange(this.extent,_820,_824,(this._baseLayerLod=_826.lod));}else{this._panning=true;_82d=new esri.geometry.Rect(0,0,this.width,this.height,this.spatialReference).getCenter();this.onPanStart(this.extent,new esri.geometry.Point(0,0));var _837=(this._delta=this.toScreen(_81f.getCenter()));esri.fx.slideTo({node:this._zoomAnimDiv,left:_82d.x-_837.x,top:_82d.y-_837.y,duration:esriConfig.defaults.map.panDuration,rate:esriConfig.defaults.map.panRate,onAnimate:this._panningHandler,onEnd:this._panEndHandler}).play();}}}},_zoomStartHandler:function(){var _zAD=this._zoomAnimDiv;this.onZoomStart(_zAD.startingExtent,1,_zAD.anchor,this._baseLayerLod?this._baseLayerLod.level:null);},_zoomingHandler:function(rect){var rl=parseFloat(rect.left),rt=parseFloat(rect.top),rw=parseFloat(rect.width),rh=parseFloat(rect.height),_83e=new esri.geometry.Extent(rl,rt-rh,rl+rw,rt,this.spatialReference),_83f=this.extent.getWidth()/_83e.getWidth();this.onZoom(_83e,_83f,this._zoomAnimDiv.anchor);},_zoomEndHandler:function(){var _zAD=this._zoomAnimDiv,_841=_zAD.extent,_842=this.extent.getWidth()/_841.getWidth(),_841=(this.extent=new esri.geometry.Extent(_841)),_843=(this._baseLayerLod=_zAD.newLod);this.onZoomEnd(_841,_842,_zAD.anchor,this._baseLayerLod?_843.level:null);this.onExtentChange(_841,this._delta,_zAD.levelChange,_843);_zAD.extent=_zAD.anchor=_zAD.levelChange=_zAD.startingExtent=_zAD.newLod=this._delta=this._zoomAnim=null;},_panTo:function(_844){var ewd=this.extent.getWidth(),eht=this.extent.getHeight(),xmin=_844.x-(ewd/2),xmax=xmin+ewd,ymin=_844.y-(eht/2),ymax=ymin+eht;this._setExtent(new esri.geometry.Extent(xmin,ymin,xmax,ymax));},_panningHandler:function(_84b){var d=new esri.geometry.Point(parseFloat(_84b.left),parseFloat(_84b.top)),dm=this.toMap(d);this.onPan(this.extent.offset(dm.x,dm.y),d);},_panEndHandler:function(){this._panning=false;var _84e=this._delta.offset(-this.width/2,-this.height/2),dx=_84e.x,dy=_84e.y;this._visibleRect.x+=-dx;this._visibleRect.y+=-dy;this._visibleDelta.x+=-dx;this._visibleDelta.y+=-dy;dojo.style(this._zoomAnimDiv,{left:"0px",top:"0px"});var _851=this.extent,_rw=this._ratioW,_rh=this._ratioH;_851=(this.extent=new esri.geometry.Extent(_851.xmin+(dx/_rw),_851.ymin-(dy/_rh),_851.xmax+(dx/_rw),_851.ymax-(dy/_rh),this.spatialReference));_84e.setX(-_84e.x);_84e.setY(-_84e.y);this.onPanEnd(_851,_84e);this.onExtentChange(_851,_84e,false,this._baseLayerLod);this._delta=null;},_fixedPan:function(dx,dy,evt){this._panTo(this.toMap(new esri.geometry.Point((this.width/2)+dx,(this.height/2)+dy)));if(evt){dojo.stopEvent(evt);}},_createNav:function(){if(this._params.nav){var div,v,i,fpn=(this._fixedPanCardinal={up:"panUp",right:"panRight",down:"panDown",left:"panLeft"}),_85b=dojo.addClass,_85c=dojo.style,_85d=dojo.connect,id=this.id,_85f=(this._navDiv=this._root.appendChild(document.createElement("div")));_85f.id=this.id+"_navdiv";dojo.addClass(_85f,"navDiv");var w2=this.width/2,h2=this.height/2,wh;for(i in fpn){v=fpn[i];div=_85f.appendChild(document.createElement("div"));div.id=id+"_pan_"+i;_85b(div,"fixedPan "+v);if(i==="up"||i==="down"){wh=parseInt(dojo.coords(div).w)/2;_85c(div,{left:(w2-wh)+"px",zIndex:this._ZINDEX_NAV});}else{wh=parseInt(dojo.coords(div).h)/2;_85c(div,{top:(h2-wh)+"px",zIndex:this._ZINDEX_NAV});}this["_"+i+"_connect"]=_85d(div,"onclick",dojo.hitch(this,this[v]));}this._onMapResizeNavHandler_connect=dojo.connect(this,"onResize",this,"_onMapResizeNavHandler");_85c=dojo.style;fpn=(this._fixedPanDiagonal={upperRight:"panUpperRight",lowerRight:"panLowerRight",lowerLeft:"panLowerLeft",upperLeft:"panUpperLeft"});for(i in fpn){v=fpn[i];div=document.createElement("div");div.id=id+"_pan_"+i;_85b(div,"fixedPan "+v);_85c(div,"zIndex",this._ZINDEX_NAV);this["_"+i+"_connect"]=_85d(div,"onclick",dojo.hitch(this,this[v]));_85f.appendChild(div);}this.isPanArrows=true;}},_onMapResizeNavHandler:function(){var id=this.id,w2=this.width/2,h2=this.height/2,fpn=this._fixedPanCardinal,_867=dojo.coords,_868=dojo.style,i,div,wh;for(i in fpn){div=dojo.byId(id+"_pan_"+i);if(i==="up"||i==="down"){wh=parseInt(_867(div).w)/2;_868(div,"left",(w2-wh)+"px");}else{wh=parseInt(_867(div).h)/2;_868(div,"top",(h2-wh)+"px");}}},_createSlider:function(){if(this._params.slider){var div=this._root.appendChild(document.createElement("div")),id=(div.id=this.id+"_zoom_slider"),_86e=esriConfig.defaults.map.slider.width,_86f=_86e?dijit.form.HorizontalSlider:dijit.form.VerticalSlider,_870=dojo.toJson(dojo.mixin({position:"absolute"},esriConfig.defaults.map.slider));_870=_870.substring(1,_870.length-1).split("\"").join("").split(",").join(";");var _871=this._baseLayer.getNumLevels;if(_871){var _872=_871(),_873,_874,_875,_876,_877,_878=esriConfig.defaults.map.sliderLabel;if(_878){var _879=_86e?dijit.form.HorizontalRule:dijit.form.VerticalRule,_87a=_86e?dijit.form.HorizontalRuleLabels:dijit.form.VerticalRuleLabels,cont=_86e?"topDecoration":"rightDecoration",tick=_86e?"height:"+_878.tick+"px":"width:"+_878.tick+"px";_877=_878.labels;if(_877===null){_877=[];for(var i=0,il=_872;i<il;i++){_877[i]="";}}_873=document.createElement("div");div.appendChild(_873);_874=new _879({container:cont,count:_872,style:tick},_873);_875=document.createElement("div");div.appendChild(_875);_876=new _87a({container:cont,count:_872,labels:_877,style:_878.style},_875);}var _87f=(this._slider=new _86f({id:id,minimum:0,maximum:_872-1,discreteValues:_872,value:this._baseLayer.getLevel(),clickSelect:true,intermediateChanges:true,style:_870+"; z-index:"+this._ZINDEX_SLIDER+";"},div));_87f.startup();if(_878){_874.startup();_876.startup();}this._slider_connect=dojo.connect(_87f,"onChange",this,"_onSliderChangeHandler");this._onExtentChangeSlider_connect=dojo.connect(this,"onExtentChange",this,"_onExtentChangeSliderHandler");}else{var ht=100,_87f=(this._slider=new _86f({id:id,minimum:0,maximum:2,discreteValues:3,value:1,clickSelect:true,intermediateChanges:true,style:_870+" height:"+ht+"px; z-index:"+this._ZINDEX_SLIDER+";"},div)),_881=_87f.domNode.firstChild.childNodes;for(var i=1;i<=3;i++){dojo.style(_881[i],"visibility","hidden");}_87f.startup();this._slider_connect=dojo.connect(_87f,"onChange",this,"_onDynSliderChangeHandler");this._onExtentChangeSlider_connect=dojo.connect(this,"onExtentChange",this,"_onExtentChangeDynSliderHandler");}this.isZoomSlider=true;}},_onSliderChangeHandler:function(_882){this.setLevel(_882);},_onExtentChangeSliderHandler:function(){dojo.disconnect(this._slider_connect);this._slider.setValue(this._baseLayer.getLevel());this._slider_connect=dojo.connect(this._slider,"onChange",this,"_onSliderChangeHandler");},_onDynSliderChangeHandler:function(_883){if(_883>0){this._setExtent(this.extent.expand(0.5));}else{this._setExtent(this.extent.expand(2));}},_onExtentChangeDynSliderHandler:function(){dojo.disconnect(this._slider_connect);this._slider.setValue(1);this._slider_connect=dojo.connect(this._slider,"onChange",this,"_onDynSliderChangeHandler");},_reshapeExtent:function(_884,_885){var w=_884.getWidth(),h=_884.getHeight(),_888=this.width,_889=this.height,r=w/h,_88b=_888/_889,dw=0,dh=0;if(_888>_889){if(w>h){if(_88b>r){dw=(h*_88b)-w;}else{dh=(w/_88b)-h;}}else{if(w<h){dw=(h*_88b)-w;}else{dw=(h*_88b)-w;}}}else{if(_888<_889){if(w>h){dh=(w/_88b)-h;}else{if(w<h){if(_88b>r){dh=(w/_88b)-h;}else{dw=(h*_88b)-w;}}else{dh=(w/_88b)-h;}}}else{if(w<h){dw=h-w;}else{if(w>h){dh=(w/_88b)-h;}}}}if(dw){_884.xmin-=dw/2;_884.xmax+=dw/2;}if(dh){_884.ymin-=dh/2;_884.ymax+=dh/2;}if(this._baseLayer){var _88e=this._baseLayer._getAdjustedExtent(_884);return _88e;}return _884;},_gClickHandler:function(evt){var g=evt.graphic;if(g.infoTemplate){dojo.stopEvent(evt);this._showInfoWindow(g,evt.mapPoint);}},getInfoWindowAnchor:function(pt){var w2=this.width/2,h2=this.height/2,_894;if(pt.y<h2){_894="LOWER";}else{_894="UPPER";}if(pt.x<w2){return esri.dijit.InfoWindow["ANCHOR_"+_894+"RIGHT"];}else{return esri.dijit.InfoWindow["ANCHOR_"+_894+"LEFT"];}},_infoWindowShowHandler:function(){this._infoWindowIsShowing=true;if(!this._infoWindowPanHandler_connect){this._infoWindowPanHandler_connect=dojo.connect(this,"onPan",this,"_infoWindowPanHandler");this._infoWindowZoomStartHandler_connect=dojo.connect(this,"onZoomStart",this,"_infoWindowZoomStartHandler");dojo.disconnect(this._infoWindowExtentChangeHandler_connect);this._infoWindowExtentChangeHandler_connect=dojo.connect(this,"onExtentChange",this,"_infoWindowExtentChangeHandler");}},_infoWindowHideHandler:function(){this._infoWindowIsShowing=false;dojo.disconnect(this._infoWindowPanHandler_connect);dojo.disconnect(this._infoWindowZoomStartHandler_connect);dojo.disconnect(this._infoWindowExtentChangeHandler_connect);this._infoWindowPanHandler_connect=this._infoWindowZoomStartHandler_connect=this._infoWindowExtentChangeHandler_connect=null;},_infoWindowPanHandler:function(_895,_896){this.infoWindow.move(this.infoWindow.coords.offset(_896.x,_896.y));},_infoWindowZoomStartHandler:function(){this.infoWindow.hide(null,true);this._infoWindowCoords=this.toMap(new esri.geometry.Point(this.infoWindow.coords));this._infoWindowIsShowing=true;},_infoWindowExtentChangeHandler:function(_897,_898,_899){if(this._infoWindowIsShowing){var _isc;if(_899){_isc=this.toScreen(this._infoWindowCoords);}else{_isc=this.infoWindow.coords.offset(_898.x,_898.y);}this.infoWindow.show(_isc,this.getInfoWindowAnchor(_isc),true);}},_showInfoWindow:function(_89b,_89c){var git=_89b.infoTemplate;if(git){var _iw=this.infoWindow;_iw.hide();var ga=_89b.attributes;_iw.setTitle(_89b.getTitle(git.title));_iw.setContent(_89b.getContent(git.content));var _isc=this.toScreen(_89c);_iw.show(_isc,this.getInfoWindowAnchor(_isc));}},onLoad:function(){},onUnload:function(){},onExtentChange:function(){},onLayerAdd:function(){},onLayerReorder:function(){},onLayersReordered:function(){},onPanStart:function(){},onPan:function(){},onPanEnd:function(){},onZoomStart:function(){},onZoom:function(){},onZoomEnd:function(){},onResize:function(){},enableMapNavigation:function(){this.enableDoubleClickZoom();this.enableClickRecenter();this.enablePan();this.enableRubberBandZoom();this.enableKeyboardNavigation();this.enableScrollWheelZoom();},disableMapNavigation:function(){this.disableDoubleClickZoom();this.disableClickRecenter();this.disablePan();this.disableRubberBandZoom();this.disableKeyboardNavigation();this.disableScrollWheelZoom();},enableDoubleClickZoom:function(){if(!this.isDoubleClickZoom){this._recenterZoomHandler_connect=dojo.connect(this,"onDblClick",this,"_recenterZoomHandler");this.isDoubleClickZoom=true;}},disableDoubleClickZoom:function(){if(this.isDoubleClickZoom){dojo.disconnect(this._recenterZoomHandler_connect);this.isDoubleClickZoom=false;}},enableClickRecenter:function(){if(!this.isClickRecenter){this._recenterHandler_connect=dojo.connect(this,"onClick",this,"_recenterHandler");this.isClickRecenter=true;}},disableClickRecenter:function(){if(this.isClickRecenter){dojo.disconnect(this._recenterHandler_connect);this.isClickRecenter=false;}},enablePan:function(){if(!this.isPan){this._downPanHandler_connect=dojo.connect(this,"onMouseDown",this,"_downPanHandler");this.isPan=true;}},disablePan:function(){if(this.isPan){dojo.disconnect(this._downPanHandler_connect);this.isPan=false;}},enableRubberBandZoom:function(){if(!this.isRubberBandZoom){this._downZoomHandler_connect=dojo.connect(this,"onMouseDown",this,"_downZoomHandler");this.isRubberBandZoom=true;}},disableRubberBandZoom:function(){if(this.isRubberBandZoom){dojo.disconnect(this._downZoomHandler_connect);this.isRubberBandZoom=false;}},enableKeyboardNavigation:function(){if(!this.isKeyboardNavigation){this._keyNavigatingHandler_connect=dojo.connect(this,"onKeyDown",this,"_keyNavigatingHandler");this._keyNavigationEndHandler_connect=dojo.connect(this,"onKeyUp",this,"_keyNavigationEndHandler");this.isKeyboardNavigation=true;}},disableKeyboardNavigation:function(){if(this.isKeyboardNavigation){dojo.disconnect(this._keyNavigatingHandler_connect);dojo.disconnect(this._keyNavigationEndHandler_connect);this.isKeyboardNavigation=false;}},enableScrollWheelZoom:function(){if(!this.isScrollWheelZoom){this._scrollZoomHandler_connect=dojo.connect(this,"onMouseWheel",this,"_scrollZoomHandler");this.isScrollWheelZoom=true;}},disableScrollWheelZoom:function(){if(this.isScrollWheelZoom){dojo.disconnect(this._scrollZoomHandler_connect);this.isScrollWheelZoom=false;}},showPanArrows:function(){var nd=this._navDiv;if(nd!==undefined){esri.show(nd);this.isPanArrows=true;}},hidePanArrows:function(){var nd=this._navDiv;if(nd!==undefined){esri.hide(nd);this.isPanArrows=false;}},showZoomSlider:function(){if(this._slider){dojo.style(this._slider.domNode,"visibility","visible");this.isZoomSlider=true;}},hideZoomSlider:function(){if(this._slider){dojo.style(this._slider.domNode,"visibility","hidden");this.isZoomSlider=false;}},addLayer:function(_8a3){this._addLayer(_8a3,this.layerIds);},reorderLayer:function(id,_8a5){if(_8a5<0){_8a5=0;}else{if(_8a5>=this.layerIds.length){_8a5=this.layerIds.length-1;}}var i=dojo.indexOf(this.layerIds,id);if(i==-1){throw "Unable to find layer '"+id+"' in map ('"+this.id+"')";}if(i==_8a5){return;}this.layerIds.splice(i,1);if(_8a5===0){this._baseLayerId=id;this._baseLayer=this._layers[id];}this.layerIds.splice(_8a5,0,id);this._reorderLayers();},getLayer:function(id){return this._layers[id];},setExtent:function(_8a8){this._setExtent(_8a8);},centerAt:function(_8a9){this._panTo(_8a9);},getLevel:function(){var get=this._baseLayer.getLevel;if(get){return get();}else{return -1;}},setLevel:function(_8ab){var set=this._baseLayer.setLevel;if(set){set(_8ab);}},toScreen:function(pt){return this._toScreenPoint(this.extent,this.width,this.height,pt);},toMap:function(pt){return this._toMapPoint(this.extent,this.width,this.height,pt);},getScale:function(){return this._baseLayer.getScale();},resize:function(){var w=this.width,h=this.height,r=esri.geometry._extentToRect(this.extent);this._resize();var nw=this.width,nh=this.height,_v=this._visibleRect;_v.update(_v.x,_v.y,nw,nh);_v=this._visibleDelta;_v.update(_v.x,_v.y,nw,nh);var ne=(this.extent=esri.geometry._rectToExtent(new esri.geometry.Rect(r.x,r.y,r.width*(nw/w),r.height*(nh/h),this.spatialReference)));this.onResize(ne,nw,nh);this._setExtent(ne);},panUp:function(){this._fixedPan(0,this.height*-this._FIXED_PAN_FACTOR,arguments[0]);},panUpperRight:function(){this._fixedPan(this.width*this._FIXED_PAN_FACTOR,this.height*-this._FIXED_PAN_FACTOR,arguments[0]);},panRight:function(){this._fixedPan(this.width*this._FIXED_PAN_FACTOR,0,arguments[0]);},panLowerRight:function(){this._fixedPan(this.width*this._FIXED_PAN_FACTOR,this.height*this._FIXED_PAN_FACTOR,arguments[0]);},panDown:function(){this._fixedPan(0,this.height*this._FIXED_PAN_FACTOR,arguments[0]);},panLowerLeft:function(){this._fixedPan(this.width*-this._FIXED_PAN_FACTOR,this.height*this._FIXED_PAN_FACTOR,arguments[0]);},panLeft:function(){this._fixedPan(this.width*-this._FIXED_PAN_FACTOR,0,arguments[0]);},panUpperLeft:function(){this._fixedPan(this.width*-this._FIXED_PAN_FACTOR,this.height*-this._FIXED_PAN_FACTOR,arguments[0]);}});}if(!dojo._hasResource["esri.tasks._task"]){dojo._hasResource["esri.tasks._task"]=true;dojo.provide("esri.tasks._task");dojo.declare("esri.tasks._Task",null,{constructor:function(url){this.url=url;this._url=esri.urlToObject(url);},_encode:function(_8b7){var _8b8,type,_8ba={};for(var i in _8b7){if(i=="declaredClass"){continue;}_8b8=_8b7[i];type=typeof (_8b8);if(_8b8!==null&&_8b8!==undefined&&type!=="function"){if(dojo.isArray(_8b8)){_8ba[i]=[];for(var p=0,pl=_8b8.length;p<pl;p++){_8ba[i][p]=this._encode(_8b8[p]);}}else{if(type==="object"){if(_8b8.toJson){_8ba[i]=dojo.toJson(_8b8.toJson());}}else{_8ba[i]=_8b8;}}}}return _8ba;}});dojo.declare("esri.tasks.FeatureSet",null,{constructor:function(json){if(json){dojo.mixin(this,json);this.spatialReference=new esri.SpatialReference(this.spatialReference);}else{this.features=[];}},displayFieldName:null,geometryType:null,fieldAliases:null,toJson:function(){var json={};if(this.displayFieldName){json.displayFieldName=this.displayFieldName;}if(this.geometryType){json.geometryType=this.geometryType;}if(this.spatialReference){json.sr=this.spatialReference.toJson();}else{if(this.features[0].geometry){json.sr=this.features[0].geometry.spatialReference.toJson();}}var _8c0,_8c1,_8c2=(json.features=[]),_8c3=this.features;for(var i=0,il=_8c3.length;i<il;i++){_8c0=_8c3[i].toJson();_8c1={};if(_8c0.geometry){_8c1.geometry=_8c0.geometry;}if(_8c0.attributes){_8c1.attributes=_8c0.attributes;}_8c2.push(_8c1);}return json;}});}if(!dojo._hasResource["esri.tasks.find"]){dojo._hasResource["esri.tasks.find"]=true;dojo.provide("esri.tasks.find");dojo.declare("esri.tasks.FindTask",esri.tasks._Task,{constructor:function(url){this._url.path+="/find";this._handler=dojo.hitch(this,this._handler);},_handler:function(_8c7,io,_8c9){var _8ca=_8c7.results,_8cb=[],_8cc,_8cd,_8ce=esri.geometry.Point,_8cf=esri.geometry.Polyline,_8d0=esri.geometry.Polygon,_8d1=esri.geometry.Extent,_8d2=esri.geometry.Multipoint,_8d3=esri.tasks.FindResult,_8d4=esri.Graphic;for(var i=0,il=_8ca.length;i<il;i++){_8cc=_8ca[i];_8cb[i]=new _8d3(_8cc);_8cd=(_8cb[i].feature=new _8d4(null,null,_8cc.attributes));switch(_8cc.geometryType){case "esriGeometryPoint":_8cd.setGeometry(new _8ce(_8cc.geometry));break;case "esriGeometryPolyline":_8cd.setGeometry(new _8cf(_8cc.geometry));break;case "esriGeometryPolygon":_8cd.setGeometry(new _8d0(_8cc.geometry));break;case "esriGeometryEnvelope":_8cd.setGeometry(new _8d1(_8cc.geometry));break;case "esriGeometryMultipoint":_8cd.setGeometry(new _8d2(_8cc.geometry));break;}}this.onComplete(_8cb);if(_8c9){_8c9(_8cb);}},execute:function(_8d7,_8d8){var _8d9=dojo.mixin({f:"json",token:this._url.query.token},this._url.query),_h=this._handler;_8d9=dojo.mixin(_8d9,_8d7.toJson());_8d9=this._encode(_8d9);esri.request({url:this._url.path,content:_8d9,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_8d8);}),error:esriConfig.defaults.io.errorHandler});},onComplete:function(){}});dojo.declare("esri.tasks.FindParameters",null,{searchText:null,contains:true,searchFields:null,outSpatialReference:null,layerIds:null,returnGeometry:false,toJson:function(){var json={searchText:this.searchText,contains:this.contains,returnGeometry:this.returnGeometry},_8dc=this.layerIds,_8dd=this.searchFields,_8de=this.outSpatialReference;if(_8dc){json.layers=_8dc.join(",");}if(_8dd){json.searchFields=_8dd.join(",");}if(_8de){json.sr=_8de.wkid;}return json;}});dojo.declare("esri.tasks.FindResult",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},layerId:null,layerName:null,displayFieldName:null,foundFieldName:null,feature:null});}if(!dojo._hasResource["esri.tasks.geometry"]){dojo._hasResource["esri.tasks.geometry"]=true;dojo.provide("esri.tasks.geometry");dojo.declare("esri.tasks.GeometryService",esri.tasks._Task,{constructor:function(url){this._encodeGeometries=dojo.hitch(this,this._encodeGeometries);this._decodeGeometries=dojo.hitch(this,this._decodeGeometries);this._projectHandler=dojo.hitch(this,this._projectHandler);this._simplifyHandler=dojo.hitch(this,this._simplifyHandler);this._bufferHandler=dojo.hitch(this,this._bufferHandler);this._areasAndLengthsHandler=dojo.hitch(this,this._areasAndLengthsHandler);this._lengthsHandler=dojo.hitch(this,this._lengthsHandler);},_encodeGeometries:function(_8e1){var gs=[];for(var i=0,il=_8e1.length;i<il;i++){gs.push(_8e1[i].geometry.toJson());}return {geometryType:esri.geometry.getJsonType(_8e1[0].geometry),geometries:gs};},_decodeGeometries:function(_8e5,_8e6,_8e7,sr){var _8e9;switch(_8e7){case "esriGeometryPoint":_8e9=esri.geometry.Point;break;case "esriGeometryPolyline":_8e9=esri.geometry.Polyline;break;case "esriGeometryPolygon":_8e9=esri.geometry.Polygon;break;case "esriGeometryMultipoint":_8e9=esri.geometry.Multipoint;break;case "esriGeometryEnvelope":_8e9=esri.geometry.Extent;break;}var gs=_8e5.geometries,fs=[],_8ec=sr.toJson();for(var i=0,il=gs.length;i<il;i++){fs[i]=new esri.Graphic(_8e6[i]).setGeometry(new _8e9(dojo.mixin({spatialReference:_8ec},gs[i])));}return fs;},_toPolyline:function(_8ef){var _8f0=new esri.geometry.Polyline(_8ef.spatialReference);if(_8ef instanceof esri.geometry.Extent){_8f0.addPath([[_8ef.xmin,_8ef.ymin],[_8ef.xmax,_8ef.ymax]]);}else{_8f0.addPath([].concat(_8ef.points));}return _8f0;},_fromPolyline:function(_8f1,_8f2,_8f3){var _8f4=_8f1.paths[0];if(_8f2==="esriGeometryEnvelope"){return new esri.geometry.Extent(_8f4[0][0],_8f4[0][1],_8f4[1][0],_8f4[1][1],_8f3);}else{return new esri.geometry.Multipoint({points:_8f4,spatialReference:_8f3.toJson()});}},project:function(_8f5,_8f6,_8f7){var _8f8={f:"json",token:this._url.query.token,outSR:_8f6.wkid?_8f6.wkid:_8f6.wkt,inSR:_8f5[0].geometry.spatialReference.wkid},_8f9=_8f5[0].geometry,_8fa=esri.geometry.getJsonType(_8f9),_h=this._projectHandler;if(_8f9 instanceof esri.geometry.Extent||_8f9 instanceof esri.geometry.Multipoint){var _8fc=[];for(var i=0,il=_8f5.length;i<il;i++){_8fc[i]=new esri.Graphic(this._toPolyline(_8f5[i].geometry));}_8f8.geometries=dojo.toJson(this._encodeGeometries(_8fc));}else{_8f8.geometries=dojo.toJson(this._encodeGeometries(_8f5));}esri.request({url:this._url.path+"/project",content:_8f8,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_8f5,_8fa,_8f6,_8f7);}),error:esriConfig.defaults.io.errorHandler});},_projectHandler:function(_8ff,io,_901,_902,_903,_904){if(_902==="esriGeometryEnvelope"||_902==="esriGeometryMultipoint"){var _905=_8ff.geometries;for(var i=0,il=_905.length;i<il;i++){_905[i]=this._fromPolyline(_905[i],_902,_903);}}var fs=this._decodeGeometries(_8ff,_901,_902,_903);this.onProjectComplete(fs);if(_904){_904(fs);}},onProjectComplete:function(){},simplify:function(_909,_90a){var _90b={f:"json",token:this._url.query.token,sr:_909[0].geometry.spatialReference.wkid};geometryType=esri.geometry.getJsonType(_909[0].geometry),outSR=_909[0].geometry.spatialReference,_h=this._simplifyHandler;_90b.geometries=dojo.toJson(this._encodeGeometries(_909));esri.request({url:this._url.path+"/simplify",content:_90b,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_909,geometryType,outSR,_90a);}),error:esriConfig.defaults.io.errorHandler});},_simplifyHandler:function(_90c,io,_90e,_90f,sr,_911){var fs=this._decodeGeometries(_90c,_90e,_90f,sr);this.onSimplifyComplete(fs);if(_911){_911(fs);}},onSimplifyComplete:function(){},buffer:function(_913,_914){var _915={f:"json",token:this._url.query.token};_915=dojo.mixin(_915,_913.toJson());var sr=_913.outSpatialReference||_913.features[0].geometry.spatialReference,_h=this._bufferHandler;esri.request({url:this._url.path+"/buffer",content:_915,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],sr,_914);}),error:esriConfig.defaults.io.errorHandler});},_bufferHandler:function(_918,io,sr,_91b){var _91c=esri.Graphic,_91d=esri.geometry.Polygon,_91e=_918.geometries,_91f=[];for(var i=0,il=_91e.length;i<il;i++){_91f[i]=new _91c(new _91d({spatialReference:sr,rings:_91e[i].rings}));}this.onBufferComplete(_91f);if(_91b){_91b(_91f);}},onBufferComplete:function(){},areasAndLengths:function(_922,_923){var _924={f:"json",token:this._url.query.token,sr:_922[0].geometry.spatialReference.wkid},_h=this._areasAndLengthsHandler;_924.polygons=dojo.toJson(this._encodeGeometries(_922).geometries);esri.request({url:this._url.path+"/areasAndLengths",content:_924,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_923);}),error:esriConfig.defaults.io.errorHandler});},_areasAndLengthsHandler:function(_926,io,_928){this.onAreasAndLengthsComplete(_926);if(_928){_928(_926);}},onAreasAndLengthsComplete:function(){},lengths:function(_929,_92a){var _92b={f:"json",token:this._url.query.token,sr:_929[0].geometry.spatialReference.wkid},_h=this._lengthsHandler;_92b.polylines=dojo.toJson(this._encodeGeometries(_929).geometries);esri.request({url:this._url.path+"/lengths",content:_92b,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_92a);}),error:esriConfig.defaults.io.errorHandler});},_lengthsHandler:function(_92d,io,_92f){this.onLengthsComplete(_92d);if(_92f){_92f(_92d);}},onLengthsComplete:function(){}});dojo.declare("esri.tasks.BufferParameters",null,{features:null,outSpatialReference:null,bufferSpatialReference:null,distances:null,unit:null,unionResults:false,toJson:function(){var json={unit:this.unit,unionResults:(""+this.unionResults)},fes=this.features,dt=this.distances,_933=this.outSpatialReference,_934=this.bufferSpatialReference;if(fes){var gs=[];for(var i=0,il=fes.length;i<il;i++){gs.push(fes[i].geometry.toJson());}json.geometries=dojo.toJson({geometryType:esri.geometry.getJsonType(fes[0].geometry),geometries:gs});json.inSR=fes[0].geometry.spatialReference.wkid;}if(dt){json.distances=dt.join(",");}if(_933){json.outSR=_933.wkid;}if(_934){json.bufferSR=_934.wkid;}return json;}});dojo.mixin(esri.tasks.BufferParameters,{UNIT_METER:9001,UNIT_GERMAN_METER:9031,UNIT_FOOT:9002,UNIT_SURVEY_FOOT:9003,UNIT_CLARKE_FOOT:9005,UNIT_FATHOM:9014,UNIT_NAUTICAL_MILE:9030,UNIT_SURVEY_CHAIN:9033,UNIT_SURVEY_LINK:9034,UNIT_SURVEY_MILE:9035,UNIT_KILOMETER:9036,UNIT_CLARKE_YARD:9037,UNIT_CLARKE_CHAIN:9038,UNIT_CLARKE_LINK:9039,UNIT_SEARS_YARD:9040,UNIT_SEARS_FOOT:9041,UNIT_SEARS_CHAIN:9042,UNIT_SEARS_LINK:9043,UNIT_BENOIT_1895A_YARD:9050,UNIT_BENOIT_1895A_FOOT:9051,UNIT_BENOIT_1895A_CHAIN:9052,UNIT_BENOIT_1895A_LINK:9053,UNIT_BENOIT_1895B_YARD:9060,UNIT_BENOIT_1895B_FOOT:9061,UNIT_BENOIT_1895B_CHAIN:9062,UNIT_BENOIT_1895B_LINK:9063,UNIT_INDIAN_FOOT:9080,UNIT_INDIAN_1937_FOOT:9081,UNIT_INDIAN_1962_FOOT:9082,UNIT_INDIAN_1975_FOOT:9083,UNIT_INDIAN_YARD:9084,UNIT_INDIAN_1937_YARD:9085,UNIT_INDIAN_1962_YARD:9086,UNIT_INDIAN_1975_YARD:9087,UNIT_FOOT_1865:9070,UNIT_RADIAN:9101,UNIT_DEGREE:9102,UNIT_ARCMINUTE:9103,UNIT_ARCSECOND:9104,UNIT_GRAD:9105,UNIT_GON:9106,UNIT_MICRORADIAN:9109,UNIT_ARCMINUTE_CENTESIMAL:9112,UNIT_ARCSECOND_CENTESIMAL:9113,UNIT_MIL6400:9114,UNIT_BRITISH_1936_FOOT:9095,UNIT_GOLDCOAST_FOOT:9094,UNIT_INTERNATIONAL_CHAIN:109003,UNIT_INTERNATIONAL_LINK:109004,UNIT_INTERNATIONAL_YARD:109001,UNIT_STATUTE_MILE:9093,UNIT_SURVEY_YARD:109002,UNIT_50KILOMETER_LENGTH:109030,UNIT_150KILOMETER_LENGTH:109031,UNIT_DECIMETER:109005,UNIT_CENTIMETER:109006,UNIT_MILLIMETER:109007,UNIT_INTERNATIONAL_INCH:109008,UNIT_US_SURVEY_INCH:109009,UNIT_INTERNATIONAL_ROD:109010,UNIT_US_SURVEY_ROD:109011,UNIT_US_NAUTICAL_MILE:109012,UNIT_UK_NAUTICAL_MILE:109013});}if(!dojo._hasResource["dojo.date"]){dojo._hasResource["dojo.date"]=true;dojo.provide("dojo.date");dojo.date.getDaysInMonth=function(_938){var _939=_938.getMonth();var days=[31,28,31,30,31,30,31,31,30,31,30,31];if(_939==1&&dojo.date.isLeapYear(_938)){return 29;}return days[_939];};dojo.date.isLeapYear=function(_93b){var year=_93b.getFullYear();return !(year%400)||(!(year%4)&&!!(year%100));};dojo.date.getTimezoneName=function(_93d){var str=_93d.toString();var tz="";var _940;var pos=str.indexOf("(");if(pos>-1){tz=str.substring(++pos,str.indexOf(")"));}else{var pat=/([A-Z\/]+) \d{4}$/;if((_940=str.match(pat))){tz=_940[1];}else{str=_93d.toLocaleString();pat=/ ([A-Z\/]+)$/;if((_940=str.match(pat))){tz=_940[1];}}}return (tz=="AM"||tz=="PM")?"":tz;};dojo.date.compare=function(_943,_944,_945){_943=new Date(Number(_943));_944=new Date(Number(_944||new Date()));if(_945!=="undefined"){if(_945=="date"){_943.setHours(0,0,0,0);_944.setHours(0,0,0,0);}else{if(_945=="time"){_943.setFullYear(0,0,0);_944.setFullYear(0,0,0);}}}if(_943>_944){return 1;}if(_943<_944){return -1;}return 0;};dojo.date.add=function(date,_947,_948){var sum=new Date(Number(date));var _94a=false;var _94b="Date";switch(_947){case "day":break;case "weekday":var days,_94d;var mod=_948%5;if(!mod){days=(_948>0)?5:-5;_94d=(_948>0)?((_948-5)/5):((_948+5)/5);}else{days=mod;_94d=parseInt(_948/5);}var strt=date.getDay();var adj=0;if(strt==6&&_948>0){adj=1;}else{if(strt==0&&_948<0){adj=-1;}}var trgt=strt+days;if(trgt==0||trgt==6){adj=(_948>0)?2:-2;}_948=(7*_94d)+days+adj;break;case "year":_94b="FullYear";_94a=true;break;case "week":_948*=7;break;case "quarter":_948*=3;case "month":_94a=true;_94b="Month";break;case "hour":case "minute":case "second":case "millisecond":_94b="UTC"+_947.charAt(0).toUpperCase()+_947.substring(1)+"s";}if(_94b){sum["set"+_94b](sum["get"+_94b]()+_948);}if(_94a&&(sum.getDate()<date.getDate())){sum.setDate(0);}return sum;};dojo.date.difference=function(_952,_953,_954){_953=_953||new Date();_954=_954||"day";var _955=_953.getFullYear()-_952.getFullYear();var _956=1;switch(_954){case "quarter":var m1=_952.getMonth();var m2=_953.getMonth();var q1=Math.floor(m1/3)+1;var q2=Math.floor(m2/3)+1;q2+=(_955*4);_956=q2-q1;break;case "weekday":var days=Math.round(dojo.date.difference(_952,_953,"day"));var _95c=parseInt(dojo.date.difference(_952,_953,"week"));var mod=days%7;if(mod==0){days=_95c*5;}else{var adj=0;var aDay=_952.getDay();var bDay=_953.getDay();_95c=parseInt(days/7);mod=days%7;var _961=new Date(_952);_961.setDate(_961.getDate()+(_95c*7));var _962=_961.getDay();if(days>0){switch(true){case aDay==6:adj=-1;break;case aDay==0:adj=0;break;case bDay==6:adj=-1;break;case bDay==0:adj=-2;break;case (_962+mod)>5:adj=-2;}}else{if(days<0){switch(true){case aDay==6:adj=0;break;case aDay==0:adj=1;break;case bDay==6:adj=2;break;case bDay==0:adj=1;break;case (_962+mod)<0:adj=2;}}}days+=adj;days-=(_95c*2);}_956=days;break;case "year":_956=_955;break;case "month":_956=(_953.getMonth()-_952.getMonth())+(_955*12);break;case "week":_956=parseInt(dojo.date.difference(_952,_953,"day")/7);break;case "day":_956/=24;case "hour":_956/=60;case "minute":_956/=60;case "second":_956/=1000;case "millisecond":_956*=_953.getTime()-_952.getTime();}return Math.round(_956);};}if(!dojo._hasResource["dojo.cldr.supplemental"]){dojo._hasResource["dojo.cldr.supplemental"]=true;dojo.provide("dojo.cldr.supplemental");dojo.cldr.supplemental.getFirstDayOfWeek=function(_963){var _964={mv:5,ae:6,af:6,bh:6,dj:6,dz:6,eg:6,er:6,et:6,iq:6,ir:6,jo:6,ke:6,kw:6,lb:6,ly:6,ma:6,om:6,qa:6,sa:6,sd:6,so:6,tn:6,ye:6,as:0,au:0,az:0,bw:0,ca:0,cn:0,fo:0,ge:0,gl:0,gu:0,hk:0,ie:0,il:0,is:0,jm:0,jp:0,kg:0,kr:0,la:0,mh:0,mo:0,mp:0,mt:0,nz:0,ph:0,pk:0,sg:0,th:0,tt:0,tw:0,um:0,us:0,uz:0,vi:0,za:0,zw:0,et:0,mw:0,ng:0,tj:0,sy:4};var _965=dojo.cldr.supplemental._region(_963);var dow=_964[_965];return (dow===undefined)?1:dow;};dojo.cldr.supplemental._region=function(_967){_967=dojo.i18n.normalizeLocale(_967);var tags=_967.split("-");var _969=tags[1];if(!_969){_969={de:"de",en:"us",es:"es",fi:"fi",fr:"fr",hu:"hu",it:"it",ja:"jp",ko:"kr",nl:"nl",pt:"br",sv:"se",zh:"cn"}[tags[0]];}else{if(_969.length==4){_969=tags[2];}}return _969;};dojo.cldr.supplemental.getWeekend=function(_96a){var _96b={eg:5,il:5,sy:5,"in":0,ae:4,bh:4,dz:4,iq:4,jo:4,kw:4,lb:4,ly:4,ma:4,om:4,qa:4,sa:4,sd:4,tn:4,ye:4};var _96c={ae:5,bh:5,dz:5,iq:5,jo:5,kw:5,lb:5,ly:5,ma:5,om:5,qa:5,sa:5,sd:5,tn:5,ye:5,af:5,ir:5,eg:6,il:6,sy:6};var _96d=dojo.cldr.supplemental._region(_96a);var _96e=_96b[_96d];var end=_96c[_96d];if(_96e===undefined){_96e=6;}if(end===undefined){end=0;}return {start:_96e,end:end};};}if(!dojo._hasResource["dojo.date.locale"]){dojo._hasResource["dojo.date.locale"]=true;dojo.provide("dojo.date.locale");(function(){function formatPattern(_970,_971,_972,_973){return _973.replace(/([a-z])\1*/ig,function(_974){var s,pad;var c=_974.charAt(0);var l=_974.length;var _979=["abbr","wide","narrow"];switch(c){case "G":s=_971[(l<4)?"eraAbbr":"eraNames"][_970.getFullYear()<0?0:1];break;case "y":s=_970.getFullYear();switch(l){case 1:break;case 2:if(!_972){s=String(s);s=s.substr(s.length-2);break;}default:pad=true;}break;case "Q":case "q":s=Math.ceil((_970.getMonth()+1)/3);pad=true;break;case "M":case "L":var m=_970.getMonth();var _97b;switch(l){case 1:case 2:s=m+1;pad=true;break;case 3:case 4:case 5:_97b=_979[l-3];break;}if(_97b){var _97c=(c=="L")?"standalone":"format";var _97d=["months",_97c,_97b].join("-");s=_971[_97d][m];}break;case "w":var _97e=0;s=dojo.date.locale._getWeekOfYear(_970,_97e);pad=true;break;case "d":s=_970.getDate();pad=true;break;case "D":s=dojo.date.locale._getDayOfYear(_970);pad=true;break;case "E":case "e":case "c":var d=_970.getDay();var _980;switch(l){case 1:case 2:if(c=="e"){var _981=dojo.cldr.supplemental.getFirstDayOfWeek(options.locale);d=(d-_981+7)%7;}if(c!="c"){s=d+1;pad=true;break;}case 3:case 4:case 5:_980=_979[l-3];break;}if(_980){var _982=(c=="c")?"standalone":"format";var _983=["days",_982,_980].join("-");s=_971[_983][d];}break;case "a":var _984=(_970.getHours()<12)?"am":"pm";s=_971[_984];break;case "h":case "H":case "K":case "k":var h=_970.getHours();switch(c){case "h":s=(h%12)||12;break;case "H":s=h;break;case "K":s=(h%12);break;case "k":s=h||24;break;}pad=true;break;case "m":s=_970.getMinutes();pad=true;break;case "s":s=_970.getSeconds();pad=true;break;case "S":s=Math.round(_970.getMilliseconds()*Math.pow(10,l-3));pad=true;break;case "v":case "z":s=dojo.date.getTimezoneName(_970);if(s){break;}l=4;case "Z":var _986=_970.getTimezoneOffset();var tz=[(_986<=0?"+":"-"),dojo.string.pad(Math.floor(Math.abs(_986)/60),2),dojo.string.pad(Math.abs(_986)%60,2)];if(l==4){tz.splice(0,0,"GMT");tz.splice(3,0,":");}s=tz.join("");break;default:throw new Error("dojo.date.locale.format: invalid pattern char: "+_973);}if(pad){s=dojo.string.pad(s,l);}return s;});};dojo.date.locale.format=function(_988,_989){_989=_989||{};var _98a=dojo.i18n.normalizeLocale(_989.locale);var _98b=_989.formatLength||"short";var _98c=dojo.date.locale._getGregorianBundle(_98a);var str=[];var _98e=dojo.hitch(this,formatPattern,_988,_98c,_989.fullYear);if(_989.selector=="year"){var year=_988.getFullYear();if(_98a.match(/^zh|^ja/)){year+="年";}return year;}if(_989.selector!="time"){var _990=_989.datePattern||_98c["dateFormat-"+_98b];if(_990){str.push(_processPattern(_990,_98e));}}if(_989.selector!="date"){var _991=_989.timePattern||_98c["timeFormat-"+_98b];if(_991){str.push(_processPattern(_991,_98e));}}var _992=str.join(" ");return _992;};dojo.date.locale.regexp=function(_993){return dojo.date.locale._parseInfo(_993).regexp;};dojo.date.locale._parseInfo=function(_994){_994=_994||{};var _995=dojo.i18n.normalizeLocale(_994.locale);var _996=dojo.date.locale._getGregorianBundle(_995);var _997=_994.formatLength||"short";var _998=_994.datePattern||_996["dateFormat-"+_997];var _999=_994.timePattern||_996["timeFormat-"+_997];var _99a;if(_994.selector=="date"){_99a=_998;}else{if(_994.selector=="time"){_99a=_999;}else{_99a=_998+" "+_999;}}var _99b=[];var re=_processPattern(_99a,dojo.hitch(this,_buildDateTimeRE,_99b,_996,_994));return {regexp:re,tokens:_99b,bundle:_996};};dojo.date.locale.parse=function(_99d,_99e){var info=dojo.date.locale._parseInfo(_99e);var _9a0=info.tokens,_9a1=info.bundle;var re=new RegExp("^"+info.regexp+"$");var _9a3=re.exec(_99d);if(!_9a3){return null;}var _9a4=["abbr","wide","narrow"];var _9a5=[1970,0,1,0,0,0,0];var amPm="";var _9a7=dojo.every(_9a3,function(v,i){if(!i){return true;}var _9aa=_9a0[i-1];var l=_9aa.length;switch(_9aa.charAt(0)){case "y":if(l!=2&&_99e.strict){_9a5[0]=v;}else{if(v<100){v=Number(v);var year=""+new Date().getFullYear();var _9ad=year.substring(0,2)*100;var _9ae=Math.min(Number(year.substring(2,4))+20,99);var num=(v<_9ae)?_9ad+v:_9ad-100+v;_9a5[0]=num;}else{if(_99e.strict){return false;}_9a5[0]=v;}}break;case "M":if(l>2){var _9b0=_9a1["months-format-"+_9a4[l-3]].concat();if(!_99e.strict){v=v.replace(".","").toLowerCase();_9b0=dojo.map(_9b0,function(s){return s.replace(".","").toLowerCase();});}v=dojo.indexOf(_9b0,v);if(v==-1){return false;}}else{v--;}_9a5[1]=v;break;case "E":case "e":var days=_9a1["days-format-"+_9a4[l-3]].concat();if(!_99e.strict){v=v.toLowerCase();days=dojo.map(days,function(d){return d.toLowerCase();});}v=dojo.indexOf(days,v);if(v==-1){return false;}break;case "D":_9a5[1]=0;case "d":_9a5[2]=v;break;case "a":var am=_99e.am||_9a1.am;var pm=_99e.pm||_9a1.pm;if(!_99e.strict){var _9b6=/\./g;v=v.replace(_9b6,"").toLowerCase();am=am.replace(_9b6,"").toLowerCase();pm=pm.replace(_9b6,"").toLowerCase();}if(_99e.strict&&v!=am&&v!=pm){return false;}amPm=(v==pm)?"p":(v==am)?"a":"";break;case "K":if(v==24){v=0;}case "h":case "H":case "k":if(v>23){return false;}_9a5[3]=v;break;case "m":_9a5[4]=v;break;case "s":_9a5[5]=v;break;case "S":_9a5[6]=v;}return true;});var _9b7=+_9a5[3];if(amPm==="p"&&_9b7<12){_9a5[3]=_9b7+12;}else{if(amPm==="a"&&_9b7==12){_9a5[3]=0;}}var _9b8=new Date(_9a5[0],_9a5[1],_9a5[2],_9a5[3],_9a5[4],_9a5[5],_9a5[6]);if(_99e.strict){_9b8.setFullYear(_9a5[0]);}var _9b9=_9a0.join("");if(!_9a7||(_9b9.indexOf("M")!=-1&&_9b8.getMonth()!=_9a5[1])||(_9b9.indexOf("d")!=-1&&_9b8.getDate()!=_9a5[2])){return null;}return _9b8;};function _processPattern(_9ba,_9bb,_9bc,_9bd){var _9be=function(x){return x;};_9bb=_9bb||_9be;_9bc=_9bc||_9be;_9bd=_9bd||_9be;var _9c0=_9ba.match(/(''|[^'])+/g);var _9c1=false;dojo.forEach(_9c0,function(_9c2,i){if(!_9c2){_9c0[i]="";}else{_9c0[i]=(_9c1?_9bc:_9bb)(_9c2);_9c1=!_9c1;}});return _9bd(_9c0.join(""));};function _buildDateTimeRE(_9c4,_9c5,_9c6,_9c7){_9c7=dojo.regexp.escapeString(_9c7);if(!_9c6.strict){_9c7=_9c7.replace(" a"," ?a");}return _9c7.replace(/([a-z])\1*/ig,function(_9c8){var s;var c=_9c8.charAt(0);var l=_9c8.length;var p2="",p3="";if(_9c6.strict){if(l>1){p2="0"+"{"+(l-1)+"}";}if(l>2){p3="0"+"{"+(l-2)+"}";}}else{p2="0?";p3="0{0,2}";}switch(c){case "y":s="\\d{2,4}";break;case "M":s=(l>2)?"\\S+":p2+"[1-9]|1[0-2]";break;case "D":s=p2+"[1-9]|"+p3+"[1-9][0-9]|[12][0-9][0-9]|3[0-5][0-9]|36[0-6]";break;case "d":s=p2+"[1-9]|[12]\\d|3[01]";break;case "w":s=p2+"[1-9]|[1-4][0-9]|5[0-3]";break;case "E":s="\\S+";break;case "h":s=p2+"[1-9]|1[0-2]";break;case "k":s=p2+"\\d|1[01]";break;case "H":s=p2+"\\d|1\\d|2[0-3]";break;case "K":s=p2+"[1-9]|1\\d|2[0-4]";break;case "m":case "s":s="[0-5]\\d";break;case "S":s="\\d{"+l+"}";break;case "a":var am=_9c6.am||_9c5.am||"AM";var pm=_9c6.pm||_9c5.pm||"PM";if(_9c6.strict){s=am+"|"+pm;}else{s=am+"|"+pm;if(am!=am.toLowerCase()){s+="|"+am.toLowerCase();}if(pm!=pm.toLowerCase()){s+="|"+pm.toLowerCase();}}break;default:s=".*";}if(_9c4){_9c4.push(_9c8);}return "("+s+")";}).replace(/[\xa0 ]/g,"[\\s\\xa0]");};})();(function(){var _9d0=[];dojo.date.locale.addCustomFormats=function(_9d1,_9d2){_9d0.push({pkg:_9d1,name:_9d2});};dojo.date.locale._getGregorianBundle=function(_9d3){var _9d4={};dojo.forEach(_9d0,function(desc){var _9d6=dojo.i18n.getLocalization(desc.pkg,desc.name,_9d3);_9d4=dojo.mixin(_9d4,_9d6);},this);return _9d4;};})();dojo.date.locale.addCustomFormats("dojo.cldr","gregorian");dojo.date.locale.getNames=function(item,type,use,_9da){var _9db;var _9dc=dojo.date.locale._getGregorianBundle(_9da);var _9dd=[item,use,type];if(use=="standAlone"){_9db=_9dc[_9dd.join("-")];}_9dd[1]="format";return (_9db||_9dc[_9dd.join("-")]).concat();};dojo.date.locale.isWeekend=function(_9de,_9df){var _9e0=dojo.cldr.supplemental.getWeekend(_9df);var day=(_9de||new Date()).getDay();if(_9e0.end<_9e0.start){_9e0.end+=7;if(day<_9e0.start){day+=7;}}return day>=_9e0.start&&day<=_9e0.end;};dojo.date.locale._getDayOfYear=function(_9e2){return dojo.date.difference(new Date(_9e2.getFullYear(),0,1),_9e2)+1;};dojo.date.locale._getWeekOfYear=function(_9e3,_9e4){if(arguments.length==1){_9e4=0;}var _9e5=new Date(_9e3.getFullYear(),0,1).getDay();var adj=(_9e5-_9e4+7)%7;var week=Math.floor((dojo.date.locale._getDayOfYear(_9e3)+adj-1)/7);if(_9e5==_9e4){week++;}return week;};}if(!dojo._hasResource["esri.tasks.gp"]){dojo._hasResource["esri.tasks.gp"]=true;dojo.provide("esri.tasks.gp");dojo.declare("esri.tasks.Geoprocessor",esri.tasks._Task,{constructor:function(url){this._jobUpdateHandler=dojo.hitch(this,this._jobUpdateHandler);this._getJobStatus=dojo.hitch(this,this._getJobStatus);this._getResultDataHandler=dojo.hitch(this,this._getResultDataHandler);this._getResultImageHandler=dojo.hitch(this,this._getResultImageHandler);this._executeHandler=dojo.hitch(this,this._executeHandler);this._updateTimers=[];this._bundle=dojo.i18n.getLocalization("esri","jsapi");},updateDelay:1000,processSpatialReference:null,outputSpatialReference:null,setUpdateDelay:function(_9e9){this.updateDelay=_9e9;},setProcessSpatialReference:function(sr){this.processSpatialReference=sr;},setOutputSpatialReference:function(sr){this.outputSpatialReference=sr;},_decode:function(_9ec){var _9ed=_9ec.dataType,_9ee=new esri.tasks.ParameterValue(_9ec);if(_9ed=="GPBoolean"){_9ee.value=new Boolean(_9ee.value);}else{if(_9ed=="GPDouble"){_9ee.value=parseFloat(_9ee.value);}else{if(_9ed=="GPLong"){_9ee.value=parseInt(_9ee.value);}else{if(_9ed=="GPString"){_9ee.value=new String(_9ee.value);}else{if(_9ed=="GPLinearUnit"){_9ee.value=new esri.tasks.LinearUnit(_9ee.value);}else{if(_9ed=="GPFeatureRecordSetLayer"||_9ed=="GPRecordSet"){var _9ef=(_9ee.value=new esri.tasks.FeatureSet(_9ee.value)),_9f0=_9ef.geometryType,rsr=_9ef.spatialReference,_9f2=_9ef.features,_9f3=_9ef.features,_9f4=esri.Graphic,_9f5=dojo.mixin,_9f6;switch(_9f0){case "esriGeometryPoint":var _9f7=esri.geometry.Point;for(var i=0,il=_9f2.length;i<il;i++){_9f6=_9f2[i];_9f2[i]=new _9f4(new _9f7(_9f5({spatialReference:rsr},_9f6.geometry)),null,_9f6.attributes);}break;case "esriGeometryPolyline":var _9f7=esri.geometry.Polyline;for(var i=0,il=_9f2.length;i<il;i++){_9f6=_9f2[i];_9f2[i]=new _9f4(new _9f7({spatialReference:rsr,paths:_9f6.geometry.paths}),null,_9f6.attributes);}break;case "esriGeometryPolygon":var _9f7=esri.geometry.Polygon;for(var i=0,il=_9f2.length;i<il;i++){_9f6=_9f2[i];_9f2[i]=new _9f4(new _9f7({spatialReference:rsr,rings:_9f6.geometry.rings}),null,_9f6.attributes);}break;case "esriGeometryEnvelope":var _9f7=esri.geometry.Extent;for(var i=0,il=_9f2.length;i<il;i++){_9f6=_9f2[i];_9f2[i]=new _9f4(new _9f7(_9f5({spatialReference:rsr},_9f6.geometry)),null,_9f6.attributes);}break;case "esriGeometryMultipoint":var _9f7=esri.geometry.Multipoint;for(var i=0,il=_9f2.length;i<il;i++){_9f6=_9f2[i];_9f2[i]=new _9f4(new _9f7(_9f5({spatialReference:rsr},_9f6.geometry)),null,_9f6.attributes);}break;default:for(var i=0,il=_9f2.length;i<il;i++){_9f2[i]=new _9f4(null,null,_9f2[i].attributes);}}}else{if(_9ed=="GPDataFile"){_9ee.value=new esri.tasks.DataFile(_9ee.value);}else{if(_9ed=="GPDate"){_9ee.value=new esri.tasks.Date({date:_9ee.value});}else{if(_9ed=="GPRasterData"||_9ed=="GPRasterDataLayer"){var _9fa=_9ec.value.mapImage;if(_9fa){_9ee.value=new esri.layers.MapImage(_9fa);}else{_9ee.value=new esri.tasks.RasterData(_9ee.value);}}else{console.log(this.declaredClass+" : "+this._bundle.tasks.gp.gpDataTypeNotHandled+" : "+_9ee.dataType);_9ee=null;}}}}}}}}}return _9ee;},submitJob:function(_9fb,_9fc,_9fd){var _9fe={f:"json",token:this._url.query.token,"env:outSR":(this.outputSpatialReference?this.outputSpatialReference.wkid:null),"env:processSR":(this.processSpatialReference?this.processSpatialReference.wkid:null)},_h=this._jobUpdateHandler;_9fe=dojo.mixin(_9fe,_9fb);_9fe=this._encode(_9fe);esri.request({url:this._url.path+"/submitJob",content:_9fe,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],false,_9fc,_9fd);}),error:esriConfig.defaults.io.errorHandler});},_jobUpdateHandler:function(_a00,io,_a02,_a03,_a04){var _a05=_a00.jobId,_a06=new esri.tasks.JobInfo(_a00);this.onStatusUpdate(_a06);if(_a04){_a04(_a06);}if(!_a02){clearTimeout(this._updateTimers[_a05]);this._updateTimers[_a05]=null;switch(_a00.jobStatus){case esri.tasks.JobInfo.STATUS_SUBMITTED:case esri.tasks.JobInfo.STATUS_EXECUTING:case esri.tasks.JobInfo.STATUS_WAITING:case esri.tasks.JobInfo.STATUS_NEW:var _gJS=this._getJobStatus;this._updateTimers[_a05]=setTimeout(function(){_gJS(_a05,_a02,_a03,_a04);},this.updateDelay);break;default:this.onJobComplete(_a06);if(_a03){_a03(_a06);}}}},_getJobStatus:function(_a08,_a09,_a0a,_a0b){var _h=this._jobUpdateHandler;esri.request({url:this._url.path+"/jobs/"+_a08,content:{f:"json",token:this._url.query.token},callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a09,_a0a,_a0b);}),error:esriConfig.defaults.io.errorHandler});},_getResultDataHandler:function(_a0d,io,_a0f){var _a10=this._decode(_a0d);this.onGetResultDataComplete(_a10);if(_a0f){_a0f(_a10);}},getResultData:function(_a11,_a12,_a13){var _r=this._getResultDataHandler;esri.request({url:this._url.path+"/jobs/"+_a11+"/results/"+_a12,content:{f:"json",token:this._url.query.token,returnType:"data"},callbackParamName:"callback",load:(function(){_r(arguments[0],arguments[1],_a13);}),error:esriConfig.defaults.io.errorHandler});},checkJobStatus:function(_a15,_a16){var _h=this._jobUpdateHandler;esri.request({url:this._url.path+"/jobs/"+_a15,content:{f:"json",token:this._url.query.token},callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],true,null,_a16);}),error:esriConfig.defaults.io.errorHandler});},execute:function(_a18,_a19){var _a1a={f:"json",token:this._url.query.token,"env:outSR":(this.outputSpatialReference?this.outputSpatialReference.wkid:null),"env:processSR":(this.processSpatialReference?this.processSpatialReference.wkid:null)},_h=this._executeHandler;_a1a=dojo.mixin(_a1a,_a18);_a1a=this._encode(_a1a);esri.request({url:this._url.path+"/execute",content:_a1a,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a19);}),error:esriConfig.defaults.io.errorHandler});},_executeHandler:function(_a1c,io,_a1e){var _a1f=_a1c.results,i,il,_a22=_a1c.messages;for(i=0,il=_a1f.length;i<il;i++){_a1f[i]=this._decode(_a1f[i]);}for(i=0,il=_a22.length;i<il;i++){_a22[i]=new esri.tasks.GPMessage(_a22[i]);}this.onExecuteComplete(_a1f,_a22);if(_a1e){_a1e(_a1f,_a22);}},_getResultImageHandler:function(_a23,io,_a25){var _a26=this._decode(_a23);this.onGetResultImageComplete(_a26);if(_a25){_a25(_a26);}},getResultImage:function(_a27,_a28,_a29,_a2a){var _r=this._getResultImageHandler,_a2c={f:"json",token:this._url.query.token};_a2c=dojo.mixin(_a2c,_a29.toJson());_a2c=this._encode(_a2c);esri.request({url:this._url.path+"/jobs/"+_a27+"/results/"+_a28,content:_a2c,callbackParamName:"callback",load:(function(){_r(arguments[0],arguments[1],_a2a);}),error:esriConfig.defaults.io.errorHandler});},cancelJobStatusUpdates:function(_a2d){clearTimeout(this._updateTimers[_a2d]);this._updateTimers[_a2d]=null;},getResultImageLayer:function(_a2e,_a2f,_a30,_a31){var url=this._url.path+"/jobs/"+_a2e+"/results/"+_a2f,_a33=this._url.query.token;if(_a33){url+="?"+dojo.objectToQuery({token:_a33});}var _a34=new esri.tasks._GPResultImageLayer(url,_a30,true);this.onGetResultImageLayerComplete(_a34);if(_a31){_a31(_a34);}},onStatusUpdate:function(){},onJobComplete:function(){},onExecuteComplete:function(){},onGetResultDataComplete:function(){},onGetResultImageComplete:function(){},onGetResultImageLayerComplete:function(){}});dojo.declare("esri.tasks.JobInfo",null,{constructor:function(_a35){this.messages=[];dojo.mixin(this,_a35);var _a36=this.messages;for(var i=0,il=_a36.length;i<il;i++){_a36[i]=new esri.tasks.GPMessage(_a36[i]);}},jobId:"",jobStatus:""});dojo.mixin(esri.tasks.JobInfo,{STATUS_CANCELLED:"esriJobCancelled",STATUS_CANCELLING:"esriJobCancelling",STATUS_DELETED:"esriJobDeleted",STATUS_DELETING:"esriJobDeleting",STATUS_EXECUTING:"esriJobExecuting",STATUS_FAILED:"esriJobFailed",STATUS_NEW:"esriJobNew",STATUS_SUBMITTED:"esriJobSubmitted",STATUS_SUCCEEDED:"esriJobSucceeded",STATUS_TIMED_OUT:"esriJobTimedOut",STATUS_WAITING:"esriJobWaiting"});dojo.declare("esri.tasks.GPMessage",null,{constructor:function(_a39){dojo.mixin(this,_a39);},type:null,description:null});dojo.declare("esri.tasks.LinearUnit",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},distance:0,units:null,toJson:function(){var json={};if(this.distance){json.distance=this.distance;}if(this.units){json.units=this.units;}return json;}});dojo.declare("esri.tasks.DataFile",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},url:null,toJson:function(){if(this.url){return {url:this.url};}return null;}});dojo.declare("esri.tasks.RasterData",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},url:null,format:null,toJson:function(){var json={};if(this.url){json.url=this.url;}if(this.format){json.format=this.format;}}});dojo.declare("esri.tasks.Date",null,{constructor:function(json){if(json){if(json.format){this.format=json.format;}this.date=dojo.date.locale.parse(json.date,{selector:"date",datePattern:this.format});}},date:new Date(),format:"EEE MMM dd HH:mm:ss zzz yyyy",toJson:function(){return {date:dojo.date.locale.format(this.date,{selector:"date",datePattern:this.format}),format:this.format};}});dojo.declare("esri.tasks.ParameterValue",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},paramName:null,dataType:null,value:null});dojo.declare("esri.tasks._GPResultImageLayer",esri.layers.ArcGISDynamicMapServiceLayer,{constructor:function(url,_a42){dojo.mixin(this._params,_a42.toJson());this._getImagePath=dojo.hitch(this,this._getImagePath);this.loaded=true;this.onLoad(this);},_getImagePath:function(){return this._url.path;}});}if(!dojo._hasResource["esri.tasks.identify"]){dojo._hasResource["esri.tasks.identify"]=true;dojo.provide("esri.tasks.identify");dojo.declare("esri.tasks.IdentifyTask",esri.tasks._Task,{constructor:function(url){this._url.path+="/identify";this._handler=dojo.hitch(this,this._handler);},_handler:function(_a44,io,_a46){var _a47=_a44.results,_a48=[],_a49,_a4a,_a4b=esri.geometry.Point,_a4c=esri.geometry.Polyline,_a4d=esri.geometry.Polygon,_a4e=esri.geometry.Extent,_a4f=esri.geometry.Multipoint,_a50=esri.tasks.IdentifyResult,_a51=esri.Graphic,_a52=dojo.mixin;for(var i=0,il=_a47.length;i<il;i++){_a49=_a47[i];_a48[i]=new _a50(_a49);_a4a=_a48[i].feature=new _a51(null,null,_a49.attributes);switch(_a49.geometryType){case "esriGeometryPoint":_a4a.setGeometry(new _a4b(_a49.geometry));break;case "esriGeometryPolyline":_a4a.setGeometry(new _a4c(_a49.geometry));break;case "esriGeometryPolygon":_a4a.setGeometry(new _a4d(_a49.geometry));break;case "esriGeometryEnvelope":_a4a.setGeometry(new _a4e(_a49.geometry));break;case "esriGeometryMultipoint":_a4a.setGeometry(new _a4f(_a49.geometry));break;}}this.onComplete(_a48);if(_a46){_a46(_a48);}},execute:function(_a55,_a56){var _a57=dojo.mixin({f:"json",token:this._url.query.token},this._url.query),_h=this._handler;_a57=dojo.mixin(_a57,_a55.toJson());_a57=this._encode(_a57);esri.request({url:this._url.path,content:_a57,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a56);}),error:esriConfig.defaults.io.errorHandler});},onComplete:function(){}});dojo.declare("esri.tasks.IdentifyParameters",null,{constructor:function(){this.layerOption=esri.tasks.IdentifyParameters.LAYER_OPTION_TOP;},geometry:null,spatialReference:null,layerIds:null,tolerance:null,returnGeometry:false,mapExtent:null,width:esriConfig.defaults.map.width,height:esriConfig.defaults.map.height,dpi:96,toJson:function(){var g=this.geometry,ext=this.mapExtent,json={geometry:g,tolerance:this.tolerance,returnGeometry:this.returnGeometry,mapExtent:ext,imageDisplay:this.width+","+this.height+","+this.dpi},sr=this.spatialReference,_a5d=this.layerIds;if(g){json.geometryType=esri.geometry.getJsonType(g);}if(sr!==null){json.sr=sr.wkid;}else{if(g){json.sr=g.spatialReference.wkid;}else{if(ext){json.sr=ext.spatialReference.wkid;}}}json.layers=this.layerOption;if(_a5d){json.layers+=":"+_a5d.join(",");}return json;}});dojo.mixin(esri.tasks.IdentifyParameters,{LAYER_OPTION_TOP:"top",LAYER_OPTION_VISIBLE:"visible",LAYER_OPTION_ALL:"all"});dojo.declare("esri.tasks.IdentifyResult",null,{constructor:function(json){if(json){dojo.mixin(this,json);}},layerId:null,layerName:null,displayFieldName:null,feature:null});}if(!dojo._hasResource["esri.tasks.locator"]){dojo._hasResource["esri.tasks.locator"]=true;dojo.provide("esri.tasks.locator");dojo.declare("esri.tasks.Locator",esri.tasks._Task,{constructor:function(url){this._geocodeHandler=dojo.hitch(this,this._geocodeHandler);this._reverseGeocodeHandler=dojo.hitch(this,this._reverseGeocodeHandler);},_geocodeHandler:function(_a60,io,_a62){var _a63=_a60.candidates,_a64,out=[];for(var i=0,il=_a63.length;i<il;i++){_a64=_a63[i];out[i]=new esri.tasks.AddressCandidate(_a64);}this.onAddressToLocationsComplete(out);if(_a62){_a62(out);}},addressToLocations:function(_a68,_a69,_a6a){var _a6b=dojo.mixin({f:"json",token:this._url.query.token,outFields:(_a69&&_a69.join(","))||null},this._url.query),_h=this._geocodeHandler;_a6b=dojo.mixin(_a6b,_a68);_a6b=this._encode(_a6b);esri.request({url:this._url.path+"/findAddressCandidates",content:_a6b,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a6a);}),error:esriConfig.defaults.io.errorHandler});},_reverseGeocodeHandler:function(_a6d,io,_a6f){var _a70=new esri.tasks.AddressCandidate({address:_a6d.address,location:_a6d.location,score:100});this.onLocationToAddressComplete(_a70);if(_a6f){_a6f(_a70);}},locationToAddress:function(_a71,_a72,_a73){var _a74=dojo.mixin({f:"json",token:this._url.query.token},this._url.query),_h=this._reverseGeocodeHandler;_a74=dojo.mixin(_a74,{location:_a71.x+","+_a71.y,distance:_a72});_a74=this._encode(_a74);esri.request({url:this._url.path+"/reverseGeocode",content:_a74,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a73);}),error:esriConfig.defaults.io.errorHandler});},onAddressToLocationsComplete:function(){},onLocationToAddressComplete:function(){}});dojo.declare("esri.tasks.AddressCandidate",null,{constructor:function(json){if(json){dojo.mixin(this,json);this.location=new esri.geometry.Point(this.location);}},address:null,location:null,score:null,attributes:null});}if(!dojo._hasResource["esri.tasks.query"]){dojo._hasResource["esri.tasks.query"]=true;dojo.provide("esri.tasks.query");dojo.declare("esri.tasks.QueryTask",esri.tasks._Task,{constructor:function(url){this._url.path+="/query";this._handler=dojo.hitch(this,this._handler);},_handler:function(_a78,io,_a7a){var _a7b=new esri.tasks.FeatureSet(_a78),_a7c=_a78.geometryType,rsr=(_a7b.spatialReference=dojo.mixin(new esri.SpatialReference(),_a78.spatialReference)),_a7e=_a78.features,_a7f=_a7b.features,_a80=esri.Graphic,_a81=dojo.mixin,_a82;switch(_a7c){case "esriGeometryPoint":var _a83=esri.geometry.Point;for(var i=0,il=_a7e.length;i<il;i++){_a82=_a7e[i];_a7f[i]=new _a80(new _a83(_a81({spatialReference:rsr},_a82.geometry)),null,_a82.attributes);}break;case "esriGeometryPolyline":var _a83=esri.geometry.Polyline;for(var i=0,il=_a7e.length;i<il;i++){_a82=_a7e[i];_a7f[i]=new _a80(new _a83({spatialReference:rsr,paths:_a82.geometry.paths}),null,_a82.attributes);}break;case "esriGeometryPolygon":var _a83=esri.geometry.Polygon;for(var i=0,il=_a7e.length;i<il;i++){_a82=_a7e[i];_a7f[i]=new _a80(new _a83({spatialReference:rsr,rings:_a82.geometry.rings}),null,_a82.attributes);}break;case "esriGeometryEnvelope":var _a83=esri.geometry.Extent;for(var i=0,il=_a7e.length;i<il;i++){_a82=_a7e[i];_a7f[i]=new _a80(new _a83(_a81({spatialReference:rsr},_a82.geometry)),null,_a82.attributes);}break;case "esriGeometryMultipoint":var _a83=esri.geometry.Multipoint;for(var i=0,il=_a7e.length;i<il;i++){_a82=_a7e[i];_a7f[i]=new _a80(new _a83(_a81({spatialReference:rsr},_a82.geometry)),null,_a82.attributes);}break;default:for(var i=0,il=_a7e.length;i<il;i++){_a7f[i]=new _a80(null,null,_a7e[i].attributes);}}this.onComplete(_a7b);if(_a7a){_a7a(_a7b);}},execute:function(_a86,_a87){var _a88=dojo.mixin({f:"json",token:this._url.query.token},this._url.query),_h=this._handler;_a88=dojo.mixin(_a88,_a86.toJson());_a88=this._encode(_a88);esri.request({url:this._url.path,content:_a88,callbackParamName:"callback",load:(function(){_h(arguments[0],arguments[1],_a87);}),error:esriConfig.defaults.io.errorHandler});},onComplete:function(){}});dojo.declare("esri.tasks.Query",null,{constructor:function(){this.spatialRelationship=esri.tasks.Query.SPATIAL_REL_INTERSECTS;},text:null,where:"",geometry:null,returnGeometry:false,outSpatialReference:null,outFields:null,toJson:function(){var json={text:this.text,where:this.where,returnGeometry:this.returnGeometry,spatialRel:this.spatialRelationship},g=this.geometry,_a8c=this.outFields,_a8d=this.outSpatialReference;if(g){json.geometry=g;json.geometryType=esri.geometry.getJsonType(g);json.inSR=g.spatialReference.wkid;}if(_a8c){json.outFields=_a8c.join(",");}if(_a8d!==null){json.outSR=_a8d.wkid;}else{if(g){json.outSR=g.spatialReference.wkid;}}return json;}});dojo.mixin(esri.tasks.Query,{SPATIAL_REL_INTERSECTS:"esriSpatialRelIntersects",SPATIAL_REL_CONTAINS:"esriSpatialRelContains",SPATIAL_REL_CROSSES:"esriSpatialRelCrosses",SPATIAL_REL_ENVELOPEINTERSECTS:"esriSpatialRelEnvelopeIntersects",SPATIAL_REL_INDEXINTERSECTS:"esriSpatialRelIndexIntersects",SPATIAL_REL_OVERLAPS:"esriSpatialRelOverlaps",SPATIAL_REL_TOUCHES:"esriSpatialRelTouches",SPATIAL_REL_WITHIN:"esriSpatialRelWithin"});}if(!dojo._hasResource["esri.toolbars._toolbar"]){dojo._hasResource["esri.toolbars._toolbar"]=true;dojo.provide("esri.toolbars._toolbar");dojo.declare("esri.toolbars._Toolbar",null,{constructor:function(map){this.map=map;},_deactivateMapTools:function(nav,_a90,_a91,_a92){var map=this.map;if(nav){this._mapNavState={isDoubleClickZoom:map.isDoubleClickZoom,isClickRecenter:map.isClickRecenter,isPan:map.isPan,isRubberBandZoom:map.isRubberBandZoom,isKeyboardNavigation:map.isKeyboardNavigation,isScrollWheelZoom:map.isScrollWheelZoom};map.disableMapNavigation();}if(_a90){map.hideZoomSlider();}if(_a91){map.hidePanArrows();}if(_a92){map.graphics.disableMouseEvents();}},_activateMapTools:function(nav,_a95,_a96,_a97){var map=this.map,_a99=this._mapNavState;if(nav&&_a99){if(_a99.isDoubleClickZoom){map.enableDoubleClickZoom();}if(_a99.isClickRecenter){map.enableClickRecenter();}if(_a99.isPan){map.enablePan();}if(_a99.isRubberBandZoom){map.enableRubberBandZoom();}if(_a99.isKeyboardNavigation){map.enableKeyboardNavigation();}if(_a99.isScrollWheelZoom){map.enableScrollWheelZoom();}}if(_a95){map.showZoomSlider();}if(_a96){map.showPanArrows();}if(_a97){map.graphics.enableMouseEvents();}}});}if(!dojo._hasResource["esri.toolbars.draw"]){dojo._hasResource["esri.toolbars.draw"]=true;dojo.provide("esri.toolbars.draw");dojo.declare("esri.toolbars.Draw",esri.toolbars._Toolbar,{constructor:function(map){this.markerSymbol=new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SOLID,10,new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([255,0,0]),2),new dojo.Color([0,0,0,0.25]));this.lineSymbol=new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([255,0,0]),2);this.fillSymbol=new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([255,0,0]),2),new dojo.Color([0,0,0,0.25]));this._points=[];this._bundle=dojo.i18n.getLocalization("esri","jsapi");this._normalizeRect=dojo.hitch(this,this._normalizeRect);this._onMouseDownHandler=dojo.hitch(this,this._onMouseDownHandler);this._onMouseUpHandler=dojo.hitch(this,this._onMouseUpHandler);this._onClickHandler=dojo.hitch(this,this._onClickHandler);this._onMouseMoveHandler=dojo.hitch(this,this._onMouseMoveHandler);this._onMouseDragHandler=dojo.hitch(this,this._onMouseDragHandler);this._onDblClickHandler=dojo.hitch(this,this._onDblClickHandler);},_geometryType:null,respectDrawingVertexOrder:false,setRespectDrawingVertexOrder:function(set){this.respectDrawingVertexOrder=set;},setMarkerSymbol:function(_a9c){this.markerSymbol=_a9c;},setLineSymbol:function(_a9d){this.lineSymbol=_a9d;},setFillSymbol:function(_a9e){this.fillSymbol=_a9e;},activate:function(_a9f){if(this._geometryType){this.deactivate();}var map=this.map,_aa1;switch(_a9f){case esri.toolbars.Draw.POINT:this._onClickHandler_connect=dojo.connect(map,"onClick",this,"_onClickHandler");break;case esri.toolbars.Draw.LINE:case esri.toolbars.Draw.EXTENT:case esri.toolbars.Draw.FREEHAND_POLYLINE:case esri.toolbars.Draw.FREEHAND_POLYGON:this._onMouseDownHandler_connect=dojo.connect(map,"onMouseDown",this,"_onMouseDownHandler");this._onMouseDragHandler_connect=dojo.connect(map,"onMouseDrag",this,"_onMouseDragHandler");this._onMouseUpHandler_connect=dojo.connect(map,"onMouseUp",this,"_onMouseUpHandler");break;case esri.toolbars.Draw.POLYLINE:case esri.toolbars.Draw.POLYGON:case esri.toolbars.Draw.MULTI_POINT:this._onClickHandler_connect=dojo.connect(map,"onClick",this,"_onClickHandler");this._onDblClickHandler_connect=dojo.connect(map,"onDblClick",this,"_onDblClickHandler");break;default:console.error("Invalid geometry type '"+_aa1+"'.");return;}this._deactivateMapTools(true,false,false,true);this._geometryType=_a9f;},deactivate:function(){dojo.disconnect(this._onMouseDownHandler_connect);dojo.disconnect(this._onMouseMoveHandler_connect);dojo.disconnect(this._onMouseDragHandler_connect);dojo.disconnect(this._onMouseUpHandler_connect);dojo.disconnect(this._onClickHandler_connect);dojo.disconnect(this._onDblClickHandler_connect);this._geometryType=this.geometry=this._graphic=this._tGraphic=null;this._points=[];this._activateMapTools(true,false,false,true);},_normalizeRect:function(_aa2,end,_aa4){var sx=_aa2.x,sy=_aa2.y,ex=end.x,ey=end.y,_aa9=Math.abs(sx-ex),_aaa=Math.abs(sy-ey);return {x:Math.min(sx,ex),y:Math.max(sy,ey),width:_aa9,height:_aaa,spatialReference:_aa4};},_onMouseDownHandler:function(evt){var _aac=evt.mapPoint,map=this.map,_aae=map.spatialReference;this._points.push(_aac.offset(0,0));switch(this._geometryType){case esri.toolbars.Draw.LINE:this._graphic=map.graphics.add(new esri.Graphic(new esri.geometry.Polyline({paths:[[[_aac.x,_aac.y],[_aac.x,_aac.y]]]}),this.lineSymbol),true);break;case esri.toolbars.Draw.EXTENT:this._graphic=map.graphics.add(new esri.Graphic(new esri.geometry.Rect(_aac.x,_aac.y,0,0,_aae),this.fillSymbol),true);break;case esri.toolbars.Draw.FREEHAND_POLYLINE:var _aaf=new esri.geometry.Polyline(_aae);_aaf.addPath(this._points);this._graphic=map.graphics.add(new esri.Graphic(_aaf,this.lineSymbol),true);break;case esri.toolbars.Draw.FREEHAND_POLYGON:var _ab0=new esri.geometry.Polygon(_aae);_ab0.addRing(this._points);this._graphic=map.graphics.add(new esri.Graphic(_ab0,this.fillSymbol),true);break;}},_onMouseMoveHandler:function(evt){var _ab2=this._points[this._points.length-1],end=evt.mapPoint,_ab4=this._tGraphic;switch(this._geometryType){case esri.toolbars.Draw.POLYLINE:case esri.toolbars.Draw.POLYGON:_ab4.setGeometry(dojo.mixin(_ab4.geometry,{paths:[[[_ab2.x,_ab2.y],[end.x,end.y]]]}));break;}},_onMouseDragHandler:function(evt){var _ab6=this._points[0],end=evt.mapPoint,map=this.map,_ab9=map.spatialReference,_aba=this._graphic;switch(this._geometryType){case esri.toolbars.Draw.LINE:_aba.setGeometry(dojo.mixin(_aba.geometry,{paths:[[[_ab6.x,_ab6.y],[end.x,end.y]]]}));break;case esri.toolbars.Draw.EXTENT:_aba.setGeometry(dojo.mixin(_aba.geometry,this._normalizeRect(_ab6,end,_ab9)));break;case esri.toolbars.Draw.FREEHAND_POLYLINE:this._points.push(evt.mapPoint.offset(0,0));_aba.geometry._insertPoints([end.offset(0,0)],0);_aba.setGeometry(_aba.geometry);break;case esri.toolbars.Draw.FREEHAND_POLYGON:this._points.push(evt.mapPoint.offset(0,0));_aba.geometry._insertPoints([end.offset(0,0)],0);_aba.setGeometry(_aba.geometry);break;}},_onMouseUpHandler:function(evt){var _abc=this._points[0],end=evt.mapPoint,map=this.map,_abf=map.spatialReference,_ac0;switch(this._geometryType){case esri.toolbars.Draw.LINE:_ac0=new esri.geometry.Polyline({paths:[[[_abc.x,_abc.y],[end.x,end.y]]],spatialReference:_abf});break;case esri.toolbars.Draw.EXTENT:_ac0=esri.geometry._rectToExtent(new esri.geometry.Rect(this._normalizeRect(_abc,end,_abf)));break;case esri.toolbars.Draw.FREEHAND_POLYLINE:var _ac1=new esri.geometry.Polyline(_abf);_ac1.addPath([].concat(this._points,[end.offset(0,0)]));_ac0=_ac1;break;case esri.toolbars.Draw.FREEHAND_POLYGON:var _ac2=(_ac0=new esri.geometry.Polygon(_abf)),ring=[].concat(this._points,[end.offset(0,0),this._points[0].offset(0,0)]);if(!esri.geometry.isClockwise(ring)&&!this.respectDrawingVertexOrder){console.log(this.declaredClass+" : "+this._bundle.toolbars.draw.convertAntiClockwisePolygon);ring.reverse();}_ac2.addRing(ring);break;}map.graphics.remove(this._graphic,true);this.onDrawEnd(_ac0);this._points=[];},_onClickHandler:function(evt){var _ac5=evt.mapPoint,map=this.map;this._points.push(_ac5.offset(0,0));switch(this._geometryType){case esri.toolbars.Draw.POINT:this.onDrawEnd(_ac5.offset(0,0));break;case esri.toolbars.Draw.POLYLINE:if(this._points.length==1){var _ac7=new esri.geometry.Polyline(map.spatialReference);_ac7.addPath(this._points);this._graphic=map.graphics.add(new esri.Graphic(_ac7,this.lineSymbol),true);this._onMouseMoveHandler_connect=dojo.connect(map,"onMouseMove",this,"_onMouseMoveHandler");}else{this._graphic.geometry._insertPoints([_ac5.offset(0,0)],0);map.graphics.remove(this._tGraphic,true);this._graphic.setGeometry(this._graphic.geometry).setSymbol(this.lineSymbol);}this._tGraphic=map.graphics.add(new esri.Graphic(new esri.geometry.Polyline({paths:[[[_ac5.x,_ac5.y],[_ac5.x,_ac5.y]]]}),this.lineSymbol),true);break;case esri.toolbars.Draw.POLYGON:if(this._points.length==1){var _ac8=new esri.geometry.Polygon(map.spatialReference);_ac8.addRing(this._points);this._graphic=map.graphics.add(new esri.Graphic(_ac8,this.fillSymbol),true);this._onMouseMoveHandler_connect=dojo.connect(map,"onMouseMove",this,"_onMouseMoveHandler");}else{this._graphic.geometry._insertPoints([_ac5.offset(0,0)],0);map.graphics.remove(this._tGraphic,true);this._graphic.setGeometry(this._graphic.geometry).setSymbol(this.fillSymbol);}this._tGraphic=map.graphics.add(new esri.Graphic(new esri.geometry.Polyline({paths:[[[_ac5.x,_ac5.y],[_ac5.x,_ac5.y]]]}),this.fillSymbol),true);break;case esri.toolbars.Draw.MULTI_POINT:var tps=this._points;if(tps.length==1){var _aca=new esri.geometry.Multipoint(map.spatialReference);_aca.addPoint(tps[tps.length-1]);this._graphic=map.graphics.add(new esri.Graphic(_aca,this.markerSymbol),true);}else{this._graphic.geometry.addPoint(tps[tps.length-1]);this._graphic.setGeometry(this._graphic.geometry).setSymbol(this.markerSymbol);}break;}},_onDblClickHandler:function(evt){var _acc,_pts=this._points,map=this.map,_acf=map.spatialReference;switch(this._geometryType){case esri.toolbars.Draw.POLYLINE:if(!this._graphic){this._onClickHandler(evt);return;}_acc=new esri.geometry.Polyline(_acf);_acc.addPath([].concat(this._points,[evt.mapPoint.offset(0,0)]));break;case esri.toolbars.Draw.POLYGON:if(!this._graphic||this._points.length<2){this._onClickHandler(evt);return;}_acc=new esri.geometry.Polygon(_acf);var ring=[].concat(this._points,[evt.mapPoint.offset(0,0),this._points[0].offset(0,0)]);if(!esri.geometry.isClockwise(ring)&&!this.respectDrawingVertexOrder){console.log(this.declaredClass+" : "+this._bundle.toolbars.draw.convertAntiClockwisePolygon);ring.reverse();}_acc.addRing(ring);break;case esri.toolbars.Draw.MULTI_POINT:if(this._graphic){var geom=this._graphic.geometry;geom.addPoint(evt.mapPoint.offset(0,0));_acc=new esri.geometry.Multipoint({points:[].concat([],geom.points),spatialReference:_acf});}else{_acc=new esri.geometry.Multipoint(_acf);_acc.addPoint(evt.mapPoint.offset(0,0));}break;}dojo.disconnect(this._onMouseMoveHandler_connect);if(this._graphic){map.graphics.remove(this._graphic,true);}if(this._tGraphic){map.graphics.remove(this._tGraphic,true);}this._graphic=this._tGraphic=null;this.onDrawEnd(_acc);this._points=[];},onDrawEnd:function(){}});dojo.mixin(esri.toolbars.Draw,{POINT:"point",MULTI_POINT:"multipoint",LINE:"line",EXTENT:"extent",POLYLINE:"polyline",POLYGON:"polygon",FREEHAND_POLYLINE:"freehandpolyline",FREEHAND_POLYGON:"freehandpolygon"});}if(!dojo._hasResource["esri.toolbars.navigation"]){dojo._hasResource["esri.toolbars.navigation"]=true;dojo.provide("esri.toolbars.navigation");dojo.declare("esri.toolbars.Navigation",esri.toolbars._Toolbar,{constructor:function(map){this.zoomSymbol=new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_SOLID,new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([255,0,0]),2),new dojo.Color([0,0,0,0.25]));dojo.connect(map,"onUnload",this,"_cleanUp");this._bundle=dojo.i18n.getLocalization("esri","jsapi");this._normalizeRect=dojo.hitch(this,this._normalizeRect);this._onMouseDownHandler=dojo.hitch(this,this._onMouseDownHandler);this._onMouseUpHandler=dojo.hitch(this,this._onMouseUpHandler);this._onMouseDragHandler=dojo.hitch(this,this._onMouseDragHandler);this._onExtentChangeHandler_connect=dojo.connect(map,"onExtentChange",this,"_extentChangeHandler");this._extents=[];if(map.extent){this._extents.push(map.extent.toJson());}},_navType:null,_start:null,_graphic:null,_prevExtent:false,_nextExtent:false,_extentCursor:-1,_cleanUp:function(map){this._extents=null;dojo.disconnect(this._onExtentChangeHandler_connect);},activate:function(_ad4){var map=this.map;if(!this._graphic){this._deactivateMapTools(true,false,false,true);var ext=map.extent;this._graphic=map.graphics.add(new esri.Graphic(new esri.geometry.Rect(ext.xmin,ext.ymax,1,1,map.spatialReference),this.zoomSymbol),true);this._graphic.hide();}switch(_ad4){case esri.toolbars.Navigation.ZOOM_IN:case esri.toolbars.Navigation.ZOOM_OUT:this._deactivate();this._onMouseDownHandler_connect=dojo.connect(map,"onMouseDown",this,"_onMouseDownHandler");this._onMouseDragHandler_connect=dojo.connect(map,"onMouseDrag",this,"_onMouseDragHandler");this._onMouseUpHandler_connect=dojo.connect(map,"onMouseUp",this,"_onMouseUpHandler");this._navType=_ad4;break;case esri.toolbars.Navigation.PAN:this._deactivate();map.enablePan();this._navType=_ad4;break;}},_extentChangeHandler:function(_ad7){if(!this._prevExtent&&!this._nextExtent){this._extents=this._extents.splice(0,this._extentCursor+1);this._extents.push(dojo.toJson(_ad7.toJson()));this._extentCursor=this._extents.length-1;}this._prevExtent=this._nextExtent=false;this.onExtentHistoryChange();},_normalizeCursor:function(){if(this._extentCursor<0){this._extentCursor=0;}else{if(this._extentCursor>this._extents.length){this._extentCursor=this._extents.length;}}},_deactivate:function(){var _nav=this._navType;if(_nav===esri.toolbars.Navigation.PAN){this.map.disablePan();}else{if(_nav===esri.toolbars.Navigation.ZOOM_IN||_nav===esri.toolbars.Navigation.ZOOM_OUT){dojo.disconnect(this._onMouseDownHandler_connect);dojo.disconnect(this._onMouseDragHandler_connect);dojo.disconnect(this._onMouseUpHandler_connect);}}},_normalizeRect:function(_ad9,end,_adb){var sx=_ad9.x,sy=_ad9.y,ex=end.x,ey=end.y,_ae0=Math.abs(sx-ex),_ae1=Math.abs(sy-ey);return {x:Math.min(sx,ex),y:Math.max(sy,ey),width:_ae0,height:_ae1,spatialReference:_adb};},_onMouseDownHandler:function(evt){var map=this.map,_ae4=(this._start=evt.mapPoint),_g=this._graphic;_g.setGeometry(dojo.mixin(_g.geometry,this._normalizeRect(this._start,evt.mapPoint,this.map.spatialReference)));this._graphic.show();},_onMouseDragHandler:function(evt){var _g=this._graphic;_g.setGeometry(dojo.mixin(_g.geometry,this._normalizeRect(this._start,evt.mapPoint,this.map.spatialReference)));},_onMouseUpHandler:function(evt){var map=this.map,rect=this._normalizeRect(this._start,evt.mapPoint,map.spatialReference);this._graphic.hide();if(rect.width===0&&rect.height===0){return;}if(this._navType===esri.toolbars.Navigation.ZOOM_IN){map.setExtent(esri.geometry._rectToExtent(new esri.geometry.Rect(rect)));}else{var tl=map.toScreen(rect),tr=map.toScreen({x:rect.x+rect.width,y:rect.y,spatialReference:map.spatialReference}),_aed=map.extent.getWidth(),_aee=(_aed*map.width)/Math.abs(tr.x-tl.x),_aef=(_aee-_aed)/2,ext=map.extent;map.setExtent(new esri.geometry.Extent(ext.xmin-_aef,ext.ymin-_aef,ext.xmax+_aef,ext.ymax+_aef,ext.spatialReference));}},deactivate:function(){this._deactivate();if(this._graphic){this.map.graphics.remove(this._graphic,true);}this._navType=this._start=this._graphic=null;this._activateMapTools(true,false,false,true);},isFirstExtent:function(){return this._extentCursor===0;},isLastExtent:function(){return this._extentCursor===(this._extents.length-1);},zoomToFullExtent:function(){var map=this.map;map.setExtent(map.getLayer(map.layerIds[0]).initialExtent);},zoomToPrevExtent:function(){if(this.isFirstExtent()){return;}this._extentCursor--;this._normalizeCursor();this._prevExtent=true;this.map.setExtent(new esri.geometry.Extent(dojo.fromJson(this._extents[this._extentCursor])));},zoomToNextExtent:function(){if(this.isLastExtent()){return;}this._extentCursor++;this._normalizeCursor();this._nextExtent=true;this.map.setExtent(new esri.geometry.Extent(dojo.fromJson(this._extents[this._extentCursor])));},onExtentHistoryChange:function(){}});dojo.mixin(esri.toolbars.Navigation,{ZOOM_IN:"zoomin",ZOOM_OUT:"zoomout",PAN:"pan"});}dojo.i18n._preloadLocalizations("esri.nls.jsapi",["es-es","es","hu","it-it","de","pt-br","pl","fr-fr","zh-cn","pt","en-us","zh","ru","xx","fr","zh-tw","it","cs","en-gb","de-de","ja-jp","ko-kr","ko","en","ROOT","ja"]);

