// All material copyright ESRI, All Rights Reserved, unless otherwise specified.
// See http://js.arcgis.com/3.26/esri/copyright.txt for details.
/*
	Copyright (c) 2004-2016, The JS Foundation All Rights Reserved.
	Available via Academic Free License >= 2.1 OR the modified BSD license.
	see: http://dojotoolkit.org/license for details
*/

//>>built
(function(b,n){var f,p=function(){return"undefined"!==typeof t&&"function"!==typeof t?t:"undefined"!==typeof window?window:"undefined"!==typeof self?self:this}(),m=function(){},d=function(a){for(var b in a)return 0;return 1},k={}.toString,l=function(a){return"[object Function]"==k.call(a)},h=function(a){return"[object String]"==k.call(a)},a=function(a){return"[object Array]"==k.call(a)},e=function(a,b){if(a)for(var c=0;c<a.length;)b(a[c++])},r=function(a,b){for(var c in b)a[c]=b[c];return a},c=function(a,
b){return r(Error(a),{src:"dojoLoader",info:b})},q=1,x=function(){return"_"+q++},g=function(a,b,c){return Qa(a,b,c,0,g)},t=p,u=t.document,y=u&&u.createElement("DiV"),v=g.has=function(a){return l(B[a])?B[a]=B[a](t,u,y):B[a]},B=v.cache=n.hasCache;l(b)&&(b=b(p));v.add=function(a,b,c,e){(void 0===B[a]||e)&&(B[a]=b);return c&&v(a)};v.add("host-webworker","undefined"!==typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope);v("host-webworker")&&(r(n.hasCache,{"host-browser":0,dom:0,"dojo-dom-ready-api":0,
"dojo-sniff":0,"dojo-inject-api":1,"host-webworker":1,"dojo-guarantee-console":0}),n.loaderPatch={injectUrl:function(a,b){try{importScripts(a),b()}catch(Fa){console.info("failed to load resource ("+a+")"),console.error(Fa)}}});for(var C in b.has)v.add(C,b.has[C],0,1);var z=0,w=[],G=0,E=m,H=m,A;g.isXdUrl=m;g.initSyncLoader=function(a,b,c){G||(G=a,E=b,H=c);return{sync:"sync",requested:1,arrived:2,nonmodule:3,executing:4,executed:5,syncExecStack:w,modules:J,execQ:L,getModule:Q,injectModule:ra,setArrived:Z,
signal:D,finishExec:ia,execModule:ja,dojoRequirePlugin:G,getLegacyMode:function(){return z},guardCheckComplete:ka}};var M=location.protocol,P=location.host;g.isXdUrl=function(a){return/^\./.test(a)?!1:/^\/\//.test(a)?!0:(a=a.match(/^([^\/\:]+\:)\/+([^\/]+)/))&&(a[1]!=M||P&&a[2]!=P)};v.add("dojo-force-activex-xhr",!u.addEventListener&&"file:"==window.location.protocol);v.add("native-xhr","undefined"!=typeof XMLHttpRequest);if(v("native-xhr")&&!v("dojo-force-activex-xhr"))A=function(){return new XMLHttpRequest};
else{var ba=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"],V;for(f=0;3>f;)try{V=ba[f++];new ActiveXObject(V);break}catch(db){}A=function(){return new ActiveXObject(V)}}g.getXhr=A;v.add("dojo-gettext-api",1);g.getText=function(a,b,e){var g=A();g.open("GET",sa(a),!1);g.send(null);if(200==g.status||!location.host&&!g.status)e&&e(g.responseText,b);else throw c("xhrFailed",g.status);return g.responseText};var ca=v("csp-restrictions")?function(){}:new Function("return eval(arguments[0]);");
g.eval=function(a,b){return ca(a+"\r\n//# sourceURL\x3d"+b)};var F={},D=g.signal=function(b,c){b=F[b];e(b&&b.slice(0),function(b){b.apply(null,a(c)?c:[c])})},U=g.on=function(a,b){var c=F[a]||(F[a]=[]);c.push(b);return{remove:function(){for(var a=0;a<c.length;a++)if(c[a]===b){c.splice(a,1);break}}}},R=[],Ga={},la=[],S={},ta=g.map={},da=[],J={},ea="",K={},fa={},N={},W=0;if(!v("foreign-loader"))var X=function(a,b){b=!1!==b;var c,e,g,r;for(c in fa)e=fa[c],(g=c.match(/^url\:(.+)/))?K["url:"+Ra(g[1],a)]=
e:"*now"==c?r=e:"*noref"!=c&&(g=ma(c,a,!0),K[g.mid]=K["url:"+g.url]=e);r&&r(Ha(a));b&&(fa={})};var I=function(a){return a.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g,function(a){return"\\"+a})},Ia=function(a,b){b.splice(0,b.length);for(var c in a)b.push([c,a[c],new RegExp("^"+I(c)+"(/|$)"),c.length]);b.sort(function(a,b){return b[3]-a[3]});return b},fb=function(a,b){e(a,function(a){b.push([h(a[0])?new RegExp("^"+I(a[0])+"$"):a[0],a[1]])})},Sa=function(a){var b=a.name;b||(b=a,a={name:b});a=r({main:"main"},
a);a.location=a.location?a.location:b;a.packageMap&&(ta[b]=a.packageMap);a.main.indexOf("./")||(a.main=a.main.substring(2));S[b]=a},Ta=[],ga=function(a,b,c){for(var d in a){"waitSeconds"==d&&(g.waitms=1E3*(a[d]||0));"cacheBust"==d&&(ea=a[d]?h(a[d])?a[d]:(new Date).getTime()+"":"");if("baseUrl"==d||"combo"==d)g[d]=a[d];if("async"==d){var q=a[d];g.legacyMode=z=h(q)&&/sync|legacyAsync/.test(q)?q:q?!1:"sync";g.async=!z}a[d]!==B&&(g.rawConfig[d]=a[d],"has"!=d&&v.add("config-"+d,a[d],0,b))}g.baseUrl||(g.baseUrl=
"./");/\/$/.test(g.baseUrl)||(g.baseUrl+="/");for(d in a.has)v.add(d,a.has[d],0,b);e(a.packages,Sa);for(var l in a.packagePaths)e(a.packagePaths[l],function(a){var b=l+"/"+a;h(a)&&(a={name:a});a.location=b;Sa(a)});Ia(r(ta,a.map),da);e(da,function(a){a[1]=Ia(a[1],[]);"*"==a[0]&&(da.star=a)});Ia(r(Ga,a.paths),la);fb(a.aliases,R);if(!v("foreign-loader")){if(b)Ta.push({config:a.config});else for(d in a.config)b=Q(d,c),b.config=r(b.config||{},a.config[d]);a.cache&&(X(),fa=a.cache,X(0,!!a.cache["*noref"]))}D("config",
[a,g.rawConfig])};v("dojo-cdn");var ua=u.getElementsByTagName("script");f=0;for(var T,aa,va,na;f<ua.length;)if(T=ua[f++],(va=T.getAttribute("src"))&&(na=va.match(/(((.*)\/)|^)dojo\.js(\W|$)/i))&&(aa=na[3]||"",n.baseUrl=n.baseUrl||aa,W=T),va=T.getAttribute("data-dojo-config")||T.getAttribute("djConfig"))N=g.eval("({ "+va+" })","data-dojo-config"),W=T;g.rawConfig={};ga(n,1);v("dojo-cdn")&&((S.dojo.location=aa)&&(aa+="/"),S.dijit.location=aa+"../dijit/",S.dojox.location=aa+"../dojox/");ga(b,1);ga(N,
1);if(!v("foreign-loader"))var oa=function(a){ka(function(){e(a.deps,ra)})},Qa=function(b,e,d,q,l){var k;if(h(b)){if((k=Q(b,q,!0))&&k.executed)return k.result;throw c("undefinedModule",b);}a(b)||(ga(b,0,q),b=e,e=d);if(a(b))if(b.length){d="require*"+x();for(var f,t=[],y=0;y<b.length;)f=b[y++],t.push(Q(f,q));k=r(wa("",d,0,""),{injected:2,deps:t,def:e||m,require:q?q.require:g,gc:1});J[k.mid]=k;oa(k);var w=pa&&"sync"!=z;ka(function(){ja(k,w)});k.executed||L.push(k);ha()}else e&&e();return l},Ha=function(a){if(!a)return g;
var b=a.require;b||(b=function(c,e,g){return Qa(c,e,g,a,b)},a.require=r(b,g),b.module=a,b.toUrl=function(b){return Ra(b,a)},b.toAbsMid=function(b){return Ja(b,a)},v("dojo-undef-api")&&(b.undef=function(b){g.undef(b,a)}),b.syncLoadNls=function(b){b=ma(b,a);var c=J[b.mid];if(!c||!c.executed)if(Y=K[b.mid]||K["url:"+b.url])xa(Y),c=J[b.mid];return c&&c.executed&&c.result});return b},L=[],ya=[],O={},hb=function(a){a.injected=1;O[a.mid]=1;a.url&&(O[a.url]=a.pack||1);Ua()},Z=function(a){a.injected=2;delete O[a.mid];
a.url&&delete O[a.url];d(O)&&(za(),"xd"==z&&(z="sync"))},ib=g.idle=function(){return!ya.length&&d(O)&&!L.length&&!pa};var Aa=function(a,b){if(b)for(var c=0;c<b.length;c++)if(b[c][2].test(a))return b[c];return 0},Va=function(a){var b=[],c,e;for(a=a.replace(/\\/g,"/").split("/");a.length;)c=a.shift(),".."==c&&b.length&&".."!=e?(b.pop(),e=b[b.length-1]):"."!=c&&b.push(e=c);return b.join("/")},wa=function(a,b,c,e){var d=g.isXdUrl(e);return{pid:a,mid:b,pack:c,url:e,executed:0,def:0,isXd:d,isAmd:!!(d||
S[a]&&S[a].isAmd)}},Wa=function(a,b,g,d,r,q,h,k,f,x){var t,y,w,m;m=/^\./.test(a);if(/(^\/)|(\:)|(\.js$)/.test(a)||m&&!b)return wa(0,a,0,a);a=Va(m?b.mid+"/../"+a:a);if(/^\./.test(a))throw c("irrationalPath",a);x||m||!q.star||(w=Aa(a,q.star[1]));!w&&b&&(w=(w=Aa(b.mid,q))&&Aa(a,w[1]));w&&(a=w[1]+a.substring(w[3]));b=(na=a.match(/^([^\/]+)(\/(.+))?$/))?na[1]:"";(t=g[b])?a=b+"/"+(y=na[3]||t.main):b="";var p=0;e(k,function(b){var c=a.match(b[0]);c&&0<c.length&&(p=l(b[1])?a.replace(b[0],b[1]):b[1])});if(p)return Wa(p,
0,g,d,r,q,h,k,f);if(g=d[a])return f?wa(g.pid,g.mid,g.pack,g.url):d[a];d=(w=Aa(a,h))?w[1]+a.substring(w[3]):b?("/"===t.location.slice(-1)?t.location.slice(0,-1):t.location)+"/"+y:v("config-tlmSiblingOfDojo")?"../"+a:a;/(^\/)|(\:)/.test(d)||(d=r+d);return wa(b,a,t,Va(d+".js"))},ma=function(a,b,c){return Wa(a,b,S,J,g.baseUrl,da,la,R,void 0,c)};if(!v("foreign-loader"))var Xa=function(a,b,c){return a.normalize?a.normalize(b,function(a){return Ja(a,c)}):Ja(b,c)},Ya=0,Q=function(a,b,c){var e,g;(e=a.match(/^(.+?)\!(.*)$/))?
(g=Q(e[1],b,c),"sync"!=z||g.executed||(ra(g),2!==g.injected||g.executed||ka(function(){ja(g)}),g.executed?Ba(g):L.unshift(g)),5!==g.executed||g.load||Ba(g),g.load?(e=Xa(g,e[2],b),a=g.mid+"!"+(g.dynamic?++Ya+"!":"")+e):(e=e[2],a=g.mid+"!"+ ++Ya+"!waitingForPlugin"),a={plugin:g,mid:a,req:Ha(b),prid:e}):a=ma(a,b);return J[a.mid]||!c&&(J[a.mid]=a)};var Ja=g.toAbsMid=function(a,b){return ma(a,b).mid},Ra=g.toUrl=function(a,b){b=ma(a+"/x",b);var c=b.url;return sa(0===b.pid?a:c.substring(0,c.length-5))};
if(!v("foreign-loader"))var Za={injected:2,executed:5,def:3,result:3},Ka=function(a){return J[a]=r({mid:a},Za)},jb=Ka("require"),kb=Ka("exports"),lb=Ka("module"),Ca={},La=0,Ba=function(a){var b=a.result;a.dynamic=b.dynamic;a.normalize=b.normalize;a.load=b.load;return a},mb=function(a){var b={};e(a.loadQ,function(c){var e=Xa(a,c.prid,c.req.module),g=a.dynamic?c.mid.replace(/waitingForPlugin$/,e):a.mid+"!"+e,e=r(r({},c),{mid:g,prid:e,injected:0});J[g]&&J[g].injected||$a(J[g]=e);b[c.mid]=J[g];Z(c);delete J[c.mid]});
a.loadQ=0;var c=function(a){for(var c=a.deps||[],e=0;e<c.length;e++)(a=b[c[e].mid])&&(c[e]=a)},g;for(g in J)c(J[g]);e(L,c)},ia=function(a){g.trace("loader-finish-exec",[a.mid]);a.executed=5;a.defOrder=La++;e(a.provides,function(a){a()});a.loadQ&&(Ba(a),mb(a));for(f=0;f<L.length;)L[f]===a?L.splice(f,1):f++;/^require\*/.test(a.mid)&&delete J[a.mid]},nb=[],ja=function(a,b){if(4===a.executed)return g.trace("loader-circular-dependency",[nb.concat(a.mid).join("-\x3e")]),!a.def||b?Ca:a.cjs&&a.cjs.exports;
if(!a.executed){if(!a.def)return Ca;var e=a.mid,d=a.deps||[],r,q=[],h=0;for(a.executed=4;r=d[h++];){r=r===jb?Ha(a):r===kb?a.cjs.exports:r===lb?a.cjs:ja(r,b);if(r===Ca)return a.executed=0,g.trace("loader-exec-module",["abort",e]),Ca;q.push(r)}g.trace("loader-run-factory",[a.mid]);b=a.def;var k;w.unshift(a);if(v("config-dojo-loader-catches"))try{k=l(b)?b.apply(null,q):b}catch(gb){D("error",a.result=c("factoryThrew",[a,gb]))}else k=l(b)?b.apply(null,q):b;a.result=void 0===k&&a.cjs?a.cjs.exports:k;w.shift(a);
ia(a)}return a.result},pa=0,ka=function(a){try{pa++,a()}catch(Pa){throw Pa;}finally{pa--}ib()&&D("idle",[])},ha=function(){pa||ka(function(){E();for(var a,b,c=0;c<L.length;)a=La,b=L[c],ja(b),a!=La?(E(),c=0):c++})};var sa="function"==typeof b.fixupUrl?b.fixupUrl:function(a){a+="";return a+(ea?(/\?/.test(a)?"\x26":"?")+ea:"")};v("dojo-undef-api")&&(g.undef=function(a,b){a=Q(a,b);Z(a);r(a,{def:0,executed:0,injected:0,node:0,load:0})});void 0===v("dojo-loader-eval-hint-url")&&v.add("dojo-loader-eval-hint-url",
1);var $a=function(a){var b=a.plugin;5!==b.executed||b.load||Ba(b);var c=function(b){a.result=b;Z(a);ia(a);ha()};b.load?b.load(a.prid,a.req,c):b.loadQ?b.loadQ.push(a):(b.loadQ=[a],L.unshift(b),ra(b))},Y=0,qa=0,Ma=0,xa=function(a,b){v("config-stripStrict")&&(a=a.replace(/(["'])use strict\1/g,""));Ma=1;if(v("config-dojo-loader-catches"))try{a===Y?Y.call(null):g.eval(a,v("dojo-loader-eval-hint-url")?b.url:b.mid)}catch(Fa){D("error",c("evalModuleThrew",b))}else a===Y?Y.call(null):g.eval(a,v("dojo-loader-eval-hint-url")?
b.url:b.mid);Ma=0},ra=function(a){var b=a.mid,d=a.url;if(!(a.executed||a.injected||O[b]||a.url&&(a.pack&&O[a.url]===a.pack||1==O[a.url])))if(hb(a),a.plugin)$a(a);else{var q=function(){ab(a);if(2!==a.injected){if(v("dojo-enforceDefine")){D("error",c("noDefine",a));return}Z(a);r(a,Za);g.trace("loader-define-nonmodule",[a.url])}z?!w.length&&ha():ha()};if(Y=K[b]||K["url:"+a.url])g.trace("loader-inject",["cache",a.mid,d]),xa(Y,a),q();else{if(z)if(a.isXd)"sync"==z&&(z="xd");else if(!a.isAmd||"sync"==z){var l=
function(c){if("sync"==z){w.unshift(a);xa(c,a);w.shift();ab(a);a.cjs||(Z(a),ia(a));if(a.finish){c=b+"*finish";var r=a.finish;delete a.finish;Da(c,["dojo",("dojo/require!"+r.join(",")).replace(/\./g,"/")],function(a){e(r,function(b){a.require(b)})});L.unshift(Q(c))}q()}else(c=H(a,c))?(xa(c,a),q()):(qa=a,g.injectUrl(sa(d),q,a),qa=0)};g.trace("loader-inject",["xhr",a.mid,d,"sync"!=z]);if(v("config-dojo-loader-catches"))try{g.getText(d,"sync"!=z,l)}catch(eb){D("error",c("xhrInjectFailed",[a,eb]))}else g.getText(d,
"sync"!=z,l);return}g.trace("loader-inject",["script",a.mid,d]);qa=a;g.injectUrl(sa(d),q,a);qa=0}}},Na=function(a,b,e){g.trace("loader-define-module",[a.mid,b]);var d=a.mid;if(2===a.injected)return D("error",c("multipleDefine",a)),a;r(a,{deps:b,def:e,cjs:{id:a.mid,uri:a.url,exports:a.result={},setExports:function(b){a.cjs.exports=b},config:function(){return a.config}}});for(var q=0;b[q];q++)b[q]=Q(b[q],a);z&&!O[d]&&(oa(a),L.push(a),ha());Z(a);l(e)||b.length||(a.result=e,ia(a));return a},ab=function(a,
b){for(var c=[],g,d;ya.length;)d=ya.shift(),b&&(d[0]=b.shift()),g=d[0]&&Q(d[0])||a,c.push([g,d[1],d[2]]);X(a);e(c,function(a){oa(Na.apply(null,a))})},Ea=0,za=m,Ua=m,za=function(){Ea&&clearTimeout(Ea);Ea=0},Ua=function(){za();g.waitms&&(Ea=t.setTimeout(function(){za();D("error",c("timeout",O))},g.waitms))};v.add("ie-event-behavior",u.attachEvent&&"undefined"===typeof Windows&&("undefined"===typeof opera||"[object Opera]"!=opera.toString()));var Oa=function(a,b,c,e){if(v("ie-event-behavior"))return a.attachEvent(c,
e),function(){a.detachEvent(c,e)};a.addEventListener(b,e,!1);return function(){a.removeEventListener(b,e,!1)}},ob=Oa(window,"load","onload",function(){g.pageLoaded=1;try{"complete"!=u.readyState&&(u.readyState="complete")}catch(db){}ob()}),ua=u.getElementsByTagName("script");for(f=0;!W;)/^dojo/.test((T=ua[f++])&&T.type)||(W=T);g.injectUrl=function(a,b,e){e=e.node=u.createElement("script");var g=Oa(e,"load","onreadystatechange",function(a){a=a||window.event;var c=a.target||a.srcElement;if("load"===
a.type||/complete|loaded/.test(c.readyState))g(),d(),b&&b()}),d=Oa(e,"error","onerror",function(b){g();d();D("error",c("scriptError",[a,b]))});e.type="text/javascript";e.charset="utf-8";e.src=a;W.parentNode.insertBefore(e,W);return e};g.log=function(){try{for(var a=0;a<arguments.length;a++)console.log(arguments[a])}catch(Pa){}};g.trace=m;if(v("foreign-loader"))Da=m;else{var Da=function(a,b,e){var d=arguments.length,r=["require","exports","module"],q=[0,a,b];1==d?q=[0,l(a)?r:[],a]:2==d&&h(a)?q=[a,
l(b)?r:[],b]:3==d&&(q=[a,b,e]);g.trace("loader-define",q.slice(0,2));if((d=q[0]&&Q(q[0]))&&!O[d.mid])oa(Na(d,q[1],q[2]));else if(!v("ie-event-behavior")||Ma)ya.push(q);else{d=d||qa;if(!d)for(a in O)if((r=J[a])&&r.node&&"interactive"===r.node.readyState){d=r;break}d?(X(d),oa(Na(d,q[1],q[2]))):D("error",c("ieDefineFailed",q[0]));ha()}};Da.amd={vendor:"dojotoolkit.org"}}r(r(g,n.loaderPatch),b.loaderPatch);U("error",function(a){try{if(console.error(a),a instanceof Error){for(var b in a)console.log(b+
":",a[b]);console.log(".")}}catch(Fa){}});r(g,{uid:x,cache:K,packs:S});if(t.define)D("error",c("defineAlreadyDefined",0));else if(t.define=Da,t.require=g,!v("foreign-loader")){e(Ta,function(a){ga(a)});var bb=N.deps||b.deps||n.deps,cb=N.callback||b.callback||n.callback;g.boot=bb||cb?[bb||[],cb]:0}})(function(b){return b.dojoConfig||b.djConfig||b.require||{}},{async:0,baseUrl:"https://js.arcgis.com/3.26/dojo",hasCache:{"config-selectorEngine":"acme","config-tlmSiblingOfDojo":1,"dojo-built":1,
"dojo-has-api":1,"dojo-loader":1,"dojo-undef-api":0,dom:1,"extend-esri":1,"host-browser":1},packages:[{location:"../dijit",name:"dijit"},{location:"../dojox",name:"dojox"},{location:"../put-selector",main:"put",name:"put-selector"},{location:"../xstyle",name:"xstyle"},{location:"../dgrid",main:"OnDemandGrid",name:"dgrid"},{location:"../dgrid1",main:"OnDemandGrid",name:"dgrid1"},{location:"../dstore",main:"Store",name:"dstore"},{location:"../moment",main:"moment",name:"moment"},{location:"../esri",
name:"esri"},{location:".",name:"dojo"}]});
require({cache:{"dojo/loadInit":function(){define(["./_base/loader"],function(b){return{dynamic:0,normalize:function(b){return b},load:b.loadInit}})},"dojo/_base/loader":function(){define("./kernel ../has require module ../json ./lang ./array".split(" "),function(b,n,f,p,m,d,k){var l=function(a){return a.replace(/\./g,"/")},h=/\/\/>>built/,a=[],e=[],r=function(b,g,d){a.push(d);k.forEach(b.split(","),function(a){a=A(a,g.module);e.push(a);M(a)});c()},c=function(){var b,c;for(c in E)if(b=E[c],void 0===
b.noReqPluginCheck&&(b.noReqPluginCheck=/loadInit\!/.test(c)||/require\!/.test(c)?1:0),!b.executed&&!b.noReqPluginCheck&&b.injected==v)return;D(function(){var b=a;a=[];k.forEach(b,function(a){a(1)})})},q=/\/\/.*|\/\*[\s\S]*?\*\/|("(?:\\.|[^"])*"|'(?:\\.|[^'])*'|`(?:\\.|[^`])*`)/mg,x=/(^|\s)dojo\.(loadInit|require|provide|requireLocalization|requireIf|requireAfterIf|platformRequire)\s*\(/mg,g=/(^|\s)(require|define)\s*\(/m,t=function(a,c){var e,d,r,l=[],k=[];e=[];for(c=c||a.replace(q,"$1");e=x.exec(c);){d=
x.lastIndex;r=d-e[0].length;var h=c,f=/\(|\)/g,t=1,w=void 0;for(f.lastIndex=d;(w=f.exec(h))&&(t=")"==w[0]?t-1:t+1,0!=t););if(0!=t)throw"unmatched paren around character "+f.lastIndex+" in: "+h;d=[b.trim(h.substring(r,f.lastIndex))+";\n",f.lastIndex];"loadInit"==e[2]?l.push(d[0]):k.push(d[0]);x.lastIndex=d[1]}e=l.concat(k);return e.length||!g.test(c)?[a.replace(/(^|\s)dojo\.loadInit\s*\(/g,"\n0 \x26\x26 dojo.loadInit("),e.join(""),e]:0},u=f.initSyncLoader(r,c,function(a,b){var c,e=[],g=[];if(h.test(b)||
!(c=t(b)))return 0;b=a.mid+"-*loadInit";for(var d in A("dojo",a).result.scopeMap)e.push(d),g.push('"'+d+'"');return"// xdomain rewrite of "+a.mid+"\ndefine('"+b+"',{\n\tnames:"+m.stringify(e)+",\n\tdef:function("+e.join(",")+"){"+c[1]+"}});\n\ndefine("+m.stringify(e.concat(["dojo/loadInit!"+b]))+", function("+e.join(",")+"){\n"+c[0]+"});"}),y=u.sync,v=u.requested,B=u.arrived,C=u.nonmodule,z=u.executing,w=u.executed,G=u.syncExecStack,E=u.modules,H=u.execQ,A=u.getModule,M=u.injectModule,P=u.setArrived,
ba=u.signal,V=u.finishExec,ca=u.execModule,F=u.getLegacyMode,D=u.guardCheckComplete,r=u.dojoRequirePlugin;b.provide=function(a){var b=G[0],c=d.mixin(A(l(a),f.module),{executed:z,result:d.getObject(a,!0)});P(c);b&&(b.provides||(b.provides=[])).push(function(){c.result=d.getObject(a);delete c.provides;c.executed!==w&&V(c)});return c.result};n.add("config-publishRequireResult",1,0,0);b.require=function(a,b){b=function(a,b){var c=A(l(a),f.module);if(G.length&&G[0].finish)G[0].finish.push(a);else{if(c.executed)return c.result;
b&&(c.result=C);b=F();M(c);b=F();c.executed!==w&&c.injected===B&&u.guardCheckComplete(function(){ca(c)});if(c.executed)return c.result;b==y?c.cjs?H.unshift(c):G.length&&(G[0].finish=[a]):H.push(c)}}(a,b);n("config-publishRequireResult")&&!d.exists(a)&&void 0!==b&&d.setObject(a,b);return b};b.loadInit=function(a){a()};b.registerModulePath=function(a,b){var c={};c[a.replace(/\./g,"/")]=b;f({paths:c})};b.platformRequire=function(a){a=(a.common||[]).concat(a[b._name]||a["default"]||[]);for(var c;a.length;)d.isArray(c=
a.shift())?b.require.apply(b,c):b.require(c)};b.requireIf=b.requireAfterIf=function(a,c,e){a&&b.require(c,e)};b.requireLocalization=function(a,b,c){f(["../i18n"],function(e){e.getLocalization(a,b,c)})};return{extractLegacyApiApplications:t,require:r,loadInit:function(a,c,e){c([a],function(a){c(a.names,function(){for(var g="",d=[],q=0;q<arguments.length;q++)g+="var "+a.names[q]+"\x3d arguments["+q+"]; ",d.push(arguments[q]);eval(g);var k=c.module,h=[],f,g={provide:function(a){a=l(a);a=A(a,k);a!==k&&
P(a)},require:function(a,b){a=l(a);b&&(A(a,k).result=C);h.push(a)},requireLocalization:function(a,c,e){f||(f=["dojo/i18n"]);e=(e||b.locale).toLowerCase();a=l(a)+"/nls/"+(/root/i.test(e)?"":e+"/")+l(c);A(a,k).isXd&&f.push("dojo/i18n!"+a)},loadInit:function(a){a()}},q={},t;try{for(t in g)q[t]=b[t],b[t]=g[t];a.def.apply(null,d)}catch(N){ba("error",[{src:p.id,id:"failedDojoLoadInit"},N])}finally{for(t in g)b[t]=q[t]}f&&(h=h.concat(f));h.length?r(h.join(","),c,e):e()})})}}})},"dojo/_base/kernel":function(){define(["../global",
"../has","./config","require","module"],function(b,n,f,p,m){var d,k={},l={},h={config:f,global:b,dijit:k,dojox:l},k={dojo:["dojo",h],dijit:["dijit",k],dojox:["dojox",l]};m=p.map&&p.map[m.id.match(/[^\/]+/)[0]];for(d in m)k[d]?k[d][0]=m[d]:k[d]=[m[d],{}];for(d in k)m=k[d],m[1]._scopeName=m[0],f.noGlobals||(b[m[0]]=m[1]);h.scopeMap=k;h.baseUrl=h.config.baseUrl=p.baseUrl;h.isAsync=p.async;h.locale=f.locale;b="$Rev: b27d4da $".match(/[0-9a-f]{7,}/);h.version={major:1,minor:14,patch:0,flag:"",revision:b?
b[0]:NaN,toString:function(){var a=h.version;return a.major+"."+a.minor+"."+a.patch+a.flag+" ("+a.revision+")"}};n("csp-restrictions")||Function("d","d.eval \x3d function(){return d.global.eval ? d.global.eval(arguments[0]) : eval(arguments[0]);}")(h);h.exit=function(){};n("host-webworker");n.add("console-as-object",function(){return Function.prototype.bind&&console&&"object"===typeof console.log});"undefined"!=typeof console||(console={});m="assert count debug dir dirxml error group groupEnd info profile profileEnd time timeEnd trace warn log".split(" ");
var a;for(b=0;a=m[b++];)console[a]?n("console-as-object")&&(console[a]=Function.prototype.bind.call(console[a],console)):function(){var b=a+"";console[b]="log"in console?function(){var a=Array.prototype.slice.call(arguments);a.unshift(b+":");console.log(a.join(" "))}:function(){};console[b]._fake=!0}();n.add("dojo-debug-messages",!!f.isDebug);h.deprecated=h.experimental=function(){};n("dojo-debug-messages")&&(h.deprecated=function(a,b,c){a="DEPRECATED: "+a;b&&(a+=" "+b);c&&(a+=" -- will be removed in version: "+
c);console.warn(a)},h.experimental=function(a,b){a="EXPERIMENTAL: "+a+" -- APIs subject to change without notice.";b&&(a+=" "+b);console.warn(a)});if(f.modulePaths){h.deprecated("dojo.modulePaths","use paths configuration");n={};for(d in f.modulePaths)n[d.replace(/\./g,"/")]=f.modulePaths[d];p({paths:n})}h.moduleUrl=function(a,b){h.deprecated("dojo.moduleUrl()","use require.toUrl","2.0");var c=null;a&&(c=p.toUrl(a.replace(/\./g,"/")+(b?"/"+b:"")+"/*.*").replace(/\/\*\.\*/,"")+(b?"":"/"));return c};
h._hasResource={};return h})},"dojo/global":function(){define(function(){return"undefined"!==typeof global&&"function"!==typeof global?global:"undefined"!==typeof window?window:"undefined"!==typeof self?self:this})},"dojo/has":function(){define(["./global","require","module"],function(b,n,f){var p=n.has||function(){};if(!p("dojo-has-api")){var m="undefined"!=typeof window&&"undefined"!=typeof location&&"undefined"!=typeof document&&window.location==location&&window.document==document&&document,d=
m&&m.createElement("DiV"),k=f.config&&f.config()||{},p=function(l){return"function"==typeof k[l]?k[l]=k[l](b,m,d):k[l]};p.cache=k;p.add=function(b,d,a,e){("undefined"==typeof k[b]||e)&&(k[b]=d);return a&&p(b)}}p.add("dom-addeventlistener",!!document.addEventListener);p.add("touch","ontouchstart"in document||"onpointerdown"in document&&0<navigator.maxTouchPoints||window.navigator.msMaxTouchPoints);p.add("touch-events","ontouchstart"in document);p.add("pointer-events","pointerEnabled"in window.navigator?
window.navigator.pointerEnabled:"PointerEvent"in window);p.add("MSPointer",window.navigator.msPointerEnabled);p.add("touch-action",p("touch")&&p("pointer-events"));p.add("device-width",screen.availWidth||innerWidth);n=document.createElement("form");p.add("dom-attributes-explicit",0==n.attributes.length);p.add("dom-attributes-specified-flag",0<n.attributes.length&&40>n.attributes.length);p.clearElement=function(b){b.innerHTML="";return b};p.normalize=function(b,d){var a=b.match(/[\?:]|[^:\?]*/g),e=
0,r=function(b){var c=a[e++];if(":"==c)return 0;if("?"==a[e++]){if(!b&&p(c))return r();r(!0);return r(b)}return c||0};return(b=r())&&d(b)};p.load=function(b,d,a){b?d([b],a):a()};return p})},"dojo/_base/config":function(){define(["../global","../has","require"],function(b,n,f){b={};f=f.rawConfig;for(var p in f)b[p]=f[p];!b.locale&&"undefined"!=typeof navigator&&(p=navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language||navigator.userLanguage)&&(b.locale=p.toLowerCase());
return b})},"dojo/json":function(){define(["./has"],function(b){var n="undefined"!=typeof JSON;b.add("json-parse",n);b.add("json-stringify",n&&'{"a":1}'==JSON.stringify({a:0},function(b,f){return f||1}));if(b("json-stringify"))return JSON;var f=function(b){return('"'+b.replace(/(["\\])/g,"\\$1")+'"').replace(/[\f]/g,"\\f").replace(/[\b]/g,"\\b").replace(/[\n]/g,"\\n").replace(/[\t]/g,"\\t").replace(/[\r]/g,"\\r")};return{parse:b("json-parse")?JSON.parse:function(b,f){if(f&&!/^([\s\[\{]*(?:"(?:\\.|[^"])*"|-?\d[\d\.]*(?:[Ee][+-]?\d+)?|null|true|false|)[\s\]\}]*(?:,|:|$))+$/.test(b))throw new SyntaxError("Invalid characters in JSON");
return eval("("+b+")")},stringify:function(b,m,d){function k(b,a,e){m&&(b=m(e,b));var r;r=typeof b;if("number"==r)return isFinite(b)?b+"":"null";if("boolean"==r)return b+"";if(null===b)return"null";if("string"==typeof b)return f(b);if("function"==r||"undefined"==r)return l;if("function"==typeof b.toJSON)return k(b.toJSON(e),a,e);if(b instanceof Date)return'"{FullYear}-{Month+}-{Date}T{Hours}:{Minutes}:{Seconds}Z"'.replace(/\{(\w+)(\+)?\}/g,function(a,c,e){a=b["getUTC"+c]()+(e?1:0);return 10>a?"0"+
a:a});if(b.valueOf()!==b)return k(b.valueOf(),a,e);var c=d?a+d:"",q=d?" ":"",h=d?"\n":"";if(b instanceof Array){var q=b.length,g=[];for(e=0;e<q;e++)r=k(b[e],c,e),"string"!=typeof r&&(r="null"),g.push(h+c+r);return"["+g.join(",")+h+a+"]"}g=[];for(e in b){var t;if(b.hasOwnProperty(e)){if("number"==typeof e)t='"'+e+'"';else if("string"==typeof e)t=f(e);else continue;r=k(b[e],c,e);"string"==typeof r&&g.push(h+c+t+":"+q+r)}}return"{"+g.join(",")+h+a+"}"}var l;"string"==typeof m&&(d=m,m=null);return k(b,
"","")}}})},"dojo/_base/lang":function(){define(["./kernel","../has","../sniff"],function(b,n){n.add("bug-for-in-skips-shadowed",function(){for(var a in{toString:1})return 0;return 1});var f=n("bug-for-in-skips-shadowed")?"hasOwnProperty valueOf isPrototypeOf propertyIsEnumerable toLocaleString toString constructor".split(" "):[],p=f.length,m=function(a,e,d){d||(d=a[0]&&b.scopeMap[a[0]]?b.scopeMap[a.shift()][1]:b.global);try{for(var c=0;c<a.length;c++){var q=a[c];if(!(q in d))if(e)d[q]={};else return;
d=d[q]}return d}catch(x){}},d=Object.prototype.toString,k=function(a,b,d){return(d||[]).concat(Array.prototype.slice.call(a,b||0))},l=/\{([^\}]+)\}/g,h={_extraNames:f,_mixin:function(a,b,d){var c,e,r,g={};for(c in b)e=b[c],c in a&&(a[c]===e||c in g&&g[c]===e)||(a[c]=d?d(e):e);if(n("bug-for-in-skips-shadowed")&&b)for(r=0;r<p;++r)c=f[r],e=b[c],c in a&&(a[c]===e||c in g&&g[c]===e)||(a[c]=d?d(e):e);return a},mixin:function(a,b){a||(a={});for(var e=1,c=arguments.length;e<c;e++)h._mixin(a,arguments[e]);
return a},setObject:function(a,b,d){var c=a.split(".");a=c.pop();return(d=m(c,!0,d))&&a?d[a]=b:void 0},getObject:function(a,b,d){return a?m(a.split("."),b,d):d},exists:function(a,b){return void 0!==h.getObject(a,!1,b)},isString:function(a){return"string"==typeof a||a instanceof String},isArray:Array.isArray||function(a){return"[object Array]"==d.call(a)},isFunction:function(a){return"[object Function]"===d.call(a)},isObject:function(a){return void 0!==a&&(null===a||"object"==typeof a||h.isArray(a)||
h.isFunction(a))},isArrayLike:function(a){return!!a&&!h.isString(a)&&!h.isFunction(a)&&!(a.tagName&&"form"==a.tagName.toLowerCase())&&(h.isArray(a)||isFinite(a.length))},isAlien:function(a){return a&&!h.isFunction(a)&&/\{\s*\[native code\]\s*\}/.test(String(a))},extend:function(a,b){for(var e=1,c=arguments.length;e<c;e++)h._mixin(a.prototype,arguments[e]);return a},_hitchArgs:function(a,e){var d=h._toArray(arguments,2),c=h.isString(e);return function(){var q=h._toArray(arguments),r=c?(a||b.global)[e]:
e;return r&&r.apply(a||this,d.concat(q))}},hitch:function(a,e){if(2<arguments.length)return h._hitchArgs.apply(b,arguments);e||(e=a,a=null);if(h.isString(e)){a=a||b.global;if(!a[e])throw['lang.hitch: scope["',e,'"] is null (scope\x3d"',a,'")'].join("");return function(){return a[e].apply(a,arguments||[])}}return a?function(){return e.apply(a,arguments||[])}:e},delegate:function(){function a(){}return function(b,d){a.prototype=b;b=new a;a.prototype=null;d&&h._mixin(b,d);return b}}(),_toArray:n("ie")?
function(){function a(a,b,c){c=c||[];for(b=b||0;b<a.length;b++)c.push(a[b]);return c}return function(b){return(b.item?a:k).apply(this,arguments)}}():k,partial:function(a){return h.hitch.apply(b,[null].concat(h._toArray(arguments)))},clone:function(a){if(!a||"object"!=typeof a||h.isFunction(a))return a;if(a.nodeType&&"cloneNode"in a)return a.cloneNode(!0);if(a instanceof Date)return new Date(a.getTime());if(a instanceof RegExp)return new RegExp(a);var b,d,c;if(h.isArray(a))for(b=[],d=0,c=a.length;d<
c;++d)d in a&&(b[d]=h.clone(a[d]));else b=a.constructor?new a.constructor:{};return h._mixin(b,a,h.clone)},trim:String.prototype.trim?function(a){return a.trim()}:function(a){return a.replace(/^\s\s*/,"").replace(/\s\s*$/,"")},replace:function(a,b,d){return a.replace(d||l,h.isFunction(b)?b:function(a,e){return h.getObject(e,!1,b)})}};h.mixin(b,h);return h})},"dojo/sniff":function(){define(["./has"],function(b){var n=navigator,f=n.userAgent,n=n.appVersion,p=parseFloat(n);b.add("air",0<=f.indexOf("AdobeAIR"));
b.add("wp",parseFloat(f.split("Windows Phone")[1])||void 0);b.add("msapp",parseFloat(f.split("MSAppHost/")[1])||void 0);b.add("khtml",0<=n.indexOf("Konqueror")?p:void 0);b.add("edge",parseFloat(f.split("Edge/")[1])||void 0);b.add("opr",parseFloat(f.split("OPR/")[1])||void 0);b.add("webkit",!b("wp")&&!b("edge")&&parseFloat(f.split("WebKit/")[1])||void 0);b.add("chrome",!b("edge")&&!b("opr")&&parseFloat(f.split("Chrome/")[1])||void 0);b.add("android",!b("wp")&&parseFloat(f.split("Android ")[1])||void 0);
b.add("safari",!(0<=n.indexOf("Safari"))||b("wp")||b("chrome")||b("android")||b("edge")||b("opr")?void 0:parseFloat(n.split("Version/")[1]));b.add("mac",0<=n.indexOf("Macintosh"));b.add("quirks","BackCompat"==document.compatMode);if(!b("wp")&&f.match(/(iPhone|iPod|iPad)/)){var m=RegExp.$1.replace(/P/,"p"),d=f.match(/OS ([\d_]+)/)?RegExp.$1:"1",d=parseFloat(d.replace(/_/,".").replace(/_/g,""));b.add(m,d);b.add("ios",d)}b.add("bb",(0<=f.indexOf("BlackBerry")||0<=f.indexOf("BB10"))&&parseFloat(f.split("Version/")[1])||
void 0);b.add("trident",parseFloat(n.split("Trident/")[1])||void 0);b.add("svg","undefined"!==typeof SVGAngle);b("webkit")||(0<=f.indexOf("Opera")&&b.add("opera",9.8<=p?parseFloat(f.split("Version/")[1])||p:p),!(0<=f.indexOf("Gecko"))||b("wp")||b("khtml")||b("trident")||b("edge")||b.add("mozilla",p),b("mozilla")&&b.add("ff",parseFloat(f.split("Firefox/")[1]||f.split("Minefield/")[1])||void 0),document.all&&!b("opera")&&(f=parseFloat(n.split("MSIE ")[1])||void 0,(n=document.documentMode)&&5!=n&&Math.floor(f)!=
n&&(f=n),b.add("ie",f)),b.add("wii","undefined"!=typeof opera&&opera.wiiremote));return b})},"dojo/_base/array":function(){define(["./kernel","../has","./lang"],function(b,n,f){function p(a){return k[a]=new Function("item","index","array",a)}function m(a){var b=!a;return function(e,c,d){var q=0,g=e&&e.length||0,f;g&&"string"==typeof e&&(e=e.split(""));"string"==typeof c&&(c=k[c]||p(c));if(d)for(;q<g;++q){if(f=!c.call(d,e[q],q,e),a^f)return!f}else for(;q<g;++q)if(f=!c(e[q],q,e),a^f)return!f;return b}}
function d(a){var b=1,d=0,c=0;a||(b=d=c=-1);return function(e,k,g,f){if(f&&0<b)return h.lastIndexOf(e,k,g);f=e&&e.length||0;var q=a?f+c:d;g===l?g=a?d:f+c:0>g?(g=f+g,0>g&&(g=d)):g=g>=f?f+c:g;for(f&&"string"==typeof e&&(e=e.split(""));g!=q;g+=b)if(e[g]==k)return g;return-1}}var k={},l,h={every:m(!1),some:m(!0),indexOf:d(!0),lastIndexOf:d(!1),forEach:function(a,b,d){var c=0,e=a&&a.length||0;e&&"string"==typeof a&&(a=a.split(""));"string"==typeof b&&(b=k[b]||p(b));if(d)for(;c<e;++c)b.call(d,a[c],c,a);
else for(;c<e;++c)b(a[c],c,a)},map:function(a,b,d,c){var e=0,f=a&&a.length||0;c=new (c||Array)(f);f&&"string"==typeof a&&(a=a.split(""));"string"==typeof b&&(b=k[b]||p(b));if(d)for(;e<f;++e)c[e]=b.call(d,a[e],e,a);else for(;e<f;++e)c[e]=b(a[e],e,a);return c},filter:function(a,b,d){var c=0,e=a&&a.length||0,f=[],g;e&&"string"==typeof a&&(a=a.split(""));"string"==typeof b&&(b=k[b]||p(b));if(d)for(;c<e;++c)g=a[c],b.call(d,g,c,a)&&f.push(g);else for(;c<e;++c)g=a[c],b(g,c,a)&&f.push(g);return f},clearCache:function(){k=
{}}};f.mixin(b,h);return h})},"dojo/require":function(){define(["./_base/loader"],function(b){return{dynamic:0,normalize:function(b){return b},load:b.require}})},"dojo/text":function(){define(["./_base/kernel","require","./has","./request"],function(b,n,f,p){var m;m=function(a,b,d){p(a,{sync:!!b,headers:{"X-Requested-With":null}}).then(d)};var d={},k=function(a){if(a){a=a.replace(/^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,"");var b=a.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);b&&
(a=b[1])}else a="";return a},l={},h={};b.cache=function(a,b,f){var c;"string"==typeof a?/\//.test(a)?(c=a,f=b):c=n.toUrl(a.replace(/\./g,"/")+(b?"/"+b:"")):(c=a+"",f=b);a=void 0!=f&&"string"!=typeof f?f.value:f;f=f&&f.sanitize;if("string"==typeof a)return d[c]=a,f?k(a):a;if(null===a)return delete d[c],null;c in d||m(c,!0,function(a){d[c]=a});return f?k(d[c]):d[c]};return{dynamic:!0,normalize:function(a,b){a=a.split("!");var e=a[0];return(/^\./.test(e)?b(e):e)+(a[1]?"!"+a[1]:"")},load:function(a,b,
f){a=a.split("!");var c=1<a.length,e=a[0],r=b.toUrl(a[0]);a="url:"+r;var g=l,t=function(a){f(c?k(a):a)};e in d?g=d[e]:b.cache&&a in b.cache?g=b.cache[a]:r in d&&(g=d[r]);if(g===l)if(h[r])h[r].push(t);else{var p=h[r]=[t];m(r,!b.async,function(a){d[e]=d[r]=a;for(var b=0;b<p.length;)p[b++](a);delete h[r]})}else t(g)}}})},"dojo/request":function(){define(["./request/default!"],function(b){return b})},"dojo/request/default":function(){define(["exports","require","../has"],function(b,n,f){var p=f("config-requestProvider");
p||(p="./xhr");b.getPlatformDefaultId=function(){return"./xhr"};b.load=function(b,d,f,l){n(["platform"==b?"./xhr":p],function(b){f(b)})}})},"dojo/i18n":function(){define("./_base/kernel require ./has ./_base/array ./_base/config ./_base/lang ./_base/xhr ./json module".split(" "),function(b,n,f,p,m,d,k,l,h){f.add("dojo-preload-i18n-Api",1);var a=b.i18n={},e=/(^.*(^|\/)nls)(\/|$)([^\/]*)\/?([^\/]*)/,r=function(a,b,c,e){var d=[c+e];b=b.split("-");for(var g="",f=0;f<b.length;f++)if(g+=(g?"-":"")+b[f],
!a||a[g])d.push(c+g+"/"+e),d.specificity=g;return d},c={},q=function(a,c,e){e=e?e.toLowerCase():b.locale;a=a.replace(/\./g,"/");c=c.replace(/\./g,"/");return/root/i.test(e)?a+"/nls/"+c:a+"/nls/"+e+"/"+c},x=b.getL10nName=function(a,b,c){return a=h.id+"!"+q(a,b,c)},g=function(a,b,e,g,f,q){a([b],function(k){var l=d.clone(k.root||k.ROOT),h=r(!k._v1x&&k,f,e,g);a(h,function(){for(var a=1;a<h.length;a++)l=d.mixin(d.clone(l),arguments[a]);c[b+"/"+f]=l;l.$locale=h.specificity;q()})})},t=function(a){var b=
m.extraLocale||[],b=d.isArray(b)?b:[b];b.push(a);return b},u=function(a,k,q){var h=e.exec(a),w=h[1]+"/",r=h[5]||h[4],y=w+r,m=(h=h[5]&&h[4])||b.locale||"",x=y+"/"+m,h=h?[m]:t(m),n=h.length,u=function(){--n||q(d.delegate(c[x]))},m=a.split("*"),A="preload"==m[1];if(f("dojo-preload-i18n-Api")){if(A&&(c[a]||(c[a]=1,C(m[2],l.parse(m[3]),1,k)),q(1)),(m=A)||(v&&B.push([a,k,q]),m=v&&!c[x]),m)return}else if(A){q(1);return}p.forEach(h,function(a){var b=y+"/"+a;f("dojo-preload-i18n-Api")&&z(b);c[b]?u():g(k,y,
w,r,a,u)})};f("dojo-preload-i18n-Api");var y=a.normalizeLocale=function(a){a=a?a.toLowerCase():b.locale;return"root"==a?"ROOT":a},v=0,B=[],C=a._preloadLocalizations=function(a,e,g,f){function k(a,b){f.isXdUrl(n.toUrl(a+".js"))||g?f([a],b):E([a],b,f)}function q(a,b){for(a=a.split("-");a.length;){if(b(a.join("-")))return;a.pop()}b("ROOT")}function l(){for(--v;!v&&B.length;)u.apply(null,B.shift())}function h(b){b=y(b);q(b,function(g){if(0<=p.indexOf(e,g)){var h=a.replace(/\./g,"/")+"_"+g;v++;k(h,function(a){for(var e in a){var k=
a[e],h=e.match(/(.+)\/([^\/]+)$/),w;if(h&&(w=h[2],h=h[1]+"/",k._localized)){var r;if("ROOT"===g){var t=r=k._localized;delete k._localized;t.root=k;c[n.toAbsMid(e)]=t}else r=k._localized,c[n.toAbsMid(h+w+"/"+g)]=k;g!==b&&function(a,e,g,k){var h=[],w=[];q(b,function(b){k[b]&&(h.push(n.toAbsMid(a+b+"/"+e)),w.push(n.toAbsMid(a+e+"/"+b)))});h.length?(v++,f(h,function(){for(var f=h.length-1;0<=f;f--)g=d.mixin(d.clone(g),arguments[f]),c[w[f]]=g;c[n.toAbsMid(a+e+"/"+b)]=d.clone(g);l()})):c[n.toAbsMid(a+e+
"/"+b)]=g}(h,w,k,r)}}l()});return!0}return!1})}f=f||n;h();p.forEach(b.config.extraLocale,h)},z=function(){},w={},G,E=function(a,b,e){var d=[];p.forEach(a,function(a){function b(b){G||(G=new Function("__bundle","__checkForLegacyModules","__mid","__amdValue","var define \x3d function(mid, factory){define.called \x3d 1; __amdValue.result \x3d factory || mid;},\t   require \x3d function(){define.called \x3d 1;};try{define.called \x3d 0;eval(__bundle);if(define.called\x3d\x3d1)return __amdValue;if((__checkForLegacyModules \x3d __checkForLegacyModules(__mid)))return __checkForLegacyModules;}catch(e){}try{return eval('('+__bundle+')');}catch(e){return e;}"));
b=G(b,z,a,w);b===w?d.push(c[g]=w.result):(b instanceof Error&&(console.error("failed to evaluate i18n bundle; url\x3d"+g,b),b={}),d.push(c[g]=/nls\/[^\/]+\/[^\/]+$/.test(g)?b:{root:b,_v1x:1}))}var g=e.toUrl(a+".js");if(c[g])d.push(c[g]);else{var f=e.syncLoadNls(a);f||(f=z(a.replace(/nls\/([^\/]*)\/([^\/]*)$/,"nls/$2/$1")));if(f)d.push(f);else if(k)k.get({url:g,sync:!0,load:b,error:function(){d.push(c[g]={})}});else try{e.getText(g,!0,b)}catch(D){d.push(c[g]={})}}});b&&b.apply(null,d)},z=function(a){for(var e,
d=a.split("/"),g=b.global[d[0]],f=1;g&&f<d.length-1;g=g[d[f++]]);g&&((e=g[d[f]])||(e=g[d[f].replace(/-/g,"_")]),e&&(c[a]=e));return e};a.getLocalization=function(a,b,c){var e;a=q(a,b,c);u(a,n.isXdUrl(n.toUrl(a+".js"))?n:function(a,b){E(a,b,n)},function(a){e=a});return e};return d.mixin(a,{dynamic:!0,normalize:function(a,b){return/^\./.test(a)?b(a):a},load:u,cache:c,getL10nName:x})})},"dojo/_base/xhr":function(){define("./kernel ./sniff require ../io-query ../dom ../dom-form ./Deferred ./config ./json ./lang ./array ../on ../aspect ../request/watch ../request/xhr ../request/util".split(" "),
function(b,n,f,p,m,d,k,l,h,a,e,r,c,q,x,g){b._xhrObj=x._create;var t=b.config;b.objectToQuery=p.objectToQuery;b.queryToObject=p.queryToObject;b.fieldToObject=d.fieldToObject;b.formToObject=d.toObject;b.formToQuery=d.toQuery;b.formToJson=d.toJson;b._blockAsync=!1;n.add("native-xhr2-blob",function(){if(n("native-xhr2")){var a=new XMLHttpRequest;a.open("GET","/",!0);a.responseType="blob";var b=a.responseType;a.abort();return"blob"===b}});var u=b._contentHandlers=b.contentHandlers={text:function(a){return a.responseText},
json:function(a){return h.fromJson(a.responseText||null)},"json-comment-filtered":function(a){l.useCommentedJson||console.warn("Consider using the standard mimetype:application/json. json-commenting can introduce security issues. To decrease the chances of hijacking, use the standard the 'json' handler and prefix your json with: {}\x26\x26\nUse djConfig.useCommentedJson\x3dtrue to turn off this message.");a=a.responseText;var b=a.indexOf("/*"),c=a.lastIndexOf("*/");if(-1==b||-1==c)throw Error("JSON was not comment filtered");
return h.fromJson(a.substring(b+2,c))},javascript:function(a){return b.eval(a.responseText)},xml:function(a){var b=a.responseXML;b&&n("dom-qsa2.1")&&!b.querySelectorAll&&n("dom-parser")&&(b=(new DOMParser).parseFromString(a.responseText,"application/xml"));if(n("ie")&&(!b||!b.documentElement)){var c=function(a){return"MSXML"+a+".DOMDocument"},c=["Microsoft.XMLDOM",c(6),c(4),c(3),c(2)];e.some(c,function(c){try{var e=new ActiveXObject(c);e.async=!1;e.loadXML(a.responseText);b=e}catch(A){return!1}return!0})}return b},
"json-comment-optional":function(a){return a.responseText&&/^[^{\[]*\/\*/.test(a.responseText)?u["json-comment-filtered"](a):u.json(a)}};n("native-xhr2")&&(u.arraybuffer=u.blob=u.document=function(a,b){return"blob"!==b.args.handleAs||n("native-xhr2-blob")?a.response:new Blob([a.response],{type:a.getResponseHeader("Content-Type")})});b._ioSetArgs=function(c,e,g,f){var q={args:c,url:c.url},h=null;if(c.form){var h=m.byId(c.form),l=h.getAttributeNode("action");q.url=q.url||(l?l.value:b.doc?b.doc.URL:
null);h=d.toObject(h)}l={};h&&a.mixin(l,h);c.content&&a.mixin(l,c.content);c.preventCache&&(l["dojo.preventCache"]=(new Date).valueOf());q.query=p.objectToQuery(l);q.handleAs=c.handleAs||"text";var r=new k(function(a){a.canceled=!0;e&&e(a);var b=a.ioArgs.error;b||(b=Error("request cancelled"),b.dojoType="cancel",a.ioArgs.error=b);return b});r.addCallback(g);var w=c.load;w&&a.isFunction(w)&&r.addCallback(function(a){return w.call(c,a,q)});var y=c.error;y&&a.isFunction(y)&&r.addErrback(function(a){return y.call(c,
a,q)});var v=c.handle;v&&a.isFunction(v)&&r.addBoth(function(a){return v.call(c,a,q)});r.addErrback(function(a){return f(a,r)});t.ioPublish&&b.publish&&!1!==q.args.ioPublish&&(r.addCallbacks(function(a){b.publish("/dojo/io/load",[r,a]);return a},function(a){b.publish("/dojo/io/error",[r,a]);return a}),r.addBoth(function(a){b.publish("/dojo/io/done",[r,a]);return a}));r.ioArgs=q;return r};var y=function(a){a=u[a.ioArgs.handleAs](a.ioArgs.xhr,a.ioArgs);return void 0===a?null:a},v=function(a,b){b.ioArgs.args.failOk||
console.error(a);return a},B=function(a){0>=C&&(C=0,t.ioPublish&&b.publish&&(!a||a&&!1!==a.ioArgs.args.ioPublish)&&b.publish("/dojo/io/stop"))},C=0;c.after(q,"_onAction",function(){--C});c.after(q,"_onInFlight",B);b._ioCancelAll=q.cancelAll;b._ioNotifyStart=function(a){t.ioPublish&&b.publish&&!1!==a.ioArgs.args.ioPublish&&(C||b.publish("/dojo/io/start"),C+=1,b.publish("/dojo/io/send",[a]))};b._ioWatch=function(b,c,e,d){b.ioArgs.options=b.ioArgs.args;a.mixin(b,{response:b.ioArgs,isValid:function(a){return c(b)},
isReady:function(a){return e(b)},handleResponse:function(a){return d(b)}});q(b);B(b)};b._ioAddQueryToUrl=function(a){a.query.length&&(a.url+=(-1==a.url.indexOf("?")?"?":"\x26")+a.query,a.query=null)};b.xhr=function(a,c,e){var d,g=b._ioSetArgs(c,function(a){d&&d.cancel()},y,v),f=g.ioArgs;"postData"in c?f.query=c.postData:"putData"in c?f.query=c.putData:"rawBody"in c?f.query=c.rawBody:(2<arguments.length&&!e||-1==="POST|PUT".indexOf(a.toUpperCase()))&&b._ioAddQueryToUrl(f);var k;n("native-xhr2")&&(k=
{arraybuffer:1,blob:1,document:1});k=n("native-xhr2")&&k[c.handleAs]?c.handleAs:"text";"blob"!==k||n("native-xhr2-blob")||(k="arraybuffer");k={method:a,handleAs:k,responseType:c.responseType,timeout:c.timeout,withCredentials:c.withCredentials,ioArgs:f};"undefined"!==typeof c.headers&&(k.headers=c.headers);"undefined"!==typeof c.contentType&&(k.headers||(k.headers={}),k.headers["Content-Type"]=c.contentType);"undefined"!==typeof f.query&&(k.data=f.query);"undefined"!==typeof c.sync&&(k.sync=c.sync);
b._ioNotifyStart(g);try{d=x(f.url,k,!0)}catch(P){return g.cancel(),g}g.ioArgs.xhr=d.response.xhr;d.then(function(){g.resolve(g)}).otherwise(function(a){f.error=a;a.response&&(a.status=a.response.status,a.responseText=a.response.text,a.xhr=a.response.xhr);g.reject(a)});return g};b.xhrGet=function(a){return b.xhr("GET",a)};b.rawXhrPost=b.xhrPost=function(a){return b.xhr("POST",a,!0)};b.rawXhrPut=b.xhrPut=function(a){return b.xhr("PUT",a,!0)};b.xhrDelete=function(a){return b.xhr("DELETE",a)};b._isDocumentOk=
function(a){return g.checkStatus(a.status)};b._getText=function(a){var c;b.xhrGet({url:a,sync:!0,load:function(a){c=a}});return c};a.mixin(b.xhr,{_xhrObj:b._xhrObj,fieldToObject:d.fieldToObject,formToObject:d.toObject,objectToQuery:p.objectToQuery,formToQuery:d.toQuery,formToJson:d.toJson,queryToObject:p.queryToObject,contentHandlers:u,_ioSetArgs:b._ioSetArgs,_ioCancelAll:b._ioCancelAll,_ioNotifyStart:b._ioNotifyStart,_ioWatch:b._ioWatch,_ioAddQueryToUrl:b._ioAddQueryToUrl,_isDocumentOk:b._isDocumentOk,
_getText:b._getText,get:b.xhrGet,post:b.xhrPost,put:b.xhrPut,del:b.xhrDelete});return b.xhr})},"dojo/_base/sniff":function(){define(["./kernel","./lang","../sniff"],function(b,n,f){b._name="browser";n.mixin(b,{isBrowser:!0,isFF:f("ff"),isIE:f("ie"),isKhtml:f("khtml"),isWebKit:f("webkit"),isMozilla:f("mozilla"),isMoz:f("mozilla"),isOpera:f("opera"),isSafari:f("safari"),isChrome:f("chrome"),isMac:f("mac"),isIos:f("ios"),isAndroid:f("android"),isWii:f("wii"),isQuirks:f("quirks"),isAir:f("air")});return f})},
"dojo/io-query":function(){define(["./_base/lang"],function(b){var n={};return{objectToQuery:function(f){var p=encodeURIComponent,m=[],d;for(d in f){var k=f[d];if(k!=n[d]){var l=p(d)+"\x3d";if(b.isArray(k))for(var h=0,a=k.length;h<a;++h)m.push(l+p(k[h]));else m.push(l+p(k))}}return m.join("\x26")},queryToObject:function(f){var p=decodeURIComponent;f=f.split("\x26");for(var m={},d,k,l=0,h=f.length;l<h;++l)if(k=f[l],k.length){var a=k.indexOf("\x3d");0>a?(d=p(k),k=""):(d=p(k.slice(0,a)),k=p(k.slice(a+
1)));"string"==typeof m[d]&&(m[d]=[m[d]]);b.isArray(m[d])?m[d].push(k):m[d]=k}return m}}})},"dojo/dom":function(){define(["./sniff","./_base/window","./_base/kernel"],function(b,n,f){if(7>=b("ie"))try{document.execCommand("BackgroundImageCache",!1,!0)}catch(d){}var p={};b("ie")?p.byId=function(b,f){if("string"!=typeof b)return b;var d=f||n.doc;f=b&&d.getElementById(b);if(!f||f.attributes.id.value!=b&&f.id!=b){d=d.all[b];if(!d||d.nodeName)d=[d];for(var k=0;f=d[k++];)if(f.attributes&&f.attributes.id&&
f.attributes.id.value==b||f.id==b)return f}else return f}:p.byId=function(b,f){return("string"==typeof b?(f||n.doc).getElementById(b):b)||null};f=f.global.document||null;b.add("dom-contains",!(!f||!f.contains));p.isDescendant=b("dom-contains")?function(b,f){return!(!(f=p.byId(f))||!f.contains(p.byId(b)))}:function(b,f){try{for(b=p.byId(b),f=p.byId(f);b;){if(b==f)return!0;b=b.parentNode}}catch(l){}return!1};b.add("css-user-select",function(b,f,l){if(!l)return!1;b=l.style;f=["Khtml","O","Moz","Webkit"];
l=f.length;var d="userSelect";do if("undefined"!==typeof b[d])return d;while(l--&&(d=f[l]+"UserSelect"));return!1});var m=b("css-user-select");p.setSelectable=m?function(b,f){p.byId(b).style[m]=f?"":"none"}:function(b,f){b=p.byId(b);var d=b.getElementsByTagName("*"),k=d.length;if(f)for(b.removeAttribute("unselectable");k--;)d[k].removeAttribute("unselectable");else for(b.setAttribute("unselectable","on");k--;)d[k].setAttribute("unselectable","on")};return p})},"dojo/_base/window":function(){define(["./kernel",
"./lang","../sniff"],function(b,n,f){var p={global:b.global,doc:b.global.document||null,body:function(f){f=f||b.doc;return f.body||f.getElementsByTagName("body")[0]},setContext:function(f,d){b.global=p.global=f;b.doc=p.doc=d},withGlobal:function(f,d,k,l){var h=b.global;try{return b.global=p.global=f,p.withDoc.call(null,f.document,d,k,l)}finally{b.global=p.global=h}},withDoc:function(m,d,k,l){var h=p.doc,a=f("quirks"),e=f("ie"),r,c,q;try{return b.doc=p.doc=m,b.isQuirks=f.add("quirks","BackCompat"==
b.doc.compatMode,!0,!0),f("ie")&&(q=m.parentWindow)&&q.navigator&&(r=parseFloat(q.navigator.appVersion.split("MSIE ")[1])||void 0,(c=m.documentMode)&&5!=c&&Math.floor(r)!=c&&(r=c),b.isIE=f.add("ie",r,!0,!0)),k&&"string"==typeof d&&(d=k[d]),d.apply(k,l||[])}finally{b.doc=p.doc=h,b.isQuirks=f.add("quirks",a,!0,!0),b.isIE=f.add("ie",e,!0,!0)}}};n.mixin(b,p);return p})},"dojo/dom-form":function(){define(["./_base/lang","./dom","./io-query","./json"],function(b,n,f,p){var m={fieldToObject:function(b){var d=
null;if(b=n.byId(b)){var f=b.name,h=(b.type||"").toLowerCase();if(f&&h&&!b.disabled)if("radio"==h||"checkbox"==h)b.checked&&(d=b.value);else if(b.multiple)for(d=[],b=[b.firstChild];b.length;)for(f=b.pop();f;f=f.nextSibling)if(1==f.nodeType&&"option"==f.tagName.toLowerCase())f.selected&&d.push(f.value);else{f.nextSibling&&b.push(f.nextSibling);f.firstChild&&b.push(f.firstChild);break}else d=b.value}return d},toObject:function(d){var f={};d=n.byId(d).elements;for(var l=0,h=d.length;l<h;++l){var a=d[l],
e=a.name,r=(a.type||"").toLowerCase();if(e&&r&&0>"file|submit|image|reset|button".indexOf(r)&&!a.disabled){var c=f,q=e,a=m.fieldToObject(a);if(null!==a){var x=c[q];"string"==typeof x?c[q]=[x,a]:b.isArray(x)?x.push(a):c[q]=a}"image"==r&&(f[e+".x"]=f[e+".y"]=f[e].x=f[e].y=0)}}return f},toQuery:function(b){return f.objectToQuery(m.toObject(b))},toJson:function(b,f){return p.stringify(m.toObject(b),null,f?4:0)}};return m})},"dojo/_base/Deferred":function(){define("./kernel ../Deferred ../promise/Promise ../errors/CancelError ../has ./lang ../when".split(" "),
function(b,n,f,p,m,d,k){var l=function(){},h=Object.freeze||function(){},a=b.Deferred=function(b){function e(a){if(k)throw Error("This deferred has already been resolved");q=a;k=!0;c()}function c(){for(var a;!a&&v;){var b=v;v=v.next;if(a=b.progress==l)k=!1;var c=u?b.error:b.resolved;m("config-useDeferredInstrumentation")&&u&&n.instrumentRejected&&n.instrumentRejected(q,!!c);if(c)try{var e=c(q);e&&"function"===typeof e.then?e.then(d.hitch(b.deferred,"resolve"),d.hitch(b.deferred,"reject"),d.hitch(b.deferred,
"progress")):(c=a&&void 0===e,a&&!c&&(u=e instanceof Error),b.deferred[c&&u?"reject":"resolve"](c?q:e))}catch(H){b.deferred.reject(H)}else u?b.deferred.reject(q):b.deferred.resolve(q)}}var q,k,g,t,u,y,v,B=this.promise=new f;this.isResolved=B.isResolved=function(){return 0==t};this.isRejected=B.isRejected=function(){return 1==t};this.isFulfilled=B.isFulfilled=function(){return 0<=t};this.isCanceled=B.isCanceled=function(){return g};this.resolve=this.callback=function(a){this.fired=t=0;this.results=
[a,null];e(a)};this.reject=this.errback=function(a){u=!0;this.fired=t=1;m("config-useDeferredInstrumentation")&&n.instrumentRejected&&n.instrumentRejected(a,!!v);e(a);this.results=[null,a]};this.progress=function(a){for(var b=v;b;){var c=b.progress;c&&c(a);b=b.next}};this.addCallbacks=function(a,b){this.then(a,b,l);return this};B.then=this.then=function(b,e,g){var d=g==l?this:new a(B.cancel);b={resolved:b,error:e,progress:g,deferred:d};v?y=y.next=b:v=y=b;k&&c();return d.promise};var C=this;B.cancel=
this.cancel=function(){if(!k){var a=b&&b(C);k||(a instanceof Error||(a=new p(a)),a.log=!1,C.reject(a))}g=!0};h(B)};d.extend(a,{addCallback:function(a){return this.addCallbacks(d.hitch.apply(b,arguments))},addErrback:function(a){return this.addCallbacks(null,d.hitch.apply(b,arguments))},addBoth:function(a){var e=d.hitch.apply(b,arguments);return this.addCallbacks(e,e)},fired:-1});a.when=b.when=k;return a})},"dojo/Deferred":function(){define(["./has","./_base/lang","./errors/CancelError","./promise/Promise",
"./promise/instrumentation"],function(b,n,f,p,m){var d=Object.freeze||function(){},k=function(a,b,d,f,g){2===b&&e.instrumentRejected&&0===a.length&&e.instrumentRejected(d,!1,f,g);for(g=0;g<a.length;g++)l(a[g],b,d,f)},l=function(b,c,d,f){var g=b[c],q=b.deferred;if(g)try{var k=g(d);if(0===c)"undefined"!==typeof k&&a(q,c,k);else{if(k&&"function"===typeof k.then){b.cancel=k.cancel;k.then(h(q,1),h(q,2),h(q,0));return}a(q,1,k)}}catch(y){a(q,2,y)}else a(q,c,d);2===c&&e.instrumentRejected&&e.instrumentRejected(d,
!!g,f,q.promise)},h=function(b,c){return function(e){a(b,c,e)}},a=function(a,b,e){if(!a.isCanceled())switch(b){case 0:a.progress(e);break;case 1:a.resolve(e);break;case 2:a.reject(e)}},e=function(a){var b=this.promise=new p,q=this,h,g,r,m=!1,y=[];Error.captureStackTrace&&(Error.captureStackTrace(q,e),Error.captureStackTrace(b,e));this.isResolved=b.isResolved=function(){return 1===h};this.isRejected=b.isRejected=function(){return 2===h};this.isFulfilled=b.isFulfilled=function(){return!!h};this.isCanceled=
b.isCanceled=function(){return m};this.progress=function(a,c){if(h){if(!0===c)throw Error("This deferred has already been fulfilled.");return b}k(y,0,a,null,q);return b};this.resolve=function(a,c){if(h){if(!0===c)throw Error("This deferred has already been fulfilled.");return b}k(y,h=1,g=a,null,q);y=null;return b};var v=this.reject=function(a,c){if(h){if(!0===c)throw Error("This deferred has already been fulfilled.");return b}Error.captureStackTrace&&Error.captureStackTrace(r={},v);k(y,h=2,g=a,r,
q);y=null;return b};this.then=b.then=function(a,c,d){var f=[d,a,c];f.cancel=b.cancel;f.deferred=new e(function(a){return f.cancel&&f.cancel(a)});h&&!y?l(f,h,g,r):y.push(f);return f.deferred.promise};this.cancel=b.cancel=function(b,c){if(!h){a&&(c=a(b),b="undefined"===typeof c?b:c);m=!0;if(!h)return"undefined"===typeof b&&(b=new f),v(b),b;if(2===h&&g===b)return b}else if(!0===c)throw Error("This deferred has already been fulfilled.");};d(b)};e.prototype.toString=function(){return"[object Deferred]"};
m&&m(e);return e})},"dojo/errors/CancelError":function(){define(["./create"],function(b){return b("CancelError",null,null,{dojoType:"cancel",log:!1})})},"dojo/errors/create":function(){define(["../_base/lang"],function(b){return function(n,f,p,m){p=p||Error;var d=function(b){if(p===Error){Error.captureStackTrace&&Error.captureStackTrace(this,d);var k=Error.call(this,b),h;for(h in k)k.hasOwnProperty(h)&&(this[h]=k[h]);this.message=b;this.stack=k.stack}else p.apply(this,arguments);f&&f.apply(this,arguments)};
d.prototype=b.delegate(p.prototype,m);d.prototype.name=n;return d.prototype.constructor=d}})},"dojo/promise/Promise":function(){define(["../_base/lang"],function(b){function n(){throw new TypeError("abstract");}return b.extend(function(){},{then:function(b,p,m){n()},cancel:function(b,p){n()},isResolved:function(){n()},isRejected:function(){n()},isFulfilled:function(){n()},isCanceled:function(){n()},always:function(b){return this.then(b,b)},"catch":function(b){return this.then(null,b)},otherwise:function(b){return this.then(null,
b)},trace:function(){return this},traceRejected:function(){return this},toString:function(){return"[object Promise]"}})})},"dojo/promise/instrumentation":function(){define(["./tracer","../has","../_base/lang","../_base/array"],function(b,n,f,p){function m(a,b,e){if(!a||!1!==a.log){var c="";a&&a.stack&&(c+=a.stack);b&&b.stack&&(c+="\n    ----------------------------------------\n    rejected"+b.stack.split("\n").slice(1).join("\n").replace(/^\s+/," "));e&&e.stack&&(c+="\n    ----------------------------------------\n"+
e.stack);console.error(a,c)}}function d(a,b,e,d){b||m(a,e,d)}function k(b,c,d,f){p.some(h,function(a){if(a.error===b)return c&&(a.handled=!0),!0})||h.push({error:b,rejection:d,handled:c,deferred:f,timestamp:(new Date).getTime()});a||(a=setTimeout(l,e))}function l(){var b=(new Date).getTime(),c=b-e;h=p.filter(h,function(a){return a.timestamp<c?(a.handled||m(a.error,a.rejection,a.deferred),!1):!0});a=h.length?setTimeout(l,h[0].timestamp+e-b):!1}n.add("config-useDeferredInstrumentation","report-unhandled-rejections");
var h=[],a=!1,e=1E3;return function(a){var c=n("config-useDeferredInstrumentation");if(c){b.on("resolved",f.hitch(console,"log","resolved"));b.on("rejected",f.hitch(console,"log","rejected"));b.on("progress",f.hitch(console,"log","progress"));var h=[];"string"===typeof c&&(h=c.split(","),c=h.shift());if("report-rejections"===c)a.instrumentRejected=d;else if("report-unhandled-rejections"===c||!0===c||1===c)a.instrumentRejected=k,e=parseInt(h[0],10)||e;else throw Error("Unsupported instrumentation usage \x3c"+
c+"\x3e");}}})},"dojo/promise/tracer":function(){define(["../_base/lang","./Promise","../Evented"],function(b,n,f){function p(b){setTimeout(function(){d.apply(m,b)},0)}var m=new f,d=m.emit;m.emit=null;n.prototype.trace=function(){var d=b._toArray(arguments);this.then(function(b){p(["resolved",b].concat(d))},function(b){p(["rejected",b].concat(d))},function(b){p(["progress",b].concat(d))});return this};n.prototype.traceRejected=function(){var d=b._toArray(arguments);this.otherwise(function(b){p(["rejected",
b].concat(d))});return this};return m})},"dojo/Evented":function(){define(["./aspect","./on"],function(b,n){function f(){}var p=b.after;f.prototype={on:function(b,d){return n.parse(this,b,d,function(b,f){return p(b,"on"+f,d,!0)})},emit:function(b,d){var f=[this];f.push.apply(f,arguments);return n.emit.apply(n,f)}};return f})},"dojo/aspect":function(){define([],function(){function b(b,d,f,a){var e=b[d],h="around"==d,c;if(h){var q=f(function(){return e.advice(this,arguments)});c={remove:function(){q&&
(q=b=f=null)},advice:function(a,b){return q?q.apply(a,b):e.advice(a,b)}}}else c={remove:function(){if(c.advice){var a=c.previous,e=c.next;e||a?(a?a.next=e:b[d]=e,e&&(e.previous=a)):delete b[d];b=f=c.advice=null}},id:b.nextId++,advice:f,receiveArguments:a};if(e&&!h)if("after"==d){for(;e.next&&(e=e.next););e.next=c;c.previous=e}else"before"==d&&(b[d]=c,c.next=e,e.previous=c);else b[d]=c;return c}function n(d){return function(k,h,a,e){var m=k[h],c;m&&m.target==k||(k[h]=c=function(){for(var a=c.nextId,
b=arguments,e=c.before;e;)e.advice&&(b=e.advice.apply(this,b)||b),e=e.next;if(c.around)var d=c.around.advice(this,b);for(e=c.after;e&&e.id<a;){if(e.advice)if(e.receiveArguments)var h=e.advice.apply(this,b),d=h===f?d:h;else d=e.advice.call(this,d,b);e=e.next}return d},m&&(c.around={advice:function(a,b){return m.apply(a,b)}}),c.target=k,c.nextId=c.nextId||0);k=b(c||m,d,a,e);a=null;return k}}var f,p=n("after"),m=n("before"),d=n("around");return{before:m,around:d,after:p}})},"dojo/on":function(){define(["./has!dom-addeventlistener?:./aspect",
"./_base/kernel","./sniff"],function(b,n,f){function p(a,b,c,e,d){if(e=b.match(/(.*):(.*)/))return b=e[2],e=e[1],l.selector(e,b).call(d,a,c);f("touch")&&(h.test(b)&&(c=z(c)),f("event-orientationchange")||"orientationchange"!=b||(b="resize",a=window,c=z(c)));q&&(c=q(c));if(a.addEventListener){var g=b in r,k=g?r[b]:b;a.addEventListener(k,c,g);return{remove:function(){a.removeEventListener(k,c,g)}}}if(u&&a.attachEvent)return u(a,"on"+b,c);throw Error("Target must be an event emitter");}function m(){this.cancelable=
!1;this.defaultPrevented=!0}function d(){this.bubbles=!1}var k=window.ScriptEngineMajorVersion;f.add("jscript",k&&k()+ScriptEngineMinorVersion()/10);f.add("event-orientationchange",f("touch")&&!f("android"));f.add("event-stopimmediatepropagation",window.Event&&!!window.Event.prototype&&!!window.Event.prototype.stopImmediatePropagation);f.add("event-focusin",function(a,b,c){return"onfocusin"in c});f("touch")&&f.add("touch-can-modify-event-delegate",function(){var a=function(){};a.prototype=document.createEvent("MouseEvents");
try{var b=new a;b.target=null;return null===b.target}catch(E){return!1}});var l=function(a,b,c,e){return"function"!=typeof a.on||"function"==typeof b||a.nodeType?l.parse(a,b,c,p,e,this):a.on(b,c)};l.pausable=function(a,b,c,e){var d;a=l(a,b,function(){if(!d)return c.apply(this,arguments)},e);a.pause=function(){d=!0};a.resume=function(){d=!1};return a};l.once=function(a,b,c,e){var d=l(a,b,function(){d.remove();return c.apply(this,arguments)});return d};l.parse=function(a,b,c,e,d,f){var g;if(b.call)return b.call(f,
a,c);b instanceof Array?g=b:-1<b.indexOf(",")&&(g=b.split(/\s*,\s*/));if(g){var h=[];b=0;for(var k;k=g[b++];)h.push(l.parse(a,k,c,e,d,f));h.remove=function(){for(var a=0;a<h.length;a++)h[a].remove()};return h}return e(a,b,c,d,f)};var h=/^touch/;l.matches=function(a,b,c,e,d){d=d&&"function"==typeof d.matches?d:n.query;e=!1!==e;1!=a.nodeType&&(a=a.parentNode);for(;!d.matches(a,b,c);)if(a==c||!1===e||!(a=a.parentNode)||1!=a.nodeType)return!1;return a};l.selector=function(a,b,c){return function(e,d){function f(b){return l.matches(b,
a,e,c,g)}var g="function"==typeof a?{matches:a}:this,h=b.bubble;return h?l(e,h(f),d):l(e,b,function(a){var b=f(a.target);if(b)return a.selectorTarget=b,d.call(b,a)})}};var a=[].slice,e=l.emit=function(b,c,e){var f=a.call(arguments,2),g="on"+c;if("parentNode"in b){var h=f[0]={},k;for(k in e)h[k]=e[k];h.preventDefault=m;h.stopPropagation=d;h.target=b;h.type=c;e=h}do b[g]&&b[g].apply(b,f);while(e&&e.bubbles&&(b=b.parentNode));return e&&e.cancelable&&e},r=f("event-focusin")?{}:{focusin:"focus",focusout:"blur"};
if(!f("event-stopimmediatepropagation"))var c=function(){this.modified=this.immediatelyStopped=!0},q=function(a){return function(b){if(!b.immediatelyStopped)return b.stopImmediatePropagation=c,a.apply(this,arguments)}};if(f("dom-addeventlistener"))l.emit=function(a,b,c){if(a.dispatchEvent&&document.createEvent){var d=(a.ownerDocument||document).createEvent("HTMLEvents");d.initEvent(b,!!c.bubbles,!!c.cancelable);for(var f in c)f in d||(d[f]=c[f]);return a.dispatchEvent(d)&&d}return e.apply(l,arguments)};
else{l._fixEvent=function(a,b){a||(a=(b&&(b.ownerDocument||b.document||b).parentWindow||window).event);if(!a)return a;try{x&&a.type==x.type&&a.srcElement==x.target&&(a=x)}catch(E){}if(!a.target)switch(a.target=a.srcElement,a.currentTarget=b||a.srcElement,"mouseover"==a.type&&(a.relatedTarget=a.fromElement),"mouseout"==a.type&&(a.relatedTarget=a.toElement),a.stopPropagation||(a.stopPropagation=y,a.preventDefault=v),a.type){case "keypress":b="charCode"in a?a.charCode:a.keyCode,10==b?(b=0,a.keyCode=
13):13==b||27==b?b=0:3==b&&(b=99),a.charCode=b,b=a,b.keyChar=b.charCode?String.fromCharCode(b.charCode):"",b.charOrCode=b.keyChar||b.keyCode}return a};var x,g=function(a){this.handle=a};g.prototype.remove=function(){delete _dojoIEListeners_[this.handle]};var t=function(a){return function(b){b=l._fixEvent(b,this);var c=a.call(this,b);b.modified&&(x||setTimeout(function(){x=null}),x=b);return c}},u=function(a,c,e){e=t(e);if(((a.ownerDocument?a.ownerDocument.parentWindow:a.parentWindow||a.window||window)!=
top||5.8>f("jscript"))&&!f("config-_allow_leaks")){"undefined"==typeof _dojoIEListeners_&&(_dojoIEListeners_=[]);var d=a[c];if(!d||!d.listeners){var h=d,d=Function("event","var callee \x3d arguments.callee; for(var i \x3d 0; i\x3ccallee.listeners.length; i++){var listener \x3d _dojoIEListeners_[callee.listeners[i]]; if(listener){listener.call(this,event);}}");d.listeners=[];a[c]=d;d.global=this;h&&d.listeners.push(_dojoIEListeners_.push(h)-1)}d.listeners.push(a=d.global._dojoIEListeners_.push(e)-
1);return new g(a)}return b.after(a,c,e,!0)},y=function(){this.cancelBubble=!0},v=l._preventDefault=function(){this.bubbledKeyCode=this.keyCode;if(this.ctrlKey)try{this.keyCode=0}catch(w){}this.defaultPrevented=!0;this.returnValue=!1;this.modified=!0}}if(f("touch"))var B=function(){},C=window.orientation,z=function(a){return function(b){var c=b.corrected;if(!c){var e=b.type;try{delete b.type}catch(P){}if(b.type){if(f("touch-can-modify-event-delegate"))B.prototype=b,c=new B;else{var c={},d;for(d in b)c[d]=
b[d]}c.preventDefault=function(){b.preventDefault()};c.stopPropagation=function(){b.stopPropagation()}}else c=b,c.type=e;b.corrected=c;if("resize"==e){if(C==window.orientation)return null;C=window.orientation;c.type="orientationchange";return a.call(this,c)}"rotation"in c||(c.rotation=0,c.scale=1);if(window.TouchEvent&&b instanceof TouchEvent){var e=c.changedTouches[0],g;for(g in e)delete c[g],c[g]=e[g]}}return a.call(this,c)}};return l})},"dojo/when":function(){define(["./Deferred","./promise/Promise"],
function(b,n){return function(f,p,m,d){var k=f&&"function"===typeof f.then,l=k&&f instanceof n;if(!k)return 1<arguments.length?p?p(f):f:(new b).resolve(f);l||(k=new b(f.cancel),f.then(k.resolve,k.reject,k.progress),f=k.promise);return p||m||d?f.then(p,m,d):f}})},"dojo/_base/json":function(){define(["./kernel","../json"],function(b,n){b.fromJson=function(b){return eval("("+b+")")};b._escapeString=n.stringify;b.toJsonIndentStr="\t";b.toJson=function(f,p){return n.stringify(f,function(b,d){return d&&
(b=d.__json__||d.json,"function"==typeof b)?b.call(d):d},p&&b.toJsonIndentStr)};return b})},"dojo/request/watch":function(){define("./util ../errors/RequestTimeoutError ../errors/CancelError ../_base/array ../_base/window ../has!host-browser?dom-addeventlistener?:../on:".split(" "),function(b,n,f,p,m,d){function k(){for(var b=+new Date,d=0,c;d<a.length&&(c=a[d]);d++){var f=c.response,k=f.options;c.isCanceled&&c.isCanceled()||c.isValid&&!c.isValid(f)?(a.splice(d--,1),l._onAction&&l._onAction()):c.isReady&&
c.isReady(f)?(a.splice(d--,1),c.handleResponse(f),l._onAction&&l._onAction()):c.startTime&&c.startTime+(k.timeout||0)<b&&(a.splice(d--,1),c.cancel(new n("Timeout exceeded",f)),l._onAction&&l._onAction())}l._onInFlight&&l._onInFlight(c);a.length||(clearInterval(h),h=null)}function l(b){b.response.options.timeout&&(b.startTime=+new Date);b.isFulfilled()||(a.push(b),h||(h=setInterval(k,50)),b.response.options.sync&&k())}var h=null,a=[];l.cancelAll=function(){try{p.forEach(a,function(a){try{a.cancel(new f("All requests canceled."))}catch(r){}})}catch(e){}};
m&&d&&m.doc.attachEvent&&d(m.global,"unload",function(){l.cancelAll()});return l})},"dojo/request/util":function(){define("exports ../errors/RequestError ../errors/CancelError ../Deferred ../io-query ../_base/array ../_base/lang ../promise/Promise ../has".split(" "),function(b,n,f,p,m,d,k,l,h){function a(a){return r(a)}function e(a){return void 0!==a.data?a.data:a.text}b.deepCopy=function(a,e){for(var c in e){var d=a[c],f=e[c];d!==f&&(d&&"object"===typeof d&&f&&"object"===typeof f?f instanceof Date?
a[c]=new Date(f):b.deepCopy(d,f):a[c]=f)}return a};b.deepCreate=function(a,e){e=e||{};var c=k.delegate(a),d,f;for(d in a)(f=a[d])&&"object"===typeof f&&(c[d]=b.deepCreate(f,e[d]));return b.deepCopy(c,e)};var r=Object.freeze||function(a){return a};b.deferred=function(c,d,h,g,m,u){var q=new p(function(a){d&&d(q,c);return a&&(a instanceof n||a instanceof f)?a:new f("Request canceled",c)});q.response=c;q.isValid=h;q.isReady=g;q.handleResponse=m;h=q.then(a).otherwise(function(a){a.response=c;throw a;});
b.notify&&h.then(k.hitch(b.notify,"emit","load"),k.hitch(b.notify,"emit","error"));g=h.then(e);m=new l;for(var v in g)g.hasOwnProperty(v)&&(m[v]=g[v]);m.response=h;r(m);u&&q.then(function(a){u.call(q,a)},function(a){u.call(q,c,a)});q.promise=m;q.then=m.then;return q};b.addCommonMethods=function(a,b){d.forEach(b||["GET","POST","PUT","DELETE"],function(b){a[("DELETE"===b?"DEL":b).toLowerCase()]=function(c,e){e=k.delegate(e||{});e.method=b;return a(c,e)}})};b.parseArgs=function(a,b,e){var c=b.data,d=
b.query;!c||e||"object"!==typeof c||h("native-xhr2")&&(c instanceof ArrayBuffer||c instanceof Blob)||(b.data=m.objectToQuery(c));d?("object"===typeof d&&(d=m.objectToQuery(d)),b.preventCache&&(d+=(d?"\x26":"")+"request.preventCache\x3d"+ +new Date)):b.preventCache&&(d="request.preventCache\x3d"+ +new Date);a&&d&&(a+=(~a.indexOf("?")?"\x26":"?")+d);return{url:a,options:b,getHeader:function(a){return null}}};b.checkStatus=function(a){a=a||0;return 200<=a&&300>a||304===a||1223===a||!a}})},"dojo/errors/RequestError":function(){define(["./create"],
function(b){return b("RequestError",function(b,f){this.response=f})})},"dojo/errors/RequestTimeoutError":function(){define(["./create","./RequestError"],function(b,n){return b("RequestTimeoutError",null,n,{dojoType:"timeout"})})},"dojo/request/xhr":function(){define(["../errors/RequestError","./watch","./handlers","./util","../has"],function(b,n,f,p,m){function d(a,c){var e=a.xhr;a.status=a.xhr.status;try{a.text=e.responseText}catch(v){}"xml"===a.options.handleAs&&(a.data=e.responseXML);var d;if(c)this.reject(c);
else{try{f(a)}catch(v){d=v}p.checkStatus(e.status)?d?this.reject(d):this.resolve(a):(c=d?new b("Unable to load "+a.url+" status: "+e.status+" and an error in handleAs: transformation of response",a):new b("Unable to load "+a.url+" status: "+e.status,a),this.reject(c))}}function k(a){return this.xhr.getResponseHeader(a)}function l(f,t,u){var g=m("native-formdata")&&t&&t.data&&t.data instanceof FormData,v=p.parseArgs(f,p.deepCreate(x,t),g);f=v.url;t=v.options;var B=!t.data&&"POST"!==t.method&&"PUT"!==
t.method;10>=m("ie")&&(f=f.split("#")[0]);var C,z=p.deferred(v,c,a,e,d,function(){C&&C()}),w=v.xhr=l._create();if(!w)return z.cancel(new b("XHR was not created")),u?z:z.promise;v.getHeader=k;r&&(C=r(w,z,v,t.uploadProgress));var G="undefined"===typeof t.data?null:t.data,E=!t.sync,H=t.method;try{w.open(H,f,E,t.user||q,t.password||q);t.withCredentials&&(w.withCredentials=t.withCredentials);m("native-response-type")&&t.handleAs in h&&(w.responseType=h[t.handleAs]);var A=t.headers;f=g||B?!1:"application/x-www-form-urlencoded";
if(A)for(var M in A)"content-type"===M.toLowerCase()?f=A[M]:A[M]&&w.setRequestHeader(M,A[M]);f&&!1!==f&&w.setRequestHeader("Content-Type",f);A&&"X-Requested-With"in A||w.setRequestHeader("X-Requested-With","XMLHttpRequest");p.notify&&p.notify.emit("send",v,z.promise.cancel);w.send(G)}catch(P){z.reject(P)}n(z);w=null;return u?z:z.promise}m.add("native-xhr",function(){return"undefined"!==typeof XMLHttpRequest});m.add("dojo-force-activex-xhr",function(){return m("activex")&&"file:"===window.location.protocol});
m.add("native-xhr2",function(){if(m("native-xhr")&&!m("dojo-force-activex-xhr")){var a=new XMLHttpRequest;return"undefined"!==typeof a.addEventListener&&("undefined"===typeof opera||"undefined"!==typeof a.upload)}});m.add("native-formdata",function(){return"undefined"!==typeof FormData});m.add("native-response-type",function(){return m("native-xhr")&&"undefined"!==typeof(new XMLHttpRequest).responseType});m.add("native-xhr2-blob",function(){if(m("native-response-type")){var a=new XMLHttpRequest;a.open("GET",
"https://dojotoolkit.org/",!0);a.responseType="blob";var b=a.responseType;a.abort();return"blob"===b}});var h={blob:m("native-xhr2-blob")?"blob":"arraybuffer",document:"document",arraybuffer:"arraybuffer"},a,e,r,c;m("native-xhr2")?(a=function(a){return!this.isFulfilled()},c=function(a,b){b.xhr.abort()},r=function(a,c,e,d){function f(a){c.handleResponse(e)}function g(a){a=new b("Unable to load "+e.url+" status: "+a.target.status,e);c.handleResponse(e,a)}function h(a,b){e.transferType=a;b.lengthComputable?
(e.loaded=b.loaded,e.total=b.total,c.progress(e)):3===e.xhr.readyState&&(e.loaded="loaded"in b?b.loaded:b.position,c.progress(e))}function k(a){return h("download",a)}function q(a){return h("upload",a)}a.addEventListener("load",f,!1);a.addEventListener("error",g,!1);a.addEventListener("progress",k,!1);d&&a.upload&&a.upload.addEventListener("progress",q,!1);return function(){a.removeEventListener("load",f,!1);a.removeEventListener("error",g,!1);a.removeEventListener("progress",k,!1);a.upload.removeEventListener("progress",
q,!1);a=null}}):(a=function(a){return a.xhr.readyState},e=function(a){return 4===a.xhr.readyState},c=function(a,b){a=b.xhr;b=typeof a.abort;"function"!==b&&"object"!==b&&"unknown"!==b||a.abort()});var q,x={data:null,query:null,sync:!1,method:"GET"};l._create=function(){throw Error("XMLHTTP not available");};if(m("native-xhr")&&!m("dojo-force-activex-xhr"))l._create=function(){return new XMLHttpRequest};else if(m("activex"))try{new ActiveXObject("Msxml2.XMLHTTP"),l._create=function(){return new ActiveXObject("Msxml2.XMLHTTP")}}catch(g){try{new ActiveXObject("Microsoft.XMLHTTP"),
l._create=function(){return new ActiveXObject("Microsoft.XMLHTTP")}}catch(t){}}p.addCommonMethods(l);return l})},"dojo/request/handlers":function(){define(["../json","../_base/kernel","../_base/array","../has","../selector/_loader"],function(b,n,f,p){function m(b){var e=a[b.options.handleAs];b.data=e?e(b):b.data||b.text;return b}p.add("activex","undefined"!==typeof ActiveXObject);p.add("dom-parser",function(a){return"DOMParser"in a});var d;if(p("activex")){var k=["Msxml2.DOMDocument.6.0","Msxml2.DOMDocument.4.0",
"MSXML2.DOMDocument.3.0","MSXML.DOMDocument"],l;d=function(a){function b(a){try{var b=new ActiveXObject(a);b.async=!1;b.loadXML(e);c=b;l=a}catch(t){return!1}return!0}var c=a.data,e=a.text;c&&p("dom-qsa2.1")&&!c.querySelectorAll&&p("dom-parser")&&(c=(new DOMParser).parseFromString(e,"application/xml"));c&&c.documentElement||l&&b(l)||f.some(k,b);return c}}var h=function(a){return p("native-xhr2-blob")||"blob"!==a.options.handleAs||"undefined"===typeof Blob?a.xhr.response:new Blob([a.xhr.response],{type:a.xhr.getResponseHeader("Content-Type")})},
a={javascript:function(a){return n.eval(a.text||"")},json:function(a){return b.parse(a.text||null)},xml:d,blob:h,arraybuffer:h,document:h};m.register=function(b,d){a[b]=d};return m})},"dojo/selector/_loader":function(){define(["../has","require"],function(b,n){if("undefined"!==typeof document){var f=document.createElement("div");b.add("dom-qsa2.1",!!f.querySelectorAll);b.add("dom-qsa3",function(){try{return f.innerHTML="\x3cp class\x3d'TEST'\x3e\x3c/p\x3e",1==f.querySelectorAll(".TEST:empty").length}catch(m){}})}var p;
return{load:function(f,d,k,l){if(l&&l.isBuild)k();else{l=n;f="default"==f?b("config-selectorEngine")||"css3":f;f="css2"==f||"lite"==f?"./lite":"css2.1"==f?b("dom-qsa2.1")?"./lite":"./acme":"css3"==f?b("dom-qsa3")?"./lite":"./acme":"acme"==f?"./acme":(l=d)&&f;if("?"==f.charAt(f.length-1)){f=f.substring(0,f.length-1);var h=!0}if(h&&(b("dom-compliant-qsa")||p))return k(p);l([f],function(a){"./lite"!=f&&(p=a);k(a)})}}}})},"dojo/request/script":function(){define("module ./watch ./util ../_base/kernel ../_base/array ../_base/lang ../on ../dom ../dom-construct ../has ../_base/window".split(" "),
function(b,n,f,p,m,d,k,l,h,a,e){function r(a,b){a.canDelete&&t._remove(a.id,b.options.frameDoc,!0)}function c(a){z&&z.length&&(m.forEach(z,function(a){t._remove(a.id,a.frameDoc);a.frameDoc=null}),z=[]);return a.options.jsonp?!a.data:!0}function q(a){return!!this.scriptLoaded}function x(a){return(a=a.options.checkString)&&eval("typeof("+a+') !\x3d\x3d "undefined"')}function g(a,b){if(this.canDelete){var c=this.response.options;z.push({id:this.id,frameDoc:c.ioArgs?c.ioArgs.frameDoc:c.frameDoc});c.ioArgs&&
(c.ioArgs.frameDoc=null);c.frameDoc=null}b?this.reject(b):this.resolve(a)}function t(a,b,e){var h=f.parseArgs(a,f.deepCopy({},b));a=h.url;b=h.options;var l=f.deferred(h,r,c,b.jsonp?null:b.checkString?x:q,g);d.mixin(l,{id:u+y++,canDelete:!1});b.jsonp&&((new RegExp("[?\x26]"+b.jsonp+"\x3d")).test(a)||(a+=(~a.indexOf("?")?"\x26":"?")+b.jsonp+"\x3d"+(b.frameDoc?"parent.":"")+u+"_callbacks."+l.id),l.canDelete=!0,C[l.id]=function(a){h.data=a;l.handleResponse(h)});f.notify&&f.notify.emit("send",h,l.promise.cancel);
if(!b.canAttach||b.canAttach(l)){var m=t._attach(l.id,a,b.frameDoc,function(a){if(!(a instanceof Error)){var c=Error("Error loading "+(a.target?a.target.src:"script"));c.source=a;a=c}l.reject(a);t._remove(l.id,b.frameDoc,!0)});if(!b.jsonp&&!b.checkString)var p=k(m,v,function(a){if("load"===a.type||B.test(m.readyState))p.remove(),l.scriptLoaded=a})}n(l);return e?l:l.promise}a.add("script-readystatechange",function(a,b){return"undefined"!==typeof b.createElement("script").onreadystatechange&&("undefined"===
typeof a.opera||"[object Opera]"!==a.opera.toString())});var u=b.id.replace(/[\/\.\-]/g,"_"),y=0,v=a("script-readystatechange")?"readystatechange":"load",B=/complete|loaded/,C=p.global[u+"_callbacks"]={},z=[];t.get=t;t._attach=function(a,b,c,d){c=c||e.doc;var f=c.createElement("script");if(d)k.once(f,"error",d);f.type="text/javascript";try{f.src=b}catch(M){d&&d(f)}f.id=a;f.async=!0;f.charset="utf-8";return c.getElementsByTagName("head")[0].appendChild(f)};t._remove=function(a,b,c){h.destroy(l.byId(a,
b));C[a]&&(c?C[a]=function(){delete C[a]}:delete C[a])};t._callbacksProperty=u+"_callbacks";return t})},"dojo/dom-construct":function(){define("exports ./_base/kernel ./sniff ./_base/window ./dom ./dom-attr".split(" "),function(b,n,f,p,m,d){function k(a,b){var c=b.parentNode;c&&c.insertBefore(a,b)}function l(a){if("innerHTML"in a)try{a.innerHTML="";return}catch(v){}for(var b;b=a.lastChild;)a.removeChild(b)}var h={option:["select"],tbody:["table"],thead:["table"],tfoot:["table"],tr:["table","tbody"],
td:["table","tbody","tr"],th:["table","thead","tr"],legend:["fieldset"],caption:["table"],colgroup:["table"],col:["table","colgroup"],li:["ul"]},a=/<\s*([\w\:]+)/,e={},r=0,c="__"+n._scopeName+"ToDomId",q;for(q in h)h.hasOwnProperty(q)&&(n=h[q],n.pre="option"==q?'\x3cselect multiple\x3d"multiple"\x3e':"\x3c"+n.join("\x3e\x3c")+"\x3e",n.post="\x3c/"+n.reverse().join("\x3e\x3c/")+"\x3e");var x;8>=f("ie")&&(x=function(a){a.__dojo_html5_tested="yes";var b=g("div",{innerHTML:"\x3cnav\x3ea\x3c/nav\x3e",
style:{visibility:"hidden"}},a.body);1!==b.childNodes.length&&"abbr article aside audio canvas details figcaption figure footer header hgroup mark meter nav output progress section summary time video".replace(/\b\w+\b/g,function(b){a.createElement(b)});t(b)});b.toDom=function(b,d){d=d||p.doc;var g=d[c];g||(d[c]=g=++r+"",e[g]=d.createElement("div"));8>=f("ie")&&!d.__dojo_html5_tested&&d.body&&x(d);b+="";var k=b.match(a),q=k?k[1].toLowerCase():"",g=e[g];if(k&&h[q])for(k=h[q],g.innerHTML=k.pre+b+k.post,
b=k.length;b;--b)g=g.firstChild;else g.innerHTML=b;if(1==g.childNodes.length)return g.removeChild(g.firstChild);for(b=d.createDocumentFragment();d=g.firstChild;)b.appendChild(d);return b};b.place=function(a,c,e){c=m.byId(c);"string"==typeof a&&(a=/^\s*</.test(a)?b.toDom(a,c.ownerDocument):m.byId(a));if("number"==typeof e){var d=c.childNodes;!d.length||d.length<=e?c.appendChild(a):k(a,d[0>e?0:e])}else switch(e){case "before":k(a,c);break;case "after":e=a;(d=c.parentNode)&&(d.lastChild==c?d.appendChild(e):
d.insertBefore(e,c.nextSibling));break;case "replace":c.parentNode.replaceChild(a,c);break;case "only":b.empty(c);c.appendChild(a);break;case "first":if(c.firstChild){k(a,c.firstChild);break}default:c.appendChild(a)}return a};var g=b.create=function(a,c,e,f){var g=p.doc;e&&(e=m.byId(e),g=e.ownerDocument);"string"==typeof a&&(a=g.createElement(a));c&&d.set(a,c);e&&b.place(a,e,f);return a};b.empty=function(a){l(m.byId(a))};var t=b.destroy=function(a){if(a=m.byId(a)){var b=a;a=a.parentNode;b.firstChild&&
l(b);a&&(f("ie")&&a.canHaveChildren&&"removeNode"in b?b.removeNode(!1):a.removeChild(b))}}})},"dojo/dom-attr":function(){define("exports ./sniff ./_base/lang ./dom ./dom-style ./dom-prop".split(" "),function(b,n,f,p,m,d){function k(a,b){a=a.getAttributeNode&&a.getAttributeNode(b);return!!a&&a.specified}var l={innerHTML:1,textContent:1,className:1,htmlFor:n("ie"),value:1},h={classname:"class",htmlfor:"for",tabindex:"tabIndex",readonly:"readOnly"};b.has=function(a,b){var e=b.toLowerCase();return l[d.names[e]||
b]||k(p.byId(a),h[e]||b)};b.get=function(a,b){a=p.byId(a);var e=b.toLowerCase(),c=d.names[e]||b,q=a[c];if(l[c]&&"undefined"!=typeof q)return q;if("textContent"==c)return d.get(a,c);if("href"!=c&&("boolean"==typeof q||f.isFunction(q)))return q;b=h[e]||b;return k(a,b)?a.getAttribute(b):null};b.set=function(a,e,k){a=p.byId(a);if(2==arguments.length){for(var c in e)b.set(a,c,e[c]);return a}c=e.toLowerCase();var q=d.names[c]||e,n=l[q];if("style"==q&&"string"!=typeof k)return m.set(a,k),a;if(n||"boolean"==
typeof k||f.isFunction(k))return d.set(a,e,k);a.setAttribute(h[c]||e,k);return a};b.remove=function(a,b){p.byId(a).removeAttribute(h[b.toLowerCase()]||b)};b.getNodeProp=function(a,b){a=p.byId(a);var e=b.toLowerCase(),c=d.names[e]||b;if(c in a&&"href"!=c)return a[c];b=h[e]||b;return k(a,b)?a.getAttribute(b):null}})},"dojo/dom-style":function(){define(["./sniff","./dom","./_base/window"],function(b,n,f){function p(a,b,c){b=b.toLowerCase();if("auto"==c){if("height"==b)return a.offsetHeight;if("width"==
b)return a.offsetWidth}if("fontweight"==b)switch(c){case 700:return"bold";default:return"normal"}b in e||(e[b]=r.test(b));return e[b]?k(a,c):c}var m,d={};m=b("webkit")?function(a){var b;if(1==a.nodeType){var c=a.ownerDocument.defaultView;b=c.getComputedStyle(a,null);!b&&a.style&&(a.style.display="",b=c.getComputedStyle(a,null))}return b||{}}:b("ie")&&(9>b("ie")||b("quirks"))?function(a){return 1==a.nodeType&&a.currentStyle?a.currentStyle:{}}:function(a){if(1===a.nodeType){var b=a.ownerDocument.defaultView;
return(b.opener?b:f.global.window).getComputedStyle(a,null)}return{}};d.getComputedStyle=m;var k;k=b("ie")?function(a,b){if(!b)return 0;if("medium"==b)return 4;if(b.slice&&"px"==b.slice(-2))return parseFloat(b);var c=a.style,e=a.runtimeStyle,d=c.left,f=e.left;e.left=a.currentStyle.left;try{c.left=b,b=c.pixelLeft}catch(v){b=0}c.left=d;e.left=f;return b}:function(a,b){return parseFloat(b)||0};d.toPixelValue=k;var l=function(a,b){try{return a.filters.item("DXImageTransform.Microsoft.Alpha")}catch(g){return b?
{}:null}},h=9>b("ie")||10>b("ie")&&b("quirks")?function(a){try{return l(a).Opacity/100}catch(x){return 1}}:function(a){return m(a).opacity},a=9>b("ie")||10>b("ie")&&b("quirks")?function(b,c){""===c&&(c=1);var e=100*c;1===c?(b.style.zoom="",l(b)&&(b.style.filter=b.style.filter.replace(/\s*progid:DXImageTransform.Microsoft.Alpha\([^\)]+?\)/i,""))):(b.style.zoom=1,l(b)?l(b,1).Opacity=e:b.style.filter+=" progid:DXImageTransform.Microsoft.Alpha(Opacity\x3d"+e+")",l(b,1).Enabled=!0);if("tr"==b.tagName.toLowerCase())for(b=
b.firstChild;b;b=b.nextSibling)"td"==b.tagName.toLowerCase()&&a(b,c);return c}:function(a,b){return a.style.opacity=b},e={left:!0,top:!0},r=/margin|padding|width|height|max|min|offset/,c={cssFloat:1,styleFloat:1,"float":1};d.get=function(a,b){var e=n.byId(a),f=arguments.length;if(2==f&&"opacity"==b)return h(e);b=c[b]?"cssFloat"in e.style?"cssFloat":"styleFloat":b;var k=d.getComputedStyle(e);return 1==f?k:p(e,b,k[b]||e.style[b])};d.set=function(b,e,f){var g=n.byId(b),h=arguments.length,k="opacity"==
e;e=c[e]?"cssFloat"in g.style?"cssFloat":"styleFloat":e;if(3==h)return k?a(g,f):g.style[e]=f;for(var l in e)d.set(b,l,e[l]);return d.getComputedStyle(g)};return d})},"dojo/dom-prop":function(){define("exports ./_base/kernel ./sniff ./_base/lang ./dom ./dom-style ./dom-construct ./_base/connect".split(" "),function(b,n,f,p,m,d,k,l){function h(a){var b="";a=a.childNodes;for(var c=0,e;e=a[c];c++)8!=e.nodeType&&(b=1==e.nodeType?b+h(e):b+e.nodeValue);return b}var a={},e=1,r=n._scopeName+"attrid";f.add("dom-textContent",
function(a,b,e){return"textContent"in e});b.names={"class":"className","for":"htmlFor",tabindex:"tabIndex",readonly:"readOnly",colspan:"colSpan",frameborder:"frameBorder",rowspan:"rowSpan",textcontent:"textContent",valuetype:"valueType"};b.get=function(a,e){a=m.byId(a);var c=e.toLowerCase();e=b.names[c]||e;return"textContent"!=e||f("dom-textContent")?a[e]:h(a)};b.set=function(c,h,n){c=m.byId(c);if(2==arguments.length&&"string"!=typeof h){for(var g in h)b.set(c,g,h[g]);return c}g=h.toLowerCase();g=
b.names[g]||h;if("style"==g&&"string"!=typeof n)return d.set(c,n),c;if("innerHTML"==g)return f("ie")&&c.tagName.toLowerCase()in{col:1,colgroup:1,table:1,tbody:1,tfoot:1,thead:1,tr:1,title:1}?(k.empty(c),c.appendChild(k.toDom(n,c.ownerDocument))):c[g]=n,c;if("textContent"==g&&!f("dom-textContent"))return k.empty(c),c.appendChild(c.ownerDocument.createTextNode(n)),c;if(p.isFunction(n)){var q=c[r];q||(q=e++,c[r]=q);a[q]||(a[q]={});var u=a[q][g];if(u)l.disconnect(u);else try{delete c[g]}catch(y){}n?a[q][g]=
l.connect(c,g,n):c[g]=null;return c}c[g]=n;return c}})},"dojo/_base/connect":function(){define("./kernel ../on ../topic ../aspect ./event ../mouse ./sniff ./lang ../keys".split(" "),function(b,n,f,p,m,d,k,l){function h(a,c,e,f,h){f=l.hitch(e,f);if(!a||!a.addEventListener&&!a.attachEvent)return p.after(a||b.global,c,f,!0);"string"==typeof c&&"on"==c.substring(0,2)&&(c=c.substring(2));a||(a=b.global);if(!h)switch(c){case "keypress":c=q;break;case "mouseenter":c=d.enter;break;case "mouseleave":c=d.leave}return n(a,
c,f,h)}function a(a){a.keyChar=a.charCode?String.fromCharCode(a.charCode):"";a.charOrCode=a.keyChar||a.keyCode}k.add("events-keypress-typed",function(){var a={charCode:0};try{a=document.createEvent("KeyboardEvent"),(a.initKeyboardEvent||a.initKeyEvent).call(a,"keypress",!0,!0,null,!1,!1,!1,!1,9,3)}catch(t){}return 0==a.charCode&&!k("opera")});var e={106:42,111:47,186:59,187:43,188:44,189:45,190:46,191:47,192:96,219:91,220:92,221:93,222:39,229:113},r=k("mac")?"metaKey":"ctrlKey",c=function(b,c){c=
l.mixin({},b,c);a(c);c.preventDefault=function(){b.preventDefault()};c.stopPropagation=function(){b.stopPropagation()};return c},q;q=k("events-keypress-typed")?function(a,b){var d=n(a,"keydown",function(a){var d=a.keyCode,f=13!=d&&32!=d&&(27!=d||!k("ie"))&&(48>d||90<d)&&(96>d||111<d)&&(186>d||192<d)&&(219>d||222<d)&&229!=d;if(f||a.ctrlKey){f=f?0:d;if(a.ctrlKey){if(3==d||13==d)return b.call(a.currentTarget,a);f=95<f&&106>f?f-48:!a.shiftKey&&65<=f&&90>=f?f+32:e[f]||f}d=c(a,{type:"keypress",faux:!0,
charCode:f});b.call(a.currentTarget,d);if(k("ie"))try{a.keyCode=d.keyCode}catch(z){}}}),f=n(a,"keypress",function(a){var e=a.charCode;a=c(a,{charCode:32<=e?e:0,faux:!0});return b.call(this,a)});return{remove:function(){d.remove();f.remove()}}}:k("opera")?function(a,b){return n(a,"keypress",function(a){var e=a.which;3==e&&(e=99);e=32>e&&!a.shiftKey?0:e;a.ctrlKey&&!a.shiftKey&&65<=e&&90>=e&&(e+=32);return b.call(this,c(a,{charCode:e}))})}:function(b,c){return n(b,"keypress",function(b){a(b);return c.call(this,
b)})};var x={_keypress:q,connect:function(a,b,c,e,d){var f=arguments,g=[],k=0;g.push("string"==typeof f[0]?null:f[k++],f[k++]);var l=f[k+1];g.push("string"==typeof l||"function"==typeof l?f[k++]:null,f[k++]);for(l=f.length;k<l;k++)g.push(f[k]);return h.apply(this,g)},disconnect:function(a){a&&a.remove()},subscribe:function(a,b,c){return f.subscribe(a,l.hitch(b,c))},publish:function(a,b){return f.publish.apply(f,[a].concat(b))},connectPublisher:function(a,b,c){var e=function(){x.publish(a,arguments)};
return c?x.connect(b,c,e):x.connect(b,e)},isCopyKey:function(a){return a[r]}};x.unsubscribe=x.disconnect;l.mixin(b,x);return x})},"dojo/topic":function(){define(["./Evented"],function(b){var n=new b;return{publish:function(b,p){return n.emit.apply(n,arguments)},subscribe:function(b,p){return n.on.apply(n,arguments)}}})},"dojo/_base/event":function(){define(["./kernel","../on","../has","../dom-geometry"],function(b,n,f,p){if(n._fixEvent){var m=n._fixEvent;n._fixEvent=function(b,d){(b=m(b,d))&&p.normalizeEvent(b);
return b}}var d={fix:function(b,d){return n._fixEvent?n._fixEvent(b,d):b},stop:function(b){f("dom-addeventlistener")||b&&b.preventDefault?(b.preventDefault(),b.stopPropagation()):(b=b||window.event,b.cancelBubble=!0,n._preventDefault.call(b))}};b.fixEvent=d.fix;b.stopEvent=d.stop;return d})},"dojo/dom-geometry":function(){define(["./sniff","./_base/window","./dom","./dom-style"],function(b,n,f,p){function m(a,b,d,c,f,h){h=h||"px";a=a.style;isNaN(b)||(a.left=b+h);isNaN(d)||(a.top=d+h);0<=c&&(a.width=
c+h);0<=f&&(a.height=f+h)}function d(a){return"button"==a.tagName.toLowerCase()||"input"==a.tagName.toLowerCase()&&"button"==(a.getAttribute("type")||"").toLowerCase()}function k(a){return"border-box"==l.boxModel||"table"==a.tagName.toLowerCase()||d(a)}var l={boxModel:"content-box"};b("ie")&&(l.boxModel="BackCompat"==document.compatMode?"border-box":"content-box");l.getPadExtents=function(a,b){a=f.byId(a);var e=b||p.getComputedStyle(a),c=p.toPixelValue;b=c(a,e.paddingLeft);var d=c(a,e.paddingTop),
h=c(a,e.paddingRight);a=c(a,e.paddingBottom);return{l:b,t:d,r:h,b:a,w:b+h,h:d+a}};l.getBorderExtents=function(a,b){a=f.byId(a);var e=p.toPixelValue,c=b||p.getComputedStyle(a);b="none"!=c.borderLeftStyle?e(a,c.borderLeftWidth):0;var d="none"!=c.borderTopStyle?e(a,c.borderTopWidth):0,h="none"!=c.borderRightStyle?e(a,c.borderRightWidth):0;a="none"!=c.borderBottomStyle?e(a,c.borderBottomWidth):0;return{l:b,t:d,r:h,b:a,w:b+h,h:d+a}};l.getPadBorderExtents=function(a,b){a=f.byId(a);var e=b||p.getComputedStyle(a);
b=l.getPadExtents(a,e);a=l.getBorderExtents(a,e);return{l:b.l+a.l,t:b.t+a.t,r:b.r+a.r,b:b.b+a.b,w:b.w+a.w,h:b.h+a.h}};l.getMarginExtents=function(a,b){a=f.byId(a);var e=b||p.getComputedStyle(a),c=p.toPixelValue;b=c(a,e.marginLeft);var d=c(a,e.marginTop),h=c(a,e.marginRight);a=c(a,e.marginBottom);return{l:b,t:d,r:h,b:a,w:b+h,h:d+a}};l.getMarginBox=function(a,e){a=f.byId(a);e=e||p.getComputedStyle(a);e=l.getMarginExtents(a,e);var d=a.offsetLeft-e.l,c=a.offsetTop-e.t,h=a.parentNode,k=p.toPixelValue;
8==b("ie")&&!b("quirks")&&h&&(h=p.getComputedStyle(h),d-="none"!=h.borderLeftStyle?k(a,h.borderLeftWidth):0,c-="none"!=h.borderTopStyle?k(a,h.borderTopWidth):0);return{l:d,t:c,w:a.offsetWidth+e.w,h:a.offsetHeight+e.h}};l.getContentBox=function(a,e){a=f.byId(a);var d=e||p.getComputedStyle(a);e=a.clientWidth;var c,h=l.getPadExtents(a,d);c=l.getBorderExtents(a,d);var d=a.offsetLeft+h.l+c.l,k=a.offsetTop+h.t+c.t;e?c=a.clientHeight:(e=a.offsetWidth-c.w,c=a.offsetHeight-c.h);if(8==b("ie")&&!b("quirks")){var g=
a.parentNode,m=p.toPixelValue;g&&(g=p.getComputedStyle(g),d-="none"!=g.borderLeftStyle?m(a,g.borderLeftWidth):0,k-="none"!=g.borderTopStyle?m(a,g.borderTopWidth):0)}return{l:d,t:k,w:e-h.w,h:c-h.h}};l.setContentSize=function(a,b,d){a=f.byId(a);var c=b.w;b=b.h;k(a)&&(d=l.getPadBorderExtents(a,d),0<=c&&(c+=d.w),0<=b&&(b+=d.h));m(a,NaN,NaN,c,b)};var h={l:0,t:0,w:0,h:0};l.setMarginBox=function(a,e,n){a=f.byId(a);var c=n||p.getComputedStyle(a);n=e.w;var q=e.h,r=k(a)?h:l.getPadBorderExtents(a,c),c=l.getMarginExtents(a,
c);if(b("webkit")&&d(a)){var g=a.style;0<=n&&!g.width&&(g.width="4px");0<=q&&!g.height&&(g.height="4px")}0<=n&&(n=Math.max(n-r.w-c.w,0));0<=q&&(q=Math.max(q-r.h-c.h,0));m(a,e.l,e.t,n,q)};l.isBodyLtr=function(a){a=a||n.doc;return"ltr"==(n.body(a).dir||a.documentElement.dir||"ltr").toLowerCase()};l.docScroll=function(a){a=a||n.doc;var e=n.doc.parentWindow||n.doc.defaultView;return"pageXOffset"in e?{x:e.pageXOffset,y:e.pageYOffset}:(e=b("quirks")?n.body(a):a.documentElement)&&{x:l.fixIeBiDiScrollLeft(e.scrollLeft||
0,a),y:e.scrollTop||0}};l.getIeDocumentElementOffset=function(a){return{x:0,y:0}};l.fixIeBiDiScrollLeft=function(a,e){e=e||n.doc;var d=b("ie");if(d&&!l.isBodyLtr(e)){var c=b("quirks");e=c?n.body(e):e.documentElement;var f=n.global;6==d&&!c&&f.frameElement&&e.scrollHeight>e.clientHeight&&(a+=e.clientLeft);return 8>d||c?a+e.clientWidth-e.scrollWidth:-a}return a};l.position=function(a,e){a=f.byId(a);var d=n.body(a.ownerDocument),c=a.getBoundingClientRect(),c={x:c.left,y:c.top,w:c.right-c.left,h:c.bottom-
c.top};9>b("ie")&&(c.x-=b("quirks")?d.clientLeft+d.offsetLeft:0,c.y-=b("quirks")?d.clientTop+d.offsetTop:0);e&&(a=l.docScroll(a.ownerDocument),c.x+=a.x,c.y+=a.y);return c};l.getMarginSize=function(a,b){a=f.byId(a);b=l.getMarginExtents(a,b||p.getComputedStyle(a));a=a.getBoundingClientRect();return{w:a.right-a.left+b.w,h:a.bottom-a.top+b.h}};l.normalizeEvent=function(a){"layerX"in a||(a.layerX=a.offsetX,a.layerY=a.offsetY);if(!("pageX"in a)){var d=a.target,d=d&&d.ownerDocument||document,f=b("quirks")?
d.body:d.documentElement;a.pageX=a.clientX+l.fixIeBiDiScrollLeft(f.scrollLeft||0,d);a.pageY=a.clientY+(f.scrollTop||0)}};return l})},"dojo/mouse":function(){define(["./_base/kernel","./on","./has","./dom","./_base/window"],function(b,n,f,p,m){function d(b,f){var h=function(a,d){return n(a,b,function(b){if(f)return f(b,d);if(!p.isDescendant(b.relatedTarget,a))return d.call(this,b)})};h.bubble=function(a){return d(b,function(b,d){var c=a(b.target),e=b.relatedTarget;if(c&&c!=(e&&1==e.nodeType&&a(e)))return d.call(c,
b)})};return h}f.add("dom-quirks",m.doc&&"BackCompat"==m.doc.compatMode);f.add("events-mouseenter",m.doc&&"onmouseenter"in m.doc.createElement("div"));f.add("events-mousewheel",m.doc&&"onmousewheel"in m.doc);m=f("dom-quirks")&&f("ie")||!f("dom-addeventlistener")?{LEFT:1,MIDDLE:4,RIGHT:2,isButton:function(b,d){return b.button&d},isLeft:function(b){return b.button&1},isMiddle:function(b){return b.button&4},isRight:function(b){return b.button&2}}:{LEFT:0,MIDDLE:1,RIGHT:2,isButton:function(b,d){return b.button==
d},isLeft:function(b){return 0==b.button},isMiddle:function(b){return 1==b.button},isRight:function(b){return 2==b.button}};b.mouseButtons=m;b=f("events-mousewheel")?"mousewheel":function(b,d){return n(b,"DOMMouseScroll",function(b){b.wheelDelta=-b.detail;d.call(this,b)})};return{_eventHandler:d,enter:d("mouseover"),leave:d("mouseout"),wheel:b,isLeft:m.isLeft,isMiddle:m.isMiddle,isRight:m.isRight}})},"dojo/keys":function(){define(["./_base/kernel","./sniff"],function(b,n){return b.keys={BACKSPACE:8,
TAB:9,CLEAR:12,ENTER:13,SHIFT:16,CTRL:17,ALT:18,META:n("webkit")?91:224,PAUSE:19,CAPS_LOCK:20,ESCAPE:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT_ARROW:37,UP_ARROW:38,RIGHT_ARROW:39,DOWN_ARROW:40,INSERT:45,DELETE:46,HELP:47,LEFT_WINDOW:91,RIGHT_WINDOW:92,SELECT:93,NUMPAD_0:96,NUMPAD_1:97,NUMPAD_2:98,NUMPAD_3:99,NUMPAD_4:100,NUMPAD_5:101,NUMPAD_6:102,NUMPAD_7:103,NUMPAD_8:104,NUMPAD_9:105,NUMPAD_MULTIPLY:106,NUMPAD_PLUS:107,NUMPAD_ENTER:108,NUMPAD_MINUS:109,NUMPAD_PERIOD:110,NUMPAD_DIVIDE:111,
F1:112,F2:113,F3:114,F4:115,F5:116,F6:117,F7:118,F8:119,F9:120,F10:121,F11:122,F12:123,F13:124,F14:125,F15:126,NUM_LOCK:144,SCROLL_LOCK:145,UP_DPAD:175,DOWN_DPAD:176,LEFT_DPAD:177,RIGHT_DPAD:178,copyKey:n("mac")&&!n("air")?n("safari")?91:224:17}})},"dojo/main":function(){define("./_base/kernel ./has require ./sniff ./_base/lang ./_base/array ./_base/config ./ready ./_base/declare ./_base/connect ./_base/Deferred ./_base/json ./_base/Color ./has!dojo-firebug?./_firebug/firebug ./_base/browser ./_base/loader".split(" "),
function(b,n,f,p,m,d,k,l){k.isDebug&&f(["./_firebug/firebug"]);var h=k.require;h&&(h=d.map(m.isArray(h)?h:[h],function(a){return a.replace(/\./g,"/")}),b.isAsync?f(h):l(1,function(){f(h)}));return b})},"dojo/ready":function(){define(["./_base/kernel","./has","require","./domReady","./_base/lang"],function(b,n,f,p,m){var d=0,k=[],l=0;n=function(){d=1;b._postLoad=b.config.afterOnLoad=!0;h()};var h=function(){if(!l){for(l=1;d&&(!p||0==p._Q.length)&&(f.idle?f.idle():1)&&k.length;){var a=k.shift();try{a()}catch(c){if(c.info=
c.message,f.signal)f.signal("error",c);else throw c;}}l=0}};f.on&&f.on("idle",h);p&&(p._onQEmpty=h);var a=b.ready=b.addOnLoad=function(a,c,d){var e=m._toArray(arguments);"number"!=typeof a?(d=c,c=a,a=1E3):e.shift();d=d?m.hitch.apply(b,e):function(){c()};d.priority=a;for(e=0;e<k.length&&a>=k[e].priority;e++);k.splice(e,0,d);h()},e=b.config.addOnLoad;if(e)a[m.isArray(e)?"apply":"call"](b,e);b.config.parseOnLoad&&!b.isAsync&&a(99,function(){b.parser||(b.deprecated("Add explicit require(['dojo/parser']);",
"","2.0"),f(["dojo/parser"]))});p?p(n):n();return a})},"dojo/domReady":function(){define(["./global","./has"],function(b,n){function f(a){h.push(a);l&&p()}function p(){if(!a){for(a=!0;h.length;)try{h.shift()(m)}catch(g){console.error(g,"in domReady callback",g.stack)}a=!1;f._onQEmpty()}}var m=document,d={loaded:1,complete:1},k="string"!=typeof m.readyState,l=!!d[m.readyState],h=[],a;f.load=function(a,b,c){f(c)};f._Q=h;f._onQEmpty=function(){};k&&(m.readyState="loading");if(!l){var e=[],r=function(a){a=
a||b.event;l||"readystatechange"==a.type&&!d[m.readyState]||(k&&(m.readyState="complete"),l=1,p())},c=function(a,b){a.addEventListener(b,r,!1);h.push(function(){a.removeEventListener(b,r,!1)})};if(!n("dom-addeventlistener")){var c=function(a,b){b="on"+b;a.attachEvent(b,r);h.push(function(){a.detachEvent(b,r)})},q=m.createElement("div");try{q.doScroll&&null===b.frameElement&&e.push(function(){try{return q.doScroll("left"),1}catch(g){}})}catch(g){}}c(m,"DOMContentLoaded");c(b,"load");"onreadystatechange"in
m?c(m,"readystatechange"):k||e.push(function(){return d[m.readyState]});if(e.length){var x=function(){if(!l){for(var a=e.length;a--;)if(e[a]()){r("poller");return}setTimeout(x,30)}};x()}}return f})},"dojo/_base/declare":function(){define(["./kernel","../has","./lang"],function(b,n,f){function p(a,b){throw Error("declare"+(b?" "+b:"")+": "+a);}function m(a,b){for(var c=[],d=[{cls:0,refs:[]}],e={},f=1,h=a.length,g=0,k,l,m,n,q;g<h;++g){(k=a[g])?"[object Function]"!=C.call(k)&&p("mixin #"+g+" is not a callable constructor.",
b):p("mixin #"+g+" is unknown. Did you use dojo.require to pull it in?",b);l=k._meta?k._meta.bases:[k];m=0;for(k=l.length-1;0<=k;--k)n=l[k].prototype,n.hasOwnProperty("declaredClass")||(n.declaredClass="uniqName_"+w++),n=n.declaredClass,e.hasOwnProperty(n)||(e[n]={count:0,refs:[],cls:l[k]},++f),n=e[n],m&&m!==n&&(n.refs.push(m),++m.count),m=n;++m.count;d[0].refs.push(m)}for(;d.length;){m=d.pop();c.push(m.cls);for(--f;q=m.refs,1==q.length;){m=q[0];if(!m||--m.count){m=0;break}c.push(m.cls);--f}if(m)for(g=
0,h=q.length;g<h;++g)m=q[g],--m.count||d.push(m)}f&&p("can't build consistent linearization",b);k=a[0];c[0]=k?k._meta&&k===c[c.length-k._meta.bases.length]?k._meta.bases.length:1:0;return c}function d(a,b,c,d){var e,f,h,g,k,m,l=this._inherited=this._inherited||{};"string"===typeof a&&(e=a,a=b,b=c,c=d);if("function"===typeof a)h=a,a=b,b=c;else try{h=a.callee}catch(R){if(R instanceof TypeError)p("strict mode inherited() requires the caller function to be passed before arguments",this.declaredClass);
else throw R;}(e=e||h.nom)||p("can't deduce a name to call inherited()",this.declaredClass);c=d=0;g=this.constructor._meta;d=g.bases;m=l.p;if("constructor"!=e){if(l.c!==h&&(m=0,k=d[0],g=k._meta,g.hidden[e]!==h)){(f=g.chains)&&"string"==typeof f[e]&&p("calling chained method with inherited: "+e,this.declaredClass);do if(g=k._meta,f=k.prototype,g&&(f[e]===h&&f.hasOwnProperty(e)||g.hidden[e]===h))break;while(k=d[++m]);m=k?m:-1}if(k=d[++m])if(f=k.prototype,k._meta&&f.hasOwnProperty(e))c=f[e];else{h=B[e];
do if(f=k.prototype,(c=f[e])&&(k._meta?f.hasOwnProperty(e):c!==h))break;while(k=d[++m])}c=k&&c||B[e]}else{if(l.c!==h&&(m=0,(g=d[0]._meta)&&g.ctor!==h)){for((f=g.chains)&&"manual"===f.constructor||p("calling chained constructor with inherited",this.declaredClass);(k=d[++m])&&(!(g=k._meta)||g.ctor!==h););m=k?m:-1}for(;(k=d[++m])&&!(c=(g=k._meta)?g.ctor:k););c=k&&c}l.c=c;l.p=m;if(c)return!0===b?c:c.apply(this,b||a)}function k(a,b,c){return"string"===typeof a?"function"===typeof b?this.__inherited(a,
b,c,!0):this.__inherited(a,b,!0):"function"===typeof a?this.__inherited(a,b,!0):this.__inherited(a,!0)}function l(a,b,c,d){var e=this.getInherited(a,b,c);if(e)return e.apply(this,d||c||b||a)}function h(a){for(var b=this.constructor._meta.bases,c=0,d=b.length;c<d;++c)if(b[c]===a)return!0;return this instanceof a}function a(a,b){for(var c in b)"constructor"!=c&&b.hasOwnProperty(c)&&(a[c]=b[c]);if(n("bug-for-in-skips-shadowed"))for(var d=f._extraNames,e=d.length;e;)c=d[--e],"constructor"!=c&&b.hasOwnProperty(c)&&
(a[c]=b[c])}function e(a){y.safeMixin(this.prototype,a);return this}function r(a,b){a instanceof Array||"function"===typeof a||(b=a,a=void 0);b=b||{};a=a||[];return y([this].concat(a),b)}function c(a,b){return function(){var c=arguments,d=c,e=c[0],f,h;h=a.length;var g;if(!(this instanceof c.callee))return u(c);if(b&&(e&&e.preamble||this.preamble))for(g=Array(a.length),g[0]=c,f=0;;){(e=c[0])&&(e=e.preamble)&&(c=e.apply(this,c)||c);e=a[f].prototype;(e=e.hasOwnProperty("preamble")&&e.preamble)&&(c=e.apply(this,
c)||c);if(++f==h)break;g[f]=c}for(f=h-1;0<=f;--f)e=a[f],(e=(h=e._meta)?h.ctor:e)&&e.apply(this,g?g[f]:c);(e=this.postscript)&&e.apply(this,d)}}function q(a,b){return function(){var c=arguments,d=c,e=c[0];if(!(this instanceof c.callee))return u(c);b&&(e&&(e=e.preamble)&&(d=e.apply(this,d)||d),(e=this.preamble)&&e.apply(this,d));a&&a.apply(this,c);(e=this.postscript)&&e.apply(this,c)}}function x(a){return function(){var b=arguments,c=0,d,e;if(!(this instanceof b.callee))return u(b);for(;d=a[c];++c)if(d=
(e=d._meta)?e.ctor:d){d.apply(this,b);break}(d=this.postscript)&&d.apply(this,b)}}function g(a,b,c){return function(){var d,e,f=0,h=1;c&&(f=b.length-1,h=-1);for(;d=b[f];f+=h)e=d._meta,(d=(e?e.hidden:d.prototype)[a])&&d.apply(this,arguments)}}function t(a){z.prototype=a.prototype;a=new z;z.prototype=null;return a}function u(a){var b=a.callee,c=t(b);b.apply(c,a);return c}function y(b,l,u){"string"!=typeof b&&(u=l,l=b,b="");u=u||{};var w,z,A,E,H,F,D,U=1,R=l;"[object Array]"==C.call(l)?(F=m(l,b),A=F[0],
U=F.length-A,l=F[U]):(F=[0],l?"[object Function]"==C.call(l)?(A=l._meta,F=F.concat(A?A.bases:l)):p("base class is not a callable constructor.",b):null!==l&&p("unknown base class. Did you use dojo.require to pull it in?",b));if(l)for(z=U-1;;--z){w=t(l);if(!z)break;A=F[z];(A._meta?a:v)(w,A.prototype);E=n("csp-restrictions")?function(){}:new Function;E.superclass=l;E.prototype=w;l=w.constructor=E}else w={};y.safeMixin(w,u);A=u.constructor;A!==B.constructor&&(A.nom="constructor",w.constructor=A);for(z=
U-1;z;--z)(A=F[z]._meta)&&A.chains&&(D=v(D||{},A.chains));w["-chains-"]&&(D=v(D||{},w["-chains-"]));l&&l.prototype&&l.prototype["-chains-"]&&(D=v(D||{},l.prototype["-chains-"]));A=!D||!D.hasOwnProperty("constructor");F[0]=E=D&&"manual"===D.constructor?x(F):1==F.length?q(u.constructor,A):c(F,A);E._meta={bases:F,hidden:u,chains:D,parents:R,ctor:u.constructor};E.superclass=l&&l.prototype;E.extend=e;E.createSubclass=r;E.prototype=w;w.constructor=E;w.getInherited=k;w.isInstanceOf=h;w.inherited=G;w.__inherited=
d;b&&(w.declaredClass=b,f.setObject(b,E));if(D)for(H in D)w[H]&&"string"==typeof D[H]&&"constructor"!=H&&(A=w[H]=g(H,F,"after"===D[H]),A.nom=H);return E}var v=f.mixin,B=Object.prototype,C=B.toString,z,w=0;z=n("csp-restrictions")?function(){}:new Function;var G=b.config.isDebug?l:d;b.safeMixin=y.safeMixin=function(a,b){var c,d;for(c in b)d=b[c],d===B[c]&&c in B||"constructor"==c||("[object Function]"==C.call(d)&&(d.nom=c),a[c]=d);if(n("bug-for-in-skips-shadowed")&&b)for(var e=f._extraNames,h=e.length;h;)c=
e[--h],d=b[c],d===B[c]&&c in B||"constructor"==c||("[object Function]"==C.call(d)&&(d.nom=c),a[c]=d);return a};return b.declare=y})},"dojo/_base/Color":function(){define(["./kernel","./lang","./array","./config"],function(b,n,f,p){var m=b.Color=function(b){b&&this.setColor(b)};m.named={black:[0,0,0],silver:[192,192,192],gray:[128,128,128],white:[255,255,255],maroon:[128,0,0],red:[255,0,0],purple:[128,0,128],fuchsia:[255,0,255],green:[0,128,0],lime:[0,255,0],olive:[128,128,0],yellow:[255,255,0],navy:[0,
0,128],blue:[0,0,255],teal:[0,128,128],aqua:[0,255,255],transparent:p.transparentColor||[0,0,0,0]};n.extend(m,{r:255,g:255,b:255,a:1,_set:function(b,f,l,h){this.r=b;this.g=f;this.b=l;this.a=h},setColor:function(b){n.isString(b)?m.fromString(b,this):n.isArray(b)?m.fromArray(b,this):(this._set(b.r,b.g,b.b,b.a),b instanceof m||this.sanitize());return this},sanitize:function(){return this},toRgb:function(){return[this.r,this.g,this.b]},toRgba:function(){return[this.r,this.g,this.b,this.a]},toHex:function(){return"#"+
f.map(["r","g","b"],function(b){b=this[b].toString(16);return 2>b.length?"0"+b:b},this).join("")},toCss:function(b){var d=this.r+", "+this.g+", "+this.b;return(b?"rgba("+d+", "+this.a:"rgb("+d)+")"},toString:function(){return this.toCss(!0)}});m.blendColors=b.blendColors=function(b,f,l,h){h=h||new m;h.r=Math.round(b.r+(f.r-b.r)*l);h.g=Math.round(b.g+(f.g-b.g)*l);h.b=Math.round(b.b+(f.b-b.b)*l);h.a=b.a+(f.a-b.a)*l;return h.sanitize()};m.fromRgb=b.colorFromRgb=function(b,f){return(b=b.toLowerCase().match(/^rgba?\(([\s\.,0-9]+)\)/))&&
m.fromArray(b[1].split(/\s*,\s*/),f)};m.fromHex=b.colorFromHex=function(b,k){var d=k||new m,h=4==b.length?4:8,a=(1<<h)-1;b=Number("0x"+b.substr(1));if(isNaN(b))return null;f.forEach(["b","g","r"],function(e){var f=b&a;b>>=h;d[e]=4==h?17*f:f});d.a=1;return d};m.fromArray=b.colorFromArray=function(b,f){f=f||new m;f._set(Number(b[0]),Number(b[1]),Number(b[2]),Number(b[3]));isNaN(f.a)&&(f.a=1);return f.sanitize()};m.fromString=b.colorFromString=function(b,f){var d=m.named[b];return d&&m.fromArray(d,f)||
m.fromRgb(b,f)||m.fromHex(b,f)};return m})},"dojo/_base/browser":function(){require.has&&require.has.add("config-selectorEngine","acme");define("../ready ./kernel ./connect ./unload ./window ./event ./html ./NodeList ../query ./xhr ./fx".split(" "),function(b){return b})},"dojo/_base/unload":function(){define(["./kernel","./lang","../on"],function(b,n,f){var p=window,m={addOnWindowUnload:function(d,k){b.windowUnloaded||f(p,"unload",b.windowUnloaded=function(){});f(p,"unload",n.hitch(d,k))},addOnUnload:function(b,
k){f(p,"beforeunload",n.hitch(b,k))}};b.addOnWindowUnload=m.addOnWindowUnload;b.addOnUnload=m.addOnUnload;return m})},"dojo/_base/html":function(){define("./kernel ../dom ../dom-style ../dom-attr ../dom-prop ../dom-class ../dom-construct ../dom-geometry".split(" "),function(b,n,f,p,m,d,k,l){b.byId=n.byId;b.isDescendant=n.isDescendant;b.setSelectable=n.setSelectable;b.getAttr=p.get;b.setAttr=p.set;b.hasAttr=p.has;b.removeAttr=p.remove;b.getNodeProp=p.getNodeProp;b.attr=function(b,a,e){return 2==arguments.length?
p["string"==typeof a?"get":"set"](b,a):p.set(b,a,e)};b.hasClass=d.contains;b.addClass=d.add;b.removeClass=d.remove;b.toggleClass=d.toggle;b.replaceClass=d.replace;b._toDom=b.toDom=k.toDom;b.place=k.place;b.create=k.create;b.empty=function(b){k.empty(b)};b._destroyElement=b.destroy=function(b){k.destroy(b)};b._getPadExtents=b.getPadExtents=l.getPadExtents;b._getBorderExtents=b.getBorderExtents=l.getBorderExtents;b._getPadBorderExtents=b.getPadBorderExtents=l.getPadBorderExtents;b._getMarginExtents=
b.getMarginExtents=l.getMarginExtents;b._getMarginSize=b.getMarginSize=l.getMarginSize;b._getMarginBox=b.getMarginBox=l.getMarginBox;b.setMarginBox=l.setMarginBox;b._getContentBox=b.getContentBox=l.getContentBox;b.setContentSize=l.setContentSize;b._isBodyLtr=b.isBodyLtr=l.isBodyLtr;b._docScroll=b.docScroll=l.docScroll;b._getIeDocumentElementOffset=b.getIeDocumentElementOffset=l.getIeDocumentElementOffset;b._fixIeBiDiScrollLeft=b.fixIeBiDiScrollLeft=l.fixIeBiDiScrollLeft;b.position=l.position;b.marginBox=
function(b,a){return a?l.setMarginBox(b,a):l.getMarginBox(b)};b.contentBox=function(b,a){return a?l.setContentSize(b,a):l.getContentBox(b)};b.coords=function(d,a){b.deprecated("dojo.coords()","Use dojo.position() or dojo.marginBox().");d=n.byId(d);var e=f.getComputedStyle(d),e=l.getMarginBox(d,e);d=l.position(d,a);e.x=d.x;e.y=d.y;return e};b.getProp=m.get;b.setProp=m.set;b.prop=function(b,a,e){return 2==arguments.length?m["string"==typeof a?"get":"set"](b,a):m.set(b,a,e)};b.getStyle=f.get;b.setStyle=
f.set;b.getComputedStyle=f.getComputedStyle;b.__toPixelValue=b.toPixelValue=f.toPixelValue;b.style=function(b,a,e){switch(arguments.length){case 1:return f.get(b);case 2:return f["string"==typeof a?"get":"set"](b,a)}return f.set(b,a,e)};return b})},"dojo/dom-class":function(){define(["./_base/lang","./_base/array","./dom"],function(b,n,f){function p(b){if("string"==typeof b||b instanceof String){if(b&&!d.test(b))return k[0]=b,k;b=b.split(d);b.length&&!b[0]&&b.shift();b.length&&!b[b.length-1]&&b.pop();
return b}return b?n.filter(b,function(a){return a}):[]}var m,d=/\s+/,k=[""],l={};return m={contains:function(b,a){return 0<=(" "+f.byId(b).className+" ").indexOf(" "+a+" ")},add:function(b,a){b=f.byId(b);a=p(a);var e=b.className,d,e=e?" "+e+" ":" ";d=e.length;for(var c=0,h=a.length,k;c<h;++c)(k=a[c])&&0>e.indexOf(" "+k+" ")&&(e+=k+" ");d<e.length&&(b.className=e.substr(1,e.length-2))},remove:function(d,a){d=f.byId(d);var e;if(void 0!==a){a=p(a);e=" "+d.className+" ";for(var h=0,c=a.length;h<c;++h)e=
e.replace(" "+a[h]+" "," ");e=b.trim(e)}else e="";d.className!=e&&(d.className=e)},replace:function(b,a,e){b=f.byId(b);l.className=b.className;m.remove(l,e);m.add(l,a);b.className!==l.className&&(b.className=l.className)},toggle:function(b,a,e){b=f.byId(b);if(void 0===e){a=p(a);for(var d=0,c=a.length,h;d<c;++d)h=a[d],m[m.contains(b,h)?"remove":"add"](b,h)}else m[e?"add":"remove"](b,a);return e}}})},"dojo/_base/NodeList":function(){define(["./kernel","../query","./array","./html","../NodeList-dom"],
function(b,n,f){n=n.NodeList;var p=n.prototype;p.connect=n._adaptAsForEach(function(){return b.connect.apply(this,arguments)});p.coords=n._adaptAsMap(b.coords);n.events="blur focus change click error keydown keypress keyup load mousedown mouseenter mouseleave mousemove mouseout mouseover mouseup submit".split(" ");f.forEach(n.events,function(b){var d="on"+b;p[d]=function(b,f){return this.connect(d,b,f)}});return b.NodeList=n})},"dojo/query":function(){define("./_base/kernel ./has ./dom ./on ./_base/array ./_base/lang ./selector/_loader ./selector/_loader!default".split(" "),
function(b,n,f,p,m,d,k,l){function h(a,b){var c=function(c,d){if("string"==typeof d&&(d=f.byId(d),!d))return new b([]);c="string"==typeof c?a(c,d):c?c.end&&c.on?c:[c]:[];return c.end&&c.on?c:new b(c)};c.matches=a.match||function(a,b,d){return 0<c.filter([a],b,d).length};c.filter=a.filter||function(a,b,d){return c(b,d).filter(function(b){return-1<m.indexOf(a,b)})};if("function"!=typeof a){var d=a.search;a=function(a,b){return d(b||document,a)}}return c}n.add("array-extensible",function(){return 1==
d.delegate([],{length:1}).length&&!n("bug-for-in-skips-shadowed")});var a=Array.prototype,e=a.slice,r=a.concat,c=m.forEach,q=function(a,c,d){c=[0].concat(e.call(c,0));d=d||b.global;return function(b){c[0]=b;return a.apply(d,c)}},x=function(a){var b=this instanceof g&&n("array-extensible");"number"==typeof a&&(a=Array(a));var c=a&&"length"in a?a:arguments;if(b||!c.sort){for(var e=b?this:[],f=e.length=c.length,h=0;h<f;h++)e[h]=c[h];if(b)return e;c=e}d._mixin(c,t);c._NodeListCtor=function(a){return g(a)};
return c},g=x,t=g.prototype=n("array-extensible")?[]:{};g._wrap=t._wrap=function(a,b,c){a=new (c||this._NodeListCtor||g)(a);return b?a._stash(b):a};g._adaptAsMap=function(a,b){return function(){return this.map(q(a,arguments,b))}};g._adaptAsForEach=function(a,b){return function(){this.forEach(q(a,arguments,b));return this}};g._adaptAsFilter=function(a,b){return function(){return this.filter(q(a,arguments,b))}};g._adaptWithCondition=function(a,c,d){return function(){var e=arguments,f=q(a,e,d);if(c.call(d||
b.global,e))return this.map(f);this.forEach(f);return this}};c(["slice","splice"],function(b){var c=a[b];t[b]=function(){return this._wrap(c.apply(this,arguments),"slice"==b?this:null)}});c(["indexOf","lastIndexOf","every","some"],function(a){var c=m[a];t[a]=function(){return c.apply(b,[this].concat(e.call(arguments,0)))}});d.extend(x,{constructor:g,_NodeListCtor:g,toString:function(){return this.join(",")},_stash:function(a){this._parent=a;return this},on:function(a,b){var c=this.map(function(c){return p(c,
a,b)});c.remove=function(){for(var a=0;a<c.length;a++)c[a].remove()};return c},end:function(){return this._parent?this._parent:new this._NodeListCtor(0)},concat:function(a){var b=e.call(this,0),c=m.map(arguments,function(a){return e.call(a,0)});return this._wrap(r.apply(b,c),this)},map:function(a,b){return this._wrap(m.map(this,a,b),this)},forEach:function(a,b){c(this,a,b);return this},filter:function(a){var b=arguments,c=this,d=0;if("string"==typeof a){c=u._filterResult(this,b[0]);if(1==b.length)return c._stash(this);
d=1}return this._wrap(m.filter(c,b[d],b[d+1]),this)},instantiate:function(a,b){var c=d.isFunction(a)?a:d.getObject(a);b=b||{};return this.forEach(function(a){new c(b,a)})},at:function(){var a=new this._NodeListCtor(0);c(arguments,function(b){0>b&&(b=this.length+b);this[b]&&a.push(this[b])},this);return a._stash(this)}});var u=h(l,x);b.query=h(l,function(a){return x(a)});u.load=function(a,b,c){k.load(a,b,function(a){c(h(a,x))})};b._filterQueryResult=u._filterResult=function(a,b,c){return new x(u.filter(a,
b,c))};b.NodeList=u.NodeList=x;return u})},"dojo/selector/acme":function(){define(["../dom","../sniff","../_base/array","../_base/lang","../_base/window"],function(b,n,f,p,m){var d=p.trim,k=f.forEach,l="BackCompat"==m.doc.compatMode,h=!1,a=function(){return!0},e=function(a){a=0<="\x3e~+".indexOf(a.slice(-1))?a+" * ":a+" ";for(var b=function(b,c){return d(a.slice(b,c))},c=[],e=-1,f=-1,g=-1,k=-1,l=-1,m=-1,n=-1,p,q="",I="",r,t=0,v=a.length,y=null,u=null,w=function(){0<=m&&(y.id=b(m,t).replace(/\\/g,
""),m=-1);if(0<=n){var a=n==t?null:b(n,t);y[0>"\x3e~+".indexOf(a)?"tag":"oper"]=a;n=-1}0<=l&&(y.classes.push(b(l+1,t).replace(/\\/g,"")),l=-1)};q=I,I=a.charAt(t),t<v;t++)"\\"!=q&&(y||(r=t,y={query:null,pseudos:[],attrs:[],classes:[],tag:null,oper:null,id:null,getTag:function(){return h?this.otag:this.tag}},n=t),p?I==p&&(p=null):"'"==I||'"'==I?p=I:0<=e?"]"==I?(u.attr?u.matchFor=b(g||e+1,t):u.attr=b(e+1,t),!(e=u.matchFor)||'"'!=e.charAt(0)&&"'"!=e.charAt(0)||(u.matchFor=e.slice(1,-1)),u.matchFor&&(u.matchFor=
u.matchFor.replace(/\\/g,"")),y.attrs.push(u),u=null,e=g=-1):"\x3d"==I&&(g=0<="|~^$*".indexOf(q)?q:"",u.type=g+I,u.attr=b(e+1,t-g.length),g=t+1):0<=f?")"==I&&(0<=k&&(u.value=b(f+1,t)),k=f=-1):"#"==I?(w(),m=t+1):"."==I?(w(),l=t):":"==I?(w(),k=t):"["==I?(w(),e=t,u={}):"("==I?(0<=k&&(u={name:b(k+1,t),value:null},y.pseudos.push(u)),f=t):" "==I&&q!=I&&(w(),0<=k&&y.pseudos.push({name:b(k+1,t)}),y.loops=y.pseudos.length||y.attrs.length||y.classes.length,y.oquery=y.query=b(r,t),y.otag=y.tag=y.oper?null:y.tag||
"*",y.tag&&(y.tag=y.tag.toUpperCase()),c.length&&c[c.length-1].oper&&(y.infixOper=c.pop(),y.query=y.infixOper.query+" "+y.query),c.push(y),y=null));return c},r=function(a,b){return a?b?function(){return a.apply(window,arguments)&&b.apply(window,arguments)}:a:b},c=function(a,b){b=b||[];a&&b.push(a);return b},q=function(a){return 1==a.nodeType},x=function(a,b){return a?"class"==b?a.className||"":"for"==b?a.htmlFor||"":"style"==b?a.style.cssText||"":(h?a.getAttribute(b):a.getAttribute(b,2))||"":""},
g={"*\x3d":function(a,b){return function(c){return 0<=x(c,a).indexOf(b)}},"^\x3d":function(a,b){return function(c){return 0==x(c,a).indexOf(b)}},"$\x3d":function(a,b){return function(c){c=" "+x(c,a);var d=c.lastIndexOf(b);return-1<d&&d==c.length-b.length}},"~\x3d":function(a,b){var c=" "+b+" ";return function(b){return 0<=(" "+x(b,a)+" ").indexOf(c)}},"|\x3d":function(a,b){var c=b+"-";return function(d){d=x(d,a);return d==b||0==d.indexOf(c)}},"\x3d":function(a,b){return function(c){return x(c,a)==
b}}};p=m.doc.documentElement;var t=!(p.nextElementSibling||"nextElementSibling"in p),u=t?"nextSibling":"nextElementSibling",y=t?"previousSibling":"previousElementSibling",v=t?q:a,B=function(a){for(;a=a[y];)if(v(a))return!1;return!0},C=function(a){for(;a=a[u];)if(v(a))return!1;return!0},z=function(a){var b=a.parentNode,b=7!=b.nodeType?b:b.nextSibling,c=0,d=b.children||b.childNodes,e=a._i||a.getAttribute("_i")||-1,f=b._l||("undefined"!==typeof b.getAttribute?b.getAttribute("_l"):-1);if(!d)return-1;
d=d.length;if(f==d&&0<=e&&0<=f)return e;n("ie")&&"undefined"!==typeof b.setAttribute?b.setAttribute("_l",d):b._l=d;e=-1;for(b=b.firstElementChild||b.firstChild;b;b=b[u])v(b)&&(n("ie")?b.setAttribute("_i",++c):b._i=++c,a===b&&(e=c));return e},w=function(a){return!(z(a)%2)},G=function(a){return z(a)%2},E={checked:function(a,b){return function(a){return!("checked"in a?!a.checked:!a.selected)}},disabled:function(a,b){return function(a){return a.disabled}},enabled:function(a,b){return function(a){return!a.disabled}},
"first-child":function(){return B},"last-child":function(){return C},"only-child":function(a,b){return function(a){return B(a)&&C(a)}},empty:function(a,b){return function(a){var b=a.childNodes;for(a=a.childNodes.length-1;0<=a;a--){var c=b[a].nodeType;if(1===c||3==c)return!1}return!0}},contains:function(a,b){a=b.charAt(0);if('"'==a||"'"==a)b=b.slice(1,-1);return function(a){return 0<=a.innerHTML.indexOf(b)}},not:function(a,b){a=e(b)[0];b={el:1};"*"!=a.tag&&(b.tag=1);a.classes.length||(b.classes=1);
var c=A(a,b);return function(a){return!c(a)}},"nth-child":function(a,b){a=parseInt;if("odd"==b)return G;if("even"==b)return w;if(-1!=b.indexOf("n")){b=b.split("n",2);var c=b[0]?"-"==b[0]?-1:a(b[0]):1,d=b[1]?a(b[1]):0,e=0,f=-1;0<c?0>d?d=d%c&&c+d%c:0<d&&(d>=c&&(e=d-d%c),d%=c):0>c&&(c*=-1,0<d&&(f=d,d%=c));if(0<c)return function(a){a=z(a);return a>=e&&(0>f||a<=f)&&a%c==d};b=d}var g=a(b);return function(a){return z(a)==g}}},H=9>n("ie")||9==n("ie")&&n("quirks")?function(a){var b=a.toLowerCase();"class"==
b&&(a="className");return function(c){return h?c.getAttribute(a):c[a]||c[b]}}:function(a){return function(b){return b&&b.getAttribute&&b.hasAttribute(a)}},A=function(b,c){if(!b)return a;c=c||{};var d=null;"el"in c||(d=r(d,q));"tag"in c||"*"!=b.tag&&(d=r(d,function(a){return a&&(h?a.tagName:a.tagName.toUpperCase())==b.getTag()}));"classes"in c||k(b.classes,function(a,b,c){var e=new RegExp("(?:^|\\s)"+a+"(?:\\s|$)");d=r(d,function(a){return e.test(a.className)});d.count=b});"pseudos"in c||k(b.pseudos,
function(a){var b=a.name;E[b]&&(d=r(d,E[b](b,a.value)))});"attrs"in c||k(b.attrs,function(a){var b,c=a.attr;a.type&&g[a.type]?b=g[a.type](c,a.matchFor):c.length&&(b=H(c));b&&(d=r(d,b))});"id"in c||b.id&&(d=r(d,function(a){return!!a&&a.id==b.id}));d||"default"in c||(d=a);return d},M=function(a){return function(b,c,d){for(;b=b[u];)if(!t||q(b)){d&&!N(b,d)||!a(b)||c.push(b);break}return c}},P=function(a){return function(b,c,d){for(b=b[u];b;){if(v(b)){if(d&&!N(b,d))break;a(b)&&c.push(b)}b=b[u]}return c}},
ba=function(b,c){var d=function(a){var b=[];try{b=Array.prototype.slice.call(a)}catch(T){for(var c=0,d=a.length;c<d;c++)b.push(a[c])}return b};b=b||a;return function(a,e,g){var h=0,k=[],k=d(a.children||a.childNodes);for(c&&f.forEach(k,function(a){1===a.nodeType&&(k=k.concat(d(a.getElementsByTagName("*"))))});a=k[h++];)v(a)&&(!g||N(a,g))&&b(a,h)&&e.push(a);return e}},V=function(a,b){for(a=a.parentNode;a&&a!=b;)a=a.parentNode;return!!a},ca={},F=function(d){var e=ca[d.query];if(e)return e;var g=d.infixOper,
g=g?g.oper:"",h=A(d,{el:1}),k="*"==d.tag,n=m.doc.getElementsByClassName;if(g)n={el:1},k&&(n.tag=1),h=A(d,n),"+"==g?e=M(h):"~"==g?e=P(h):"\x3e"==g&&(e=ba(h));else if(d.id)h=!d.loops&&k?a:A(d,{el:1,id:1}),e=function(a,e){var g=b.byId(d.id,a.ownerDocument||a);a.ownerDocument&&!V(a,a.ownerDocument)&&f.some(11===a.nodeType?a.childNodes:[a],function(a){a=ba(function(a){return a.id===d.id},!0)(a,[]);if(a.length)return g=a[0],!1});if(g&&h(g)&&(9==a.nodeType||V(g,a)))return c(g,e)};else if(n&&/\{\s*\[native code\]\s*\}/.test(String(n))&&
d.classes.length&&!l)var h=A(d,{el:1,classes:1,id:1}),p=d.classes.join(" "),e=function(a,b,d){b=c(0,b);for(var e,f=0,g=a.getElementsByClassName(p);e=g[f++];)h(e,a)&&N(e,d)&&b.push(e);return b};else k||d.loops?(h=A(d,{el:1,tag:1,id:1}),e=function(a,b,e){b=c(0,b);for(var f,g=0,k=(f=d.getTag())?a.getElementsByTagName(f):[];f=k[g++];)h(f,a)&&N(f,e)&&b.push(f);return b}):e=function(a,b,e){b=c(0,b);for(var f=0,g=d.getTag(),g=g?a.getElementsByTagName(g):[];a=g[f++];)N(a,e)&&b.push(a);return b};return ca[d.query]=
e},D={},U={},R=function(a){var b=e(d(a));if(1==b.length){var f=F(b[0]);return function(a){if(a=f(a,[]))a.nozip=!0;return a}}return function(a){a=c(a);for(var d,e,f=b.length,g,h,k=0;k<f;k++){h=[];d=b[k];e=a.length-1;0<e&&(g={},h.nozip=!0);e=F(d);for(var l=0;d=a[l];l++)e(d,h,g);if(!h.length)break;a=h}return h}},Ga=n("ie")?"commentStrip":"nozip",la=!!m.doc.querySelectorAll,S=/\\[>~+]|n\+\d|([^ \\])?([>~+])([^ =])?/g,ta=function(a,b,c,d){return c?(b?b+" ":"")+c+(d?" "+d:""):a},da=/([^[]*)([^\]]*])?/g,
J=function(a,b,c){return b.replace(S,ta)+(c||"")},ea=function(a,b){a=a.replace(da,J);if(la){var c=U[a];if(c&&!b)return c}if(c=D[a])return c;var c=a.charAt(0),d=-1==a.indexOf(" ");0<=a.indexOf("#")&&d&&(b=!0);if(!la||b||-1!="\x3e~+".indexOf(c)||n("ie")&&-1!=a.indexOf(":")||l&&0<=a.indexOf(".")||-1!=a.indexOf(":contains")||-1!=a.indexOf(":checked")||-1!=a.indexOf("|\x3d")){var e=a.match(/([^\s,](?:"(?:\\.|[^"])+"|'(?:\\.|[^'])+'|[^,])*)/g);return D[a]=2>e.length?R(a):function(a){for(var b=0,c=[],d;d=
e[b++];)c=c.concat(R(d)(a));return c}}var f=0<="\x3e~+".indexOf(a.charAt(a.length-1))?a+" *":a;return U[a]=function(b){if(9==b.nodeType||d)try{var c=b.querySelectorAll(f);c[Ga]=!0;return c}catch(aa){}return ea(a,!0)(b)}},K=0,fa=n("ie")?function(a){return h?a.getAttribute("_uid")||a.setAttribute("_uid",++K)||K:a.uniqueID}:function(a){return a._uid||(a._uid=++K)},N=function(a,b){if(!b)return 1;a=fa(a);return b[a]?0:b[a]=1},W=function(a){if(a&&a.nozip)return a;if(!a||!a.length)return[];if(2>a.length)return[a[0]];
var b=[];K++;var c,d;if(n("ie")&&h){var e=K+"";for(c=0;c<a.length;c++)(d=a[c])&&d.getAttribute("_zipIdx")!=e&&(b.push(d),d.setAttribute("_zipIdx",e))}else if(n("ie")&&a.commentStrip)try{for(c=0;c<a.length;c++)(d=a[c])&&q(d)&&b.push(d)}catch(ga){}else for(c=0;c<a.length;c++)(d=a[c])&&d._zipIdx!=K&&(b.push(d),d._zipIdx=K);return b},X=function(a,b){b=b||m.doc;h="div"===(b.ownerDocument||b).createElement("div").tagName;return(a=ea(a)(b))&&a.nozip?a:W(a)};X.filter=function(a,c,d){for(var g=[],h=e(c),h=
1!=h.length||/[^\w#\.]/.test(c)?function(a){return-1!=f.indexOf(X(c,b.byId(d)),a)}:A(h[0]),k=0,l;l=a[k];k++)h(l)&&g.push(l);return g};return X})},"dojo/NodeList-dom":function(){define("./_base/kernel ./query ./_base/array ./_base/lang ./dom-class ./dom-construct ./dom-geometry ./dom-attr ./dom-style".split(" "),function(b,n,f,p,m,d,k,l,h){function a(a){return function(b,c,d){return 2==arguments.length?a["string"==typeof c?"get":"set"](b,c):a.set(b,c,d)}}var e=function(a){return 1==a.length&&"string"==
typeof a[0]},r=function(a){var b=a.parentNode;b&&b.removeChild(a)},c=n.NodeList,q=c._adaptWithCondition,x=c._adaptAsForEach,g=c._adaptAsMap;p.extend(c,{_normalize:function(a,c){var e=!0===a.parse;if("string"==typeof a.template){var f=a.templateFunc||b.string&&b.string.substitute;a=f?f(a.template,a):a}f=typeof a;"string"==f||"number"==f?(a=d.toDom(a,c&&c.ownerDocument),a=11==a.nodeType?p._toArray(a.childNodes):[a]):p.isArrayLike(a)?p.isArray(a)||(a=p._toArray(a)):a=[a];e&&(a._runParse=!0);return a},
_cloneNode:function(a){return a.cloneNode(!0)},_place:function(a,c,e,f){if(1==c.nodeType||"only"!=e)for(var g,h=a.length,k=h-1;0<=k;k--){var l=f?this._cloneNode(a[k]):a[k];if(a._runParse&&b.parser&&b.parser.parse)for(g||(g=c.ownerDocument.createElement("div")),g.appendChild(l),b.parser.parse(g),l=g.firstChild;g.firstChild;)g.removeChild(g.firstChild);k==h-1?d.place(l,c,e):c.parentNode.insertBefore(l,c);c=l}},position:g(k.position),attr:q(a(l),e),style:q(a(h),e),addClass:x(m.add),removeClass:x(m.remove),
toggleClass:x(m.toggle),replaceClass:x(m.replace),empty:x(d.empty),removeAttr:x(l.remove),marginBox:g(k.getMarginBox),place:function(a,b){var c=n(a)[0];return this.forEach(function(a){d.place(a,c,b)})},orphan:function(a){return(a?n._filterResult(this,a):this).forEach(r)},adopt:function(a,b){return n(a).place(this[0],b)._stash(this)},query:function(a){if(!a)return this;var b=new c;this.map(function(c){n(a,c).forEach(function(a){void 0!==a&&b.push(a)})});return b._stash(this)},filter:function(a){var b=
arguments,c=this,d=0;if("string"==typeof a){c=n._filterResult(this,b[0]);if(1==b.length)return c._stash(this);d=1}return this._wrap(f.filter(c,b[d],b[d+1]),this)},addContent:function(a,b){a=this._normalize(a,this[0]);for(var c=0,e;e=this[c];c++)a.length?this._place(a,e,b,0<c):d.empty(e);return this}});return c})},"dojo/_base/fx":function(){define("./kernel ./config ./lang ../Evented ./Color ../aspect ../sniff ../dom ../dom-style".split(" "),function(b,n,f,p,m,d,k,l,h){var a=f.mixin,e={},r=e._Line=
function(a,b){this.start=a;this.end=b};r.prototype.getValue=function(a){return(this.end-this.start)*a+this.start};var c=e.Animation=function(b){a(this,b);f.isArray(this.curve)&&(this.curve=new r(this.curve[0],this.curve[1]))};c.prototype=new p;f.extend(c,{duration:350,repeat:0,rate:20,_percent:0,_startRepeatCount:0,_getStep:function(){var a=this._percent,b=this.easing;return b?b(a):a},_fire:function(a,b){b=b||[];if(this[a])if(n.debugAtAllCosts)this[a].apply(this,b);else try{this[a].apply(this,b)}catch(B){console.error("exception in animation handler for:",
a),console.error(B)}return this},play:function(a,b){this._delayTimer&&this._clearTimer();if(b)this._stopTimer(),this._active=this._paused=!1,this._percent=0;else if(this._active&&!this._paused)return this;this._fire("beforeBegin",[this.node]);a=a||this.delay;b=f.hitch(this,"_play",b);if(0<a)return this._delayTimer=setTimeout(b,a),this;b();return this},_play:function(a){this._delayTimer&&this._clearTimer();this._startTime=(new Date).valueOf();this._paused&&(this._startTime-=this.duration*this._percent);
this._active=!0;this._paused=!1;a=this.curve.getValue(this._getStep());this._percent||(this._startRepeatCount||(this._startRepeatCount=this.repeat),this._fire("onBegin",[a]));this._fire("onPlay",[a]);this._cycle();return this},pause:function(){this._delayTimer&&this._clearTimer();this._stopTimer();if(!this._active)return this;this._paused=!0;this._fire("onPause",[this.curve.getValue(this._getStep())]);return this},gotoPercent:function(a,b){this._stopTimer();this._active=this._paused=!0;this._percent=
a;b&&this.play();return this},stop:function(a){this._delayTimer&&this._clearTimer();if(!this._timer)return this;this._stopTimer();a&&(this._percent=1);this._fire("onStop",[this.curve.getValue(this._getStep())]);this._active=this._paused=!1;return this},destroy:function(){this.stop()},status:function(){return this._active?this._paused?"paused":"playing":"stopped"},_cycle:function(){if(this._active){var a=(new Date).valueOf(),a=0===this.duration?1:(a-this._startTime)/this.duration;1<=a&&(a=1);this._percent=
a;this.easing&&(a=this.easing(a));this._fire("onAnimate",[this.curve.getValue(a)]);1>this._percent?this._startTimer():(this._active=!1,0<this.repeat?(this.repeat--,this.play(null,!0)):-1==this.repeat?this.play(null,!0):this._startRepeatCount&&(this.repeat=this._startRepeatCount,this._startRepeatCount=0),this._percent=0,this._fire("onEnd",[this.node]),!this.repeat&&this._stopTimer())}return this},_clearTimer:function(){clearTimeout(this._delayTimer);delete this._delayTimer}});var q=0,x=null,g={run:function(){}};
f.extend(c,{_startTimer:function(){this._timer||(this._timer=d.after(g,"run",f.hitch(this,"_cycle"),!0),q++);x||(x=setInterval(f.hitch(g,"run"),this.rate))},_stopTimer:function(){this._timer&&(this._timer.remove(),this._timer=null,q--);0>=q&&(clearInterval(x),x=null,q=0)}});var t=k("ie")?function(a){var b=a.style;b.width.length||"auto"!=h.get(a,"width")||(b.width="auto")}:function(){};e._fade=function(b){b.node=l.byId(b.node);var c=a({properties:{}},b);b=c.properties.opacity={};b.start="start"in c?
c.start:function(){return+h.get(c.node,"opacity")||0};b.end=c.end;b=e.animateProperty(c);d.after(b,"beforeBegin",f.partial(t,c.node),!0);return b};e.fadeIn=function(b){return e._fade(a({end:1},b))};e.fadeOut=function(b){return e._fade(a({end:0},b))};e._defaultEasing=function(a){return.5+Math.sin((a+1.5)*Math.PI)/2};var u=function(a){this._properties=a;for(var b in a){var c=a[b];c.start instanceof m&&(c.tempColor=new m)}};u.prototype.getValue=function(a){var b={},c;for(c in this._properties){var d=
this._properties[c],e=d.start;e instanceof m?b[c]=m.blendColors(e,d.end,a,d.tempColor).toCss():f.isArray(e)||(b[c]=(d.end-e)*a+e+("opacity"!=c?d.units||"px":0))}return b};e.animateProperty=function(e){var g=e.node=l.byId(e.node);e.easing||(e.easing=b._defaultEasing);e=new c(e);d.after(e,"beforeBegin",f.hitch(e,function(){var b={},c;for(c in this.properties){var d=function(a,b){var c={height:a.offsetHeight,width:a.offsetWidth}[b];if(void 0!==c)return c;c=h.get(a,b);return"opacity"==b?+c:k?c:parseFloat(c)};
if("width"==c||"height"==c)this.node.display="block";var e=this.properties[c];f.isFunction(e)&&(e=e(g));e=b[c]=a({},f.isObject(e)?e:{end:e});f.isFunction(e.start)&&(e.start=e.start(g));f.isFunction(e.end)&&(e.end=e.end(g));var k=0<=c.toLowerCase().indexOf("color");"end"in e?"start"in e||(e.start=d(g,c)):e.end=d(g,c);k?(e.start=new m(e.start),e.end=new m(e.end)):e.start="opacity"==c?+e.start:parseFloat(e.start)}this.curve=new u(b)}),!0);d.after(e,"onAnimate",f.hitch(h,"set",e.node),!0);return e};e.anim=
function(a,b,d,f,g,h){return e.animateProperty({node:a,duration:d||c.prototype.duration,properties:b,easing:f,onEnd:g}).play(h||0)};a(b,e);b._Animation=c;return e})},"*noref":1}});(function(){var b=this.require;b({cache:{}});!b.async&&b(["dojo"]);b.boot&&b.apply(null,b.boot)})();// All material copyright ESRI, All Rights Reserved, unless otherwise specified.
// See http://js.arcgis.com/3.26/esri/copyright.txt for details.
//>>built
require({cache:{"dojo/fx/Toggler":function(){define(["../_base/lang","../_base/declare","../_base/fx","../aspect"],function(q,n,b,g){return n("dojo.fx.Toggler",null,{node:null,showFunc:b.fadeIn,hideFunc:b.fadeOut,showDuration:200,hideDuration:200,constructor:function(b){q.mixin(this,b);this.node=b.node;this._showArgs=q.mixin({},b);this._showArgs.node=this.node;this._showArgs.duration=this.showDuration;this.showAnim=this.showFunc(this._showArgs);this._hideArgs=q.mixin({},b);this._hideArgs.node=this.node;
this._hideArgs.duration=this.hideDuration;this.hideAnim=this.hideFunc(this._hideArgs);g.after(this.showAnim,"beforeBegin",q.hitch(this.hideAnim,"stop",!0),!0);g.after(this.hideAnim,"beforeBegin",q.hitch(this.showAnim,"stop",!0),!0)},show:function(b){return this.showAnim.play(b||0)},hide:function(b){return this.hideAnim.play(b||0)}})})},"dijit/_base":function(){define("./main ./a11y ./WidgetSet ./_base/focus ./_base/manager ./_base/place ./_base/popup ./_base/scroll ./_base/sniff ./_base/typematic ./_base/wai ./_base/window".split(" "),
function(q){return q._base})},"dijit/main":function(){define(["dojo/_base/kernel"],function(q){return q.dijit})},"dijit/a11y":function(){define("dojo/_base/array dojo/dom dojo/dom-attr dojo/dom-style dojo/_base/lang dojo/sniff ./main".split(" "),function(q,n,b,g,h,p,l){var f={_isElementShown:function(e){var c=g.get(e);return"hidden"!=c.visibility&&"collapsed"!=c.visibility&&"none"!=c.display&&"hidden"!=b.get(e,"type")},hasDefaultTabStop:function(e){switch(e.nodeName.toLowerCase()){case "a":return b.has(e,
"href");case "area":case "button":case "input":case "object":case "select":case "textarea":return!0;case "iframe":var c;try{var a=e.contentDocument;if("designMode"in a&&"on"==a.designMode)return!0;c=a.body}catch(d){try{c=e.contentWindow.document.body}catch(m){return!1}}return c&&("true"==c.contentEditable||c.firstChild&&"true"==c.firstChild.contentEditable);default:return"true"==e.contentEditable}},effectiveTabIndex:function(e){if(!b.get(e,"disabled"))return b.has(e,"tabIndex")?+b.get(e,"tabIndex"):
f.hasDefaultTabStop(e)?0:void 0},isTabNavigable:function(b){return 0<=f.effectiveTabIndex(b)},isFocusable:function(b){return-1<=f.effectiveTabIndex(b)},_getTabNavigable:function(e){function c(a){return a&&"input"==a.tagName.toLowerCase()&&a.type&&"radio"==a.type.toLowerCase()&&a.name&&a.name.toLowerCase()}function a(a){return r[c(a)]||a}var d,m,l,t,k,u,r={},y=f._isElementShown,v=f.effectiveTabIndex,h=function(a){for(a=a.firstChild;a;a=a.nextSibling)if(!(1!=a.nodeType||9>=p("ie")&&"HTML"!==a.scopeName)&&
y(a)){var e=v(a);if(0<=e){if(0==e)d||(d=a),m=a;else if(0<e){if(!l||e<t)t=e,l=a;if(!k||e>=u)u=e,k=a}e=c(a);b.get(a,"checked")&&e&&(r[e]=a)}"SELECT"!=a.nodeName.toUpperCase()&&h(a)}};y(e)&&h(e);return{first:a(d),last:a(m),lowest:a(l),highest:a(k)}},getFirstInTabbingOrder:function(b,c){b=f._getTabNavigable(n.byId(b,c));return b.lowest?b.lowest:b.first},getLastInTabbingOrder:function(b,c){b=f._getTabNavigable(n.byId(b,c));return b.last?b.last:b.highest}};h.mixin(l,f);return f})},"dijit/WidgetSet":function(){define(["dojo/_base/array",
"dojo/_base/declare","dojo/_base/kernel","./registry"],function(q,n,b,g){var h=n("dijit.WidgetSet",null,{constructor:function(){this._hash={};this.length=0},add:function(b){if(this._hash[b.id])throw Error("Tried to register widget with id\x3d\x3d"+b.id+" but that id is already registered");this._hash[b.id]=b;this.length++},remove:function(b){this._hash[b]&&(delete this._hash[b],this.length--)},forEach:function(h,l){l=l||b.global;var f=0,e;for(e in this._hash)h.call(l,this._hash[e],f++,this._hash);
return this},filter:function(g,l){l=l||b.global;var f=new h,e=0,c;for(c in this._hash){var a=this._hash[c];g.call(l,a,e++,this._hash)&&f.add(a)}return f},byId:function(b){return this._hash[b]},byClass:function(b){var l=new h,f,e;for(f in this._hash)e=this._hash[f],e.declaredClass==b&&l.add(e);return l},toArray:function(){var b=[],l;for(l in this._hash)b.push(this._hash[l]);return b},map:function(b,l){return q.map(this.toArray(),b,l)},every:function(h,l){l=l||b.global;var f=0,e;for(e in this._hash)if(!h.call(l,
this._hash[e],f++,this._hash))return!1;return!0},some:function(h,l){l=l||b.global;var f=0,e;for(e in this._hash)if(h.call(l,this._hash[e],f++,this._hash))return!0;return!1}});q.forEach("forEach filter byClass map every some".split(" "),function(b){g[b]=h.prototype[b]});return h})},"dijit/registry":function(){define(["dojo/_base/array","dojo/_base/window","./main"],function(q,n,b){var g={},h={},p={length:0,add:function(b){if(h[b.id])throw Error("Tried to register widget with id\x3d\x3d"+b.id+" but that id is already registered");
h[b.id]=b;this.length++},remove:function(b){h[b]&&(delete h[b],this.length--)},byId:function(b){return"string"==typeof b?h[b]:b},byNode:function(b){return h[b.getAttribute("widgetId")]},toArray:function(){var b=[],f;for(f in h)b.push(h[f]);return b},getUniqueId:function(l){var f;do f=l+"_"+(l in g?++g[l]:g[l]=0);while(h[f]);return"dijit"==b._scopeName?f:b._scopeName+"_"+f},findWidgets:function(b,f){function e(a){for(a=a.firstChild;a;a=a.nextSibling)if(1==a.nodeType){var b=a.getAttribute("widgetId");
b?(b=h[b])&&c.push(b):a!==f&&e(a)}}var c=[];e(b);return c},_destroyAll:function(){b._curFocus=null;b._prevFocus=null;b._activeStack=[];q.forEach(p.findWidgets(n.body()),function(b){b._destroyed||(b.destroyRecursive?b.destroyRecursive():b.destroy&&b.destroy())})},getEnclosingWidget:function(b){for(;b;){var f=1==b.nodeType&&b.getAttribute("widgetId");if(f)return h[f];b=b.parentNode}return null},_hash:h};return b.registry=p})},"dijit/_base/focus":function(){define("dojo/_base/array dojo/dom dojo/_base/lang dojo/topic dojo/_base/window ../focus ../selection ../main".split(" "),
function(q,n,b,g,h,p,l,f){p.focus=function(b){if(b){var c="node"in b?b.node:b,a=b.bookmark;b=b.openedForWindow;var d=a?a.isCollapsed:!1;if(c){var e="iframe"==c.tagName.toLowerCase()?c.contentWindow:c;if(e&&e.focus)try{e.focus()}catch(w){}p._onFocusNode(c)}if(a&&h.withGlobal(b||h.global,f.isCollapsed)&&!d){b&&b.focus();try{h.withGlobal(b||h.global,f.moveToBookmark,null,[a])}catch(w){}}}};p.watch("curNode",function(b,c,a){f._curFocus=a;f._prevFocus=c;a&&g.publish("focusNode",a)});p.watch("activeStack",
function(b,c,a){f._activeStack=a});p.on("widget-blur",function(b,c){g.publish("widgetBlur",b,c)});p.on("widget-focus",function(b,c){g.publish("widgetFocus",b,c)});b.mixin(f,{_curFocus:null,_prevFocus:null,isCollapsed:function(){return f.getBookmark().isCollapsed},getBookmark:function(){return(h.global==window?l:new l.SelectionManager(h.global)).getBookmark()},moveToBookmark:function(b){return(h.global==window?l:new l.SelectionManager(h.global)).moveToBookmark(b)},getFocus:function(b,c){b=!p.curNode||
b&&n.isDescendant(p.curNode,b.domNode)?f._prevFocus:p.curNode;return{node:b,bookmark:b&&b==p.curNode&&h.withGlobal(c||h.global,f.getBookmark),openedForWindow:c}},_activeStack:[],registerIframe:function(b){return p.registerIframe(b)},unregisterIframe:function(b){b&&b.remove()},registerWin:function(b,c){return p.registerWin(b,c)},unregisterWin:function(b){b&&b.remove()}});return f})},"dijit/focus":function(){define("dojo/aspect dojo/_base/declare dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/Evented dojo/_base/lang dojo/on dojo/domReady dojo/sniff dojo/Stateful dojo/_base/window dojo/window ./a11y ./registry ./main".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u){var r,y,v=new (n([d,l],{curNode:null,activeStack:[],constructor:function(){var a=f.hitch(this,function(a){b.isDescendant(this.curNode,a)&&this.set("curNode",null);b.isDescendant(this.prevNode,a)&&this.set("prevNode",null)});q.before(p,"empty",a);q.before(p,"destroy",a)},registerIframe:function(a){return this.registerWin(a.contentWindow,a)},registerWin:function(b,c){var d=this,r=b.document&&b.document.body;if(r){var k=a("pointer-events")?"pointerdown":a("MSPointer")?
"MSPointerDown":a("touch-events")?"mousedown, touchstart":"mousedown",m=e(b.document,k,function(a){a&&a.target&&null==a.target.parentNode||d._onTouchNode(c||a.target,"mouse")}),u=e(r,"focusin",function(a){if(a.target.tagName){var b=a.target.tagName.toLowerCase();"#document"!=b&&"body"!=b&&(t.isFocusable(a.target)?d._onFocusNode(c||a.target):d._onTouchNode(c||a.target))}}),f=e(r,"focusout",function(a){d._onBlurNode(c||a.target)});return{remove:function(){m.remove();u.remove();f.remove();r=m=u=f=null}}}},
_onBlurNode:function(a){a=(new Date).getTime();a<r+100||(this._clearFocusTimer&&clearTimeout(this._clearFocusTimer),this._clearFocusTimer=setTimeout(f.hitch(this,function(){this.set("prevNode",this.curNode);this.set("curNode",null)}),0),this._clearActiveWidgetsTimer&&clearTimeout(this._clearActiveWidgetsTimer),a<y+100||(this._clearActiveWidgetsTimer=setTimeout(f.hitch(this,function(){delete this._clearActiveWidgetsTimer;this._setStack([])}),0)))},_onTouchNode:function(a,b){y=(new Date).getTime();
this._clearActiveWidgetsTimer&&(clearTimeout(this._clearActiveWidgetsTimer),delete this._clearActiveWidgetsTimer);h.contains(a,"dijitPopup")&&(a=a.firstChild);var c=[];try{for(;a;){var d=g.get(a,"dijitPopupParent");if(d)a=k.byId(d).domNode;else if(a.tagName&&"body"==a.tagName.toLowerCase()){if(a===m.body())break;a=w.get(a.ownerDocument).frameElement}else{var r=a.getAttribute&&a.getAttribute("widgetId"),e=r&&k.byId(r);!e||"mouse"==b&&e.get("disabled")||c.unshift(r);a=a.parentNode}}}catch(F){}this._setStack(c,
b)},_onFocusNode:function(a){a&&9!=a.nodeType&&(r=(new Date).getTime(),this._clearFocusTimer&&(clearTimeout(this._clearFocusTimer),delete this._clearFocusTimer),this._onTouchNode(a),a!=this.curNode&&(this.set("prevNode",this.curNode),this.set("curNode",a)))},_setStack:function(a,b){var c=this.activeStack,d=c.length-1,r=a.length-1;if(a[r]!=c[d]){this.set("activeStack",a);var e;for(e=d;0<=e&&c[e]!=a[e];e--)if(d=k.byId(c[e]))d._hasBeenBlurred=!0,d.set("focused",!1),d._focusManager==this&&d._onBlur(b),
this.emit("widget-blur",d,b);for(e++;e<=r;e++)if(d=k.byId(a[e]))d.set("focused",!0),d._focusManager==this&&d._onFocus(b),this.emit("widget-focus",d,b)}},focus:function(a){if(a)try{a.focus()}catch(A){}}}));c(function(){var b=v.registerWin(w.get(document));a("ie")&&e(window,"unload",function(){b&&(b.remove(),b=null)})});u.focus=function(a){v.focus(a)};for(var z in v)/^_/.test(z)||(u.focus[z]="function"==typeof v[z]?f.hitch(v,z):v[z]);v.watch(function(a,b,d){u.focus[a]=d});return v})},"dojo/Stateful":function(){define(["./_base/declare",
"./_base/lang","./_base/array","./when"],function(q,n,b,g){return q("dojo.Stateful",null,{_attrPairNames:{},_getAttrNames:function(b){var h=this._attrPairNames;return h[b]?h[b]:h[b]={s:"_"+b+"Setter",g:"_"+b+"Getter"}},postscript:function(b){b&&this.set(b)},_get:function(b,g){return"function"===typeof this[g.g]?this[g.g]():this[b]},get:function(b){return this._get(b,this._getAttrNames(b))},set:function(b,p){if("object"===typeof b){for(var l in b)b.hasOwnProperty(l)&&"_watchCallbacks"!=l&&this.set(l,
b[l]);return this}l=this._getAttrNames(b);var f=this._get(b,l);l=this[l.s];var e;"function"===typeof l?e=l.apply(this,Array.prototype.slice.call(arguments,1)):this[b]=p;if(this._watchCallbacks){var c=this;g(e,function(){c._watchCallbacks(b,f,p)})}return this},_changeAttrValue:function(b,g){var l=this.get(b);this[b]=g;this._watchCallbacks&&this._watchCallbacks(b,l,g);return this},watch:function(h,g){var l=this._watchCallbacks;if(!l)var f=this,l=this._watchCallbacks=function(b,a,d,e){var c=function(c){if(c){c=
c.slice();for(var k=0,e=c.length;k<e;k++)c[k].call(f,b,a,d)}};c(l["_"+b]);e||c(l["*"])};g||"function"!==typeof h?h="_"+h:(g=h,h="*");var e=l[h];"object"!==typeof e&&(e=l[h]=[]);e.push(g);h={};h.unwatch=h.remove=function(){var c=b.indexOf(e,g);-1<c&&e.splice(c,1)};return h}})})},"dojo/window":function(){define("./_base/lang ./sniff ./_base/window ./dom ./dom-geometry ./dom-style ./dom-construct".split(" "),function(q,n,b,g,h,p,l){n.add("rtl-adjust-position-for-verticalScrollBar",function(e,c){e=b.body(c);
c=l.create("div",{style:{overflow:"scroll",overflowX:"visible",direction:"rtl",visibility:"hidden",position:"absolute",left:"0",top:"0",width:"64px",height:"64px"}},e,"last");var a=l.create("div",{style:{overflow:"hidden",direction:"ltr"}},c,"last"),d=0!=h.position(a).x;c.removeChild(a);e.removeChild(c);return d});n.add("position-fixed-support",function(e,c){e=b.body(c);c=l.create("span",{style:{visibility:"hidden",position:"fixed",left:"1px",top:"1px"}},e,"last");var a=l.create("span",{style:{position:"fixed",
left:"0",top:"0"}},c,"last"),d=h.position(a).x!=h.position(c).x;c.removeChild(a);e.removeChild(c);return d});var f={getBox:function(e){e=e||b.doc;var c="BackCompat"==e.compatMode?b.body(e):e.documentElement,a=h.docScroll(e);if(n("touch")){var d=f.get(e);e=d.innerWidth||c.clientWidth;c=d.innerHeight||c.clientHeight}else e=c.clientWidth,c=c.clientHeight;return{l:a.x,t:a.y,w:e,h:c}},get:function(b){if(n("ie")&&f!==document.parentWindow){b.parentWindow.execScript("document._parentWindow \x3d window;",
"Javascript");var c=b._parentWindow;b._parentWindow=null;return c}return b.parentWindow||b.defaultView},scrollIntoView:function(e,c){try{e=g.byId(e);var a=e.ownerDocument||b.doc,d=b.body(a),m=a.documentElement||d.parentNode,f=n("ie")||n("trident"),l=n("webkit");if(e!=d&&e!=m)if(!(n("mozilla")||f||l||n("opera")||n("trident")||n("edge"))&&"scrollIntoView"in e)e.scrollIntoView(!1);else{var k="BackCompat"==a.compatMode,u=Math.min(d.clientWidth||m.clientWidth,m.clientWidth||d.clientWidth),r=Math.min(d.clientHeight||
m.clientHeight,m.clientHeight||d.clientHeight),a=l||k?d:m,y=c||h.position(e),v=e.parentNode;c=function(a){return 6>=f||7==f&&k?!1:n("position-fixed-support")&&"fixed"==p.get(a,"position").toLowerCase()};var z=this,l=function(a,b,d){"BODY"==a.tagName||"HTML"==a.tagName?z.get(a.ownerDocument).scrollBy(b,d):(b&&(a.scrollLeft+=b),d&&(a.scrollTop+=d))};if(!c(e))for(;v;){v==d&&(v=a);var x=h.position(v),A=c(v),B="rtl"==p.getComputedStyle(v).direction.toLowerCase();if(v==a)x.w=u,x.h=r,a==m&&(f||n("trident"))&&
B&&(x.x+=a.offsetWidth-x.w),x.x=0,x.y=0;else{var C=h.getPadBorderExtents(v);x.w-=C.w;x.h-=C.h;x.x+=C.l;x.y+=C.t;var q=v.clientWidth,E=x.w-q;0<q&&0<E&&(B&&n("rtl-adjust-position-for-verticalScrollBar")&&(x.x+=E),x.w=q);q=v.clientHeight;E=x.h-q;0<q&&0<E&&(x.h=q)}A&&(0>x.y&&(x.h+=x.y,x.y=0),0>x.x&&(x.w+=x.x,x.x=0),x.y+x.h>r&&(x.h=r-x.y),x.x+x.w>u&&(x.w=u-x.x));var F=y.x-x.x,I=y.y-x.y,X=F+y.w-x.w,N=I+y.h-x.h,G,Q;0<X*F&&(v.scrollLeft||v==a||v.scrollWidth>v.offsetHeight)&&(G=Math[0>F?"max":"min"](F,X),
B&&(8==f&&!k||5<=n("trident"))&&(G=-G),Q=v.scrollLeft,l(v,G,0),G=v.scrollLeft-Q,y.x-=G);0<N*I&&(v.scrollTop||v==a||v.scrollHeight>v.offsetHeight)&&(G=Math.ceil(Math[0>I?"max":"min"](I,N)),Q=v.scrollTop,l(v,0,G),G=v.scrollTop-Q,y.y-=G);v=v!=a&&!A&&v.parentNode}}}catch(M){console.error("scrollIntoView: "+M),e.scrollIntoView(!1)}}};q.setObject("dojo.window",f);return f})},"dijit/selection":function(){define("dojo/_base/array dojo/dom dojo/_base/lang dojo/sniff dojo/_base/window dijit/focus".split(" "),
function(q,n,b,g,h,p){var l=function(e){var c=e.document;this.getType=function(){if(c.getSelection){var a="text",b;try{b=e.getSelection()}catch(m){}b&&1==b.rangeCount&&(b=b.getRangeAt(0),b.startContainer==b.endContainer&&1==b.endOffset-b.startOffset&&3!=b.startContainer.nodeType&&(a="control"));return a}return c.selection.type.toLowerCase()};this.getSelectedText=function(){if(c.getSelection){var a=e.getSelection();return a?a.toString():""}return"control"==this.getType()?null:c.selection.createRange().text};
this.getSelectedHtml=function(){if(c.getSelection){var a=e.getSelection();if(a&&a.rangeCount){var b,m="";for(b=0;b<a.rangeCount;b++){var f=a.getRangeAt(b).cloneContents(),l=c.createElement("div");l.appendChild(f);m+=l.innerHTML}return m}return null}return"control"==this.getType()?null:c.selection.createRange().htmlText};this.getSelectedElement=function(){if("control"==this.getType()){if(c.getSelection){var a=e.getSelection();return a.anchorNode.childNodes[a.anchorOffset]}if((a=c.selection.createRange())&&
a.item)return c.selection.createRange().item(0)}return null};this.getParentElement=function(){if("control"==this.getType()){var a=this.getSelectedElement();if(a)return a.parentNode}else if(c.getSelection){if(a=c.getSelection()){for(a=a.anchorNode;a&&1!=a.nodeType;)a=a.parentNode;return a}}else return a=c.selection.createRange(),a.collapse(!0),a.parentElement();return null};this.hasAncestorElement=function(a){return null!=this.getAncestorElement.apply(this,arguments)};this.getAncestorElement=function(a){var b=
this.getSelectedElement()||this.getParentElement();return this.getParentOfType(b,arguments)};this.isTag=function(a,b){if(a&&a.tagName){a=a.tagName.toLowerCase();for(var c=0;c<b.length;c++){var d=String(b[c]).toLowerCase();if(a==d)return d}}return""};this.getParentOfType=function(a,b){for(;a;){if(this.isTag(a,b).length)return a;a=a.parentNode}return null};this.collapse=function(a){if(c.getSelection){var b=e.getSelection();b.removeAllRanges?a?b.collapseToStart():b.collapseToEnd():b.collapse(a)}else b=
c.selection.createRange(),b.collapse(a),b.select()};this.remove=function(){var a=c.selection;c.getSelection?(a=e.getSelection(),a.deleteFromDocument()):"none"!=a.type.toLowerCase()&&a.clear();return a};this.selectElementChildren=function(a,b){var d;a=n.byId(a);if(c.getSelection)b=e.getSelection(),g("opera")?(d=b.rangeCount?b.getRangeAt(0):c.createRange(),d.setStart(a,0),d.setEnd(a,3==a.nodeType?a.length:a.childNodes.length),b.addRange(d)):b.selectAllChildren(a);else if(d=a.ownerDocument.body.createTextRange(),
d.moveToElementText(a),!b)try{d.select()}catch(w){}};this.selectElement=function(a,b){var d;a=n.byId(a);if(c.getSelection)b=c.getSelection(),d=c.createRange(),b.removeAllRanges&&(g("opera")&&b.getRangeAt(0)&&(d=b.getRangeAt(0)),d.selectNode(a),b.removeAllRanges(),b.addRange(d));else try{var e=a.tagName?a.tagName.toLowerCase():"";d="img"===e||"table"===e?h.body(c).createControlRange():h.body(c).createRange();d.addElement(a);b||d.select()}catch(t){this.selectElementChildren(a,b)}};this.inSelection=
function(a){if(a){var b,m;if(c.getSelection){var f=e.getSelection();f&&0<f.rangeCount&&(m=f.getRangeAt(0));if(m&&m.compareBoundaryPoints&&c.createRange)try{if(b=c.createRange(),b.setStart(a,0),1===m.compareBoundaryPoints(m.START_TO_END,b))return!0}catch(t){}}else{m=c.selection.createRange();try{b=a.ownerDocument.body.createTextRange(),b.moveToElementText(a)}catch(t){}if(m&&b&&1===m.compareEndPoints("EndToStart",b))return!0}}return!1};this.getBookmark=function(){var a,b,m=c.selection,f=p.curNode;if(c.getSelection){if(m=
e.getSelection())if(m.isCollapsed){if(a=f?f.tagName:"")if(a=a.toLowerCase(),"textarea"==a||"input"==a&&(!f.type||"text"==f.type.toLowerCase()))return m={start:f.selectionStart,end:f.selectionEnd,node:f,pRange:!0},{isCollapsed:m.end<=m.start,mark:m};a={isCollapsed:!0};m.rangeCount&&(a.mark=m.getRangeAt(0).cloneRange())}else b=m.getRangeAt(0),a={isCollapsed:!1,mark:b.cloneRange()}}else if(m){a=f?f.tagName:"";a=a.toLowerCase();if(f&&a&&("button"==a||"textarea"==a||"input"==a)){if(m.type&&"none"==m.type.toLowerCase())return{isCollapsed:!0,
mark:null};b=m.createRange();return{isCollapsed:b.text&&b.text.length?!1:!0,mark:{range:b,pRange:!0}}}a={};try{b=m.createRange(),a.isCollapsed=!("Text"==m.type?b.htmlText.length:b.length)}catch(t){return a.isCollapsed=!0,a}if("CONTROL"==m.type.toUpperCase())if(b.length)for(a.mark=[],m=0,f=b.length;m<f;)a.mark.push(b.item(m++));else a.isCollapsed=!0,a.mark=null;else a.mark=b.getBookmark()}else console.warn("No idea how to store the current selection for this browser!");return a};this.moveToBookmark=
function(a){if(a=a.mark)if(c.getSelection){var d=e.getSelection();d&&d.removeAllRanges?a.pRange?(d=a.node,d.selectionStart=a.start,d.selectionEnd=a.end):(d.removeAllRanges(),d.addRange(a)):console.warn("No idea how to restore selection for this browser!")}else if(c.selection&&a){var m;a.pRange?m=a.range:b.isArray(a)?(m=c.body.createControlRange(),q.forEach(a,function(a){m.addElement(a)})):(m=c.body.createTextRange(),m.moveToBookmark(a));m.select()}};this.isCollapsed=function(){return this.getBookmark().isCollapsed}},
f=new l(window);f.SelectionManager=l;return f})},"dijit/_base/manager":function(){define(["dojo/_base/array","dojo/_base/config","dojo/_base/lang","../registry","../main"],function(q,n,b,g,h){var p={};q.forEach("byId getUniqueId findWidgets _destroyAll byNode getEnclosingWidget".split(" "),function(b){p[b]=g[b]});b.mixin(p,{defaultDuration:n.defaultDuration||200});b.mixin(h,p);return h})},"dijit/_base/place":function(){define(["dojo/_base/array","dojo/_base/lang","dojo/window","../place","../main"],
function(q,n,b,g,h){var p={getViewport:function(){return b.getBox()}};p.placeOnScreen=g.at;p.placeOnScreenAroundElement=function(b,f,e,c){var a;if(n.isArray(e))a=e;else{a=[];for(var d in e)a.push({aroundCorner:d,corner:e[d]})}return g.around(b,f,a,!0,c)};p.placeOnScreenAroundNode=p.placeOnScreenAroundElement;p.placeOnScreenAroundRectangle=p.placeOnScreenAroundElement;p.getPopupAroundAlignment=function(b,f){var e={};q.forEach(b,function(b){var a=f;switch(b){case "after":e[f?"BR":"BL"]=f?"BL":"BR";
break;case "before":e[f?"BL":"BR"]=f?"BR":"BL";break;case "below-alt":a=!a;case "below":e[a?"BL":"BR"]=a?"TL":"TR";e[a?"BR":"BL"]=a?"TR":"TL";break;case "above-alt":a=!a;default:e[a?"TL":"TR"]=a?"BL":"BR",e[a?"TR":"TL"]=a?"BR":"BL"}});return e};n.mixin(h,p);return h})},"dijit/place":function(){define("dojo/_base/array dojo/dom-geometry dojo/dom-style dojo/_base/kernel dojo/_base/window ./Viewport ./main".split(" "),function(q,n,b,g,h,p,l){function f(c,a,d,e){var m=p.getEffectiveBox(c.ownerDocument);
c.parentNode&&"body"==String(c.parentNode.tagName).toLowerCase()||h.body(c.ownerDocument).appendChild(c);var f=null;q.some(a,function(a){var b=a.corner,r=a.pos,k=0,u={w:{L:m.l+m.w-r.x,R:r.x-m.l,M:m.w}[b.charAt(1)],h:{T:m.t+m.h-r.y,B:r.y-m.t,M:m.h}[b.charAt(0)]},l=c.style;l.left=l.right="auto";d&&(k=d(c,a.aroundCorner,b,u,e),k="undefined"==typeof k?0:k);var t=c.style,h=t.display,g=t.visibility;"none"==t.display&&(t.visibility="hidden",t.display="");l=n.position(c);t.display=h;t.visibility=g;h={L:r.x,
R:r.x-l.w,M:Math.max(m.l,Math.min(m.l+m.w,r.x+(l.w>>1))-l.w)}[b.charAt(1)];g={T:r.y,B:r.y-l.h,M:Math.max(m.t,Math.min(m.t+m.h,r.y+(l.h>>1))-l.h)}[b.charAt(0)];r=Math.max(m.l,h);t=Math.max(m.t,g);h=Math.min(m.l+m.w,h+l.w)-r;g=Math.min(m.t+m.h,g+l.h)-t;k+=l.w-h+(l.h-g);if(null==f||k<f.overflow)f={corner:b,aroundCorner:a.aroundCorner,x:r,y:t,w:h,h:g,overflow:k,spaceAvailable:u};return!k});f.overflow&&d&&d(c,f.aroundCorner,f.corner,f.spaceAvailable,e);a=f.y;var k=f.x,u=h.body(c.ownerDocument);/relative|absolute/.test(b.get(u,
"position"))&&(a-=b.get(u,"marginTop"),k-=b.get(u,"marginLeft"));u=c.style;u.top=a+"px";u.left=k+"px";u.right="auto";return f}var e={TL:"BR",TR:"BL",BL:"TR",BR:"TL"};return l.place={at:function(b,a,d,m,l){d=q.map(d,function(b){var c={corner:b,aroundCorner:e[b],pos:{x:a.x,y:a.y}};m&&(c.pos.x+="L"==b.charAt(1)?m.x:-m.x,c.pos.y+="T"==b.charAt(0)?m.y:-m.y);return c});return f(b,d,l)},around:function(c,a,d,e,l){function m(a,b){H.push({aroundCorner:a,corner:b,pos:{x:{L:p,R:p+B,M:p+(B>>1)}[a.charAt(1)],
y:{T:w,B:w+C,M:w+(C>>1)}[a.charAt(0)]}})}var k;if("string"==typeof a||"offsetWidth"in a||"ownerSVGElement"in a){if(k=n.position(a,!0),/^(above|below)/.test(d[0])){var u=n.getBorderExtents(a),r=a.firstChild?n.getBorderExtents(a.firstChild):{t:0,l:0,b:0,r:0},y=n.getBorderExtents(c),v=c.firstChild?n.getBorderExtents(c.firstChild):{t:0,l:0,b:0,r:0};k.y+=Math.min(u.t+r.t,y.t+v.t);k.h-=Math.min(u.t+r.t,y.t+v.t)+Math.min(u.b+r.b,y.b+v.b)}}else k=a;if(a.parentNode)for(u="absolute"==b.getComputedStyle(a).position,
a=a.parentNode;a&&1==a.nodeType&&"BODY"!=a.nodeName;){r=n.position(a,!0);y=b.getComputedStyle(a);/relative|absolute/.test(y.position)&&(u=!1);if(!u&&/hidden|auto|scroll/.test(y.overflow)){var v=Math.min(k.y+k.h,r.y+r.h),h=Math.min(k.x+k.w,r.x+r.w);k.x=Math.max(k.x,r.x);k.y=Math.max(k.y,r.y);k.h=v-k.y;k.w=h-k.x}"absolute"==y.position&&(u=!0);a=a.parentNode}var p=k.x,w=k.y,B="w"in k?k.w:k.w=k.width,C="h"in k?k.h:(g.deprecated("place.around: dijit/place.__Rectangle: { x:"+p+", y:"+w+", height:"+k.height+
", width:"+B+" } has been deprecated.  Please use { x:"+p+", y:"+w+", h:"+k.height+", w:"+B+" }","","2.0"),k.h=k.height),H=[];q.forEach(d,function(a){var b=e;switch(a){case "above-centered":m("TM","BM");break;case "below-centered":m("BM","TM");break;case "after-centered":b=!b;case "before-centered":m(b?"ML":"MR",b?"MR":"ML");break;case "after":b=!b;case "before":m(b?"TL":"TR",b?"TR":"TL");m(b?"BL":"BR",b?"BR":"BL");break;case "below-alt":b=!b;case "below":m(b?"BL":"BR",b?"TL":"TR");m(b?"BR":"BL",
b?"TR":"TL");break;case "above-alt":b=!b;case "above":m(b?"TL":"TR",b?"BL":"BR");m(b?"TR":"TL",b?"BR":"BL");break;default:m(a.aroundCorner,a.corner)}});c=f(c,H,l,{w:B,h:C});c.aroundNodePos=k;return c}}})},"dijit/Viewport":function(){define(["dojo/Evented","dojo/on","dojo/domReady","dojo/sniff","dojo/window"],function(q,n,b,g,h){var p=new q,l;b(function(){var b=h.getBox();p._rlh=n(window,"resize",function(){var c=h.getBox();if(b.h!=c.h||b.w!=c.w)b=c,p.emit("resize")});if(8==g("ie")){var e=screen.deviceXDPI;
setInterval(function(){screen.deviceXDPI!=e&&(e=screen.deviceXDPI,p.emit("resize"))},500)}g("ios")&&(n(document,"focusin",function(b){l=b.target}),n(document,"focusout",function(b){l=null}))});p.getEffectiveBox=function(b){b=h.getBox(b);var e=l&&l.tagName&&l.tagName.toLowerCase();g("ios")&&l&&!l.readOnly&&("textarea"==e||"input"==e&&/^(color|email|number|password|search|tel|text|url)$/.test(l.type))&&(b.h*=0==orientation||180==orientation?.66:.4,e=l.getBoundingClientRect(),b.h=Math.max(b.h,e.top+
e.height));return b};return p})},"dijit/_base/popup":function(){define(["dojo/dom-class","dojo/_base/window","../popup","../BackgroundIframe"],function(q,n,b){var g=b._createWrapper;b._createWrapper=function(b){b.declaredClass||(b={_popupWrapper:b.parentNode&&q.contains(b.parentNode,"dijitPopup")?b.parentNode:null,domNode:b,destroy:function(){},ownerDocument:b.ownerDocument,ownerDocumentBody:n.body(b.ownerDocument)});return g.call(this,b)};var h=b.open;b.open=function(b){if(b.orient&&"string"!=typeof b.orient&&
!("length"in b.orient)){var l=[],f;for(f in b.orient)l.push({aroundCorner:f,corner:b.orient[f]});b.orient=l}return h.call(this,b)};return b})},"dijit/popup":function(){define("dojo/_base/array dojo/aspect dojo/_base/declare dojo/dom dojo/dom-attr dojo/dom-construct dojo/dom-geometry dojo/dom-style dojo/has dojo/keys dojo/_base/lang dojo/on ./place ./BackgroundIframe ./Viewport ./main dojo/touch".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k){function u(){this._popupWrapper&&(p.destroy(this._popupWrapper),
delete this._popupWrapper)}b=b(null,{_stack:[],_beginZIndex:1E3,_idGen:1,_repositionAll:function(){if(this._firstAroundNode){var b=this._firstAroundPosition,c=l.position(this._firstAroundNode,!0),d=c.x-b.x,b=c.y-b.y;if(d||b)for(this._firstAroundPosition=c,c=0;c<this._stack.length;c++){var k=this._stack[c].wrapper.style;k.top=parseFloat(k.top)+b+"px";"auto"==k.right?k.left=parseFloat(k.left)+d+"px":k.right=parseFloat(k.right)-d+"px"}this._aroundMoveListener=setTimeout(a.hitch(this,"_repositionAll"),
d||b?10:50)}},_createWrapper:function(a){var b=a._popupWrapper,c=a.domNode;b||(b=p.create("div",{"class":"dijitPopup",style:{display:"none"},role:"region","aria-label":a["aria-label"]||a.label||a.name||a.id},a.ownerDocumentBody),b.appendChild(c),c=c.style,c.display="",c.visibility="",c.position="",c.top="0px",a._popupWrapper=b,n.after(a,"destroy",u,!0),"ontouchend"in document&&d(b,"touchend",function(a){/^(input|button|textarea)$/i.test(a.target.tagName)||a.preventDefault()}),b.dojoClick=!0);return b},
moveOffScreen:function(a){var b=this._createWrapper(a);a=l.isBodyLtr(a.ownerDocument);var c={visibility:"hidden",top:"-9999px",display:""};c[a?"left":"right"]="-9999px";c[a?"right":"left"]="auto";f.set(b,c);return b},hide:function(a){var b=this._createWrapper(a);f.set(b,{display:"none",height:"auto",overflowY:"visible",border:""});a=a.domNode;"_originalStyle"in a&&(a.style.cssText=a._originalStyle)},getTopPopup:function(){for(var a=this._stack,b=a.length-1;0<b&&a[b].parent===a[b-1].widget;b--);return a[b]},
open:function(b){for(var r=this._stack,k=b.popup,u=k.domNode,p=b.orient||["below","below-alt","above","above-alt"],A=b.parent?b.parent.isLeftToRight():l.isBodyLtr(k.ownerDocument),n=b.around,C=b.around&&b.around.id?b.around.id+"_dropdown":"popup_"+this._idGen++;r.length&&(!b.parent||!g.isDescendant(b.parent.domNode,r[r.length-1].widget.domNode));)this.close(r[r.length-1].widget);var q=this.moveOffScreen(k);k.startup&&!k._started&&k.startup();var E,F=l.position(u);if("maxHeight"in b&&-1!=b.maxHeight)E=
b.maxHeight||Infinity;else{E=t.getEffectiveBox(this.ownerDocument);var I=n?l.position(n,!1):{y:b.y-(b.padding||0),h:2*(b.padding||0)};E=Math.floor(Math.max(I.y,E.h-(I.y+I.h)))}F.h>E&&(F=f.getComputedStyle(u),f.set(q,{overflowY:"scroll",height:E+"px",border:F.borderLeftWidth+" "+F.borderLeftStyle+" "+F.borderLeftColor}),u._originalStyle=u.style.cssText,u.style.border="none");h.set(q,{id:C,style:{zIndex:this._beginZIndex+r.length},"class":"dijitPopup "+(k.baseClass||k["class"]||"").split(" ")[0]+"Popup",
dijitPopupParent:b.parent?b.parent.id:""});0==r.length&&n&&(this._firstAroundNode=n,this._firstAroundPosition=l.position(n,!0),this._aroundMoveListener=setTimeout(a.hitch(this,"_repositionAll"),50));e("config-bgIframe")&&!k.bgIframe&&(k.bgIframe=new w(q));C=k.orient?a.hitch(k,"orient"):null;p=n?m.around(q,n,p,A,C):m.at(q,b,"R"==p?["TR","BR","TL","BL"]:["TL","BL","TR","BR"],b.padding,C);q.style.visibility="visible";u.style.visibility="visible";u=[];u.push(d(q,"keydown",a.hitch(this,function(a){if(a.keyCode==
c.ESCAPE&&b.onCancel)a.stopPropagation(),a.preventDefault(),b.onCancel();else if(a.keyCode==c.TAB&&(a.stopPropagation(),a.preventDefault(),(a=this.getTopPopup())&&a.onCancel))a.onCancel()})));k.onCancel&&b.onCancel&&u.push(k.on("cancel",b.onCancel));u.push(k.on(k.onExecute?"execute":"change",a.hitch(this,function(){var a=this.getTopPopup();if(a&&a.onExecute)a.onExecute()})));r.push({widget:k,wrapper:q,parent:b.parent,onExecute:b.onExecute,onCancel:b.onCancel,onClose:b.onClose,handlers:u});if(k.onOpen)k.onOpen(p);
return p},close:function(a){for(var b=this._stack;a&&q.some(b,function(b){return b.widget==a})||!a&&b.length;){var c=b.pop(),d=c.widget,r=c.onClose;d.bgIframe&&(d.bgIframe.destroy(),delete d.bgIframe);if(d.onClose)d.onClose();for(var k;k=c.handlers.pop();)k.remove();d&&d.domNode&&this.hide(d);r&&r()}0==b.length&&this._aroundMoveListener&&(clearTimeout(this._aroundMoveListener),this._firstAroundNode=this._firstAroundPosition=this._aroundMoveListener=null)}});return k.popup=new b})},"dijit/BackgroundIframe":function(){define("require ./main dojo/_base/config dojo/dom-construct dojo/dom-style dojo/_base/lang dojo/on dojo/sniff".split(" "),
function(q,n,b,g,h,p,l,f){f.add("config-bgIframe",(f("ie")||f("trident"))&&!/IEMobile\/10\.0/.test(navigator.userAgent));var e=new function(){var c=[];this.pop=function(){var a;c.length?(a=c.pop(),a.style.display=""):(9>f("ie")?(a=b.dojoBlankHtmlUrl||q.toUrl("dojo/resources/blank.html")||'javascript:""',a=document.createElement("\x3ciframe src\x3d'"+a+"' role\x3d'presentation' style\x3d'position: absolute; left: 0px; top: 0px;z-index: -1; filter:Alpha(Opacity\x3d\"0\");'\x3e")):(a=g.create("iframe"),
a.src='javascript:""',a.className="dijitBackgroundIframe",a.setAttribute("role","presentation"),h.set(a,"opacity",.1)),a.tabIndex=-1);return a};this.push=function(a){a.style.display="none";c.push(a)}};n.BackgroundIframe=function(b){if(!b.id)throw Error("no id");if(f("config-bgIframe")){var a=this.iframe=e.pop();b.appendChild(a);7>f("ie")||f("quirks")?(this.resize(b),this._conn=l(b,"resize",p.hitch(this,"resize",b))):h.set(a,{width:"100%",height:"100%"})}};p.extend(n.BackgroundIframe,{resize:function(b){this.iframe&&
h.set(this.iframe,{width:b.offsetWidth+"px",height:b.offsetHeight+"px"})},destroy:function(){this._conn&&(this._conn.remove(),this._conn=null);this.iframe&&(this.iframe.parentNode.removeChild(this.iframe),e.push(this.iframe),delete this.iframe)}});return n.BackgroundIframe})},"dojo/touch":function(){define("./_base/kernel ./aspect ./dom ./dom-class ./_base/lang ./on ./has ./mouse ./domReady ./_base/window".split(" "),function(q,n,b,g,h,p,l,f,e,c){function a(a,b,c){return t&&c?function(a,b){return p(a,
c,b)}:u?function(c,d){var r=p(c,b,function(a){d.call(this,a);E=(new Date).getTime()}),k=p(c,a,function(a){(!E||(new Date).getTime()>E+1E3)&&d.call(this,a)});return{remove:function(){r.remove();k.remove()}}}:function(b,c){return p(b,a,c)}}function d(a){do if(void 0!==a.dojoClick)return a;while(a=a.parentNode)}function m(a,k,e){if(!f.isRight(a)){var m=d(a.target);if(y=!a.target.disabled&&m&&m.dojoClick)if(z=(v="useTarget"==y)?m:a.target,v&&a.preventDefault(),x=a.changedTouches?a.changedTouches[0].pageX-
c.global.pageXOffset:a.clientX,A=a.changedTouches?a.changedTouches[0].pageY-c.global.pageYOffset:a.clientY,B=("object"==typeof y?y.x:"number"==typeof y?y:0)||4,C=("object"==typeof y?y.y:"number"==typeof y?y:0)||4,!r){a=function(a){c.doc.addEventListener(a,function(b){var c=b.target;y&&!b._dojo_click&&(new Date).getTime()<=H+1E3&&("INPUT"!=c.tagName||!g.contains(c,"dijitOffScreen"))&&(b.stopPropagation(),b.stopImmediatePropagation&&b.stopImmediatePropagation(),"click"==a&&("INPUT"!=c.tagName||"radio"==
c.type&&(g.contains(c,"dijitCheckBoxInput")||g.contains(c,"mblRadioButton"))||"checkbox"==c.type&&(g.contains(c,"dijitCheckBoxInput")||g.contains(c,"mblCheckBox")))&&"TEXTAREA"!=c.tagName&&"AUDIO"!=c.tagName&&"VIDEO"!=c.tagName&&b.preventDefault())},!0)};var u=function(a){y=v?b.isDescendant(c.doc.elementFromPoint(a.changedTouches?a.changedTouches[0].pageX-c.global.pageXOffset:a.clientX,a.changedTouches?a.changedTouches[0].pageY-c.global.pageYOffset:a.clientY),z):y&&(a.changedTouches?a.changedTouches[0].target:
a.target)==z&&Math.abs((a.changedTouches?a.changedTouches[0].pageX-c.global.pageXOffset:a.clientX)-x)<=B&&Math.abs((a.changedTouches?a.changedTouches[0].pageY-c.global.pageYOffset:a.clientY)-A)<=C};r=!0;c.doc.addEventListener(k,function(a){f.isRight(a)||(u(a),v&&a.preventDefault())},!0);c.doc.addEventListener(e,function(a){if(!f.isRight(a)&&(u(a),y)){var c=function(b){var c=document.createEvent("MouseEvents");c._dojo_click=!0;c.initMouseEvent(b,!0,!0,a.view,a.detail,r.screenX,r.screenY,r.clientX,
r.clientY,a.ctrlKey,a.altKey,a.shiftKey,a.metaKey,0,null);return c};H=(new Date).getTime();var d=v?z:a.target;"LABEL"===d.tagName&&(d=b.byId(d.getAttribute("for"))||d);var r=a.changedTouches?a.changedTouches[0]:a,k=c("mousedown"),e=c("mouseup"),m=c("click");setTimeout(function(){p.emit(d,"mousedown",k);p.emit(d,"mouseup",e);p.emit(d,"click",m);H=(new Date).getTime()},0)}},!0);a("click");a("mousedown");a("mouseup")}}}var w=5>l("ios"),t=l("pointer-events")||l("MSPointer"),k=function(){var a={},b;for(b in{down:1,
move:1,up:1,cancel:1,over:1,out:1})a[b]=l("MSPointer")?"MSPointer"+b.charAt(0).toUpperCase()+b.slice(1):"pointer"+b;return a}(),u=l("touch-events"),r,y,v=!1,z,x,A,B,C,H,E,F;l("touch")&&(t?e(function(){c.doc.addEventListener(k.down,function(a){m(a,k.move,k.up)},!0)}):e(function(){function a(a){var b=h.delegate(a,{bubbles:!0});6<=l("ios")&&(b.touches=a.touches,b.altKey=a.altKey,b.changedTouches=a.changedTouches,b.ctrlKey=a.ctrlKey,b.metaKey=a.metaKey,b.shiftKey=a.shiftKey,b.targetTouches=a.targetTouches);
return b}F=c.body();c.doc.addEventListener("touchstart",function(a){E=(new Date).getTime();var b=F;F=a.target;p.emit(b,"dojotouchout",{relatedTarget:F,bubbles:!0});p.emit(F,"dojotouchover",{relatedTarget:b,bubbles:!0});m(a,"touchmove","touchend")},!0);p(c.doc,"touchmove",function(b){E=(new Date).getTime();var d=c.doc.elementFromPoint(b.pageX-(w?0:c.global.pageXOffset),b.pageY-(w?0:c.global.pageYOffset));d&&(F!==d&&(p.emit(F,"dojotouchout",{relatedTarget:d,bubbles:!0}),p.emit(d,"dojotouchover",{relatedTarget:F,
bubbles:!0}),F=d),p.emit(d,"dojotouchmove",a(b))||b.preventDefault())});p(c.doc,"touchend",function(b){E=(new Date).getTime();var d=c.doc.elementFromPoint(b.pageX-(w?0:c.global.pageXOffset),b.pageY-(w?0:c.global.pageYOffset))||c.body();p.emit(d,"dojotouchend",a(b))})}));n={press:a("mousedown","touchstart",k.down),move:a("mousemove","dojotouchmove",k.move),release:a("mouseup","dojotouchend",k.up),cancel:a(f.leave,"touchcancel",t?k.cancel:null),over:a("mouseover","dojotouchover",k.over),out:a("mouseout",
"dojotouchout",k.out),enter:f._eventHandler(a("mouseover","dojotouchover",k.over)),leave:f._eventHandler(a("mouseout","dojotouchout",k.out))};return q.touch=n})},"dijit/_base/scroll":function(){define(["dojo/window","../main"],function(q,n){n.scrollIntoView=function(b,g){q.scrollIntoView(b,g)}})},"dijit/_base/sniff":function(){define(["dojo/uacss"],function(){})},"dojo/uacss":function(){define(["./dom-geometry","./_base/lang","./domReady","./sniff","./_base/window"],function(q,n,b,g,h){var p=h.doc.documentElement;
h=g("ie");var l=g("trident"),f=g("opera"),e=Math.floor,c=g("ff"),a=q.boxModel.replace(/-/,""),f={dj_quirks:g("quirks"),dj_opera:f,dj_khtml:g("khtml"),dj_webkit:g("webkit"),dj_safari:g("safari"),dj_chrome:g("chrome"),dj_edge:g("edge"),dj_gecko:g("mozilla"),dj_ios:g("ios"),dj_android:g("android")};h&&(f.dj_ie=!0,f["dj_ie"+e(h)]=!0,f.dj_iequirks=g("quirks"));l&&(f.dj_trident=!0,f["dj_trident"+e(l)]=!0);c&&(f["dj_ff"+e(c)]=!0);f["dj_"+a]=!0;var d="",m;for(m in f)f[m]&&(d+=m+" ");p.className=n.trim(p.className+
" "+d);b(function(){if(!q.isBodyLtr()){var a="dj_rtl dijitRtl "+d.replace(/ /g,"-rtl ");p.className=n.trim(p.className+" "+a+"dj_rtl dijitRtl "+d.replace(/ /g,"-rtl "))}});return g})},"dijit/_base/typematic":function(){define(["../typematic"],function(){})},"dijit/typematic":function(){define("dojo/_base/array dojo/_base/connect dojo/_base/lang dojo/on dojo/sniff ./main".split(" "),function(q,n,b,g,h,p){var l=p.typematic={_fireEventAndReload:function(){this._timer=null;this._callback(++this._count,
this._node,this._evt);this._currentTimeout=Math.max(0>this._currentTimeout?this._initialDelay:1<this._subsequentDelay?this._subsequentDelay:Math.round(this._currentTimeout*this._subsequentDelay),this._minDelay);this._timer=setTimeout(b.hitch(this,"_fireEventAndReload"),this._currentTimeout)},trigger:function(f,e,c,a,d,m,l,t){if(d!=this._obj){this.stop();this._initialDelay=l||500;this._subsequentDelay=m||.9;this._minDelay=t||10;this._obj=d;this._node=c;this._count=this._currentTimeout=-1;this._callback=
b.hitch(e,a);this._evt={faux:!0};for(var k in f)"layerX"!=k&&"layerY"!=k&&(e=f[k],"function"!=typeof e&&"undefined"!=typeof e&&(this._evt[k]=e));this._fireEventAndReload()}},stop:function(){this._timer&&(clearTimeout(this._timer),this._timer=null);this._obj&&(this._callback(-1,this._node,this._evt),this._obj=null)},addKeyListener:function(f,e,c,a,d,m,h){var t="keyCode"in e?"keyCode":"charCode"in e?"charCode":"charOrCode",k=[g(f,"keyCode"in e?"keydown":"charCode"in e?"keypress":n._keypress,b.hitch(this,
function(b){b[t]!=e[t]||void 0!==e.ctrlKey&&e.ctrlKey!=b.ctrlKey||void 0!==e.altKey&&e.altKey!=b.altKey||void 0!==e.metaKey&&e.metaKey!=(b.metaKey||!1)||void 0!==e.shiftKey&&e.shiftKey!=b.shiftKey?l._obj==e&&l.stop():(b.stopPropagation(),b.preventDefault(),l.trigger(b,c,f,a,e,d,m,h))})),g(f,"keyup",b.hitch(this,function(){l._obj==e&&l.stop()}))];return{remove:function(){q.forEach(k,function(a){a.remove()})}}},addMouseListener:function(f,e,c,a,d,m){var p=[g(f,"mousedown",b.hitch(this,function(b){b.preventDefault();
l.trigger(b,e,f,c,f,a,d,m)})),g(f,"mouseup",b.hitch(this,function(a){this._obj&&a.preventDefault();l.stop()})),g(f,"mouseout",b.hitch(this,function(a){this._obj&&a.preventDefault();l.stop()})),g(f,"dblclick",b.hitch(this,function(t){t.preventDefault();9>h("ie")&&(l.trigger(t,e,f,c,f,a,d,m),setTimeout(b.hitch(this,l.stop),50))}))];return{remove:function(){q.forEach(p,function(a){a.remove()})}}},addListener:function(b,e,c,a,d,m,l,t){var k=[this.addKeyListener(e,c,a,d,m,l,t),this.addMouseListener(b,
a,d,m,l,t)];return{remove:function(){q.forEach(k,function(a){a.remove()})}}}};return l})},"dijit/_base/wai":function(){define(["dojo/dom-attr","dojo/_base/lang","../main","../hccss"],function(q,n,b){n.mixin(b,{hasWaiRole:function(b,h){b=this.getWaiRole(b);return h?-1<b.indexOf(h):0<b.length},getWaiRole:function(b){return n.trim((q.get(b,"role")||"").replace("wairole:",""))},setWaiRole:function(b,h){q.set(b,"role",h)},removeWaiRole:function(b,h){var g=q.get(b,"role");g&&(h?(h=n.trim((" "+g+" ").replace(" "+
h+" "," ")),q.set(b,"role",h)):b.removeAttribute("role"))},hasWaiState:function(b,h){return b.hasAttribute?b.hasAttribute("aria-"+h):!!b.getAttribute("aria-"+h)},getWaiState:function(b,h){return b.getAttribute("aria-"+h)||""},setWaiState:function(b,h,p){b.setAttribute("aria-"+h,p)},removeWaiState:function(b,h){b.removeAttribute("aria-"+h)}});return b})},"dijit/hccss":function(){define(["dojo/dom-class","dojo/hccss","dojo/domReady","dojo/_base/window"],function(q,n,b,g){b(function(){n("highcontrast")&&
q.add(g.body(),"dijit_a11y")});return n})},"dojo/hccss":function(){define("require ./_base/config ./dom-class ./dom-style ./has ./domReady ./_base/window".split(" "),function(q,n,b,g,h,p,l){h.add("highcontrast",function(){var b=l.doc.createElement("div");try{b.style.cssText='border: 1px solid; border-color:red green; position: absolute; height: 5px; top: -999px;background-image: url("'+(n.blankGif||q.toUrl("./resources/blank.gif"))+'");';l.body().appendChild(b);var e=g.getComputedStyle(b),c=e.backgroundImage;
return e.borderTopColor==e.borderRightColor||c&&("none"==c||"url(invalid-url:)"==c)}catch(a){return console.warn("hccss: exception detecting high-contrast mode, document is likely hidden: "+a.toString()),!1}finally{8>=h("ie")?b.outerHTML="":l.body().removeChild(b)}});p(function(){h("highcontrast")&&b.add(l.body(),"dj_a11y")});return h})},"dijit/_base/window":function(){define(["dojo/window","../main"],function(q,n){n.getDocumentWindow=function(b){return q.get(b)}})},"dijit/form/DropDownButton":function(){define("dojo/_base/declare dojo/_base/kernel dojo/_base/lang dojo/query ../registry ../popup ./Button ../_Container ../_HasDropDown dojo/text!./templates/DropDownButton.html ../a11yclick".split(" "),
function(q,n,b,g,h,p,l,f,e,c){return q("dijit.form.DropDownButton",[l,f,e],{baseClass:"dijitDropDownButton",templateString:c,_fillContent:function(){var a=this.srcNodeRef,b=this.containerNode;if(a&&b)for(;a.hasChildNodes();){var c=a.firstChild;c.hasAttribute&&(c.hasAttribute("data-dojo-type")||c.hasAttribute("dojoType")||c.hasAttribute("data-"+n._scopeName+"-type")||c.hasAttribute(n._scopeName+"Type"))?(this.dropDownContainer=this.ownerDocument.createElement("div"),this.dropDownContainer.appendChild(c)):
b.appendChild(c)}},startup:function(){this._started||(!this.dropDown&&this.dropDownContainer&&(this.dropDown=h.byNode(this.dropDownContainer.firstChild),delete this.dropDownContainer),this.dropDown&&p.hide(this.dropDown),this.inherited(arguments))},isLoaded:function(){var a=this.dropDown;return!!a&&(!a.href||a.isLoaded)},loadDropDown:function(a){var c=this.dropDown,e=c.on("load",b.hitch(this,function(){e.remove();a()}));c.refresh()},isFocusable:function(){return this.inherited(arguments)&&!this._mouseDown}})})},
"dijit/form/Button":function(){define("require dojo/_base/declare dojo/dom-class dojo/has dojo/_base/kernel dojo/_base/lang dojo/ready ./_FormWidget ./_ButtonMixin dojo/text!./templates/Button.html ../a11yclick".split(" "),function(q,n,b,g,h,p,l,f,e,c){g("dijit-legacy-requires")&&l(0,function(){q(["dijit/form/DropDownButton","dijit/form/ComboButton","dijit/form/ToggleButton"])});l=n("dijit.form.Button"+(g("dojo-bidi")?"_NoBidi":""),[f,e],{showLabel:!0,iconClass:"dijitNoIcon",_setIconClassAttr:{node:"iconNode",
type:"class"},baseClass:"dijitButton",templateString:c,_setValueAttr:"valueNode",_setNameAttr:function(a){this.valueNode&&this.valueNode.setAttribute("name",a)},postCreate:function(){this.inherited(arguments);this._setLabelFromContainer()},_setLabelFromContainer:function(){this.containerNode&&!this.label&&(this.label=p.trim(this.containerNode.innerHTML),this.onLabelSet())},_setShowLabelAttr:function(a){this.containerNode&&b.toggle(this.containerNode,"dijitDisplayNone",!a);this._set("showLabel",a)},
setLabel:function(a){h.deprecated("dijit.form.Button.setLabel() is deprecated.  Use set('label', ...) instead.","","2.0");this.set("label",a)},onLabelSet:function(){this.inherited(arguments);this.showLabel||"title"in this.params||(this.titleNode.title=p.trim(this.containerNode.innerText||this.containerNode.textContent||""))}});g("dojo-bidi")&&(l=n("dijit.form.Button",l,{onLabelSet:function(){this.inherited(arguments);this.titleNode.title&&this.applyTextDir(this.titleNode,this.titleNode.title)},_setTextDirAttr:function(a){this._created&&
this.textDir!=a&&(this._set("textDir",a),this._setLabelAttr(this.label))}}));return l})},"dijit/form/_FormWidget":function(){define("dojo/_base/declare dojo/sniff dojo/_base/kernel dojo/ready ../_Widget ../_CssStateMixin ../_TemplatedMixin ./_FormWidgetMixin".split(" "),function(q,n,b,g,h,p,l,f){n("dijit-legacy-requires")&&g(0,function(){require(["dijit/form/_FormValueWidget"])});return q("dijit.form._FormWidget",[h,l,p,f],{setDisabled:function(e){b.deprecated("setDisabled("+e+") is deprecated. Use set('disabled',"+
e+") instead.","","2.0");this.set("disabled",e)},setValue:function(e){b.deprecated("dijit.form._FormWidget:setValue("+e+") is deprecated.  Use set('value',"+e+") instead.","","2.0");this.set("value",e)},getValue:function(){b.deprecated(this.declaredClass+"::getValue() is deprecated. Use get('value') instead.","","2.0");return this.get("value")},postMixInProperties:function(){this.nameAttrSetting=this.name&&!n("msapp")?'name\x3d"'+this.name.replace(/"/g,"\x26quot;")+'"':"";this.inherited(arguments)}})})},
"dijit/_Widget":function(){define("dojo/aspect dojo/_base/config dojo/_base/connect dojo/_base/declare dojo/has dojo/_base/kernel dojo/_base/lang dojo/query dojo/ready ./registry ./_WidgetBase ./_OnDijitClickMixin ./_FocusMixin dojo/uacss ./hccss".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m){function w(){}function t(a){return function(c,d,k,e){return c&&"string"==typeof d&&c[d]==w?c.on(d.substring(2).toLowerCase(),l.hitch(k,e)):a.apply(b,arguments)}}q.around(b,"connect",t);p.connect&&q.around(p,
"connect",t);q=g("dijit._Widget",[a,d,m],{onClick:w,onDblClick:w,onKeyDown:w,onKeyPress:w,onKeyUp:w,onMouseDown:w,onMouseMove:w,onMouseOut:w,onMouseOver:w,onMouseLeave:w,onMouseEnter:w,onMouseUp:w,constructor:function(a){this._toConnect={};for(var b in a)this[b]===w&&(this._toConnect[b.replace(/^on/,"").toLowerCase()]=a[b],delete a[b])},postCreate:function(){this.inherited(arguments);for(var a in this._toConnect)this.on(a,this._toConnect[a]);delete this._toConnect},on:function(a,c){return this[this._onMap(a)]===
w?b.connect(this.domNode,a.toLowerCase(),this,c):this.inherited(arguments)},_setFocusedAttr:function(a){this._focused=a;this._set("focused",a)},setAttribute:function(a,b){p.deprecated(this.declaredClass+"::setAttribute(attr, value) is deprecated. Use set() instead.","","2.0");this.set(a,b)},attr:function(a,b){return 2<=arguments.length||"object"===typeof a?this.set.apply(this,arguments):this.get(a)},getDescendants:function(){p.deprecated(this.declaredClass+"::getDescendants() is deprecated. Use getChildren() instead.",
"","2.0");return this.containerNode?f("[widgetId]",this.containerNode).map(c.byNode):[]},_onShow:function(){this.onShow()},onShow:function(){},onHide:function(){},onClose:function(){return!0}});h("dijit-legacy-requires")&&e(0,function(){require(["dijit/_base"])});return q})},"dijit/_WidgetBase":function(){define("require dojo/_base/array dojo/aspect dojo/_base/config dojo/_base/connect dojo/_base/declare dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/dom-geometry dojo/dom-style dojo/has dojo/_base/kernel dojo/_base/lang dojo/on dojo/ready dojo/Stateful dojo/topic dojo/_base/window ./Destroyable dojo/has!dojo-bidi?./_BidiMixin ./registry".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A){function B(a){return function(b){f[b?"set":"remove"](this.domNode,a,b);this._set(a,b)}}m.add("dijit-legacy-requires",!w.isAsync);m.add("dojo-bidi",!1);m("dijit-legacy-requires")&&u(0,function(){q(["dijit/_base/manager"])});var C={};g=p("dijit._WidgetBase",[r,z],{id:"",_setIdAttr:"domNode",lang:"",_setLangAttr:B("lang"),dir:"",_setDirAttr:B("dir"),"class":"",_setClassAttr:{node:"domNode",type:"class"},_setTypeAttr:null,style:"",title:"",tooltip:"",
baseClass:"",srcNodeRef:null,domNode:null,containerNode:null,ownerDocument:null,_setOwnerDocumentAttr:function(a){this._set("ownerDocument",a)},attributeMap:{},_blankGif:g.blankGif||q.toUrl("dojo/resources/blank.gif"),textDir:"",_introspect:function(){var a=this.constructor;if(!a._setterAttrs){var b=a.prototype,c=a._setterAttrs=[],a=a._onMap={},d;for(d in b.attributeMap)c.push(d);for(d in b)/^on/.test(d)&&(a[d.substring(2).toLowerCase()]=d),/^_set[A-Z](.*)Attr$/.test(d)&&(d=d.charAt(4).toLowerCase()+
d.substr(5,d.length-9),b.attributeMap&&d in b.attributeMap||c.push(d))}},postscript:function(a,b){this.create(a,b)},create:function(a,b){this._introspect();this.srcNodeRef=l.byId(b);this._connects=[];this._supportingWidgets=[];this.srcNodeRef&&this.srcNodeRef.id&&"string"==typeof this.srcNodeRef.id&&(this.id=this.srcNodeRef.id);a&&(this.params=a,t.mixin(this,a));this.postMixInProperties();this.id||(this.id=A.getUniqueId(this.declaredClass.replace(/\./g,"_")),this.params&&delete this.params.id);this.ownerDocument=
this.ownerDocument||(this.srcNodeRef?this.srcNodeRef.ownerDocument:document);this.ownerDocumentBody=v.body(this.ownerDocument);A.add(this);this.buildRendering();var c;this.domNode&&(this._applyAttributes(),(a=this.srcNodeRef)&&a.parentNode&&this.domNode!==a&&(a.parentNode.replaceChild(this.domNode,a),c=!0),this.domNode.setAttribute("widgetId",this.id));this.postCreate();c&&delete this.srcNodeRef;this._created=!0},_applyAttributes:function(){var a={},b;for(b in this.params||{})a[b]=this._get(b);n.forEach(this.constructor._setterAttrs,
function(b){if(!(b in a)){var c=this._get(b);c&&this.set(b,c)}},this);for(b in a)this.set(b,a[b])},postMixInProperties:function(){},buildRendering:function(){this.domNode||(this.domNode=this.srcNodeRef||this.ownerDocument.createElement("div"));if(this.baseClass){var a=this.baseClass.split(" ");this.isLeftToRight()||(a=a.concat(n.map(a,function(a){return a+"Rtl"})));e.add(this.domNode,a)}},postCreate:function(){},startup:function(){this._started||(this._started=!0,n.forEach(this.getChildren(),function(a){a._started||
a._destroyed||!t.isFunction(a.startup)||(a.startup(),a._started=!0)}))},destroyRecursive:function(a){this._beingDestroyed=!0;this.destroyDescendants(a);this.destroy(a)},destroy:function(a){function b(b){b.destroyRecursive?b.destroyRecursive(a):b.destroy&&b.destroy(a)}this._beingDestroyed=!0;this.uninitialize();n.forEach(this._connects,t.hitch(this,"disconnect"));n.forEach(this._supportingWidgets,b);this.domNode&&n.forEach(A.findWidgets(this.domNode,this.containerNode),b);this.destroyRendering(a);
A.remove(this.id);this._destroyed=!0},destroyRendering:function(a){this.bgIframe&&(this.bgIframe.destroy(a),delete this.bgIframe);this.domNode&&(a?f.remove(this.domNode,"widgetId"):c.destroy(this.domNode),delete this.domNode);this.srcNodeRef&&(a||c.destroy(this.srcNodeRef),delete this.srcNodeRef)},destroyDescendants:function(a){n.forEach(this.getChildren(),function(b){b.destroyRecursive&&b.destroyRecursive(a)})},uninitialize:function(){return!1},_setStyleAttr:function(a){var b=this.domNode;t.isObject(a)?
d.set(b,a):b.style.cssText=b.style.cssText?b.style.cssText+("; "+a):a;this._set("style",a)},_attrToDom:function(a,b,c){c=3<=arguments.length?c:this.attributeMap[a];n.forEach(t.isArray(c)?c:[c],function(c){var d=this[c.node||c||"domNode"];switch(c.type||"attribute"){case "attribute":t.isFunction(b)&&(b=t.hitch(this,b));c=c.attribute?c.attribute:/^on[A-Z][a-zA-Z]*$/.test(a)?a.toLowerCase():a;d.tagName?f.set(d,c,b):d.set(c,b);break;case "innerText":d.innerHTML="";d.appendChild(this.ownerDocument.createTextNode(b));
break;case "textContent":d.textContent=b;break;case "innerHTML":d.innerHTML=b;break;case "class":e.replace(d,b,this[a]);break;case "toggleClass":e.toggle(d,c.className||a,b)}},this)},get:function(a){var b=this._getAttrNames(a);return this[b.g]?this[b.g]():this._get(a)},set:function(a,b){if("object"===typeof a){for(var c in a)this.set(c,a[c]);return this}c=this._getAttrNames(a);var d=this[c.s];if(t.isFunction(d))var r=d.apply(this,Array.prototype.slice.call(arguments,1));else{var d=this.focusNode&&
!t.isFunction(this.focusNode)?"focusNode":"domNode",k=this[d]&&this[d].tagName,e;if((e=k)&&!(e=C[k])){e=this[d];var m={},u;for(u in e)m[u.toLowerCase()]=!0;e=C[k]=m}u=e;c=a in this.attributeMap?this.attributeMap[a]:c.s in this?this[c.s]:u&&c.l in u&&"function"!=typeof b||/^aria-|^data-|^role$/.test(a)?d:null;null!=c&&this._attrToDom(a,b,c);this._set(a,b)}return r||this},_attrPairNames:{},_getAttrNames:function(a){var b=this._attrPairNames;if(b[a])return b[a];var c=a.replace(/^[a-z]|-[a-zA-Z]/g,function(a){return a.charAt(a.length-
1).toUpperCase()});return b[a]={n:a+"Node",s:"_set"+c+"Attr",g:"_get"+c+"Attr",l:c.toLowerCase()}},_set:function(a,b){var c=this[a];this[a]=b;!this._created||c===b||c!==c&&b!==b||(this._watchCallbacks&&this._watchCallbacks(a,c,b),this.emit("attrmodified-"+a,{detail:{prevValue:c,newValue:b}}))},_get:function(a){return this[a]},emit:function(a,b,c){b=b||{};void 0===b.bubbles&&(b.bubbles=!0);void 0===b.cancelable&&(b.cancelable=!0);b.detail||(b.detail={});b.detail.widget=this;var d,r=this["on"+a];r&&
(d=r.apply(this,c?c:[b]));this._started&&!this._beingDestroyed&&k.emit(this.domNode,a.toLowerCase(),b);return d},on:function(a,c){var d=this._onMap(a);return d?b.after(this,d,c,!0):this.own(k(this.domNode,a,c))[0]},_onMap:function(a){var b=this.constructor,c=b._onMap;if(!c){var c=b._onMap={},d;for(d in b.prototype)/^on/.test(d)&&(c[d.replace(/^on/,"").toLowerCase()]=d)}return c["string"==typeof a&&a.toLowerCase()]},toString:function(){return"[Widget "+this.declaredClass+", "+(this.id||"NO ID")+"]"},
getChildren:function(){return this.containerNode?A.findWidgets(this.containerNode):[]},getParent:function(){return A.getEnclosingWidget(this.domNode.parentNode)},connect:function(a,b,c){return this.own(h.connect(a,b,this,c))[0]},disconnect:function(a){a.remove()},subscribe:function(a,b){return this.own(y.subscribe(a,t.hitch(this,b)))[0]},unsubscribe:function(a){a.remove()},isLeftToRight:function(){return this.dir?"ltr"==this.dir.toLowerCase():a.isBodyLtr(this.ownerDocument)},isFocusable:function(){return this.focus&&
"none"!=d.get(this.domNode,"display")},placeAt:function(a,b){var d=!a.tagName&&A.byId(a);!d||!d.addChild||b&&"number"!==typeof b?(a=d&&"domNode"in d?d.containerNode&&!/after|before|replace/.test(b||"")?d.containerNode:d.domNode:l.byId(a,this.ownerDocument),c.place(this.domNode,a,b),!this._started&&(this.getParent()||{})._started&&this.startup()):d.addChild(this,b);return this},defer:function(a,b){var c=setTimeout(t.hitch(this,function(){c&&(c=null,this._destroyed||t.hitch(this,a)())}),b||0);return{remove:function(){c&&
(clearTimeout(c),c=null);return null}}}});m("dojo-bidi")&&g.extend(x);return g})},"dijit/Destroyable":function(){define(["dojo/_base/array","dojo/aspect","dojo/_base/declare"],function(q,n,b){return b("dijit.Destroyable",null,{destroy:function(b){this._destroyed=!0},own:function(){var b=["destroyRecursive","destroy","remove"];q.forEach(arguments,function(h){function g(){f.remove();q.forEach(e,function(b){b.remove()})}var l,f=n.before(this,"destroy",function(b){h[l](b)}),e=[];h.then?(l="cancel",h.then(g,
g)):q.forEach(b,function(b){"function"===typeof h[b]&&(l||(l=b),e.push(n.after(h,b,g,!0)))})},this);return arguments}})})},"dijit/_OnDijitClickMixin":function(){define("dojo/on dojo/_base/array dojo/keys dojo/_base/declare dojo/has ./a11yclick".split(" "),function(q,n,b,g,h,p){q=g("dijit._OnDijitClickMixin",null,{connect:function(b,f,e){return this.inherited(arguments,[b,"ondijitclick"==f?p:f,e])}});q.a11yclick=p;return q})},"dijit/a11yclick":function(){define(["dojo/keys","dojo/mouse","dojo/on",
"dojo/touch"],function(q,n,b,g){function h(b){if((b.keyCode===q.ENTER||b.keyCode===q.SPACE)&&!/input|button|textarea/i.test(b.target.nodeName))for(b=b.target;b;b=b.parentNode)if(b.dojoClick)return!0}var p;b(document,"keydown",function(b){h(b)?(p=b.target,b.preventDefault()):p=null});b(document,"keyup",function(f){h(f)&&f.target==p&&(p=null,b.emit(f.target,"click",{cancelable:!0,bubbles:!0,ctrlKey:f.ctrlKey,shiftKey:f.shiftKey,metaKey:f.metaKey,altKey:f.altKey,_origType:f.type}))});var l=function(f,
e){f.dojoClick=!0;return b(f,"click",e)};l.click=l;l.press=function(f,e){var c=b(f,g.press,function(a){("mousedown"!=a.type||n.isLeft(a))&&e(a)}),a=b(f,"keydown",function(a){a.keyCode!==q.ENTER&&a.keyCode!==q.SPACE||e(a)});return{remove:function(){c.remove();a.remove()}}};l.release=function(f,e){var c=b(f,g.release,function(a){("mouseup"!=a.type||n.isLeft(a))&&e(a)}),a=b(f,"keyup",function(a){a.keyCode!==q.ENTER&&a.keyCode!==q.SPACE||e(a)});return{remove:function(){c.remove();a.remove()}}};l.move=
g.move;return l})},"dijit/_FocusMixin":function(){define(["./focus","./_WidgetBase","dojo/_base/declare","dojo/_base/lang"],function(q,n,b,g){g.extend(n,{focused:!1,onFocus:function(){},onBlur:function(){},_onFocus:function(){this.onFocus()},_onBlur:function(){this.onBlur()}});return b("dijit._FocusMixin",null,{_focusManager:q})})},"dijit/_CssStateMixin":function(){define("dojo/_base/array dojo/_base/declare dojo/dom dojo/dom-class dojo/has dojo/_base/lang dojo/on dojo/domReady dojo/touch dojo/_base/window ./a11yclick ./registry".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d){n=n("dijit._CssStateMixin",[],{hovering:!1,active:!1,_applyAttributes:function(){this.inherited(arguments);q.forEach("disabled readOnly checked selected focused state hovering active _opened".split(" "),function(a){this.watch(a,p.hitch(this,"_setStateClass"))},this);for(var a in this.cssStateNodes||{})this._trackMouseState(this[a],this.cssStateNodes[a]);this._trackMouseState(this.domNode,this.baseClass);this._setStateClass()},_cssMouseEvent:function(a){if(!this.disabled)switch(a.type){case "mouseover":case "MSPointerOver":case "pointerover":this._set("hovering",
!0);this._set("active",this._mouseDown);break;case "mouseout":case "MSPointerOut":case "pointerout":this._set("hovering",!1);this._set("active",!1);break;case "mousedown":case "touchstart":case "MSPointerDown":case "pointerdown":case "keydown":this._set("active",!0);break;case "mouseup":case "dojotouchend":case "MSPointerUp":case "pointerup":case "keyup":this._set("active",!1)}},_setStateClass:function(){function a(a){b=b.concat(q.map(b,function(b){return b+a}),"dijit"+a)}var b=this.baseClass.split(" ");
this.isLeftToRight()||a("Rtl");var c="mixed"==this.checked?"Mixed":this.checked?"Checked":"";this.checked&&a(c);this.state&&a(this.state);this.selected&&a("Selected");this._opened&&a("Opened");this.disabled?a("Disabled"):this.readOnly?a("ReadOnly"):this.active?a("Active"):this.hovering&&a("Hover");this.focused&&a("Focused");var c=this.stateNode||this.domNode,d={};q.forEach(c.className.split(" "),function(a){d[a]=!0});"_stateClasses"in this&&q.forEach(this._stateClasses,function(a){delete d[a]});q.forEach(b,
function(a){d[a]=!0});var e=[],r;for(r in d)e.push(r);c.className=e.join(" ");this._stateClasses=b},_subnodeCssMouseEvent:function(a,b,c){function d(c){g.toggle(a,b+"Active",c)}if(!this.disabled&&!this.readOnly)switch(c.type){case "mouseover":case "MSPointerOver":case "pointerover":g.toggle(a,b+"Hover",!0);break;case "mouseout":case "MSPointerOut":case "pointerout":g.toggle(a,b+"Hover",!1);d(!1);break;case "mousedown":case "touchstart":case "MSPointerDown":case "pointerdown":case "keydown":d(!0);
break;case "mouseup":case "MSPointerUp":case "pointerup":case "dojotouchend":case "keyup":d(!1);break;case "focus":case "focusin":g.toggle(a,b+"Focused",!0);break;case "blur":case "focusout":g.toggle(a,b+"Focused",!1)}},_trackMouseState:function(a,b){a._cssState=b}});f(function(){function m(a,c,r){if(!r||!b.isDescendant(r,c))for(;c&&c!=r;c=c.parentNode)if(c._cssState){var k=d.getEnclosingWidget(c);k&&(c==k.domNode?k._cssMouseEvent(a):k._subnodeCssMouseEvent(c,c._cssState,a))}}var f=c.body(),t;l(f,
e.over,function(a){m(a,a.target,a.relatedTarget)});l(f,e.out,function(a){m(a,a.target,a.relatedTarget)});l(f,a.press,function(a){t=a.target;m(a,t)});l(f,a.release,function(a){m(a,t);t=null});l(f,"focusin, focusout",function(a){var b=a.target;if(b._cssState&&!b.getAttribute("widgetId")){var c=d.getEnclosingWidget(b);c&&c._subnodeCssMouseEvent(b,b._cssState,a)}})});return n})},"dijit/_TemplatedMixin":function(){define("dojo/cache dojo/_base/declare dojo/dom-construct dojo/_base/lang dojo/on dojo/sniff dojo/string ./_AttachMixin".split(" "),
function(q,n,b,g,h,p,l,f){var e=n("dijit._TemplatedMixin",f,{templateString:null,templatePath:null,_skipNodeCache:!1,searchContainerNode:!0,_stringRepl:function(b){var a=this.declaredClass,c=this;return l.substitute(b,this,function(b,d){"!"==d.charAt(0)&&(b=g.getObject(d.substr(1),!1,c));if("undefined"==typeof b)throw Error(a+" template:"+d);return null==b?"":"!"==d.charAt(0)?b:this._escapeValue(""+b)},this)},_escapeValue:function(b){return b.replace(/["'<>&]/g,function(a){return{"\x26":"\x26amp;",
"\x3c":"\x26lt;","\x3e":"\x26gt;",'"':"\x26quot;","'":"\x26#x27;"}[a]})},buildRendering:function(){if(!this._rendered){this.templateString||(this.templateString=q(this.templatePath,{sanitize:!0}));var c=e.getCachedTemplate(this.templateString,this._skipNodeCache,this.ownerDocument),a;if(g.isString(c)){if(a=b.toDom(this._stringRepl(c),this.ownerDocument),1!=a.nodeType)throw Error("Invalid template: "+c);}else a=c.cloneNode(!0);this.domNode=a}this.inherited(arguments);this._rendered||this._fillContent(this.srcNodeRef);
this._rendered=!0},_fillContent:function(b){var a=this.containerNode;if(b&&a)for(;b.hasChildNodes();)a.appendChild(b.firstChild)}});e._templateCache={};e.getCachedTemplate=function(c,a,d){var m=e._templateCache,f=c,t=m[f];if(t){try{if(!t.ownerDocument||t.ownerDocument==(d||document))return t}catch(k){}b.destroy(t)}c=l.trim(c);if(a||c.match(/\$\{([^\}]+)\}/g))return m[f]=c;a=b.toDom(c,d);if(1!=a.nodeType)throw Error("Invalid template: "+c);return m[f]=a};p("ie")&&h(window,"unload",function(){var c=
e._templateCache,a;for(a in c){var d=c[a];"object"==typeof d&&b.destroy(d);delete c[a]}});return e})},"dojo/cache":function(){define(["./_base/kernel","./text"],function(q){return q.cache})},"dojo/string":function(){define(["./_base/kernel","./_base/lang"],function(q,n){var b=/[&<>'"\/]/g,g={"\x26":"\x26amp;","\x3c":"\x26lt;","\x3e":"\x26gt;",'"':"\x26quot;","'":"\x26#x27;","/":"\x26#x2F;"},h={};n.setObject("dojo.string",h);h.escape=function(h){return h?h.replace(b,function(b){return g[b]}):""};h.rep=
function(b,l){if(0>=l||!b)return"";for(var f=[];;){l&1&&f.push(b);if(!(l>>=1))break;b+=b}return f.join("")};h.pad=function(b,l,f,e){f||(f="0");b=String(b);l=h.rep(f,Math.ceil((l-b.length)/f.length));return e?b+l:l+b};h.substitute=function(b,l,f,e){e=e||q.global;f=f?n.hitch(e,f):function(b){return b};return b.replace(/\$\{([^\s\:\}]*)(?:\:([^\s\:\}]+))?\}/g,function(b,a,d){if(""==a)return"$";b=n.getObject(a,!1,l);d&&(b=n.getObject(d,!1,e).call(e,b,a));d=f(b,a);if("undefined"===typeof d)throw Error('string.substitute could not find key "'+
a+'" in template');return d.toString()})};h.trim=String.prototype.trim?n.trim:function(b){b=b.replace(/^\s+/,"");for(var l=b.length-1;0<=l;l--)if(/\S/.test(b.charAt(l))){b=b.substring(0,l+1);break}return b};return h})},"dijit/_AttachMixin":function(){define("require dojo/_base/array dojo/_base/connect dojo/_base/declare dojo/_base/lang dojo/mouse dojo/on dojo/touch ./_WidgetBase".split(" "),function(q,n,b,g,h,p,l,f,e){var c=h.delegate(f,{mouseenter:p.enter,mouseleave:p.leave,keypress:b._keypress}),
a;b=g("dijit._AttachMixin",null,{constructor:function(){this._attachPoints=[];this._attachEvents=[]},buildRendering:function(){this.inherited(arguments);this._attachTemplateNodes(this.domNode);this._beforeFillContent()},_beforeFillContent:function(){},_attachTemplateNodes:function(a){for(var b=a;;)if(1==b.nodeType&&(this._processTemplateNode(b,function(a,b){return a.getAttribute(b)},this._attach)||this.searchContainerNode)&&b.firstChild)b=b.firstChild;else{if(b==a)break;for(;!b.nextSibling;)if(b=
b.parentNode,b==a)return;b=b.nextSibling}},_processTemplateNode:function(a,b,c){var d=!0,k=this.attachScope||this,e=b(a,"dojoAttachPoint")||b(a,"data-dojo-attach-point");if(e)for(var r=e.split(/\s*,\s*/);e=r.shift();)h.isArray(k[e])?k[e].push(a):k[e]=a,d="containerNode"!=e,this._attachPoints.push(e);if(b=b(a,"dojoAttachEvent")||b(a,"data-dojo-attach-event"))for(e=b.split(/\s*,\s*/),r=h.trim;b=e.shift();)if(b){var m=null;-1!=b.indexOf(":")?(m=b.split(":"),b=r(m[0]),m=r(m[1])):b=r(b);m||(m=b);this._attachEvents.push(c(a,
b,h.hitch(k,m)))}return d},_attach:function(b,e,f){e=e.replace(/^on/,"").toLowerCase();e="dijitclick"==e?a||(a=q("./a11yclick")):c[e]||e;return l(b,e,f)},_detachTemplateNodes:function(){var a=this.attachScope||this;n.forEach(this._attachPoints,function(b){delete a[b]});this._attachPoints=[];n.forEach(this._attachEvents,function(a){a.remove()});this._attachEvents=[]},destroyRendering:function(){this._detachTemplateNodes();this.inherited(arguments)}});h.extend(e,{dojoAttachEvent:"",dojoAttachPoint:""});
return b})},"dijit/form/_FormWidgetMixin":function(){define("dojo/_base/array dojo/_base/declare dojo/dom-attr dojo/dom-style dojo/_base/lang dojo/mouse dojo/on dojo/sniff dojo/window ../a11y".split(" "),function(q,n,b,g,h,p,l,f,e,c){return n("dijit.form._FormWidgetMixin",null,{name:"",alt:"",value:"",type:"text","aria-label":"focusNode",tabIndex:"0",_setTabIndexAttr:"focusNode",disabled:!1,intermediateChanges:!1,scrollOnFocus:!0,_setIdAttr:"focusNode",_setDisabledAttr:function(a){this._set("disabled",
a);/^(button|input|select|textarea|optgroup|option|fieldset)$/i.test(this.focusNode.tagName)?(b.set(this.focusNode,"disabled",a),f("trident")&&"readOnly"in this&&b.set(this.focusNode,"readonly",a||this.readOnly)):this.focusNode.setAttribute("aria-disabled",a?"true":"false");this.valueNode&&b.set(this.valueNode,"disabled",a);a?(this._set("hovering",!1),this._set("active",!1),a="tabIndex"in this.attributeMap?this.attributeMap.tabIndex:"_setTabIndexAttr"in this?this._setTabIndexAttr:"focusNode",q.forEach(h.isArray(a)?
a:[a],function(a){a=this[a];f("webkit")||c.hasDefaultTabStop(a)?a.setAttribute("tabIndex","-1"):a.removeAttribute("tabIndex")},this)):""!=this.tabIndex&&this.set("tabIndex",this.tabIndex)},_onFocus:function(a){if("mouse"==a&&this.isFocusable())var b=this.own(l(this.focusNode,"focus",function(){g.remove();b.remove()}))[0],c=f("pointer-events")?"pointerup":f("MSPointer")?"MSPointerUp":f("touch-events")?"touchend, mouseup":"mouseup",g=this.own(l(this.ownerDocumentBody,c,h.hitch(this,function(a){g.remove();
b.remove();this.focused&&("touchend"==a.type?this.defer("focus"):this.focus())})))[0];this.scrollOnFocus&&this.defer(function(){e.scrollIntoView(this.domNode)});this.inherited(arguments)},isFocusable:function(){return!this.disabled&&this.focusNode&&"none"!=g.get(this.domNode,"display")},focus:function(){if(!this.disabled&&this.focusNode.focus)try{this.focusNode.focus()}catch(a){}},compare:function(a,b){return"number"==typeof a&&"number"==typeof b?isNaN(a)&&isNaN(b)?0:a-b:a>b?1:a<b?-1:0},onChange:function(){},
_onChangeActive:!1,_handleOnChange:function(a,b){void 0!=this._lastValueReported||null!==b&&this._onChangeActive||(this._resetValue=this._lastValueReported=a);this._pendingOnChange=this._pendingOnChange||typeof a!=typeof this._lastValueReported||0!=this.compare(a,this._lastValueReported);(this.intermediateChanges||b||void 0===b)&&this._pendingOnChange&&(this._lastValueReported=a,this._pendingOnChange=!1,this._onChangeActive&&(this._onChangeHandle&&this._onChangeHandle.remove(),this._onChangeHandle=
this.defer(function(){this._onChangeHandle=null;this.onChange(a)})))},create:function(){this.inherited(arguments);this._onChangeActive=!0},destroy:function(){this._onChangeHandle&&(this._onChangeHandle.remove(),this.onChange(this._lastValueReported));this.inherited(arguments)}})})},"dijit/form/_ButtonMixin":function(){define(["dojo/_base/declare","dojo/dom","dojo/has","../registry"],function(q,n,b,g){var h=q("dijit.form._ButtonMixin"+(b("dojo-bidi")?"_NoBidi":""),null,{label:"",type:"button",__onClick:function(b){b.stopPropagation();
b.preventDefault();this.disabled||this.valueNode.click(b);return!1},_onClick:function(b){if(this.disabled)return b.stopPropagation(),b.preventDefault(),!1;!1===this.onClick(b)&&b.preventDefault();var l=b.defaultPrevented;if(!l&&"submit"==this.type&&!(this.valueNode||this.focusNode).form)for(var f=this.domNode;f.parentNode;f=f.parentNode){var e=g.byNode(f);if(e&&"function"==typeof e._onSubmit){e._onSubmit(b);b.preventDefault();l=!0;break}}return!l},postCreate:function(){this.inherited(arguments);n.setSelectable(this.focusNode,
!1)},onClick:function(){return!0},_setLabelAttr:function(b){this._set("label",b);(this.containerNode||this.focusNode).innerHTML=b;this.onLabelSet()},onLabelSet:function(){}});b("dojo-bidi")&&(h=q("dijit.form._ButtonMixin",h,{onLabelSet:function(){this.inherited(arguments);this.applyTextDir(this.containerNode||this.focusNode)}}));return h})},"dijit/_Container":function(){define(["dojo/_base/array","dojo/_base/declare","dojo/dom-construct","dojo/_base/kernel"],function(q,n,b,g){return n("dijit._Container",
null,{buildRendering:function(){this.inherited(arguments);this.containerNode||(this.containerNode=this.domNode)},addChild:function(h,g){var l=this.containerNode;if(0<g){for(l=l.firstChild;0<g;)1==l.nodeType&&g--,l=l.nextSibling;l?g="before":(l=this.containerNode,g="last")}b.place(h.domNode,l,g);this._started&&!h._started&&h.startup()},removeChild:function(b){"number"==typeof b&&(b=this.getChildren()[b]);b&&(b=b.domNode)&&b.parentNode&&b.parentNode.removeChild(b)},hasChildren:function(){return 0<this.getChildren().length},
_getSiblingOfChild:function(b,g){var l=this.getChildren();b=q.indexOf(l,b);return l[b+g]},getIndexOfChild:function(b){return q.indexOf(this.getChildren(),b)}})})},"dijit/_HasDropDown":function(){define("dojo/_base/declare dojo/_base/Deferred dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-geometry dojo/dom-style dojo/has dojo/keys dojo/_base/lang dojo/on dojo/touch ./registry ./focus ./popup ./_FocusMixin".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k){return q("dijit._HasDropDown",k,{_buttonNode:null,
_arrowWrapperNode:null,_popupStateNode:null,_aroundNode:null,dropDown:null,autoWidth:!0,forceWidth:!1,maxHeight:-1,dropDownPosition:["below","above"],_stopClickEvents:!0,_onDropDownMouseDown:function(b){this.disabled||this.readOnly||("MSPointerDown"!=b.type&&b.preventDefault(),this.own(a.once(this.ownerDocument,d.release,c.hitch(this,"_onDropDownMouseUp"))),this.toggleDropDown())},_onDropDownMouseUp:function(a){var b=this.dropDown,c=!1;if(a&&this._opened){var d=p.position(this._buttonNode,!0);if(!(a.pageX>=
d.x&&a.pageX<=d.x+d.w&&a.pageY>=d.y&&a.pageY<=d.y+d.h)){for(d=a.target;d&&!c;)h.contains(d,"dijitPopup")?c=!0:d=d.parentNode;if(c){d=a.target;if(b.onItemClick){for(var e;d&&!(e=m.byNode(d));)d=d.parentNode;if(e&&e.onClick&&e.getParent)e.getParent().onItemClick(e,a)}return}}}this._opened?b.focus&&(!1!==b.autoFocus||"mouseup"==a.type&&!this.hovering)&&(this._focusDropDownTimer=this.defer(function(){b.focus();delete this._focusDropDownTimer})):this.focus&&this.defer("focus")},_onDropDownClick:function(a){this._stopClickEvents&&
(a.stopPropagation(),a.preventDefault())},buildRendering:function(){this.inherited(arguments);this._buttonNode=this._buttonNode||this.focusNode||this.domNode;this._popupStateNode=this._popupStateNode||this.focusNode||this._buttonNode;var a={after:this.isLeftToRight()?"Right":"Left",before:this.isLeftToRight()?"Left":"Right",above:"Up",below:"Down",left:"Left",right:"Right"}[this.dropDownPosition[0]]||this.dropDownPosition[0]||"Down";h.add(this._arrowWrapperNode||this._buttonNode,"dijit"+a+"ArrowButton")},
postCreate:function(){this.inherited(arguments);var b=this.focusNode||this.domNode;this.own(a(this._buttonNode,d.press,c.hitch(this,"_onDropDownMouseDown")),a(this._buttonNode,"click",c.hitch(this,"_onDropDownClick")),a(b,"keydown",c.hitch(this,"_onKey")),a(b,"keyup",c.hitch(this,"_onKeyUp")))},destroy:function(){this._opened&&this.closeDropDown(!0);this.dropDown&&(this.dropDown._destroyed||this.dropDown.destroyRecursive(),delete this.dropDown);this.inherited(arguments)},_onKey:function(a){if(!this.disabled&&
!this.readOnly){var b=this.dropDown,c=a.target;b&&this._opened&&b.handleKey&&!1===b.handleKey(a)?(a.stopPropagation(),a.preventDefault()):b&&this._opened&&a.keyCode==e.ESCAPE?(this.closeDropDown(),a.stopPropagation(),a.preventDefault()):!this._opened&&(a.keyCode==e.DOWN_ARROW||(a.keyCode==e.ENTER||a.keyCode==e.SPACE&&(!this._searchTimer||a.ctrlKey||a.altKey||a.metaKey))&&("input"!==(c.tagName||"").toLowerCase()||c.type&&"text"!==c.type.toLowerCase()))&&(this._toggleOnKeyUp=!0,a.stopPropagation(),
a.preventDefault())}},_onKeyUp:function(){if(this._toggleOnKeyUp){delete this._toggleOnKeyUp;this.toggleDropDown();var a=this.dropDown;a&&a.focus&&this.defer(c.hitch(a,"focus"),1)}},_onBlur:function(){this.closeDropDown(!1);this.inherited(arguments)},isLoaded:function(){return!0},loadDropDown:function(a){a()},loadAndOpenDropDown:function(){var a=new n,b=c.hitch(this,function(){this.openDropDown();a.resolve(this.dropDown)});this.isLoaded()?b():this.loadDropDown(b);return a},toggleDropDown:function(){this.disabled||
this.readOnly||(this._opened?this.closeDropDown(!0):this.loadAndOpenDropDown())},openDropDown:function(){var a=this.dropDown,b=a.domNode,d=this._aroundNode||this.domNode,e=this,k=t.open({parent:this,popup:a,around:d,orient:this.dropDownPosition,maxHeight:this.maxHeight,onExecute:function(){e.closeDropDown(!0)},onCancel:function(){e.closeDropDown(!0)},onClose:function(){g.set(e._popupStateNode,"popupActive",!1);h.remove(e._popupStateNode,"dijitHasDropDownOpen");e._set("_opened",!1)}});if(this.forceWidth||
this.autoWidth&&d.offsetWidth>a._popupWrapper.offsetWidth){var d=d.offsetWidth-a._popupWrapper.offsetWidth,m={w:a.domNode.offsetWidth+d};this._origStyle=b.style.cssText;c.isFunction(a.resize)?a.resize(m):p.setMarginBox(b,m);"R"==k.corner[1]&&(a._popupWrapper.style.left=a._popupWrapper.style.left.replace("px","")-d+"px")}g.set(this._popupStateNode,"popupActive","true");h.add(this._popupStateNode,"dijitHasDropDownOpen");this._set("_opened",!0);this._popupStateNode.setAttribute("aria-expanded","true");
this._popupStateNode.setAttribute("aria-owns",a.id);"presentation"===b.getAttribute("role")||b.getAttribute("aria-labelledby")||b.setAttribute("aria-labelledby",this.id);return k},closeDropDown:function(a){this._focusDropDownTimer&&(this._focusDropDownTimer.remove(),delete this._focusDropDownTimer);this._opened&&(this._popupStateNode.setAttribute("aria-expanded","false"),a&&this.focus&&this.focus(),t.close(this.dropDown),this._opened=!1);this._origStyle&&(this.dropDown.domNode.style.cssText=this._origStyle,
delete this._origStyle)}})})},"dijit/form/ComboButton":function(){define("dojo/_base/declare dojo/keys ../focus ./DropDownButton dojo/text!./templates/ComboButton.html ../a11yclick".split(" "),function(q,n,b,g,h){return q("dijit.form.ComboButton",g,{templateString:h,_setIdAttr:"",_setTabIndexAttr:["focusNode","titleNode"],_setTitleAttr:"titleNode",optionsTitle:"",baseClass:"dijitComboButton",cssStateNodes:{buttonNode:"dijitButtonNode",titleNode:"dijitButtonContents",_popupStateNode:"dijitDownArrowButton"},
_focusedNode:null,_onButtonKeyDown:function(h){h.keyCode==n[this.isLeftToRight()?"RIGHT_ARROW":"LEFT_ARROW"]&&(b.focus(this._popupStateNode),h.stopPropagation(),h.preventDefault())},_onArrowKeyDown:function(h){h.keyCode==n[this.isLeftToRight()?"LEFT_ARROW":"RIGHT_ARROW"]&&(b.focus(this.titleNode),h.stopPropagation(),h.preventDefault())},focus:function(h){this.disabled||b.focus("start"==h?this.titleNode:this._popupStateNode)}})})},"dijit/form/ToggleButton":function(){define(["dojo/_base/declare","dojo/_base/kernel",
"./Button","./_ToggleButtonMixin"],function(q,n,b,g){return q("dijit.form.ToggleButton",[b,g],{baseClass:"dijitToggleButton",setChecked:function(b){n.deprecated("setChecked("+b+") is deprecated. Use set('checked',"+b+") instead.","","2.0");this.set("checked",b)}})})},"dijit/form/_ToggleButtonMixin":function(){define(["dojo/_base/declare","dojo/dom-attr"],function(q,n){return q("dijit.form._ToggleButtonMixin",null,{checked:!1,_aria_attr:"aria-pressed",_onClick:function(b){var g=this.checked;this._set("checked",
!g);var h=this.inherited(arguments);this.set("checked",h?this.checked:g);return h},_setCheckedAttr:function(b,g){this._set("checked",b);var h=this.focusNode||this.domNode;this._created&&n.get(h,"checked")!=!!b&&n.set(h,"checked",!!b);h.setAttribute(this._aria_attr,String(b));this._handleOnChange(b,g)},postCreate:function(){this.inherited(arguments);var b=this.focusNode||this.domNode;this.checked&&b.setAttribute("checked","checked");void 0===this._resetValue&&(this._lastValueReported=this._resetValue=
this.checked)},reset:function(){this._hasBeenBlurred=!1;this.set("checked",this.params.checked||!1)}})})},"dijit/TooltipDialog":function(){define("dojo/_base/declare dojo/dom-class dojo/has dojo/keys dojo/_base/lang dojo/on ./focus ./layout/ContentPane ./_DialogMixin ./form/_FormMixin ./_TemplatedMixin dojo/text!./templates/TooltipDialog.html ./main".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m){q=q("dijit.TooltipDialog",[f,a,c,e],{title:"",doLayout:!1,autofocus:!0,baseClass:"dijitTooltipDialog",
_firstFocusItem:null,_lastFocusItem:null,templateString:d,_setTitleAttr:"containerNode",postCreate:function(){this.inherited(arguments);this.own(p(this.domNode,"keydown",h.hitch(this,"_onKey")))},orient:function(a,b,c){a={"MR-ML":"dijitTooltipRight","ML-MR":"dijitTooltipLeft","TM-BM":"dijitTooltipAbove","BM-TM":"dijitTooltipBelow","BL-TL":"dijitTooltipBelow dijitTooltipABLeft","TL-BL":"dijitTooltipAbove dijitTooltipABLeft","BR-TR":"dijitTooltipBelow dijitTooltipABRight","TR-BR":"dijitTooltipAbove dijitTooltipABRight",
"BR-BL":"dijitTooltipRight","BL-BR":"dijitTooltipLeft","BR-TL":"dijitTooltipBelow dijitTooltipABLeft","BL-TR":"dijitTooltipBelow dijitTooltipABRight","TL-BR":"dijitTooltipAbove dijitTooltipABRight","TR-BL":"dijitTooltipAbove dijitTooltipABLeft"}[b+"-"+c];n.replace(this.domNode,a,this._currentOrientClass||"");this._currentOrientClass=a},focus:function(){this._getFocusItems();l.focus(this._firstFocusItem)},onOpen:function(a){this.orient(this.domNode,a.aroundCorner,a.corner);var b=a.aroundNodePos;"M"==
a.corner.charAt(0)&&"M"==a.aroundCorner.charAt(0)?(this.connectorNode.style.top=b.y+(b.h-this.connectorNode.offsetHeight>>1)-a.y+"px",this.connectorNode.style.left=""):"M"==a.corner.charAt(1)&&"M"==a.aroundCorner.charAt(1)&&(this.connectorNode.style.left=b.x+(b.w-this.connectorNode.offsetWidth>>1)-a.x+"px");this._onShow()},onClose:function(){this.onHide()},_onKey:function(a){if(a.keyCode==g.ESCAPE)this.defer("onCancel"),a.stopPropagation(),a.preventDefault();else if(a.keyCode==g.TAB){var b=a.target;
this._getFocusItems();this._firstFocusItem==this._lastFocusItem?(a.stopPropagation(),a.preventDefault()):b==this._firstFocusItem&&a.shiftKey?(l.focus(this._lastFocusItem),a.stopPropagation(),a.preventDefault()):b!=this._lastFocusItem||a.shiftKey?a.stopPropagation():(l.focus(this._firstFocusItem),a.stopPropagation(),a.preventDefault())}}});b("dojo-bidi")&&q.extend({_setTitleAttr:function(a){this.containerNode.title=this.textDir&&this.enforceTextDirWithUcc?this.enforceTextDirWithUcc(null,a):a;this._set("title",
a)},_setTextDirAttr:function(a){this._created&&this.textDir==a||(this._set("textDir",a),this.textDir&&this.title&&(this.containerNode.title=this.enforceTextDirWithUcc(null,this.title)))}});return q})},"dijit/layout/ContentPane":function(){define("dojo/_base/kernel dojo/_base/lang ../_Widget ../_Container ./_ContentPaneResizeMixin dojo/string dojo/html dojo/_base/array dojo/_base/declare dojo/_base/Deferred dojo/dom dojo/dom-attr dojo/dom-construct dojo/_base/xhr dojo/i18n dojo/when dojo/i18n!../nls/loading".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k){return e("dijit.layout.ContentPane",[b,g,h],{href:"",content:"",extractContent:!1,parseOnLoad:!0,parserScope:q._scopeName,preventCache:!1,preload:!1,refreshOnShow:!1,loadingMessage:"\x3cspan class\x3d'dijitContentPaneLoading'\x3e\x3cspan class\x3d'dijitInline dijitIconLoading'\x3e\x3c/span\x3e${loadingState}\x3c/span\x3e",errorMessage:"\x3cspan class\x3d'dijitContentPaneError'\x3e\x3cspan class\x3d'dijitInline dijitIconError'\x3e\x3c/span\x3e${errorState}\x3c/span\x3e",
isLoaded:!1,baseClass:"dijitContentPane",ioArgs:{},onLoadDeferred:null,_setTitleAttr:null,stopParser:!0,template:!1,markupFactory:function(a,b,c){var d=new c(a,b);return!d.href&&d._contentSetter&&d._contentSetter.parseDeferred&&!d._contentSetter.parseDeferred.isFulfilled()?d._contentSetter.parseDeferred.then(function(){return d}):d},create:function(b,c){if(!(b&&b.template||!c||"href"in b||"content"in b)){c=a.byId(c);for(var d=c.ownerDocument.createDocumentFragment();c.firstChild;)d.appendChild(c.firstChild);
b=n.delegate(b,{content:d})}this.inherited(arguments,[b,c])},postMixInProperties:function(){this.inherited(arguments);var a=t.getLocalization("dijit","loading",this.lang);this.loadingMessage=p.substitute(this.loadingMessage,a);this.errorMessage=p.substitute(this.errorMessage,a)},buildRendering:function(){this.inherited(arguments);this.containerNode||(this.containerNode=this.domNode);this.domNode.removeAttribute("title")},startup:function(){this.inherited(arguments);this._contentSetter&&f.forEach(this._contentSetter.parseResults,
function(a){a._started||a._destroyed||!n.isFunction(a.startup)||(a.startup(),a._started=!0)},this)},_startChildren:function(){f.forEach(this.getChildren(),function(a){a._started||a._destroyed||!n.isFunction(a.startup)||(a.startup(),a._started=!0)});this._contentSetter&&f.forEach(this._contentSetter.parseResults,function(a){a._started||a._destroyed||!n.isFunction(a.startup)||(a.startup(),a._started=!0)},this)},setHref:function(a){q.deprecated("dijit.layout.ContentPane.setHref() is deprecated. Use set('href', ...) instead.",
"","2.0");return this.set("href",a)},_setHrefAttr:function(a){this.cancel();this.onLoadDeferred=new c(n.hitch(this,"cancel"));this.onLoadDeferred.then(n.hitch(this,"onLoad"));this._set("href",a);this.preload||this._created&&this._isShown()?this._load():this._hrefChanged=!0;return this.onLoadDeferred},setContent:function(a){q.deprecated("dijit.layout.ContentPane.setContent() is deprecated.  Use set('content', ...) instead.","","2.0");this.set("content",a)},_setContentAttr:function(a){this._set("href",
"");this.cancel();this.onLoadDeferred=new c(n.hitch(this,"cancel"));this._created&&this.onLoadDeferred.then(n.hitch(this,"onLoad"));this._setContent(a||"");this._isDownloaded=!1;return this.onLoadDeferred},_getContentAttr:function(){return this.containerNode.innerHTML},cancel:function(){this._xhrDfd&&-1==this._xhrDfd.fired&&this._xhrDfd.cancel();delete this._xhrDfd;this.onLoadDeferred=null},destroy:function(){this.cancel();this.inherited(arguments)},destroyRecursive:function(a){this._beingDestroyed||
this.inherited(arguments)},_onShow:function(){this.inherited(arguments);if(this.href&&!this._xhrDfd&&(!this.isLoaded||this._hrefChanged||this.refreshOnShow))return this.refresh()},refresh:function(){this.cancel();this.onLoadDeferred=new c(n.hitch(this,"cancel"));this.onLoadDeferred.then(n.hitch(this,"onLoad"));this._load();return this.onLoadDeferred},_load:function(){this._setContent(this.onDownloadStart(),!0);var a=this,b={preventCache:this.preventCache||this.refreshOnShow,url:this.href,handleAs:"text"};
n.isObject(this.ioArgs)&&n.mixin(b,this.ioArgs);var c=this._xhrDfd=(this.ioMethod||w.get)(b),d;c.then(function(b){d=b;try{return a._isDownloaded=!0,a._setContent(b,!1)}catch(x){a._onError("Content",x)}},function(b){c.canceled||a._onError("Download",b);delete a._xhrDfd;return b}).then(function(){a.onDownloadEnd();delete a._xhrDfd;return d});delete this._hrefChanged},_onLoadHandler:function(a){this._set("isLoaded",!0);try{this.onLoadDeferred.resolve(a)}catch(r){console.error("Error "+(this.widgetId||
this.id)+" running custom onLoad code: "+r.message)}},_onUnloadHandler:function(){this._set("isLoaded",!1);try{this.onUnload()}catch(u){console.error("Error "+this.widgetId+" running custom onUnload code: "+u.message)}},destroyDescendants:function(a){this.isLoaded&&this._onUnloadHandler();var b=this._contentSetter;f.forEach(this.getChildren(),function(b){b.destroyRecursive?b.destroyRecursive(a):b.destroy&&b.destroy(a);b._destroyed=!0});b&&(f.forEach(b.parseResults,function(b){b._destroyed||(b.destroyRecursive?
b.destroyRecursive(a):b.destroy&&b.destroy(a),b._destroyed=!0)}),delete b.parseResults);a||m.empty(this.containerNode);delete this._singleChild},_setContent:function(a,b){a=this.preprocessContent(a);this.destroyDescendants();var c=this._contentSetter;c&&c instanceof l._ContentSetter||(c=this._contentSetter=new l._ContentSetter({node:this.containerNode,_onError:n.hitch(this,this._onError),onContentError:n.hitch(this,function(a){a=this.onContentError(a);try{this.containerNode.innerHTML=a}catch(A){console.error("Fatal "+
this.id+" could not change content due to "+A.message,A)}})}));var d=n.mixin({cleanContent:this.cleanContent,extractContent:this.extractContent,parseContent:!a.domNode&&this.parseOnLoad,parserScope:this.parserScope,startup:!1,dir:this.dir,lang:this.lang,textDir:this.textDir},this._contentSetterParams||{}),d=c.set(n.isObject(a)&&a.domNode?a.domNode:a,d),r=this;return k(d&&d.then?d:c.parseDeferred,function(){delete r._contentSetterParams;b||(r._started&&(r._startChildren(),r._scheduleLayout()),r._onLoadHandler(a))})},
preprocessContent:function(a){return a},_onError:function(a,b,c){this.onLoadDeferred.reject(b);a=this["on"+a+"Error"].call(this,b);c?console.error(c,b):a&&this._setContent(a,!0)},onLoad:function(){},onUnload:function(){},onDownloadStart:function(){return this.loadingMessage},onContentError:function(){},onDownloadError:function(){return this.errorMessage},onDownloadEnd:function(){}})})},"dijit/layout/_ContentPaneResizeMixin":function(){define("dojo/_base/array dojo/_base/declare dojo/dom-class dojo/dom-geometry dojo/dom-style dojo/_base/lang dojo/query ../registry ../Viewport ./utils".split(" "),
function(q,n,b,g,h,p,l,f,e,c){return n("dijit.layout._ContentPaneResizeMixin",null,{doLayout:!0,isLayoutContainer:!0,startup:function(){if(!this._started){var a=this.getParent();this._childOfLayoutWidget=a&&a.isLayoutContainer;this._needLayout=!this._childOfLayoutWidget;this.inherited(arguments);this._isShown()&&this._onShow();this._childOfLayoutWidget||this.own(e.on("resize",p.hitch(this,"resize")))}},_checkIfSingleChild:function(){if(this.doLayout){var a=[],c=!1;l("\x3e *",this.containerNode).some(function(b){var d=
f.byNode(b);d&&d.resize?a.push(d):!/script|link|style/i.test(b.nodeName)&&b.offsetHeight&&(c=!0)});this._singleChild=1!=a.length||c?null:a[0];b.toggle(this.containerNode,this.baseClass+"SingleChild",!!this._singleChild)}},resize:function(a,b){this._resizeCalled=!0;this._scheduleLayout(a,b)},_scheduleLayout:function(a,b){this._isShown()?this._layout(a,b):(this._needLayout=!0,this._changeSize=a,this._resultSize=b)},_layout:function(a,b){delete this._needLayout;this._wasShown||!1===this.open||this._onShow();
a&&g.setMarginBox(this.domNode,a);var d=this.containerNode;d===this.domNode?(b=b||{},p.mixin(b,a||{}),"h"in b&&"w"in b||(b=p.mixin(g.getMarginBox(d),b)),this._contentBox=c.marginBox2contentBox(d,b)):this._contentBox=g.getContentBox(d);this._layoutChildren()},_layoutChildren:function(){this._checkIfSingleChild();if(this._singleChild&&this._singleChild.resize){var a=this._contentBox||g.getContentBox(this.containerNode);this._singleChild.resize({w:a.w,h:a.h})}else for(var a=this.getChildren(),b,c=0;b=
a[c++];)b.resize&&b.resize()},_isShown:function(){if(this._childOfLayoutWidget)return this._resizeCalled&&"open"in this?this.open:this._resizeCalled;if("open"in this)return this.open;var a=this.domNode,c=this.domNode.parentNode;return"none"!=a.style.display&&"hidden"!=a.style.visibility&&!b.contains(a,"dijitHidden")&&c&&c.style&&"none"!=c.style.display},_onShow:function(){this._wasShown=!0;this._needLayout&&this._layout(this._changeSize,this._resultSize);this.inherited(arguments)}})})},"dijit/layout/utils":function(){define(["dojo/_base/array",
"dojo/dom-class","dojo/dom-geometry","dojo/dom-style","dojo/_base/lang"],function(q,n,b,g,h){function p(b){return b.substring(0,1).toUpperCase()+b.substring(1)}function l(e,c){var a=e.resize?e.resize(c):b.setMarginBox(e.domNode,c);a?h.mixin(e,a):(h.mixin(e,b.getMarginBox(e.domNode)),h.mixin(e,c))}var f={marginBox2contentBox:function(e,c){var a=g.getComputedStyle(e),d=b.getMarginExtents(e,a),m=b.getPadBorderExtents(e,a);return{l:g.toPixelValue(e,a.paddingLeft),t:g.toPixelValue(e,a.paddingTop),w:c.w-
(d.w+m.w),h:c.h-(d.h+m.h)}},layoutChildren:function(b,c,a,d,m){c=h.mixin({},c);n.add(b,"dijitLayoutContainer");a=q.filter(a,function(a){return"center"!=a.region&&"client"!=a.layoutAlign}).concat(q.filter(a,function(a){return"center"==a.region||"client"==a.layoutAlign}));q.forEach(a,function(a){var b=a.domNode,e=a.region||a.layoutAlign;if(!e)throw Error("No region setting for "+a.id);var f=b.style;f.left=c.l+"px";f.top=c.t+"px";f.position="absolute";n.add(b,"dijitAlign"+p(e));b={};d&&d==a.id&&(b["top"==
a.region||"bottom"==a.region?"h":"w"]=m);"leading"==e&&(e=a.isLeftToRight()?"left":"right");"trailing"==e&&(e=a.isLeftToRight()?"right":"left");"top"==e||"bottom"==e?(b.w=c.w,l(a,b),c.h-=a.h,"top"==e?c.t+=a.h:f.top=c.t+c.h+"px"):"left"==e||"right"==e?(b.h=c.h,l(a,b),c.w-=a.w,"left"==e?c.l+=a.w:f.left=c.l+c.w+"px"):"client"!=e&&"center"!=e||l(a,c)})}};h.setObject("dijit.layout.utils",f);return f})},"dojo/html":function(){define("./_base/kernel ./_base/lang ./_base/array ./_base/declare ./dom ./dom-construct ./parser".split(" "),
function(q,n,b,g,h,p,l){var f=0,e={_secureForInnerHtml:function(b){return b.replace(/(?:\s*<!DOCTYPE\s[^>]+>|<title[^>]*>[\s\S]*?<\/title>)/ig,"")},_emptyNode:p.empty,_setNodeContent:function(b,a){p.empty(b);if(a)if("number"==typeof a&&(a=a.toString()),"string"==typeof a&&(a=p.toDom(a,b.ownerDocument)),!a.nodeType&&n.isArrayLike(a))for(var c=a.length,e=0;e<a.length;e=c==a.length?e+1:0)p.place(a[e],b,"last");else p.place(a,b,"last");return b},_ContentSetter:g("dojo.html._ContentSetter",null,{node:"",
content:"",id:"",cleanContent:!1,extractContent:!1,parseContent:!1,parserScope:q._scopeName,startup:!0,constructor:function(b,a){n.mixin(this,b||{});a=this.node=h.byId(this.node||a);this.id||(this.id=["Setter",a?a.id||a.tagName:"",f++].join("_"))},set:function(b,a){void 0!==b&&(this.content=b);"number"==typeof b&&(b=b.toString());a&&this._mixin(a);this.onBegin();this.setContent();return(b=this.onEnd())&&b.then?b:this.node},setContent:function(){var b=this.node;if(!b)throw Error(this.declaredClass+
": setContent given no node");try{b=e._setNodeContent(b,this.content)}catch(d){var a=this.onContentError(d);try{b.innerHTML=a}catch(m){console.error("Fatal "+this.declaredClass+".setContent could not change content due to "+m.message,m)}}this.node=b},empty:function(){this.parseDeferred&&(this.parseDeferred.isResolved()||this.parseDeferred.cancel(),delete this.parseDeferred);this.parseResults&&this.parseResults.length&&(b.forEach(this.parseResults,function(b){b.destroy&&b.destroy()}),delete this.parseResults);
p.empty(this.node)},onBegin:function(){var b=this.content;if(n.isString(b)&&(this.cleanContent&&(b=e._secureForInnerHtml(b)),this.extractContent)){var a=b.match(/<body[^>]*>\s*([\s\S]+)\s*<\/body>/im);a&&(b=a[1])}this.empty();this.content=b;return this.node},onEnd:function(){this.parseContent&&this._parse();return this.node},tearDown:function(){delete this.parseResults;delete this.parseDeferred;delete this.node;delete this.content},onContentError:function(b){return"Error occurred setting content: "+
b},onExecError:function(b){return"Error occurred executing scripts: "+b},_mixin:function(b){var a={},c;for(c in b)c in a||(this[c]=b[c])},_parse:function(){var c=this.node;try{var a={};b.forEach(["dir","lang","textDir"],function(b){this[b]&&(a[b]=this[b])},this);var d=this;this.parseDeferred=l.parse({rootNode:c,noStart:!this.startup,inherited:a,scope:this.parserScope}).then(function(a){return d.parseResults=a},function(a){d._onError("Content",a,"Error parsing in _ContentSetter#"+d.id)})}catch(m){this._onError("Content",
m,"Error parsing in _ContentSetter#"+this.id)}},_onError:function(b,a,d){b=this["on"+b+"Error"].call(this,a);d?console.error(d,a):b&&e._setNodeContent(this.node,b,!0)}}),set:function(b,a,d){void 0==a&&(console.warn("dojo.html.set: no cont argument provided, using empty string"),a="");"number"==typeof a&&(a=a.toString());return d?(new e._ContentSetter(n.mixin(d,{content:a,node:b}))).set():e._setNodeContent(b,a,!0)}};n.setObject("dojo.html",e);return e})},"dojo/parser":function(){define("require ./_base/kernel ./_base/lang ./_base/array ./_base/config ./dom ./_base/window ./_base/url ./aspect ./promise/all ./date/stamp ./Deferred ./has ./query ./on ./ready".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k){function u(a){return eval("("+a+")")}function r(a){var b=a._nameCaseMap,c=a.prototype;if(!b||b._extendCnt<v){var b=a._nameCaseMap={},d;for(d in c)"_"!==d.charAt(0)&&(b[d.toLowerCase()]=d);b._extendCnt=v}return b}function y(a,c){c||(c=q);var d=c._dojoParserCtorMap||(c._dojoParserCtorMap={}),r=a.join();if(!d[r]){for(var e=[],k=0,m=a.length;k<m;k++){var f=a[k];e[e.length]=d[f]=d[f]||b.getObject(f)||~f.indexOf("/")&&c(f)}a=e.shift();d[r]=e.length?a.createSubclass?
a.createSubclass(e):a.extend.apply(a,e):a}return d[r]}new Date("X");var v=0;e.after(b,"extend",function(){v++},!0);var z={_clearCache:function(){v++;_ctorMap={}},_functionFromScript:function(a,b){var c="",d="",r=a.getAttribute(b+"args")||a.getAttribute("args");b=a.getAttribute("with");r=(r||"").split(/\s*,\s*/);b&&b.length&&g.forEach(b.split(/\s*,\s*/),function(a){c+="with("+a+"){";d+="}"});return new Function(r,c+a.innerHTML+d)},instantiate:function(a,b,c){b=b||{};c=c||{};var d=(c.scope||n._scopeName)+
"Type",r="data-"+(c.scope||n._scopeName)+"-",e=r+"type",k=r+"mixins",m=[];g.forEach(a,function(a){var c=d in b?b[d]:a.getAttribute(e)||a.getAttribute(d);if(c){var r=a.getAttribute(k),c=r?[c].concat(r.split(/\s*,\s*/)):[c];m.push({node:a,types:c})}});return this._instantiate(m,b,c)},_instantiate:function(a,b,d,r){function e(a){b._started||d.noStart||g.forEach(a,function(a){"function"!==typeof a.startup||a._started||a.startup()});return a}a=g.map(a,function(a){var c=a.ctor||y(a.types,d.contextRequire);
if(!c)throw Error("Unable to resolve constructor for: '"+a.types.join()+"'");return this.construct(c,a.node,b,d,a.scripts,a.inherited)},this);return r?c(a).then(e):e(a)},construct:function(c,d,k,l,h,y){function v(a){E&&b.setObject(E,a);for(q=0;q<V.length;q++)e[V[q].advice||"after"](a,V[q].method,b.hitch(a,V[q].func),!0);for(q=0;q<Y.length;q++)Y[q].call(a);for(q=0;q<oa.length;q++)a.watch(oa[q].prop,oa[q].func);for(q=0;q<ea.length;q++)t(a,ea[q].event,ea[q].func);return a}var p=c&&c.prototype;l=l||{};
var x={};l.defaults&&b.mixin(x,l.defaults);y&&b.mixin(x,y);var z;m("dom-attributes-explicit")?z=d.attributes:m("dom-attributes-specified-flag")?z=g.filter(d.attributes,function(a){return a.specified}):(y=(/^input$|^img$/i.test(d.nodeName)?d:d.cloneNode(!1)).outerHTML.replace(/=[^\s"']+|="[^"]*"|='[^']*'/g,"").replace(/^\s*<[a-zA-Z0-9]*\s*/,"").replace(/\s*>.*$/,""),z=g.map(y.split(/\s+/),function(a){var b=a.toLowerCase();return{name:a,value:"LI"==d.nodeName&&"value"==a||"enctype"==b?d.getAttribute(b):
d.getAttributeNode(b).value}}));var C=l.scope||n._scopeName;y="data-"+C+"-";var A={};"dojo"!==C&&(A[y+"props"]="data-dojo-props",A[y+"type"]="data-dojo-type",A[y+"mixins"]="data-dojo-mixins",A[C+"type"]="dojotype",A[y+"id"]="data-dojo-id");for(var q=0,B,C=[],E,H;B=z[q++];){var ba=B.name,P=ba.toLowerCase();B=B.value;switch(A[P]||P){case "data-dojo-type":case "dojotype":case "data-dojo-mixins":break;case "data-dojo-props":H=B;break;case "data-dojo-id":case "jsid":E=B;break;case "data-dojo-attach-point":case "dojoattachpoint":x.dojoAttachPoint=
B;break;case "data-dojo-attach-event":case "dojoattachevent":x.dojoAttachEvent=B;break;case "class":x["class"]=d.className;break;case "style":x.style=d.style&&d.style.cssText;break;default:if(ba in p||(ba=r(c)[P]||ba),ba in p)switch(typeof p[ba]){case "string":x[ba]=B;break;case "number":x[ba]=B.length?Number(B):NaN;break;case "boolean":x[ba]="false"!=B.toLowerCase();break;case "function":""===B||-1!=B.search(/[^\w\.]+/i)?x[ba]=new Function(B):x[ba]=b.getObject(B,!1)||new Function(B);C.push(ba);break;
default:P=p[ba],x[ba]=P&&"length"in P?B?B.split(/\s*,\s*/):[]:P instanceof Date?""==B?new Date(""):"now"==B?new Date:a.fromISOString(B):P instanceof f?n.baseUrl+B:u(B)}else x[ba]=B}}for(z=0;z<C.length;z++)A=C[z].toLowerCase(),d.removeAttribute(A),d[A]=null;if(H)try{H=u.call(l.propsThis,"{"+H+"}"),b.mixin(x,H)}catch(ca){throw Error(ca.toString()+" in data-dojo-props\x3d'"+H+"'");}b.mixin(x,k);h||(h=c&&(c._noScript||p._noScript)?[]:w("\x3e script[type^\x3d'dojo/']",d));var V=[],Y=[],oa=[],ea=[];if(h)for(q=
0;q<h.length;q++)A=h[q],d.removeChild(A),k=A.getAttribute(y+"event")||A.getAttribute("event"),l=A.getAttribute(y+"prop"),H=A.getAttribute(y+"method"),C=A.getAttribute(y+"advice"),z=A.getAttribute("type"),A=this._functionFromScript(A,y),k?"dojo/connect"==z?V.push({method:k,func:A}):"dojo/on"==z?ea.push({event:k,func:A}):x[k]=A:"dojo/aspect"==z?V.push({method:H,advice:C,func:A}):"dojo/watch"==z?oa.push({prop:l,func:A}):Y.push(A);c=(h=c.markupFactory||p.markupFactory)?h(x,d,c):new c(x,d);return c.then?
c.then(v):v(c)},scan:function(a,b){function c(a){if(!a.inherited){a.inherited={};var b=a.node,d=c(a.parent),b={dir:b.getAttribute("dir")||d.dir,lang:b.getAttribute("lang")||d.lang,textDir:b.getAttribute(h)||d.textDir},r;for(r in b)b[r]&&(a.inherited[r]=b[r])}return a.inherited}var r=[],e=[],k={},f=(b.scope||n._scopeName)+"Type",l="data-"+(b.scope||n._scopeName)+"-",u=l+"type",h=l+"textdir",l=l+"mixins",t=a.firstChild,v=b.inherited;if(!v){var p=function(a,b){return a.getAttribute&&a.getAttribute(b)||
a.parentNode&&p(a.parentNode,b)},v={dir:p(a,"dir"),lang:p(a,"lang"),textDir:p(a,h)},x;for(x in v)v[x]||delete v[x]}x={inherited:v};for(var w,z;;)if(t)if(1!=t.nodeType)t=t.nextSibling;else if(w&&"script"==t.nodeName.toLowerCase())(v=t.getAttribute("type"))&&/^dojo\/\w/i.test(v)&&w.push(t),t=t.nextSibling;else if(z)t=t.nextSibling;else if(v=t.getAttribute(u)||t.getAttribute(f),a=t.firstChild,v||a&&(3!=a.nodeType||a.nextSibling)){z=null;if(v){var A=t.getAttribute(l);w=A?[v].concat(A.split(/\s*,\s*/)):
[v];try{z=y(w,b.contextRequire)}catch(V){}z||g.forEach(w,function(a){~a.indexOf("/")&&!k[a]&&(k[a]=!0,e[e.length]=a)});A=z&&!z.prototype._noScript?[]:null;x={types:w,ctor:z,parent:x,node:t,scripts:A};x.inherited=c(x);r.push(x)}else x={node:t,scripts:w,parent:x};w=A;z=t.stopParser||z&&z.prototype.stopParser&&!b.template;t=a}else t=t.nextSibling;else{if(!x||!x.node)break;t=x.node.nextSibling;z=!1;x=x.parent;w=x.scripts}var P=new d;e.length?(m("dojo-debug-messages")&&console.warn("WARNING: Modules being Auto-Required: "+
e.join(", ")),(b.contextRequire||q)(e,function(){P.resolve(g.filter(r,function(a){if(!a.ctor)try{a.ctor=y(a.types,b.contextRequire)}catch(ea){}for(var c=a.parent;c&&!c.types;)c=c.parent;var d=a.ctor&&a.ctor.prototype;a.instantiateChildren=!(d&&d.stopParser&&!b.template);a.instantiate=!c||c.instantiate&&c.instantiateChildren;return a.instantiate}))})):P.resolve(r);return P.promise},_require:function(a,c){a=u("{"+a.innerHTML+"}");var r=[],e=[],k=new d;c=c&&c.contextRequire||q;for(var m in a)r.push(m),
e.push(a[m]);c(e,function(){for(var a=0;a<r.length;a++)b.setObject(r[a],arguments[a]);k.resolve(arguments)});return k.promise},_scanAmd:function(a,b){var c=new d,r=c.promise;c.resolve(!0);var e=this;w("script[type\x3d'dojo/require']",a).forEach(function(a){r=r.then(function(){return e._require(a,b)});a.parentNode.removeChild(a)});return r},parse:function(a,c){!a||"string"==typeof a||"nodeType"in a||(c=a,a=c.rootNode);var d=a?p.byId(a):l.body();c=c||{};var r=c.template?{template:!0}:{},e=[],k=this;
a=this._scanAmd(d,c).then(function(){return k.scan(d,c)}).then(function(a){return k._instantiate(a,r,c,!0)}).then(function(a){return e=e.concat(a)}).otherwise(function(a){console.error("dojo/parser::parse() error",a);throw a;});b.mixin(e,a);return e}};n.parser=z;h.parseOnLoad&&k(100,z,"parse");return z})},"dojo/_base/url":function(){define(["./kernel"],function(q){var n=/^(([^:/?#]+):)?(\/\/([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?$/,b=/^((([^\[:]+):)?([^@]+)@)?(\[([^\]]+)\]|([^\[:]*))(:([0-9]+))?$/,
g=function(){for(var h=arguments,p=[h[0]],l=1;l<h.length;l++)if(h[l]){var f=new g(h[l]+""),p=new g(p[0]+"");if(""==f.path&&!f.scheme&&!f.authority&&!f.query)null!=f.fragment&&(p.fragment=f.fragment),f=p;else if(!f.scheme&&(f.scheme=p.scheme,!f.authority&&(f.authority=p.authority,"/"!=f.path.charAt(0)))){for(var p=(p.path.substring(0,p.path.lastIndexOf("/")+1)+f.path).split("/"),e=0;e<p.length;e++)"."==p[e]?e==p.length-1?p[e]="":(p.splice(e,1),e--):0<e&&(1!=e||""!=p[0])&&".."==p[e]&&".."!=p[e-1]&&
(e==p.length-1?(p.splice(e,1),p[e-1]=""):(p.splice(e-1,2),e-=2));f.path=p.join("/")}p=[];f.scheme&&p.push(f.scheme,":");f.authority&&p.push("//",f.authority);p.push(f.path);f.query&&p.push("?",f.query);f.fragment&&p.push("#",f.fragment)}this.uri=p.join("");h=this.uri.match(n);this.scheme=h[2]||(h[1]?"":null);this.authority=h[4]||(h[3]?"":null);this.path=h[5];this.query=h[7]||(h[6]?"":null);this.fragment=h[9]||(h[8]?"":null);null!=this.authority&&(h=this.authority.match(b),this.user=h[3]||null,this.password=
h[4]||null,this.host=h[6]||h[7],this.port=h[9]||null)};g.prototype.toString=function(){return this.uri};return q._Url=g})},"dojo/promise/all":function(){define(["../_base/array","../_base/lang","../Deferred","../when"],function(q,n,b,g){var h=q.some;return function(p){var l,f;n.isArray(p)?f=p:p&&"object"===typeof p&&(l=p);var e,c=[];if(l){f=[];for(var a in l)Object.hasOwnProperty.call(l,a)&&(c.push(a),f.push(l[a]));e={}}else f&&(e=[]);if(!f||!f.length)return(new b).resolve(e);var d=new b;d.promise.always(function(){e=
c=null});var m=f.length;h(f,function(a,b){l||c.push(b);g(a,function(a){d.isFulfilled()||(e[c[b]]=a,0===--m&&d.resolve(e))},d.reject);return d.isFulfilled()});return d.promise}})},"dojo/date/stamp":function(){define(["../_base/lang","../_base/array"],function(q,n){var b={};q.setObject("dojo.date.stamp",b);b.fromISOString=function(g,h){b._isoRegExp||(b._isoRegExp=/^(?:(\d{4})(?:-(\d{2})(?:-(\d{2}))?)?)?(?:T(\d{2}):(\d{2})(?::(\d{2})(.\d+)?)?((?:[+-](\d{2}):(\d{2}))|Z)?)?$/);var p=b._isoRegExp.exec(g);
g=null;if(p){p.shift();p[1]&&p[1]--;p[6]&&(p[6]*=1E3);h&&(h=new Date(h),n.forEach(n.map("FullYear Month Date Hours Minutes Seconds Milliseconds".split(" "),function(b){return h["get"+b]()}),function(b,c){p[c]=p[c]||b}));g=new Date(p[0]||1970,p[1]||0,p[2]||1,p[3]||0,p[4]||0,p[5]||0,p[6]||0);100>p[0]&&g.setFullYear(p[0]||1970);var l=0,f=p[7]&&p[7].charAt(0);"Z"!=f&&(l=60*(p[8]||0)+(Number(p[9])||0),"-"!=f&&(l*=-1));f&&(l-=g.getTimezoneOffset());l&&g.setTime(g.getTime()+6E4*l)}return g};b.toISOString=
function(b,h){var g=function(b){return 10>b?"0"+b:b};h=h||{};var l=[],f=h.zulu?"getUTC":"get",e="";"time"!=h.selector&&(e=b[f+"FullYear"](),e=["0000".substr((e+"").length)+e,g(b[f+"Month"]()+1),g(b[f+"Date"]())].join("-"));l.push(e);"date"!=h.selector&&(e=[g(b[f+"Hours"]()),g(b[f+"Minutes"]()),g(b[f+"Seconds"]())].join(":"),f=b[f+"Milliseconds"](),h.milliseconds&&(e+="."+(100>f?"0":"")+g(f)),h.zulu?e+="Z":"time"!=h.selector&&(b=b.getTimezoneOffset(),h=Math.abs(b),e+=(0<b?"-":"+")+g(Math.floor(h/60))+
":"+g(h%60)),l.push(e));return l.join("T")};return b})},"dijit/_DialogMixin":function(){define(["dojo/_base/declare","./a11y"],function(q,n){return q("dijit._DialogMixin",null,{actionBarTemplate:"",execute:function(){},onCancel:function(){},onExecute:function(){},_onSubmit:function(){this.onExecute();this.execute(this.get("value"))},_getFocusItems:function(){var b=n._getTabNavigable(this.domNode);this._firstFocusItem=b.lowest||b.first||this.closeButtonNode||this.domNode;this._lastFocusItem=b.last||
b.highest||this._firstFocusItem}})})},"dijit/form/_FormMixin":function(){define("dojo/_base/array dojo/_base/declare dojo/_base/kernel dojo/_base/lang dojo/on dojo/window".split(" "),function(q,n,b,g,h,p){return n("dijit.form._FormMixin",null,{state:"",_getDescendantFormWidgets:function(b){var f=[];q.forEach(b||this.getChildren(),function(b){"value"in b?f.push(b):f=f.concat(this._getDescendantFormWidgets(b.getChildren()))},this);return f},reset:function(){q.forEach(this._getDescendantFormWidgets(),
function(b){b.reset&&b.reset()})},validate:function(){var b=!1;return q.every(q.map(this._getDescendantFormWidgets(),function(f){f._hasBeenBlurred=!0;var e=f.disabled||!f.validate||f.validate();e||b||(p.scrollIntoView(f.containerNode||f.domNode),f.focus(),b=!0);return e}),function(b){return b})},setValues:function(l){b.deprecated(this.declaredClass+"::setValues() is deprecated. Use set('value', val) instead.","","2.0");return this.set("value",l)},_setValueAttr:function(b){var f={};q.forEach(this._getDescendantFormWidgets(),
function(a){a.name&&(f[a.name]||(f[a.name]=[])).push(a)});for(var e in f)if(f.hasOwnProperty(e)){var c=f[e],a=g.getObject(e,!1,b);void 0!==a&&(a=[].concat(a),"boolean"==typeof c[0].checked?q.forEach(c,function(b){b.set("value",-1!=q.indexOf(a,b._get("value")))}):c[0].multiple?c[0].set("value",a):q.forEach(c,function(b,c){b.set("value",a[c])}))}},getValues:function(){b.deprecated(this.declaredClass+"::getValues() is deprecated. Use get('value') instead.","","2.0");return this.get("value")},_getValueAttr:function(){var b=
{};q.forEach(this._getDescendantFormWidgets(),function(f){var e=f.name;if(e&&!f.disabled){var c=f.get("value");"boolean"==typeof f.checked?/Radio/.test(f.declaredClass)?!1!==c?g.setObject(e,c,b):(c=g.getObject(e,!1,b),void 0===c&&g.setObject(e,null,b)):(f=g.getObject(e,!1,b),f||(f=[],g.setObject(e,f,b)),!1!==c&&f.push(c)):(f=g.getObject(e,!1,b),"undefined"!=typeof f?g.isArray(f)?f.push(c):g.setObject(e,[f,c],b):g.setObject(e,c,b))}});return b},isValid:function(){return""==this.state},onValidStateChange:function(){},
_getState:function(){var b=q.map(this._descendants,function(b){return b.get("state")||""});return 0<=q.indexOf(b,"Error")?"Error":0<=q.indexOf(b,"Incomplete")?"Incomplete":""},disconnectChildren:function(){},connectChildren:function(b){this._descendants=this._getDescendantFormWidgets();q.forEach(this._descendants,function(b){b._started||b.startup()});b||this._onChildChange()},_onChildChange:function(b){b&&"state"!=b&&"disabled"!=b||this._set("state",this._getState());b&&"value"!=b&&"disabled"!=b&&
"checked"!=b||(this._onChangeDelayTimer&&this._onChangeDelayTimer.remove(),this._onChangeDelayTimer=this.defer(function(){delete this._onChangeDelayTimer;this._set("value",this.get("value"))},10))},startup:function(){this.inherited(arguments);this._descendants=this._getDescendantFormWidgets();this.value=this.get("value");this.state=this._getState();var b=this;this.own(h(this.containerNode,"attrmodified-state, attrmodified-disabled, attrmodified-value, attrmodified-checked",function(f){f.target!=b.domNode&&
b._onChildChange(f.type.replace("attrmodified-",""))}));this.watch("state",function(b,e,c){this.onValidStateChange(""==c)})},destroy:function(){this.inherited(arguments)}})})},"esri/main":function(){define(["./kernel","dojo/i18n!./nls/jsapi","./config","./sniff"],function(q,n){q.bundle=n;return q})},"esri/kernel":function(){define(["dojo/_base/kernel","dojo/_base/config","dojo/has"],function(q,n,b){var g=function(){return this}(),h=g.location,p=h.pathname,l=h.protocol,h={version:"3.26",_appBaseUrl:l+
"//"+h.host+p.substring(0,p.lastIndexOf(p.split("/")[p.split("/").length-1]))};n.noGlobals||(g.esri=h);q.isAsync||b.add("extend-esri",1);(h.dijit=h.dijit||{})._arcgisUrl=("http:"===l||"https:"===l?l:"http:")+"//www.arcgis.com/sharing/rest";return h})},"esri/config":function(){define(["dojo/_base/config","dojo/topic","dojo/has","./kernel"],function(q,n,b,g){var h=function(){return this}(),p={defaults:{screenDPI:96,geometryService:null,kmlService:null,map:{width:400,height:400,layerNamePrefix:"layer",
graphicsLayerNamePrefix:"graphicsLayer",slider:{left:"30px",top:"30px",width:null,height:"200px"},sliderLabel:{tick:5,labels:null,style:"width:2em; font-family:Verdana; font-size:75%;"},sliderChangeImmediate:!0,zoomSymbol:{color:[0,0,0,64],outline:{color:[255,0,0,255],width:1.25,style:"esriSLSSolid"},style:"esriSFSSolid"},zoomDuration:500,zoomRate:25,zoomAnimationThrottled:!1,panDuration:350,panRate:25,logoLink:"http://www.esri.com"},autoSpatialIndexing:h.Worker&&!1,io:{errorHandler:function(b,f){n.publish("esri.Error",
[b])},proxyUrl:null,alwaysUseProxy:!1,useCors:"with-credentials",corsEnabledServers:[/^https?:\/\/.+\.arcgis\.com(\/|$)/i,"server.arcgisonline.com","services.arcgisonline.com","www.arcgis.com","js.arcgis.com","jsdev.arcgis.com","jsqa.arcgis.com","tiles.arcgis.com","tiles1.arcgis.com","tiles2.arcgis.com","tiles3.arcgis.com","tiles4.arcgis.com","basemaps.arcgis.com","basemapsbeta.arcgis.com","elevation3d.arcgis.com","services.arcgis.com","services1.arcgis.com","services2.arcgis.com","services3.arcgis.com",
"services4.arcgis.com","services5.arcgis.com","services6.arcgis.com","services7.arcgis.com","services8.arcgis.com","services9.arcgis.com","cdn.arcgis.com","cdn-a.arcgis.com","cdn-b.arcgis.com","static.arcgis.com","utility.arcgis.com","utility.arcgisonline.com","geocode.arcgis.com","geoenrich.arcgis.com","qaext.arcgis.com","staticqa.arcgis.com","tilesqa.arcgis.com","servicesqa.arcgis.com","servicesqa1.arcgis.com","servicesqa2.arcgis.com","servicesqa3.arcgis.com","geocodeqa.arcgis.com","geoenrichqa.arcgis.com",
"dev.arcgis.com","devext.arcgis.com","localvtiles.arcgis.com","staticdev.arcgis.com","tilesdevext.arcgis.com","elevation3ddev.arcgis.com","servicesdev.arcgis.com","servicesdev1.arcgis.com","servicesdev2.arcgis.com","servicesdev3.arcgis.com","geocodedev.arcgis.com","geoenrichdev.arcgis.com","basemapsdev.arcgis.com","basemapsbetadev.arcgis.com"],corsDetection:h.cordova?!1:!0,corsDetectionTimeout:15,corsStatus:{},webTierAuthServers:[],proxyRules:[],postLength:2E3,timeout:6E4,useWorkers:"on-request",
maxRequestWorkers:5,httpsDomains:"arcgis.com arcgisonline.com esrikr.com premiumservices.blackbridge.com esripremium.accuweather.com gbm.digitalglobe.com firstlook.digitalglobe.com msi.digitalglobe.com".split(" ")},workers:{loaderConfig:{has:{},paths:{},map:{},packages:[]}}}};b("extend-esri")&&(g.config=p);q.noGlobals||(h.esriConfig=p);return p})},"esri/sniff":function(){define(["dojo/_base/sniff","dojo/global","./kernel"],function(q,n,b){var g=q("ff"),h=q("ie"),p=void 0===h&&7<=q("trident"),l=q("edge"),
f=q("webkit"),e=q("opera"),c=q("chrome"),a=q("safari"),d=navigator.userAgent,m;(m=d.match(/(iPhone|iPad|CPU)\s+OS\s+(\d+\_\d+)/i))&&q.add("esri-iphone",parseFloat(m[2].replace("_",".")));(m=d.match(/Android\s+(\d+(\.\d+)*)/i))&&q.add("esri-android",parseFloat(m[1]));(m=d.match(/Fennec\/(\d+\.\d+)/i))&&q.add("esri-fennec",parseFloat(m[1]));0<=d.indexOf("BlackBerry")&&0<=d.indexOf("WebKit")&&q.add("esri-blackberry",1);q.add("esri-touch",q("esri-iphone")||q("esri-android")||q("esri-blackberry")||6<=
q("esri-fennec")||(g||f)&&(document.createTouch||"ontouchstart"in n||n.TouchEvent&&0<navigator.maxTouchPoints)?!0:!1);(m=d.match(/Android|webOS|iPhone|iPad|iPod|BlackBerry|Opera Mini|IEMobile/i))&&q.add("esri-mobile",!!m);q.add("esri-pointer",navigator.pointerEnabled||navigator.msPointerEnabled||!(!l||!n.PointerEvent));b._getDOMAccessor=function(a){var b="";g?b="Moz":f?b="Webkit":h?b="ms":e&&(b="O");return b+a.charAt(0).toUpperCase()+a.substr(1)};q.add("esri-phonegap",!!n.cordova);q.add("esri-cors",
q("esri-phonegap")||n.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest);q.add("esri-file-upload",n.FormData&&n.FileList?!0:!1);q.add("esri-script-sandbox",function(){return"MessageChannel"in n&&"HTMLIFrameElement"in n&&"sandbox"in HTMLIFrameElement.prototype});q.add("esri-secure-context",function(){if("isSecureContext"in n)return n.isSecureContext;if(n.location&&n.location.origin)return 0===n.location.origin.indexOf("https:")});q.add("esri-wasm","WebAssembly"in n);q.add("esri-workers",n.Worker?
!0:!1);q.add("esri-featurelayer-webgl",!1);if(d=q("esri-featurelayer-webgl")){var w=q("esri-mobile");m=w?1:2;w=w?1:3;"object"===typeof d?(d.maxDrillLevel=null==d.maxDrillLevel?m:d.maxDrillLevel,d.maxRecordCountFactor=null==d.maxRecordCountFactor?w:d.maxRecordCountFactor,d.enablePBFQuery=null==d.enablePBFQuery?!0:d.enablePBFQuery):q.add("esri-featurelayer-webgl",{maxDrillLevel:m,maxRecordCountFactor:w,enablePBFQuery:!0},null,!0)}q.add("esri-featurelayer-webgl-labeling",!1);q.add("esri-pbf",!h||10<=
h);q.add("esri-featurelayer-pbf",!0);q.add("esri-transforms",p||l||9<=h||3.5<=g||4<=c||3.1<=a||10.5<=e||3.2<=q("esri-iphone")||2.1<=q("esri-android"));q.add("esri-transitions",p||l||10<=h||4<=g||4<=c||3.1<=a||10.5<=e||3.2<=q("esri-iphone")||2.1<=q("esri-android"));q.add("esri-transforms3d",p||l||10<=g||12<=c||4<=a||3.2<=q("esri-iphone")||3<=q("esri-android"));q.add("esri-url-encodes-apostrophe",function(){if(!n.document)return!1;var a=n.document.createElement("a");a.href="?'";return-1<a.href.indexOf("?%27")});
3>q("esri-android")&&(q.add("esri-transforms",!1,!1,!0),q.add("esri-transitions",!1,!1,!0),q.add("esri-transforms3d",!1,!1,!0));q.add("esri-will-change",q("esri-transforms")&&(52<=c||11.1<=a));b._css=function(b){var d=q("esri-transforms3d");void 0!==b&&null!==b?d=b:d&&(c||a&&!q("esri-iphone"))&&(d=!1);var m=d?"translate3d(":"translate(",r=d?c?",-1px)":",0px)":")",l=d?"scale3d(":"scale(",t=d?",1)":")",p=d?"rotate3d(0,0,1,":"rotate(",w=d?"matrix3d(":"matrix(",n=d?",0,0,":",",B=d?",0,0,0,0,1,0,":",",
C=d?",0,1)":")";return{names:{transition:f&&"-webkit-transition"||g&&"MozTransition"||e&&"OTransition"||h&&"msTransition"||"transition",transform:f&&"-webkit-transform"||g&&"MozTransform"||e&&"OTransform"||h&&"msTransform"||"transform",transformName:f&&"-webkit-transform"||g&&"-moz-transform"||e&&"-o-transform"||h&&"-ms-transform"||"transform",origin:f&&"-webkit-transform-origin"||g&&"MozTransformOrigin"||e&&"OTransformOrigin"||h&&"msTransformOrigin"||"transformOrigin",endEvent:f&&"webkitTransitionEnd"||
g&&"transitionend"||e&&"oTransitionEnd"||h&&"MSTransitionEnd"||"transitionend"},translate:function(a,b){return m+a+"px,"+b+"px"+r},scale:function(a){return l+a+","+a+t},rotate:function(a){return p+a+"deg)"},matrix:function(a){return w+a.xx+","+a.xy+n+a.yx+","+a.yy+B+a.dx.toFixed(10)+(g&&59>=g?"px,":",")+a.dy.toFixed(10)+(g&&59>=g?"px":"")+C},getScaleFromMatrix:function(a){if(!a)return 1;a=a.toLowerCase();var b=-1<a.indexOf("matrix3d")?"matrix3d(":"matrix(";return Number(a.substring(b.length,a.indexOf(",")))}}};
q("extend-esri")&&(b.isiPhone=q("esri-iphone"),b.isAndroid=q("esri-android"),b.isFennec=q("esri-fennec"),b.isBlackBerry=q("esri-blackberry"),b.isTouchEnabled=q("esri-touch"),b.isPointerEnabled=q("esri-pointer"),b._hasCors=q("esri-cors"),b._hasFileUpload=q("esri-file-upload"),b._hasTransforms=q("esri-transforms"),b._hasTransitions=q("esri-transitions"),b._has3DTransforms=q("esri-transforms3d"));return q})},"esri/map":function(){define("require dojo/_base/kernel dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/_base/event dojo/on dojo/aspect dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/dom-geometry dojo/dom-style dijit/a11yclick dijit/registry ./kernel ./config ./sniff ./lang ./_coremap ./MapNavigationManager dojo/i18n!./nls/jsapi".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B){var C={up:"panUp",right:"panRight",down:"panDown",left:"panLeft"},H={upperRight:"panUpperRight",lowerRight:"panLowerRight",lowerLeft:"panLowerLeft",upperLeft:"panUpperLeft"},E=g.connect,F=g.disconnect,I=m.create,X=t.set,N=h.hitch,G=w.getMarginBox,Q=n.deprecated,M=h.mixin,U=0;n=b(x,{declaredClass:"esri.Map",constructor:function(a,b){b=b||{};M(this,{_slider:null,_navDiv:null,_mapParams:M({attributionWidth:.45,slider:!0,nav:!1,logo:!0,sliderStyle:"small",
sliderPosition:"top-left",sliderOrientation:"vertical",autoResize:!0},b)});M(this,{isMapNavigation:null!=b.isMapNavigation?b.isMapNavigation:!0,isDoubleClickZoom:null!=b.isDoubleClickZoom?b.isDoubleClickZoom:!0,isClickRecenter:null!=b.isClickRecenter?b.isClickRecenter:!0,isPan:null!=b.isPan?b.isPan:!0,isRubberBandZoom:null!=b.isRubberBandZoom?b.isRubberBandZoom:!0,isPinchZoom:null!=b.isPinchZoom?b.isPinchZoom:!0,isKeyboardNavigation:null!=b.isKeyboardNavigation?b.isKeyboardNavigation:!0,isScrollWheel:null!=
b.isScrollWheel?b.isScrollWheel:!0,isShiftDoubleClickZoom:!1,isScrollWheelZoom:!1,isPanArrows:!1,isZoomSlider:!1});h.isFunction(r._css)&&(r._css=r._css(this._mapParams.force3DTransforms),this.force3DTransforms=this._mapParams.force3DTransforms);a=v("esri-transforms")&&v("esri-transitions");this.navigationMode=this._mapParams.navigationMode||a&&"css-transforms"||"classic";"css-transforms"!==this.navigationMode||a||(this.navigationMode="classic");this.fadeOnZoom=z.isDefined(this._mapParams.fadeOnZoom)?
this._mapParams.fadeOnZoom:"css-transforms"===this.navigationMode;"css-transforms"!==this.navigationMode&&(this.fadeOnZoom=!1);this.setMapCursor("default");this.smartNavigation=b&&b.smartNavigation;if(!(z.isDefined(this.smartNavigation)||!v("mac")||v("esri-touch")||v("esri-pointer")||3.5>=v("ff"))){var c=navigator.userAgent.match(/Mac\s+OS\s+X\s+([\d]+)(\.|\_)([\d]+)\D/i);c&&z.isDefined(c[1])&&z.isDefined(c[3])&&(a=parseInt(c[1],10),c=parseInt(c[3],10),this.smartNavigation=10<a||10===a&&6<=c)}this.showAttribution=
z.isDefined(this._mapParams.showAttribution)?this._mapParams.showAttribution:!0;this._onLoadHandler_connect=E(this,"onLoad",this,"_onLoadInitNavsHandler");var d=I("div",{class:"esriControlsBR"+(this._mapParams.nav?" withPanArrows":"")},this.root);if(this.showAttribution)if(a=h.getObject("esri.dijit.Attribution",!1))this._initAttribution(a,d);else{var m=U++,u=this;this._rids&&this._rids.push(m);q(["./dijit/Attribution"],function(a){var b=u._rids?p.indexOf(u._rids,m):-1;-1!==b&&(u._rids.splice(b,1),
u._initAttribution(a,d))})}this._mapParams.logo&&(a={},6===v("ie")&&(a.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled\x3d'true', sizingMethod\x3d'crop', src\x3d'"+q.toUrl("./images/map/logo-med.png")+"')"),this._ogol=I("div",{style:a,tabIndex:"0",title:"Esri"},d),this._setLogoSize(),this._onMapResizeLogo_connect=E(this,"onResize",this,"_setLogoSize"),this._ogol_connect=E(this._ogol,k,this,"_openLogoLink"));this.navigationManager=new A(this);b&&b.basemap&&(this._onLoadFix=!0,this.setBasemap(b.basemap),
this._onLoadFix=!1);if(this.autoResize=this._mapParams.autoResize)b=this._getEnclosingResizableWidget(this.container)||window,a=this.resize,this._rszSignal=f.pausable(b,"resize",a),this._oriSignal=f.pausable(window,"orientationchange",a),e.after(b,"resize",a,!0),this._startResizeTimer()},_startResizeTimer:function(){clearTimeout(this._persistentTimer);this._persistentTimer=setTimeout(this._timedResize,2*this.resizeDelay)},_getEnclosingResizableWidget:function(a){var b=u.getEnclosingWidget(a);return b?
b.resize?b:this._getEnclosingResizableWidget(a.parentNode):b},_setLogoSize:function(){this._ogol&&(25E4>this.root.clientWidth*this.root.clientHeight?(d.remove(this._ogol,"logo-med"),d.add(this._ogol,"logo-sm")):(d.remove(this._ogol,"logo-sm"),d.add(this._ogol,"logo-med")))},_initAttribution:function(a,b){b=I("span",{class:"esriAttribution"},b,"first");X(b,"maxWidth",Math.floor(this.width*this._mapParams.attributionWidth)+"px");this._connects.push(E(b,k,function(){d.contains(this,"esriAttributionOpen")?
d.remove(this,"esriAttributionOpen"):this.scrollWidth>this.clientWidth&&d.add(this,"esriAttributionOpen")}));this.attribution=new a({map:this},b)},_cleanUp:function(){this.disableMapNavigation();this.navigationManager.destroy();var a=this._slider;a&&a.destroy&&!a._destroyed&&a.destroy();var a=this._navDiv,b=this.attribution;a&&m.destroy(a);b&&b.destroy();this._connects.push(this._slider_connect,this._ogol_connect,this._rszSignal,this._oriSignal);p.forEach(this._connects,F);clearInterval(this._persistentTimer);
this.attribution=this.navigationManager=this._rids=this._connects=this._slider_connect=this._ogol_connect=this._rszSignal=this._oriSignal=this._persistentTimer=null;this.inherited("_cleanUp",arguments)},_isPanningOrZooming:function(){return this.__panning||this.__zooming},_canZoom:function(a){var b=this.getLevel();return!this.__tileInfo||!(b===this.getMinZoom()&&0>a||b===this.getMaxZoom()&&0<a)},_onLoadInitNavsHandler:function(){this._evalMapNavigation();this._createNav();if("small"===this._mapParams.sliderStyle||
!this._createSlider)this._createSimpleSlider();else if(this._mapParams.slider){var a=-1!==this._getSliderClass(!0).indexOf("Horizontal"),a=[a?"dijit.form.HorizontalSlider":"dijit.form.VerticalSlider",a?"dijit.form.HorizontalRule":"dijit.form.VerticalRule",a?"dijit.form.HorizontalRuleLabels":"dijit.form.VerticalRuleLabels"];if(p.some(a,function(a){return!h.getObject(a,!1)})){var a=p.map(a,function(a){return a.replace(/\./g,"/")}),b=U++,c=this;this._rids&&this._rids.push(b);q(a,function(){var a=c._rids?
p.indexOf(c._rids,b):-1;-1!==a&&(c._rids.splice(a,1),c._createSlider.apply(c,arguments))})}else a=p.map(a,function(a){return h.getObject(a,!1)}),this._createSlider.apply(this,a)}F(this._onLoadHandler_connect)},_createNav:function(){if(this._mapParams.nav){var a,b,c,r=d.add,e=this.id;this._navDiv=I("div",{id:e+"_navdiv"},this.root);r(this._navDiv,"navDiv");var k=this.width/2,m=this.height/2,f;for(c in C)b=C[c],a=I("div",{id:e+"_pan_"+c},this._navDiv),r(a,"fixedPan "+b),"up"===c||"down"===c?(f=parseInt(G(a).w,
10)/2,X(a,{left:k-f+"px",zIndex:30})):(f=parseInt(G(a).h,10)/2,X(a,{top:m-f+"px",zIndex:30})),this._connects.push(E(a,"onclick",N(this,this[b])));this._onMapResizeNavHandler_connect=E(this,"onResize",this,"_onMapResizeNavHandler");for(c in H)b=H[c],a=I("div",{id:e+"_pan_"+c,style:{zIndex:30}},this._navDiv),r(a,"fixedPan "+b),this._connects.push(E(a,"onclick",N(this,this[b])));this.isPanArrows=!0}},_onMapResizeNavHandler:function(a,b,d){a=this.id;b/=2;d/=2;var r=c.byId,e,k,m;for(e in C)k=r(a+"_pan_"+
e),"up"===e||"down"===e?(m=parseInt(G(k).w,10)/2,X(k,"left",b-m+"px")):(m=parseInt(G(k).h,10)/2,X(k,"top",d-m+"px"))},_createSimpleSlider:function(){if(this._mapParams.slider){var a=this._slider=I("div",{id:this.id+"_zoom_slider",class:this._getSliderClass(),style:{zIndex:30}}),b=I("div",{class:"esriSimpleSliderIncrementButton",tabIndex:"0",role:"button"},a),r=I("div",{class:"esriSimpleSliderDecrementButton",tabIndex:"0",role:"button"},a);this._addZoomButtonTooltips(b,r);this._incButton=b;this._decButton=
r;this._simpleSliderZoomHandler(null,null,null,this.getLevel());var e=B.widgets.zoomSlider;this._addZoomButtonIcon(b,"+",e.zoomIn);this._addZoomButtonIcon(r,"\x26minus;",e.zoomOut);8>v("ie")&&d.add(r,"dj_ie67Fix");this._connects.push(E(b,k,this,this._simpleSliderChangeHandler));this._connects.push(E(r,k,this,this._simpleSliderChangeHandler));(-1<this.getMaxZoom()||-1<this.getMinZoom())&&this._connects.push(E(this,"onZoomEnd",this,this._simpleSliderZoomHandler));10>v("ie")&&c.setSelectable(a,!1);this.root.appendChild(a);
this.isZoomSlider=!0}},_simpleSliderChangeHandler:function(a){l.stop(a);a=-1!==a.currentTarget.className.indexOf("IncrementButton")?!0:!1;this._extentUtil({numLevels:a?1:-1})},_simpleSliderZoomHandler:function(a,b,c,r){var e;a=this._incButton;b=this._decButton;-1<r&&r===this.getMaxZoom()?e=a:-1<r&&r===this.getMinZoom()&&(e=b);e?(d.add(e,"esriSimpleSliderDisabledButton"),d.remove(e===a?b:a,"esriSimpleSliderDisabledButton")):(d.remove(a,"esriSimpleSliderDisabledButton"),d.remove(b,"esriSimpleSliderDisabledButton"))},
_getSliderClass:function(a){a=a?"Large":"Simple";var b=this._mapParams.sliderOrientation,c=this._mapParams.sliderPosition||"",b=b&&"horizontal"===b.toLowerCase()?"esri"+a+"SliderHorizontal":"esri"+a+"SliderVertical";if(c)switch(c.toLowerCase()){case "top-left":c="esri"+a+"SliderTL";break;case "top-right":c="esri"+a+"SliderTR";break;case "bottom-left":c="esri"+a+"SliderBL";break;case "bottom-right":c="esri"+a+"SliderBR"}return"esri"+a+"Slider "+b+" "+c},_addZoomButtonIcon:function(a,b,c){m.create("span",
{"aria-hidden":"true",role:"presentation",innerHTML:b},a);m.create("span",{class:"esriIconFallbackText",innerHTML:c},a)},_addZoomButtonTooltips:function(b,c){var d=B.widgets.zoomSlider;a.set(b,"title",d.zoomIn);a.set(c,"title",d.zoomOut)},_createSlider:function(a,b,c){if(this._mapParams.slider){var d=I("div",{id:this.id+"_zoom_slider"},this.root),r=y.defaults.map,e=this._getSliderClass(!0),k=-1!==e.indexOf("Horizontal"),m=this.getNumLevels();if(0<m){var f,u,l=this._mapParams.sliderLabels,h=!!l,t=
!1!==l;if(t){var g=k?"bottomDecoration":"rightDecoration";if(!l)for(l=[],r=0;r<m;r++)l[r]="";p.forEach([{class:"esriLargeSliderTicks",container:g,count:m,dijitClass:b},{class:h&&"esriLargeSliderLabels",container:g,count:m,labels:l,dijitClass:c}],function(a){var c=I("div"),r=a.dijitClass;delete a.dijitClass;d.appendChild(c);r===b?f=new r(a,c):u=new r(a,c)})}a=this._slider=new a({id:d.id,class:e,minimum:this.getMinZoom(),maximum:this.getMaxZoom(),discreteValues:m,value:this.getLevel(),clickSelect:!0,
intermediateChanges:!0,style:"z-index:30;"},d);a.startup();t&&(f.startup(),u.startup());this._slider_connect=E(a,"onChange",this,"_onSliderChangeHandler");this._connects.push(E(this,"onExtentChange",this,"_onExtentChangeSliderHandler"));this._connects.push(E(a._movable,"onFirstMove",this,"_onSliderMoveStartHandler"))}else{a=this._slider=new a({id:d.id,class:e,minimum:0,maximum:2,discreteValues:3,value:1,clickSelect:!0,intermediateChanges:r.sliderChangeImmediate,style:"height:50px; z-index:30;"},d);
c=a.domNode.firstChild.childNodes;for(r=1;3>=r;r++)X(c[r],"visibility","hidden");a.startup();this._slider_connect=E(a,"onChange",this,"_onDynSliderChangeHandler");this._connects.push(E(this,"onExtentChange",this,"_onExtentChangeDynSliderHandler"))}r=a.incrementButton;c=a.decrementButton;k?this._addZoomButtonTooltips(r,c):this._addZoomButtonTooltips(c,r);r.style.outline="none";c.style.outline="none";a.sliderHandle.style.outline="none";a._onKeyPress=function(){};if(k=a._movable){var w=k.onMouseDown;
k.onMouseDown=function(a){9>v("ie")&&1!==a.button||w.apply(this,arguments)}}this.isZoomSlider=!0}},_onSliderMoveStartHandler:function(){F(this._slider_connect);F(this._slidermovestop_connect);this._slider_connect=E(this._slider,"onChange",this,"_onSliderChangeDragHandler");this._slidermovestop_connect=E(this._slider._movable,"onMoveStop",this,"_onSliderMoveEndHandler")},_onSliderChangeDragHandler:function(a){this._extentUtil({targetLevel:a})},_onSliderMoveEndHandler:function(){F(this._slider_connect);
F(this._slidermovestop_connect)},_onSliderChangeHandler:function(a){this.setLevel(a)},_updateSliderValue:function(a,b){F(this._slider_connect);var c=this._slider,d=c._onChangeActive;c._onChangeActive=!1;c.set("value",a);c._onChangeActive=d;this._slider_connect=E(c,"onChange",this,b)},_onExtentChangeSliderHandler:function(a,b,c,d){F(this._slidermovestop_connect);this._updateSliderValue(d.level,"_onSliderChangeHandler")},_onDynSliderChangeHandler:function(a){this._extentUtil({numLevels:0<a?1:-1})},
_onExtentChangeDynSliderHandler:function(){this._updateSliderValue(1,"_onDynSliderChangeHandler")},_openLogoLink:function(a){window.open(y.defaults.map.logoLink,"_blank");l.stop(a)},enableMapNavigation:function(){this.isMapNavigation||(this.isMapNavigation=!0,this._evalMapNavigation())},disableMapNavigation:function(){this.isMapNavigation&&(this.isMapNavigation=!1,this._evalMapNavigation())},_evalMapNavigation:function(){this.isMapNavigation?this.navigationManager.enableNavigation():this.navigationManager.disableNavigation()},
_evalNavigationFeature:function(a){if(this.isMapNavigation&&this["is"+a])this.navigationManager["enable"+a]();else this.navigationManager["disable"+a]()},enableDoubleClickZoom:function(){this.isDoubleClickZoom||(this.isDoubleClickZoom=!0,this._evalNavigationFeature("DoubleClickZoom"))},disableDoubleClickZoom:function(){this.isDoubleClickZoom&&(this.isDoubleClickZoom=!1,this._evalNavigationFeature("DoubleClickZoom"))},enableShiftDoubleClickZoom:function(){this.isShiftDoubleClickZoom||(Q(this.declaredClass+
": Map.(enable/disable)ShiftDoubleClickZoom deprecated. Shift-Double-Click zoom behavior will not be supported.",null,"v2.0"),this.navigationManager.enableShiftDoubleClickZoom(),this.isShiftDoubleClickZoom=!0)},disableShiftDoubleClickZoom:function(){this.isShiftDoubleClickZoom&&(Q(this.declaredClass+": Map.(enable/disable)ShiftDoubleClickZoom deprecated. Shift-Double-Click zoom behavior will not be supported.",null,"v2.0"),this.navigationManager.disableShiftDoubleClickZoom(),this.isShiftDoubleClickZoom=
!1)},enableClickRecenter:function(){this.isClickRecenter||(this.isClickRecenter=!0,this._evalNavigationFeature("ClickRecenter"))},disableClickRecenter:function(){this.isClickRecenter&&(this.isClickRecenter=!1,this._evalNavigationFeature("ClickRecenter"))},enablePan:function(){this.isPan||(this.isPan=!0,this._evalNavigationFeature("Pan"))},disablePan:function(){this.isPan&&(this.isPan=!1,this._evalNavigationFeature("Pan"))},enableRubberBandZoom:function(){this.isRubberBandZoom||(this.isRubberBandZoom=
!0,this._evalNavigationFeature("RubberBandZoom"))},disableRubberBandZoom:function(){this.isRubberBandZoom&&(this.isRubberBandZoom=!1,this._evalNavigationFeature("RubberBandZoom"))},enablePinchZoom:function(){this.isPinchZoom||(this.isPinchZoom=!0,this._evalNavigationFeature("PinchZoom"))},disablePinchZoom:function(){this.isPinchZoom&&(this.isPinchZoom=!1,this._evalNavigationFeature("PinchZoom"))},enableKeyboardNavigation:function(){this.isKeyboardNavigation||(this.isKeyboardNavigation=!0,this._evalNavigationFeature("KeyboardNavigation"))},
disableKeyboardNavigation:function(){this.isKeyboardNavigation&&(this.isKeyboardNavigation=!1,this._evalNavigationFeature("KeyboardNavigation"))},enableScrollWheel:function(){this.isScrollWheel||(this.isScrollWheel=!0,this._evalNavigationFeature("ScrollWheel"))},disableScrollWheel:function(){this.isScrollWheel&&(this.isScrollWheel=!1,this._evalNavigationFeature("ScrollWheel"))},enableScrollWheelZoom:function(){this.isScrollWheelZoom||(this.navigationManager.enableScrollWheelZoom(),this.isScrollWheelZoom=
!0)},disableScrollWheelZoom:function(){this.isScrollWheelZoom&&(this.navigationManager.disableScrollWheelZoom(),this.isScrollWheelZoom=!1)},enableScrollWheelPan:function(){this.isScrollWheelPan||this.navigationManager.enableScrollWheelPan()},disableScrollWheelPan:function(){this.isScrollWheelPan&&this.navigationManager.disableScrollWheelPan()},showPanArrows:function(){this._navDiv&&(this._navDiv.style.display="block",this.isPanArrows=!0)},hidePanArrows:function(){this._navDiv&&(this._navDiv.style.display=
"none",this.isPanArrows=!1)},showZoomSlider:function(){this._slider&&(X(this._slider.domNode||this._slider,"visibility","inherit"),this.isZoomSlider=!0)},hideZoomSlider:function(){this._slider&&(X(this._slider.domNode||this._slider,"visibility","hidden"),this.isZoomSlider=!1)},onClick:function(a){a.graphic||(a.graphic=this.syncHitTestForWebGL(a))}});v("extend-esri")&&(r.Map=n);return n})},"esri/lang":function(){define("dojo/_base/array dojo/_base/json dojo/_base/kernel dojo/_base/lang dojo/date dojo/has dojo/number dojo/date/locale ./kernel".split(" "),
function(q,n,b,g,h,p,l,f,e){function c(a,c,d){return[g.isString(a)?a.split(""):a,c||b.global,g.isString(d)?new Function("item","index","array",d):d]}function a(a){return void 0!==a&&null!==a}function d(b){return a(b)?b:""}function m(b,c,e){var r=e.match(/([^\(]+)(\([^\)]+\))?/i),k=g.trim(r[1]);e=c[b];var r=n.fromJson((r[2]?g.trim(r[2]):"()").replace(/^\(/,"({").replace(/\)$/,"})")),m=r.utcOffset;if(-1===q.indexOf(t,k))k=g.getObject(k),g.isFunction(k)&&(e=k(e,b,c,r));else if("number"===typeof e||"string"===
typeof e&&e&&!isNaN(Number(e)))switch(e=Number(e),k){case "NumberFormat":return l.format(e,r);case "DateString":b=new Date(e);if(r.local||r.systemLocale)return r.systemLocale?b.toLocaleDateString()+(r.hideTime?"":" "+b.toLocaleTimeString()):b.toDateString()+(r.hideTime?"":" "+b.toTimeString());b=b.toUTCString();r.hideTime&&(b=b.replace(/\s+\d\d\:\d\d\:\d\d\s+(utc|gmt)/i,""));return b;case "DateFormat":return b=new Date(e),a(m)&&(b=h.add(b,"minute",b.getTimezoneOffset()-m)),f.format(b,r)}return d(e)}
function w(a,b){var c;if(b)for(c in a)a.hasOwnProperty(c)&&(void 0===a[c]?delete a[c]:a[c]instanceof Object&&w(a[c],!0));else for(c in a)a.hasOwnProperty(c)&&void 0===a[c]&&delete a[c];return a}var t=["NumberFormat","DateString","DateFormat"],k=/<\/?[^>]+>/g,u={valueOf:function(a,b){for(var c in a)if(a[c]==b)return c;return null},stripTags:function(a){if(a){var b=typeof a;if("string"===b)a=a.replace(k,"");else if("object"===b)for(var c in a)(b=a[c])&&"string"===typeof b&&(b=b.replace(k,"")),a[c]=
b}return a},substitute:function(b,c,e){var r,k,f;a(e)&&(g.isObject(e)?(r=e.first,k=e.dateFormat,f=e.numberFormat):r=e);if(c&&"${*}"!==c)return g.replace(c,g.hitch({obj:b},function(a,b){a=b.split(":");return 1<a.length?(b=a[0],a.shift(),m(b,this.obj,a.join(":"))):k&&-1!==q.indexOf(k.properties||"",b)?m(b,this.obj,k.formatter||"DateString"):f&&-1!==q.indexOf(f.properties||"",b)?m(b,this.obj,f.formatter||"NumberFormat"):d(this.obj[b])}),/\$\{([^\}]+)\}/g);c=[];for(var u in b)if(e=b[u],k&&-1!==q.indexOf(k.properties||
"",u)?e=m(u,b,k.formatter||"DateString"):f&&-1!==q.indexOf(f.properties||"",u)&&(e=m(u,b,f.formatter||"NumberFormat")),c.push(u+" \x3d "+d(e)+"\x3cbr/\x3e"),r)break;return c.join("")},filter:function(a,b,d){b=c(a,d,b);d={};var e;a=b[0];for(e in a)b[2].call(b[e],a[e],e,a)&&(d[e]=a[e]);return d},startsWith:function(a,b,c){c=c||0;return a.indexOf(b,c)===c},endsWith:function(a,b,c){if("number"!==typeof c||!isFinite(c)||Math.floor(c)!==c||c>a.length)c=a.length;c-=b.length;a=a.indexOf(b,c);return-1!==a&&
a===c},isDefined:a,fixJson:w,isObject:function(a){return a&&"object"===typeof a},isString:function(a){return"string"===typeof a},mixin:function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a},clone2DArray:function(a){if(a=a?a.slice(0):null){var b,c=a.length;for(b=0;b<c;b++)a[b]=a[b]?a[b].slice(0):null}return a},clone3DArray:function(a){if(a=a?a.slice(0):null){var b,c=a.length;for(b=0;b<c;b++){a[b]=a[b]?a[b].slice(0):null;var d=a[b];if(d){var e,r=d.length;for(e=0;e<r;e++)d[e]=d[e]?d[e].slice(0):
null}}}return a}};p("extend-esri")&&(g.mixin(e,u),e._isDefined=a,e._getParts=c,e._sanitize=w);return u})},"dojo/date":function(){define(["./has","./_base/lang"],function(q,n){var b={getDaysInMonth:function(g){var h=g.getMonth();return 1==h&&b.isLeapYear(g)?29:[31,28,31,30,31,30,31,31,30,31,30,31][h]},isLeapYear:function(b){b=b.getFullYear();return!(b%400)||!(b%4)&&!!(b%100)},getTimezoneName:function(b){var h=b.toString(),g="",l=h.indexOf("(");if(-1<l)g=h.substring(++l,h.indexOf(")"));else if(l=/([A-Z\/]+) \d{4}$/,
h=h.match(l))g=h[1];else if(h=b.toLocaleString(),l=/ ([A-Z\/]+)$/,h=h.match(l))g=h[1];return"AM"==g||"PM"==g?"":g},compare:function(b,h,p){b=new Date(+b);h=new Date(+(h||new Date));"date"==p?(b.setHours(0,0,0,0),h.setHours(0,0,0,0)):"time"==p&&(b.setFullYear(0,0,0),h.setFullYear(0,0,0));return b>h?1:b<h?-1:0},add:function(b,h,p){var l=new Date(+b),f=!1,e="Date";switch(h){case "day":break;case "weekday":var c;(h=p%5)?c=parseInt(p/5):(h=0<p?5:-5,c=0<p?(p-5)/5:(p+5)/5);var a=b.getDay(),d=0;6==a&&0<p?
d=1:0==a&&0>p&&(d=-1);a+=h;if(0==a||6==a)d=0<p?2:-2;p=7*c+h+d;break;case "year":e="FullYear";f=!0;break;case "week":p*=7;break;case "quarter":p*=3;case "month":f=!0;e="Month";break;default:e="UTC"+h.charAt(0).toUpperCase()+h.substring(1)+"s"}if(e)l["set"+e](l["get"+e]()+p);f&&l.getDate()<b.getDate()&&l.setDate(0);return l},difference:function(g,h,p){h=h||new Date;p=p||"day";var l=h.getFullYear()-g.getFullYear(),f=1;switch(p){case "quarter":g=g.getMonth();h=h.getMonth();f=Math.floor(h/3)+1+4*l-(Math.floor(g/
3)+1);break;case "weekday":l=Math.round(b.difference(g,h,"day"));p=parseInt(b.difference(g,h,"week"));if(0==l%7)l=5*p;else{var f=0,e=g.getDay(),c=h.getDay();p=parseInt(l/7);h=l%7;g=new Date(g);g.setDate(g.getDate()+7*p);g=g.getDay();if(0<l)switch(!0){case 6==e:f=-1;break;case 0==e:f=0;break;case 6==c:f=-1;break;case 0==c:f=-2;break;case 5<g+h:f=-2}else if(0>l)switch(!0){case 6==e:f=0;break;case 0==e:f=1;break;case 6==c:f=2;break;case 0==c:f=1;break;case 0>g+h:f=2}l=l+f-2*p}f=l;break;case "year":f=
l;break;case "month":f=h.getMonth()-g.getMonth()+12*l;break;case "week":f=parseInt(b.difference(g,h,"day")/7);break;case "day":f/=24;case "hour":f/=60;case "minute":f/=60;case "second":f/=1E3;case "millisecond":f*=h.getTime()-g.getTime()}return Math.round(f)}};n.mixin(n.getObject("dojo.date",!0),b);return b})},"dojo/number":function(){define(["./_base/lang","./i18n","./i18n!./cldr/nls/number","./string","./regexp"],function(q,n,b,g,h){var p={};q.setObject("dojo.number",p);p.format=function(b,e){e=
q.mixin({},e||{});var c=n.normalizeLocale(e.locale),c=n.getLocalization("dojo.cldr","number",c);e.customs=c;c=e.pattern||c[(e.type||"decimal")+"Format"];return isNaN(b)||Infinity==Math.abs(b)?null:p._applyPattern(b,c,e)};p._numberPatternRE=/[#0,]*[#0](?:\.0*#*)?/;p._applyPattern=function(b,e,c){c=c||{};var a=c.customs.group,d=c.customs.decimal;e=e.split(";");var m=e[0];e=e[0>b?1:0]||"-"+m;if(-1!=e.indexOf("%"))b*=100;else if(-1!=e.indexOf("\u2030"))b*=1E3;else if(-1!=e.indexOf("\u00a4"))a=c.customs.currencyGroup||
a,d=c.customs.currencyDecimal||d,e=e.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/,function(a,b,d,e){return(a=c[["symbol","currency","displayName"][d.length-1]]||c.currency||"")?b+a+e:""});else if(-1!=e.indexOf("E"))throw Error("exponential notation not supported");var f=p._numberPatternRE,m=m.match(f);if(!m)throw Error("unable to find a number expression in pattern: "+e);!1===c.fractional&&(c.places=0);return e.replace(f,p._formatAbsolute(b,m[0],{decimal:d,group:a,places:c.places,round:c.round}))};
p.round=function(b,e,c){c=10/(c||10);return(c*+b).toFixed(e)/c};if(0==(.9).toFixed()){var l=p.round;p.round=function(b,e,c){var a=Math.pow(10,-e||0),d=Math.abs(b);if(!b||d>=a)a=0;else if(d/=a,.5>d||.95<=d)a=0;return l(b,e,c)+(0<b?a:-a)}}p._formatAbsolute=function(b,e,c){c=c||{};!0===c.places&&(c.places=0);Infinity===c.places&&(c.places=6);e=e.split(".");var a="string"==typeof c.places&&c.places.indexOf(","),d=c.places;a?d=c.places.substring(a+1):0<=d||(d=(e[1]||[]).length);0>c.round||(b=p.round(b,
d,c.round));b=String(Math.abs(b)).split(".");var m=b[1]||"";e[1]||c.places?(a&&(c.places=c.places.substring(0,a)),a=void 0!==c.places?c.places:e[1]&&e[1].lastIndexOf("0")+1,a>m.length&&(b[1]=g.pad(m,a,"0",!0)),d<m.length&&(b[1]=m.substr(0,d))):b[1]&&b.pop();d=e[0].replace(",","");a=d.indexOf("0");-1!=a&&(a=d.length-a,a>b[0].length&&(b[0]=g.pad(b[0],a)),-1==d.indexOf("#")&&(b[0]=b[0].substr(b[0].length-a)));var d=e[0].lastIndexOf(","),f,l;-1!=d&&(f=e[0].length-d-1,e=e[0].substr(0,d),d=e.lastIndexOf(","),
-1!=d&&(l=e.length-d-1));e=[];for(d=b[0];d;)a=d.length-f,e.push(0<a?d.substr(a):d),d=0<a?d.slice(0,a):"",l&&(f=l,l=void 0);b[0]=e.reverse().join(c.group||",");return b.join(c.decimal||".")};p.regexp=function(b){return p._parseInfo(b).regexp};p._parseInfo=function(b){b=b||{};var e=n.normalizeLocale(b.locale),e=n.getLocalization("dojo.cldr","number",e),c=b.pattern||e[(b.type||"decimal")+"Format"],a=e.group,d=e.decimal,m=1;if(-1!=c.indexOf("%"))m/=100;else if(-1!=c.indexOf("\u2030"))m/=1E3;else{var f=
-1!=c.indexOf("\u00a4");f&&(a=e.currencyGroup||a,d=e.currencyDecimal||d)}e=c.split(";");1==e.length&&e.push("-"+e[0]);e=h.buildGroupRE(e,function(c){c="(?:"+h.escapeString(c,".")+")";return c.replace(p._numberPatternRE,function(c){var e={signed:!1,separator:b.strict?a:[a,""],fractional:b.fractional,decimal:d,exponent:!1};c=c.split(".");var r=b.places;1==c.length&&1!=m&&(c[1]="###");1==c.length||0===r?e.fractional=!1:(void 0===r&&(r=b.pattern?c[1].lastIndexOf("0")+1:Infinity),r&&void 0==b.fractional&&
(e.fractional=!0),!b.places&&r<c[1].length&&(r+=","+c[1].length),e.places=r);c=c[0].split(",");1<c.length&&(e.groupSize=c.pop().length,1<c.length&&(e.groupSize2=c.pop().length));return"("+p._realNumberRegexp(e)+")"})},!0);f&&(e=e.replace(/([\s\xa0]*)(\u00a4{1,3})([\s\xa0]*)/g,function(a,c,d,e){a=h.escapeString(b[["symbol","currency","displayName"][d.length-1]]||b.currency||"");if(!a)return"";c=c?"[\\s\\xa0]":"";e=e?"[\\s\\xa0]":"";return b.strict?c+a+e:(c&&(c+="*"),e&&(e+="*"),"(?:"+c+a+e+")?")}));
return{regexp:e.replace(/[\xa0 ]/g,"[\\s\\xa0]"),group:a,decimal:d,factor:m}};p.parse=function(b,e){e=p._parseInfo(e);b=(new RegExp("^"+e.regexp+"$")).exec(b);if(!b)return NaN;var c=b[1];if(!b[1]){if(!b[2])return NaN;c=b[2];e.factor*=-1}c=c.replace(new RegExp("["+e.group+"\\s\\xa0]","g"),"").replace(e.decimal,".");return c*e.factor};p._realNumberRegexp=function(b){b=b||{};"places"in b||(b.places=Infinity);"string"!=typeof b.decimal&&(b.decimal=".");"fractional"in b&&!/^0/.test(b.places)||(b.fractional=
[!0,!1]);"exponent"in b||(b.exponent=[!0,!1]);"eSigned"in b||(b.eSigned=[!0,!1]);var e=p._integerRegexp(b),c=h.buildGroupRE(b.fractional,function(a){var c="";a&&0!==b.places&&(c="\\"+b.decimal,c=Infinity==b.places?"(?:"+c+"\\d+)?":c+("\\d{"+b.places+"}"));return c},!0),a=h.buildGroupRE(b.exponent,function(a){return a?"([eE]"+p._integerRegexp({signed:b.eSigned})+")":""}),e=e+c;c&&(e="(?:(?:"+e+")|(?:"+c+"))");return e+a};p._integerRegexp=function(b){b=b||{};"signed"in b||(b.signed=[!0,!1]);"separator"in
b?"groupSize"in b||(b.groupSize=3):b.separator="";var e=h.buildGroupRE(b.signed,function(a){return a?"[-+]":""},!0),c=h.buildGroupRE(b.separator,function(a){if(!a)return"(?:\\d+)";a=h.escapeString(a);" "==a?a="\\s":"\u00a0"==a&&(a="\\s\\xa0");var c=b.groupSize,e=b.groupSize2;return e?(a="(?:0|[1-9]\\d{0,"+(e-1)+"}(?:["+a+"]\\d{"+e+"})*["+a+"]\\d{"+c+"})",0<c-e?"(?:"+a+"|(?:0|[1-9]\\d{0,"+(c-1)+"}))":a):"(?:0|[1-9]\\d{0,"+(c-1)+"}(?:["+a+"]\\d{"+c+"})*)"},!0);return e+c};return p})},"dojo/regexp":function(){define(["./_base/kernel",
"./_base/lang"],function(q,n){var b={};n.setObject("dojo.regexp",b);b.escapeString=function(b,h){return b.replace(/([\.$?*|{}\(\)\[\]\\\/\+\-^])/g,function(b){return h&&-1!=h.indexOf(b)?b:"\\"+b})};b.buildGroupRE=function(g,h,p){if(!(g instanceof Array))return h(g);for(var l=[],f=0;f<g.length;f++)l.push(h(g[f]));return b.group(l.join("|"),p)};b.group=function(b,h){return"("+(h?"?:":"")+b+")"};return b})},"dojo/date/locale":function(){define("../_base/lang ../_base/array ../date ../cldr/supplemental ../i18n ../regexp ../string ../i18n!../cldr/nls/gregorian module".split(" "),
function(q,n,b,g,h,p,l,f,e){function c(a,b,c,d){return d.replace(/([a-z])\1*/ig,function(e){var r,k,f=e.charAt(0);e=e.length;var u=["abbr","wide","narrow"];switch(f){case "G":r=b[4>e?"eraAbbr":"eraNames"][0>a.getFullYear()?0:1];break;case "y":r=a.getFullYear();switch(e){case 1:break;case 2:if(!c.fullYear){r=String(r);r=r.substr(r.length-2);break}default:k=!0}break;case "Q":case "q":r=Math.ceil((a.getMonth()+1)/3);k=!0;break;case "M":case "L":r=a.getMonth();3>e?(r+=1,k=!0):(f=["months","L"==f?"standAlone":
"format",u[e-3]].join("-"),r=b[f][r]);break;case "w":r=m._getWeekOfYear(a,0);k=!0;break;case "d":r=a.getDate();k=!0;break;case "D":r=m._getDayOfYear(a);k=!0;break;case "e":case "c":if(r=a.getDay(),2>e){r=(r-g.getFirstDayOfWeek(c.locale)+8)%7;break}case "E":r=a.getDay();3>e?(r+=1,k=!0):(f=["days","c"==f?"standAlone":"format",u[e-3]].join("-"),r=b[f][r]);break;case "a":f=12>a.getHours()?"am":"pm";r=c[f]||b["dayPeriods-format-wide-"+f];break;case "h":case "H":case "K":case "k":k=a.getHours();switch(f){case "h":r=
k%12||12;break;case "H":r=k;break;case "K":r=k%12;break;case "k":r=k||24}k=!0;break;case "m":r=a.getMinutes();k=!0;break;case "s":r=a.getSeconds();k=!0;break;case "S":r=Math.round(a.getMilliseconds()*Math.pow(10,e-3));k=!0;break;case "v":case "z":if(r=m._getZone(a,!0,c))break;e=4;case "Z":f=m._getZone(a,!1,c);f=[0>=f?"+":"-",l.pad(Math.floor(Math.abs(f)/60),2),l.pad(Math.abs(f)%60,2)];4==e&&(f.splice(0,0,"GMT"),f.splice(3,0,":"));r=f.join("");break;default:throw Error("dojo.date.locale.format: invalid pattern char: "+
d);}k&&(r=l.pad(r,e));return r})}function a(a,b,c,d){var e=function(a){return a};b=b||e;c=c||e;d=d||e;var r=a.match(/(''|[^'])+/g),k="'"==a.charAt(0);n.forEach(r,function(a,d){a?(r[d]=(k?c:b)(a.replace(/''/g,"'")),k=!k):r[d]=""});return d(r.join(""))}function d(a,b,c,d){d=p.escapeString(d);c.strict||(d=d.replace(" a"," ?a"));return d.replace(/([a-z])\1*/ig,function(d){var e;e=d.charAt(0);var r=d.length,k="",m="";c.strict?(1<r&&(k="0{"+(r-1)+"}"),2<r&&(m="0{"+(r-2)+"}")):(k="0?",m="0{0,2}");switch(e){case "y":e=
"\\d{2,4}";break;case "M":case "L":2<r?(e=b["months-"+("L"==e?"standAlone":"format")+"-"+w[r-3]].slice(0).join("|"),c.strict||(e=e.replace(/\./g,""),e="(?:"+e+")\\.?")):e="1[0-2]|"+k+"[1-9]";break;case "D":e="[12][0-9][0-9]|3[0-5][0-9]|36[0-6]|"+k+"[1-9][0-9]|"+m+"[1-9]";break;case "d":e="3[01]|[12]\\d|"+k+"[1-9]";break;case "w":e="[1-4][0-9]|5[0-3]|"+k+"[1-9]";break;case "E":case "e":case "c":e=".+?";break;case "h":e="1[0-2]|"+k+"[1-9]";break;case "k":e="1[01]|"+k+"\\d";break;case "H":e="1\\d|2[0-3]|"+
k+"\\d";break;case "K":e="1\\d|2[0-4]|"+k+"[1-9]";break;case "m":case "s":e="[0-5]\\d";break;case "S":e="\\d{"+r+"}";break;case "a":r=c.am||b["dayPeriods-format-wide-am"];k=c.pm||b["dayPeriods-format-wide-pm"];e=r+"|"+k;c.strict||(r!=r.toLowerCase()&&(e+="|"+r.toLowerCase()),k!=k.toLowerCase()&&(e+="|"+k.toLowerCase()),-1!=e.indexOf(".")&&(e+="|"+e.replace(/\./g,"")));e=e.replace(/\./g,"\\.");break;default:e=".*"}a&&a.push(d);return"("+e+")"}).replace(/[\xa0 ]/g,"[\\s\\xa0]")}var m={};q.setObject(e.id.replace(/\//g,
"."),m);m._getZone=function(a,c,d){return c?b.getTimezoneName(a):a.getTimezoneOffset()};m.format=function(b,d){d=d||{};var e=h.normalizeLocale(d.locale),r=d.formatLength||"short",e=m._getGregorianBundle(e),k=[];b=q.hitch(this,c,b,e,d);if("year"==d.selector)return a(e["dateFormatItem-yyyy"]||"yyyy",b);var f;"date"!=d.selector&&(f=d.timePattern||e["timeFormat-"+r])&&k.push(a(f,b));"time"!=d.selector&&(f=d.datePattern||e["dateFormat-"+r])&&k.push(a(f,b));return 1==k.length?k[0]:e["dateTimeFormat-"+r].replace(/\'/g,
"").replace(/\{(\d+)\}/g,function(a,b){return k[b]})};m.regexp=function(a){return m._parseInfo(a).regexp};m._parseInfo=function(b){b=b||{};var c=h.normalizeLocale(b.locale),c=m._getGregorianBundle(c),e=b.formatLength||"short",k=b.datePattern||c["dateFormat-"+e],f=b.timePattern||c["timeFormat-"+e],e="date"==b.selector?k:"time"==b.selector?f:c["dateTimeFormat-"+e].replace(/\{(\d+)\}/g,function(a,b){return[f,k][b]}),l=[];return{regexp:a(e,q.hitch(this,d,l,c,b)),tokens:l,bundle:c}};m.parse=function(a,
c){var d=/[\u200E\u200F\u202A\u202E]/g,e=m._parseInfo(c),r=e.tokens,k=e.bundle;a=(new RegExp("^"+e.regexp.replace(d,"")+"$",e.strict?"":"i")).exec(a&&a.replace(d,""));if(!a)return null;var f=["abbr","wide","narrow"],l=[1970,0,1,0,0,0,0],u="";a=n.every(a,function(a,b){if(!b)return!0;var d=r[b-1];b=d.length;d=d.charAt(0);switch(d){case "y":if(2!=b&&c.strict)l[0]=a;else if(100>a)a=Number(a),d=""+(new Date).getFullYear(),b=100*d.substring(0,2),d=Math.min(Number(d.substring(2,4))+20,99),l[0]=a<d?b+a:b-
100+a;else{if(c.strict)return!1;l[0]=a}break;case "M":case "L":if(2<b){if(b=k["months-"+("L"==d?"standAlone":"format")+"-"+f[b-3]].concat(),c.strict||(a=a.replace(".","").toLowerCase(),b=n.map(b,function(a){return a.replace(".","").toLowerCase()})),a=n.indexOf(b,a),-1==a)return!1}else a--;l[1]=a;break;case "E":case "e":case "c":b=k["days-"+("c"==d?"standAlone":"format")+"-"+f[b-3]].concat();c.strict||(a=a.toLowerCase(),b=n.map(b,function(a){return a.toLowerCase()}));a=n.indexOf(b,a);if(-1==a)return!1;
break;case "D":l[1]=0;case "d":l[2]=a;break;case "a":b=c.am||k["dayPeriods-format-wide-am"];d=c.pm||k["dayPeriods-format-wide-pm"];if(!c.strict){var e=/\./g;a=a.replace(e,"").toLowerCase();b=b.replace(e,"").toLowerCase();d=d.replace(e,"").toLowerCase()}if(c.strict&&a!=b&&a!=d)return!1;u=a==d?"p":a==b?"a":"";break;case "K":24==a&&(a=0);case "h":case "H":case "k":if(23<a)return!1;l[3]=a;break;case "m":l[4]=a;break;case "s":l[5]=a;break;case "S":l[6]=a}return!0});d=+l[3];"p"===u&&12>d?l[3]=d+12:"a"===
u&&12==d&&(l[3]=0);d=new Date(l[0],l[1],l[2],l[3],l[4],l[5],l[6]);c.strict&&d.setFullYear(l[0]);var h=r.join(""),e=-1!=h.indexOf("d"),h=-1!=h.indexOf("M");if(!a||h&&d.getMonth()>l[1]||e&&d.getDate()>l[2])return null;if(h&&d.getMonth()<l[1]||e&&d.getDate()<l[2])d=b.add(d,"hour",1);return d};var w=["abbr","wide","narrow"],t=[],k={};m.addCustomFormats=function(a,b){t.push({pkg:a,name:b});k={}};m._getGregorianBundle=function(a){if(k[a])return k[a];var b={};n.forEach(t,function(c){c=h.getLocalization(c.pkg,
c.name,a);b=q.mixin(b,c)},this);return k[a]=b};m.addCustomFormats(e.id.replace(/\/date\/locale$/,".cldr"),"gregorian");m.getNames=function(a,b,c,d){var e;d=m._getGregorianBundle(d);a=[a,c,b];"standAlone"==c&&(c=a.join("-"),e=d[c],1==e[0]&&(e=void 0));a[1]="format";return(e||d[a.join("-")]).concat()};m.isWeekend=function(a,b){b=g.getWeekend(b);a=(a||new Date).getDay();b.end<b.start&&(b.end+=7,a<b.start&&(a+=7));return a>=b.start&&a<=b.end};m._getDayOfYear=function(a){return b.difference(new Date(a.getFullYear(),
0,1,a.getHours()),a)+1};m._getWeekOfYear=function(a,b){1==arguments.length&&(b=0);var c=(new Date(a.getFullYear(),0,1)).getDay(),d=(c-b+7)%7,d=Math.floor((m._getDayOfYear(a)+d-1)/7);c==b&&d++;return d};return m})},"dojo/cldr/supplemental":function(){define(["../_base/lang","../i18n"],function(q,n){var b={};q.setObject("dojo.cldr.supplemental",b);b.getFirstDayOfWeek=function(g){g={bd:5,mv:5,ae:6,af:6,bh:6,dj:6,dz:6,eg:6,iq:6,ir:6,jo:6,kw:6,ly:6,ma:6,om:6,qa:6,sa:6,sd:6,sy:6,ye:6,ag:0,ar:0,as:0,au:0,
br:0,bs:0,bt:0,bw:0,by:0,bz:0,ca:0,cn:0,co:0,dm:0,"do":0,et:0,gt:0,gu:0,hk:0,hn:0,id:0,ie:0,il:0,"in":0,jm:0,jp:0,ke:0,kh:0,kr:0,la:0,mh:0,mm:0,mo:0,mt:0,mx:0,mz:0,ni:0,np:0,nz:0,pa:0,pe:0,ph:0,pk:0,pr:0,py:0,sg:0,sv:0,th:0,tn:0,tt:0,tw:0,um:0,us:0,ve:0,vi:0,ws:0,za:0,zw:0}[b._region(g)];return void 0===g?1:g};b._region=function(b){b=n.normalizeLocale(b);b=b.split("-");var h=b[1];h?4==h.length&&(h=b[2]):h={aa:"et",ab:"ge",af:"za",ak:"gh",am:"et",ar:"eg",as:"in",av:"ru",ay:"bo",az:"az",ba:"ru",be:"by",
bg:"bg",bi:"vu",bm:"ml",bn:"bd",bo:"cn",br:"fr",bs:"ba",ca:"es",ce:"ru",ch:"gu",co:"fr",cr:"ca",cs:"cz",cv:"ru",cy:"gb",da:"dk",de:"de",dv:"mv",dz:"bt",ee:"gh",el:"gr",en:"us",es:"es",et:"ee",eu:"es",fa:"ir",ff:"sn",fi:"fi",fj:"fj",fo:"fo",fr:"fr",fy:"nl",ga:"ie",gd:"gb",gl:"es",gn:"py",gu:"in",gv:"gb",ha:"ng",he:"il",hi:"in",ho:"pg",hr:"hr",ht:"ht",hu:"hu",hy:"am",ia:"fr",id:"id",ig:"ng",ii:"cn",ik:"us","in":"id",is:"is",it:"it",iu:"ca",iw:"il",ja:"jp",ji:"ua",jv:"id",jw:"id",ka:"ge",kg:"cd",ki:"ke",
kj:"na",kk:"kz",kl:"gl",km:"kh",kn:"in",ko:"kr",ks:"in",ku:"tr",kv:"ru",kw:"gb",ky:"kg",la:"va",lb:"lu",lg:"ug",li:"nl",ln:"cd",lo:"la",lt:"lt",lu:"cd",lv:"lv",mg:"mg",mh:"mh",mi:"nz",mk:"mk",ml:"in",mn:"mn",mo:"ro",mr:"in",ms:"my",mt:"mt",my:"mm",na:"nr",nb:"no",nd:"zw",ne:"np",ng:"na",nl:"nl",nn:"no",no:"no",nr:"za",nv:"us",ny:"mw",oc:"fr",om:"et",or:"in",os:"ge",pa:"in",pl:"pl",ps:"af",pt:"br",qu:"pe",rm:"ch",rn:"bi",ro:"ro",ru:"ru",rw:"rw",sa:"in",sd:"in",se:"no",sg:"cf",si:"lk",sk:"sk",sl:"si",
sm:"ws",sn:"zw",so:"so",sq:"al",sr:"rs",ss:"za",st:"za",su:"id",sv:"se",sw:"tz",ta:"in",te:"in",tg:"tj",th:"th",ti:"et",tk:"tm",tl:"ph",tn:"za",to:"to",tr:"tr",ts:"za",tt:"ru",ty:"pf",ug:"cn",uk:"ua",ur:"pk",uz:"uz",ve:"za",vi:"vn",wa:"be",wo:"sn",xh:"za",yi:"il",yo:"ng",za:"cn",zh:"cn",zu:"za",ace:"id",ady:"ru",agq:"cm",alt:"ru",amo:"ng",asa:"tz",ast:"es",awa:"in",bal:"pk",ban:"id",bas:"cm",bax:"cm",bbc:"id",bem:"zm",bez:"tz",bfq:"in",bft:"pk",bfy:"in",bhb:"in",bho:"in",bik:"ph",bin:"ng",bjj:"in",
bku:"ph",bqv:"ci",bra:"in",brx:"in",bss:"cm",btv:"pk",bua:"ru",buc:"yt",bug:"id",bya:"id",byn:"er",cch:"ng",ccp:"in",ceb:"ph",cgg:"ug",chk:"fm",chm:"ru",chp:"ca",chr:"us",cja:"kh",cjm:"vn",ckb:"iq",crk:"ca",csb:"pl",dar:"ru",dav:"ke",den:"ca",dgr:"ca",dje:"ne",doi:"in",dsb:"de",dua:"cm",dyo:"sn",dyu:"bf",ebu:"ke",efi:"ng",ewo:"cm",fan:"gq",fil:"ph",fon:"bj",fur:"it",gaa:"gh",gag:"md",gbm:"in",gcr:"gf",gez:"et",gil:"ki",gon:"in",gor:"id",grt:"in",gsw:"ch",guz:"ke",gwi:"ca",haw:"us",hil:"ph",hne:"in",
hnn:"ph",hoc:"in",hoj:"in",ibb:"ng",ilo:"ph",inh:"ru",jgo:"cm",jmc:"tz",kaa:"uz",kab:"dz",kaj:"ng",kam:"ke",kbd:"ru",kcg:"ng",kde:"tz",kdt:"th",kea:"cv",ken:"cm",kfo:"ci",kfr:"in",kha:"in",khb:"cn",khq:"ml",kht:"in",kkj:"cm",kln:"ke",kmb:"ao",koi:"ru",kok:"in",kos:"fm",kpe:"lr",krc:"ru",kri:"sl",krl:"ru",kru:"in",ksb:"tz",ksf:"cm",ksh:"de",kum:"ru",lag:"tz",lah:"pk",lbe:"ru",lcp:"cn",lep:"in",lez:"ru",lif:"np",lis:"cn",lki:"ir",lmn:"in",lol:"cd",lua:"cd",luo:"ke",luy:"ke",lwl:"th",mad:"id",mag:"in",
mai:"in",mak:"id",man:"gn",mas:"ke",mdf:"ru",mdh:"ph",mdr:"id",men:"sl",mer:"ke",mfe:"mu",mgh:"mz",mgo:"cm",min:"id",mni:"in",mnk:"gm",mnw:"mm",mos:"bf",mua:"cm",mwr:"in",myv:"ru",nap:"it",naq:"na",nds:"de","new":"np",niu:"nu",nmg:"cm",nnh:"cm",nod:"th",nso:"za",nus:"sd",nym:"tz",nyn:"ug",pag:"ph",pam:"ph",pap:"bq",pau:"pw",pon:"fm",prd:"ir",raj:"in",rcf:"re",rej:"id",rjs:"np",rkt:"in",rof:"tz",rwk:"tz",saf:"gh",sah:"ru",saq:"ke",sas:"id",sat:"in",saz:"in",sbp:"tz",scn:"it",sco:"gb",sdh:"ir",seh:"mz",
ses:"ml",shi:"ma",shn:"mm",sid:"et",sma:"se",smj:"se",smn:"fi",sms:"fi",snk:"ml",srn:"sr",srr:"sn",ssy:"er",suk:"tz",sus:"gn",swb:"yt",swc:"cd",syl:"bd",syr:"sy",tbw:"ph",tcy:"in",tdd:"cn",tem:"sl",teo:"ug",tet:"tl",tig:"er",tiv:"ng",tkl:"tk",tmh:"ne",tpi:"pg",trv:"tw",tsg:"ph",tts:"th",tum:"mw",tvl:"tv",twq:"ne",tyv:"ru",tzm:"ma",udm:"ru",uli:"fm",umb:"ao",unr:"in",unx:"in",vai:"lr",vun:"tz",wae:"ch",wal:"et",war:"ph",xog:"ug",xsr:"np",yao:"mz",yap:"fm",yav:"cm",zza:"tr"}[b[0]];return h};b.getWeekend=
function(g){var h=b._region(g);g={"in":0,af:4,dz:4,ir:4,om:4,sa:4,ye:4,ae:5,bh:5,eg:5,il:5,iq:5,jo:5,kw:5,ly:5,ma:5,qa:5,sd:5,sy:5,tn:5}[h];h={af:5,dz:5,ir:5,om:5,sa:5,ye:5,ae:6,bh:5,eg:6,il:6,iq:6,jo:6,kw:6,ly:6,ma:6,qa:6,sd:6,sy:6,tn:6}[h];void 0===g&&(g=6);void 0===h&&(h=0);return{start:g,end:h}};return b})},"esri/_coremap":function(){define("require module dojo/_base/kernel dojo/_base/declare dojo/_base/connect dojo/_base/Deferred dojo/_base/lang dojo/_base/array dojo/_base/event dojo/_base/unload dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/dom-geometry dojo/dom-style dojo/sniff dijit/registry dojox/gfx/matrix ./kernel ./config ./basemaps ./lang ./Evented ./fx ./deferredUtils ./tileUtils ./urlUtils ./PluginTarget ./Color ./arcade/Dictionary ./geometry/Point ./geometry/ScreenPoint ./geometry/Extent ./geometry/Rect ./geometry/mathUtils ./geometry/scaleUtils ./geometry/screenUtils ./geometry/webMercatorUtils ./layers/GraphicsLayer ./layers/TileInfo ./layers/LOD ./layers/ArcGISTiledMapServiceLayer ./layers/MapImageLayer ./layers/OpenStreetMapLayer ./layers/VectorTileLayer ./layers/support/webglUtils ./dijit/Popup ./plugins/popupManager dojo/uacss".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H,E,F,I,X,N,G,Q,M,U,O,L,ba,P,V,Y,oa,ea,ca,ga,ha,pa,ja){function ya(a,b){var c=a.lods;c.sort(function(a,b){return a.scale>b.scale?-1:a.scale<b.scale?1:0});var d=[],c=f.filter(c,function(a){if(-1===Aa(d,a.scale))return d.push(a.scale),!0}),e=b.lods=[],k;f.forEach(c,function(a,b){k=e[b]=new oa(a);k.level=b});b.tileInfo=new Y(qa(a,{lods:e}))}var sa,wa=ba.toMapPoint,Ba=ba.toScreenPoint,Ca=h.connect,ta=h.disconnect,ra=l.hitch,va=k.set,Aa=f.indexOf,
qa=l.mixin,S=0,ka=z.defaults.map,Pa=ka.layerNamePrefix,Ma=ka.graphicsLayerNamePrefix,Na=new RegExp("^"+Pa+"(\\d+)$"),Da=new RegExp("^"+Ma+"(\\d+)$"),Fa=function(){},Ea=0,Qa=pa.isWebGLEnabled();g=g([B,I],{declaredClass:"esri._CoreMap",resizeDelay:300,invalidExtent:"Map does not have a valid extent.",invalidGeometry:"Geometry (wkid: ${geometry}) cannot be converted to spatial reference of the map (wkid: ${map})",unknownBasemap:'Unable to find basemap definition for: "${basemapName}". Try one of these: ${list}',
invalidBasemap:'Unable to add basemap: "${basemapName}".',unknownLayerType:'Unknown basemap layer type: "${type}" found in basemap definition for: "${basemapName}".',visible:!0,webglEnabled:Qa,_eventMap:{"basemap-change":!0,"extent-change":["extent","delta","levelChange","lod"],"layer-add":["layer"],"layer-add-result":["layer","error"],"layer-remove":["layer"],"layer-reorder":["layer","index"],"layer-resume":["layer"],"layer-suspend":["layer"],"layers-add-result":["layers"],"layers-removed":!0,"layers-reordered":["layerIds"],
load:["map"],pan:["extent","delta"],"pan-end":["extent","delta"],"pan-start":["extent","screenPoint"],reposition:["x","y"],resize:["extent","width","height"],scale:["matrix","immediate"],"time-extent-change":["timeExtent"],"before-unload":["map"],unload:["map"],"update-end":["error"],"update-start":!0,zoom:["extent","zoomFactor","anchor"],"zoom-end":["extent","zoomFactor","anchor","level"],"zoom-start":["extent","zoomFactor","anchor","level"],click:!0,"dbl-click":!0,"key-down":!0,"key-up":!0,"mouse-down":!0,
"mouse-drag":!0,"mouse-drag-end":!0,"mouse-drag-start":!0,"mouse-move":!0,"mouse-out":!0,"mouse-over":!0,"mouse-up":!0,"mouse-wheel":!0,"basic-tap":!0,"double-tap":!0,"pinch-end":!0,"pinch-move":!0,"pinch-start":!0,"processed-double-tap":!0,"processed-tap":!0,"swipe-end":!0,"swipe-move":!0,"swipe-start":!0,tap:!0,"two-finger-tap":!0},constructor:function(b,e){e=e||{};this.registerConnectEvents();qa(this,{_internalLayerIds:[],_layers:[],_layerDivs:[],_layerSize:0,_connects:[],_layerAddPromises:{},
_zoomAnimDiv:null,_zoomAnim:null,_layersDiv:null,_firstLayerId:null,_delta:null,_cursor:null,_ratioW:1,_ratioH:1,_params:null,_minResolution:0,_maxResolution:0,cursor:null,layerIds:[],graphicsLayerIds:[],graphics:null,_labels:null,loaded:!1,__panning:!1,__zooming:!1,__container:null,root:null,__LOD:null,__tileInfo:null,__visibleRect:null,__visibleDelta:null,_rids:[],_webglContextOwners:[]});var k=this.container=a.byId(b),f=this.id=d.get(k,"id")||r.getUniqueId(this.declaredClass);m.add(k,"map");var l=
t.getContentBox(k);b=m.add;var h=w.create;this.position=new Q(0,0);this._reposition();var u=this.width=0<l.w?l.w:ka.width,g=this.height=0<l.h?l.h:ka.height,y=this.root=h("div",{id:f+"_root",style:{width:u+"px",height:g+"px",direction:"ltr"}});b(y,"esriMapContainer");l=this.__container=h("div",{id:f+"_container"},y);va(l,"position","absolute");b(l,"esriMapContainer");k.appendChild(y);e=this._params=qa({slider:!0,nav:!1,zoom:-1,minZoom:-1,maxZoom:-1,scale:-1,minScale:0,maxScale:0,showInfoWindowOnClick:!0,
displayGraphicsOnPan:!0,wrapAround180:!0,fitExtent:!1,optimizePanAnimation:!0},e);this.setWebGLEnabled(null!=e.webglEnabled?e.webglEnabled:this.webglEnabled);this.maxWebGLContexts=null!=e.maxWebGLContexts?e.maxWebGLContexts:-1;this.wrapAround180=e.wrapAround180;this.optimizePanAnimation=e.optimizePanAnimation;this.setBackgroundColor(e.backgroundColor);A.isDefined(e.resizeDelay)&&(this.resizeDelay=e.resizeDelay);e.lods&&(ya({rows:512,cols:512,dpi:96,format:"JPEG",compressionQuality:75,origin:{x:-180,
y:90},spatialReference:{wkid:4326},lods:e.lods},e),this.__tileInfo=e.tileInfo);this.extent=e.extent;this._extentUtil({mapCenter:e.center,targetLevel:e.zoom,targetScale:e.scale});this.__visibleRect=new U(0,0,u,g);this.__visibleDelta=new U(0,0,u,g);f=this._layersDiv=h("div",{id:f+"_layers"});b(f,"esriMapLayers");l.appendChild(f);this._zoomAnimDiv=h("div",{style:{position:"absolute"}});e.infoWindow?this.infoWindow=e.infoWindow:(b=this.infoWindow=new ja(e.popupOptions,h("div")),b.startup(),b._ootb=!0,
va(b.domNode,"zIndex",40));if(e.showLabels){var p=this;q(["./layers/LabelLayer"],function(a){sa=a;p._createLabelLayer()});this.on("load",function(){p._createLabelLayer()})}this.addPlugin(this._getAbsMid("./plugins/popupManager"),{enabled:e.showInfoWindowOnClick});this._zoomStartHandler=ra(this,this._zoomStartHandler);this._zoomingHandler=ra(this,this._zoomingHandler);this._zoomEndHandler=ra(this,this._zoomEndHandler);this._panningHandler=ra(this,this._panningHandler);this._panEndHandler=ra(this,this._panEndHandler);
this._endTranslate=ra(this,this._endTranslate);this._timedResize=ra(this,this._timedResize);this._execResize=ra(this,this._execResize);this._processLabelLayers=ra(this,this._processLabelLayers);this._updateLabelLayers=ra(this,this._updateLabelLayers);this.resize=ra(this,this.resize);c.addOnWindowUnload(this,this.destroy)},_getAbsMid:function(a){return q.toAbsMid?q.toAbsMid(a):n.id.replace(/\/[^\/]*$/ig,"/")+a},_cleanUp:function(){var a=this.infoWindow;a&&(a._ootb&&a.destroy?a.destroy():a.unsetMap(this),
delete this.infoWindow);ta(this._tsTimeExtentChange_connect);this.removePlugin("./plugins/popupManager");w.destroy(this.root);this.root=null},_addLayer:function(a,b,c){if(a.id){var d=a.id.match(a instanceof V?Da:Na);d&&d[1]&&(d=Number(d[1]),S<=d&&(S=d+1))}var e=a.id||(a instanceof V?Ma:Pa)+S++;a.id=e;this._layers[e]=a;var k,r;if(b===this.layerIds||b===this.graphicsLayerIds)k=this._layerSize,this._layerSize++;a._isRefLayer="top"===c;c=!A.isDefined(c)||0>c||c>b.length||"top"===c?b.length:c;0===k&&(this._firstLayerId=
e);if(!a._isRefLayer)for(;(r=this.getLayer(b[c-1]))&&r._isRefLayer;)c--;b.splice(c,0,e);var m=ra(this,this._addLayerHandler),f=this;c=this._connects;d=function(){a.loaded?f._onLoadFix?(f._onLoadFix=!1,setTimeout(function(){m(a)},0)):m(a):(f["_"+e+"_addtoken_load"]=Ca(a,"onLoad",f,"_addLayerHandler"),f["_"+e+"_addtoken_err"]=Ca(a,"onError",f,function(c){m(a,c,b)}))};this.loaded||0===k||a.loaded&&-1===Aa(this.graphicsLayerIds,e)?d():c.push(Ca(this,"onLoad",d));return a},_forgetLayer:function(a){a=a.id;
ta(this["_"+a+"_addtoken_load"]);ta(this["_"+a+"_addtoken_err"]);var b=this._layerAddPromises[a];b&&(delete this._layerAddPromises[a],b.cancel())},_addLayerHandler:function(a,b,c){b?this._attachLayerToMap(a,b,c):a._prepareToAttach?(this._layerAddPromises[a.id]=a._prepareToAttach(this)).always(l.hitch(this,function(b){b&&"cancel"===b.dojoType||this._attachLayerToMap(a,null,c)})):a.declaredClass&&-1<a.declaredClass.toLowerCase().indexOf("vectortilelayer")&&!this.isWebGLContextAvailable()?(b=Error("Too many WebGL contexts. Unable to add the layer: ",
a.url),this._attachLayerToMap(a,b,this.layerIds)):this._attachLayerToMap(a,b,c)},_attachLayerToMap:function(a,b,c){var d=this.id,e=a.id,k=Aa(a instanceof V?this.graphicsLayerIds:this.layerIds,e),r=k,m=!1,f=this._params;this._forgetLayer(a);if(b)delete this._layers[e],-1!==k&&(c.splice(k,1),this.onLayerAddResult(a,b));else{-1===k&&(k=Aa(this._internalLayerIds,e),r=20+k,m=!0);if(e===this._firstLayerId){b=a.spatialReference;c=this.extent&&this.extent.spatialReference;!c||c.equals(b)||!a.tileInfo&&a.url||
(c=null);c=this.spatialReference=c||b;this.wrapAround180=this.wrapAround180&&c&&c._isWrappable()?!0:!1;a.tileInfo&&(this.__tileInfo?(b=this.__tileInfo.lods,this.__tileInfo=qa({},a.tileInfo),this.__tileInfo.lods=b):(ya(qa({},a.tileInfo),f),this.__tileInfo=f.tileInfo));if(this.wrapAround180){b=this.__tileInfo;c=c._getInfo();if(!b||Math.abs(c.origin[0]-b.origin.x)>c.dx)this.wrapAround180=!1;this.wrapAround180&&b&&E._addFrameInfo(b,c)}f.units=a.units;if((b=this.__tileInfo&&this.__tileInfo.lods)&&b.length){c=
f.minScale;var k=f.maxScale,l=-1,h=-1,u=!1,t=!1,g;for(g=0;g<b.length;g++)0<c&&!u&&c>=b[g].scale&&(l=b[g].level,u=!0),0<k&&!t&&k>=b[g].scale&&(h=0<g?b[g-1].level:-1,t=!0);-1===f.minZoom&&(f.minZoom=0===c?b[0].level:l);-1===f.maxZoom&&(f.maxZoom=0===k?b[b.length-1].level:h);for(g=0;g<b.length;g++)f.minZoom===b[g].level&&(f.minScale=b[g].scale,this._minResolution=b[g].resolution),f.maxZoom===b[g].level&&(f.maxScale=b[g].scale,this._maxResolution=b[g].resolution)}else f.minZoom=f.maxZoom=f.zoom=-1}a instanceof
V?(this._gc||(this._gc=new V._GraphicsContainer,this._gc._setMap(this,this._layersDiv).id=d+"_gc"),this._attachGraphicsLayer(a).id=d+"_"+e):(r=a._setMap(this,this._layersDiv,r,this.__LOD),r.id=d+"_"+e,this._layerDivs[e]=r,this._reorderLayers(this.layerIds),m||-1===a.declaredClass.indexOf("VETiledLayer")||this._onBingLayerAdd(a));e===this._firstLayerId&&(this.graphics=new V({id:d+"_graphics",displayOnPan:f.displayGraphicsOnPan}),this._addLayer(this.graphics,this._internalLayerIds,20));if(a===this.graphics){c=
this._layers[this._firstLayerId];d=f.zoom;r=f.scale;b=f.center;c=c.initialExtent||c.fullExtent;this._firstLayerId=null;this.extent&&(this.extent=this._convertGeometry(this,this.extent));!this.extent&&c&&(b&&(b=this._convertGeometry(c,b)),b&&(c=c.centerAt(b),b=null));if(b=this.extent||c&&new M(c.toJson()))-1<d?b=this.__getExtentForLevel(d,null,b).extent:0<r&&(b=L.getExtentForScale(this,r,b));if(!b){console.log("Map: "+this.invalidExtent);return}f=this._fixExtent(b,f.fitExtent);this.extent=f.extent;
this.__LOD=f.lod;this.__setExtent(this.extent);this.loaded=!0;this.attr("data-loaded","");this.infoWindow.setMap(this);this.onLoad(this)}m||(this.onLayerAdd(a),this.onLayerAddResult(a));ta(this[e+"_addLayerHandler_connect"])}},_convertGeometry:function(a,b){a=a&&a.spatialReference;var c=b&&b.spatialReference;a&&c&&!a.equals(c)&&(a._canProject(c)?a.isWebMercator()?b=P.geographicToWebMercator(b):4326===a.wkid&&(b=P.webMercatorToGeographic(b,!0)):(console.log("Map: "+A.substitute({geometry:c.wkid||c.wkt,
map:a.wkid||a.wkt},this.invalidGeometry)),b=null));return b},_attachGraphicsLayer:function(a){var b=a.id;a=a._setMap(this,this._gc._surface);this._layerDivs[b]=a;this._reorderLayers(this.graphicsLayerIds);return a},_detachGraphicsLayer:function(a){a.loaded&&a.getMap()&&a._unsetMap(this,this._gc._surface)},_reorderLayers:function(a){var b=this.onLayerReorder,c=w.place,d=this._layerDivs,e=this._layers,k=this._gc?this._gc._surface.getEventSource():null;if(a===this.graphicsLayerIds)f.forEach(a,function(a,
c){var k=d[a];a=e[a];k&&(this._gc._reorderLayer(a,k,c),b(a,c))},this);else{var r=this.graphics,m=r?r.id:null,l=this._layersDiv,h;f.forEach(a,function(a,k){h=d[a];a!==m&&h&&(c(h,l,k),b(e[a],k))});this._mapImageLyr&&this._placeMapImageLyr();k&&(k=9>u("ie")?k.parentNode:k,c(k,k.parentNode,"last"))}this.onLayersReordered([].concat(a))},_zoomStartHandler:function(){this.__zoomStart(this._zoomAnimDiv.startingExtent,this._zoomAnimDiv.anchor)},_zoomingHandler:function(a){var b=parseFloat(a.left),c=parseFloat(a.top);
a=new M(b,c-parseFloat(a.height),b+parseFloat(a.width),c,this.spatialReference);b=this.extent.getWidth()/a.getWidth();this.__zoom(a,b,this._zoomAnimDiv.anchor)},_zoomEndHandler:function(){var a=this._zoomAnimDiv,b=a.extent,c=this.extent.getWidth()/b.getWidth(),d=a.anchor,e=a.newLod,k=a.levelChange;a.extent=a.anchor=a.levelChange=a.startingExtent=a.newLod=this._delta=this._zoomAnim=null;this.__zoomEnd(b,c,d,e,k)},_panningHandler:function(a){if(isNaN(parseFloat(a.left))||isNaN(parseFloat(a.top))){var b=
Math.round,c=this._panAnim.node;a.left=-1*(this._delta.x-b(this.width/2))+"px";a.top=-1*(this._delta.y-b(this.height/2))+"px";k.set(c,"left",a.left);k.set(c,"top",a.top)}a=new Q(parseFloat(a.left),parseFloat(a.top));b=this.toMap(a);this.onPan(this.extent.offset(this.extent.xmin-b.x,this.extent.ymax-b.y),a)},_panEndHandler:function(a){this.__panning=!1;var b=Math.round;a=new Q(-b(parseFloat(a.style.left)),-b(parseFloat(a.style.top)));var b=a.x,c=a.y,d=this.__visibleRect,e=this.__visibleDelta;d.x+=
-b;d.y+=-c;e.x+=-b;e.y+=-c;va(this._zoomAnimDiv,{left:"0px",top:"0px"});var d=this.extent,e=this._ratioW,k=this._ratioH,d=new M(d.xmin+b/e,d.ymin-c/k,d.xmax+b/e,d.ymax-c/k,this.spatialReference);a.setX(-a.x);a.setY(-a.y);this._delta=this._panAnim=null;this._updateExtent(d);this.onPanEnd(d,a);this._fireExtChg([d,a,!1,this.__LOD])},_fixExtent:function(a,b){for(var c=this._reshapeExtent(a),d=1.25;!0===b&&(c.extent.getWidth()<a.getWidth()||c.extent.getHeight()<a.getHeight())&&0<c.lod.level&&3>=d;)c=this._reshapeExtent(a.expand(d)),
d+=.25;return c},_getFrameWidth:function(){var a=-1,b=this.spatialReference._getInfo();this.__LOD?(b=this.__LOD._frameInfo)&&(a=b[3]):b&&(a=Math.round(2*b.valid[1]/(this.extent.getWidth()/this.width)));return a},_fixAspectRatio:function(a){var b=a.getWidth(),c=a.getHeight(),d=b/c,e=this.width/this.height,k=0,r=0;this.width>this.height?b>c?e>d?k=c*e-b:r=b/e-c:k=c*e-b:this.width<this.height?b<c?e>d?k=c*e-b:r=b/e-c:r=b/e-c:b<c?k=c-b:b>c&&(r=b/e-c);k&&(a.xmin-=k/2,a.xmax+=k/2);r&&(a.ymin-=r/2,a.ymax+=
r/2);return a},_reshapeExtent:function(a){a=this._fixAspectRatio(a);return this._getAdjustedExtent(a)},_getAdjustedExtent:function(a){if(this.__tileInfo)return E.getCandidateTileInfo(this,this.__tileInfo,a);var b=L.getScale(this,a),c=this.getMinScale(),d=this.getMaxScale();!c||b<=c?!d||b>=d||(a=L.getExtentForScale(this,d,a)):a=L.getExtentForScale(this,c,a);return{extent:a}},_onBingLayerAdd:function(a){this["__"+a.id+"_vis_connect"]=h.connect(a,"onVisibilityChange",this,"_toggleBingLogo");this._toggleBingLogo(a.visible)},
_onBingLayerRemove:function(a){h.disconnect(this["__"+a.id+"_vis_connect"]);delete this["__"+a.id+"_vis_connect"];var b=f.some(this.layerIds,function(b){return(a=this._layers[b])&&a.visible&&-1!==a.declaredClass.indexOf("VETiledLayer")},this);this._toggleBingLogo(b)},_toggleBingLogo:function(a){a&&!this._bingLogo?(a={left:this._mapParams&&this._mapParams.nav?"25px":""},6===u("ie")&&(a.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled\x3d'true', sizingMethod\x3d'crop', src\x3d'"+q.toUrl("./images/map/bing-logo-lg.png")+
"')"),a=this._bingLogo=w.create("div",{style:a},this.root),m.add(a,"bingLogo-lg")):!a&&this._bingLogo&&(w.destroy(this._bingLogo),delete this._bingLogo)},__panStart:function(a,b){var c=this._zoomAnim,d=this._panAnim;if(c&&c._active)c.stop(),c._fire("onEnd",[c.node]);else if(d&&d._active){d.stop();this._panAnim=null;b=d.curve.getValue(d._getStep());a=Math.round(parseFloat(b.left));b=Math.round(parseFloat(b.top));c=this.navigationManager._dragOrigin;this.__pan(a,b);c&&(c.x-=a,c.y-=b);return}this.__panning=
!0;this.onPanStart(this.extent,new Q(a,b))},__pan:function(a,b){var c=this.extent,d=this._ratioW,e=this._ratioH;this.onPan(new M(c.xmin-a/d,c.ymin+b/e,c.xmax-a/d,c.ymax+b/e,this.spatialReference),new Q(a,b))},__panEnd:function(a,b){var c=this.__visibleRect,d=this.__visibleDelta;c.x+=a;c.y+=b;d.x+=a;d.y+=b;var c=new Q(a,b),d=this.extent,e=this._ratioW,k=this._ratioH,d=new M(d.xmin-a/e,d.ymin+b/k,d.xmax-a/e,d.ymax+b/k,this.spatialReference);this.__panning=!1;this._updateExtent(d);this.onPanEnd(d,c);
this._fireExtChg([d,c,!1,this.__LOD])},__zoomStart:function(a,b){this.__zooming=!0;this.onZoomStart(a,1,b,this.__LOD?this.__LOD.level:null)},__zoom:function(a,b,c){this.onZoom(a,b,c)},__zoomEnd:function(a,b,c,d,e){va(this._layersDiv,{left:"0px",top:"0px"});this._delta=new Q(0,0);this.__visibleRect.x=this.__visibleRect.y=0;a=new M(a);this.__LOD=d;this._ratioW=this.width/a.getWidth();this._ratioH=this.height/a.getHeight();var k=this._delta;this._delta=null;this.__zooming=!1;this._updateExtent(a,e);
this.onZoomEnd(a,b,c,d?d.level:null);this._fireExtChg([a,k,e,d])},_extentUtil:function(a,b,c,d,e){var k=new p,r,m,f,h,u,t,g,y,v,w,x=this.width,z=this.height,C,n,q;a&&(r=a.numLevels,m=a.targetLevel,C=A.isDefined(m),f=a.factor,h=a.mapAnchor,u=a.screenAnchor,t=a.mapCenter,n=a.levelOrFactor,g=a.targetScale,y=A.isDefined(g)&&0<g);b&&(v=b.dx,w=b.dy,t=b.mapCenter);l.isArray(t)&&(t=new G(t));var B=this._panAnim;b=(a=this._stopAnim())?a.divExtent:this.extent;var F=this.__tileInfo,I=this._params;if(!this.loaded){if(c)b&&
(c=this._convertGeometry(b,c)),c&&(this.extent=c,I.zoom=I.scale=-1,I.center=null);else if(t||C||y){if(t)if(b){if(t=this._convertGeometry(b,t))this.extent=b.centerAt(t),I.center=null}else I.center=t;C&&-1<m?(I.zoom=m,I.scale=-1):y&&(I.scale=g,I.zoom=-1)}k.resolve();return k}if(t&&(t=this._convertGeometry(this,t),!t)||h&&(h=this._convertGeometry(this,h),!h)||c&&(c=this._convertGeometry(this,c),!c))return k.reject(),k;B&&h&&u&&(h=wa(this.extent,x,z,u));a&&h&&u&&(h=wa(a.divExtent,x,z,u));C&&(F?(r=this.getMinZoom(),
C=this.getMaxZoom(),m<r?m=r:m>C&&(m=C),r=m-(a?a.level:this.getLevel())):(r=0<m?-1:1,q=n?m:null));if(!c)if(A.isDefined(r))F?(x=a?a.level:this.getLevel(),x=this.__getExtentForLevel(x+r,t,b).extent):(x=(a?a.end:this.extent).expand(q||(0<r?.5*r:2*-r)),q&&t&&(x=x.centerAt(t))),x&&(t?c=x:(v=h||b.getCenter(),z=x.getWidth(),w=x.getHeight(),x=v.x>=b.xmin&&v.x<=b.xmax?(v.x-b.xmin)/b.getWidth():.5,c=v.y>=b.ymin&&v.y<=b.ymax?(v.y-b.ymin)/b.getHeight():.5,x=v.x-x*z,v=v.y-c*w,c=new M(x,v,x+z,v+w,this.spatialReference)));
else if(y)c=L.getExtentForScale(this,g,b);else if(A.isDefined(f))c=b.expand(f);else if(v||w)a?(c=a.end,h=c.getCenter(),q=Ba(c,x,z,h),q.x+=v,q.y+=w,q=wa(c,x,z,q),c=c.offset(q.x-h.x,q.y-h.y)):(v=new Q(x/2+v,z/2+w),v=wa(b,x,z,v),z=b.getWidth(),w=b.getHeight(),x=v.x-z/2,v=v.y-w/2,c=new M(x,v,x+z,v+w,this.spatialReference));c||(t?(b=a?a.end:b,z=b.getWidth(),w=b.getHeight(),x=t.x-z/2,v=t.y-w/2,c=new M(x,v,x+z,v+w,this.spatialReference)):a&&(c=a.end));c?(this._extentDfd&&-1===this._extentDfd.fired&&(this._extentDfd.then(null,
Fa),this._extentDfd.reject()),this._extentDfd=k,this.__setExtent(c,null,u,d,a,e)):k.reject();return k},__setExtent:function(a,b,c,d,e,k){try{if(this._firstLayerId)this.extent=a;else{var r=!0,m=this.spatialReference,f=e?e.divExtent:this.extent,l=this._fixExtent(a,d||!1);a=l.extent;var h=a.getWidth(),u=a.getHeight(),t=Math.round;if(f)var g=t(1E6*f.getWidth()),y=t(1E6*h),v=t(1E6*f.getHeight()),p=t(1E6*u),r=g!==y||v!==p;var w,x,z=e&&e.rect,n=e&&e.divExtent;if(ka.zoomDuration&&r&&f){n=n||new M(f);z=z||
{left:f.xmin,top:f.ymax,width:f.getWidth(),height:f.getHeight()};x={left:a.xmin,top:a.ymax,width:h,height:u};var q=new G(a.xmin,a.ymax,m),A=new G(a.xmin,a.ymin,m),B=new G(this.extent.xmin,this.extent.ymax,m),F=new G(this.extent.xmin,this.extent.ymin,m);(w=O.getLineIntersection(B,q,F,A,m))||e||(r=!1)}this._ratioW=this.width/h;this._ratioH=this.height/u;var I=this._zoomAnimDiv;if(r)if(va(this._layersDiv,{left:"0px",top:"0px"}),b=new Q(0,0),this.__visibleRect.x=this.__visibleRect.y=0,z&&x){this._delta=
b;I.id="_zAD";I.startingExtent=n;I.extent=a;I.levelChange=r;I.newLod=l.lod;I.anchor=c?c:!w&&e?e.anchor:Ba(this.extent,this.width,this.height,w);var E=this.extent.getWidth()/a.getWidth();ka.zoomAnimationThrottled&&1024<(1>E?1/E:E)?(this.__zoomStart(n,I.anchor),this.__zoom(n,1,I.anchor),this._fireOnScale(1,I.anchor,!0),this.__zoomEnd(a,E,I.anchor,l.lod,r)):(this._zoomAnim=C.resize({node:I,start:z,end:x,duration:ka.zoomDuration,rate:ka.zoomRate,beforeBegin:e?null:this._zoomStartHandler,onAnimate:this._zoomingHandler,
onEnd:this._zoomEndHandler}).play(),this._fireOnScale(E,I.anchor,k))}else this._updateExtent(a,r,k),this._fireExtChg([this.extent,b,r,this.__LOD=l.lod]);else if(!this.__panning)if(!1===this.loaded||k)this._updateExtent(a,r,k),this._fireExtChg([this.extent,b,r,this.__LOD=l.lod]);else{this.__panning=!0;z=(new U(0,0,this.width,this.height,this.spatialReference)).getCenter();z.x=t(z.x);z.y=t(z.y);var X=this._delta=this.toScreen(a.getCenter()),ca=Math.abs(z.x-X.x),H=Math.abs(z.y-X.y);this.optimizePanAnimation&&
(ca>2*this.width||H>2*this.height)?(this.__panStart(0,0),this.__pan(0,0),this.__visibleRect.x=this.__visibleRect.y=this.__visibleDelta.x=this.__visibleDelta.y=0,this.__panning=!1,this._delta=null,this._updateExtent(a,!1,k),this.onPanEnd(this.extent,new Q(0,0)),this._fireExtChg([this.extent,new Q(0,0),!0,this.__LOD])):(this.onPanStart(this.extent,new Q(0,0)),this._panAnim=C.slideTo({node:I,left:z.x-X.x,top:z.y-X.y,duration:ka.panDuration,rate:ka.panRate,onAnimate:this._panningHandler,onEnd:this._panEndHandler}),
this._panAnim.play())}}}catch(db){console.log(db.stack),console.error(db)}},_fireOnScale:function(a,b,c){if("css-transforms"===this.navigationMode){var d=this.__visibleDelta;this.onScale(y.scaleAt(a,{x:-1*(this.width/2-(b.x-d.x)),y:-1*(this.height/2-(b.y-d.y))}),c)}},_stopAnim:function(){var a=this._zoomAnim,b=this._panAnim;if(a&&a._active){a.stop();var b=a.curve.getValue(a._getStep()),c=parseFloat(b.left),d=parseFloat(b.top),a=a.node;return{anchor:a.anchor,start:a.startingExtent,end:a.extent,level:a.newLod&&
a.newLod.level,rect:b,divExtent:new M(c,d-parseFloat(b.height),c+parseFloat(b.width),d,this.spatialReference)}}b&&b._active&&(b.stop(),b._fire("onEnd",[b.node]))},__getExtentForLevel:function(a,b,c){var d=this.__tileInfo,d=d&&d.lods;a=A.isDefined(a)?a:0;c=c||this.extent;b=b||c&&c.getCenter();if(d){if(b){c=this.getMinZoom();var e=this.getMaxZoom();a>e&&(a=e);a<c&&(a=c);a=d[a];d=this.width*a.resolution/2;c=this.height*a.resolution/2;return{extent:new M(b.x-d,b.y-c,b.x+d,b.y+c,b.spatialReference),lod:a}}}else if(c)return{extent:c.expand(!a||
1>a?1:a).centerAt(b)};console.log("Map: "+this.invalidExtent)},_jobs:0,_incr:function(){1===++this._jobs&&(this.updating=!0,this.attr("data-updating",""),this.onUpdateStart())},_decr:function(){var a=--this._jobs;a?0>a&&(this._jobs=0):(this.updating=!1,this.attr("data-updating"),this.onUpdateEnd())},_fireEvent:function(a,b){this[a]&&this[a].apply(this,b)},_updateExtent:function(a,b,c){this.extent=a;a=this.spatialReference;this._viewInfo={view:new N({viewingMode:"map",scale:this.getScale()}),sr:a,
_version:b?++Ea:Ea};(b||c)&&this._setClipRect();this._calcGeographicExtent()},_calcGeographicExtent:function(){var a=this.spatialReference;a&&(a.isWebMercator()?this.geographicExtent=P.webMercatorToGeographic(this._getAvailExtent(),!0):4326===a.wkid&&(this.geographicExtent=new M(this._getAvailExtent().toJson())))},_fireExtChg:function(a){this.attr("data-zoom",this.getZoom());this.attr("data-scale",this.getScale());this._fireEvent("onExtentChange",a);if(a=this._extentDfd)delete this._extentDfd,a.resolve()},
attr:function(a,b){var c=this.container;c&&(null==b?c.removeAttribute(a):c.setAttribute(a,b));return this},onUpdateStart:function(){},onUpdateEnd:function(){},onLoad:function(){this._setClipRect();this._calcGeographicExtent()},onBeforeUnload:function(){},onUnload:function(){},onExtentChange:function(a,b,c){},onTimeExtentChange:function(){},onWebGLEnabledChange:function(){},onLayerAdd:function(){},onLayerAddResult:function(){},onLayersAddResult:function(){},onLayerRemove:function(){},onLayersRemoved:function(){},
onLayerReorder:function(){},onLayersReordered:function(){},onLayerSuspend:function(){},onLayerResume:function(){},onPanStart:function(){},onPan:function(){},onPanEnd:function(){},onScale:function(){},onZoomStart:function(){},onZoom:function(){},onZoomEnd:function(){},onResize:function(){this._setClipRect()},onReposition:function(){},destroy:function(){this._destroyed||(this.onBeforeUnload(this),this.removeAllLayers(),this.releaseAllWebGLContexts(),this._cleanUp(),clearTimeout(this._resizeTimerHandle),
this._gc&&this._gc._cleanUp(),this._destroyed=!0,this.onUnload(this))},setCursor:function(a){va(this.__container,"cursor",this.cursor=a)},setMapCursor:function(a){this.setCursor(this._cursor=a)},resetMapCursor:function(){this.setCursor(this._cursor)},setBackgroundColor:function(a){a&&!a.declaredClass&&(a=new X(a));this.backgroundColor=a||null;var b="";a&&(b=9>u("ie")?a.toHex():"rgba("+a.toRgba().join(",")+")");k.set(this.root,{backgroundColor:b})},setInfoWindow:function(a){var b=this.infoWindow;b&&
b.unsetMap(this);this.infoWindow=a;this.loaded&&a&&a.setMap(this)},setInfoWindowOnClick:function(a){this._params.showInfoWindowOnClick=a;this.popupManager&&this.popupManager.set("enabled",a)},getInfoWindowAnchor:function(a){return this.infoWindow&&this.infoWindow._getAnchor&&this.infoWindow._getAnchor(a)||"upperright"},toScreen:function(a,b){return Ba(this.extent,this.width,this.height,a,b)},toMap:function(a){return wa(this.extent,this.width,this.height,a)},addLayer:function(a,b){a&&!this.getLayer(a.id)&&
this._addLayer(a,a instanceof V?this.graphicsLayerIds:this.layerIds,b);return a},addLayers:function(a){var b=[],c=a.length,d,e,k=a.length;d=h.connect(this,"onLayerAddResult",function(e,k){-1!==f.indexOf(a,e)&&(c--,b.push({layer:e,success:!k,error:k}),c||(h.disconnect(d),this.onLayersAddResult(b)))});for(e=0;e<k;e++)this.addLayer(a[e]);return this},removeLayer:function(a,b){var c=a.id,d=a instanceof V?this.graphicsLayerIds:this.layerIds,e=Aa(d,c);0<=e&&(this._forgetLayer(a),d.splice(e,1),a instanceof
V?this._detachGraphicsLayer(a):a.loaded&&(a.getMap()&&a._unsetMap(this,this._layersDiv),-1!==a.declaredClass.indexOf("VETiledLayer")&&this._onBingLayerRemove(a)),delete this._layers[c],delete this._layerDivs[c],b||this._reorderLayers(d),this.onLayerRemove(a))},removeAllLayers:function(){var a=this.layerIds,b;for(b=a.length-1;0<=b;b--)this.removeLayer(this._layers[a[b]],1);a=this.graphicsLayerIds;for(b=a.length-1;0<=b;b--)this.removeLayer(this._layers[a[b]],1);this.onLayersRemoved()},reorderLayer:function(a,
c){l.isString(a)&&(b.deprecated(this.declaredClass+": Map.reorderLayer(/*String*/ id, /*Number*/ index) deprecated. Use Map.reorderLayer(/*Layer*/ layer, /*Number*/ index).",null,"v2.0"),a=this.getLayer(a));var d=a.id,e=a instanceof V?this.graphicsLayerIds:this.layerIds;0>c?c=0:c>=e.length&&(c=e.length-1);a=Aa(e,d);-1!==a&&a!==c&&(e.splice(a,1),e.splice(c,0,d),this._reorderLayers(e))},getLayer:function(a){return this._layers[a]},setWebGLEnabled:function(a){var b=this.webglEnabled;this.webglEnabled=
(a||!1)&&Qa;if(b!==this.webglEnabled)this.onWebGLEnabledChange()},isWebGLContextAvailable:function(){return pa.isContextAvailable()&&(-1===this.maxWebGLContexts||0<this.maxWebGLContexts&&this._webglContextOwners.length<this.maxWebGLContexts)},ownsWebGLContext:function(a){return-1!==f.indexOf(this._webglContextOwners,a)},acquireWebGLContext:function(a){return-1!==f.indexOf(this._webglContextOwners,a)?!0:this.isWebGLContextAvailable()?(pa.acquireContext(a),this._webglContextOwners.push(a),!0):!1},releaseWebGLContext:function(a){var b=
f.indexOf(this._webglContextOwners,a);-1!==b&&this._webglContextOwners.splice(b,1);pa.releaseContext(a)},releaseAllWebGLContexts:function(){var a=this._webglContextOwners.slice(0);f.forEach(a,function(a){this.releaseWebGLContext(a)},this)},syncHitTestForWebGL:function(a){var b,c=a.screenPoint;a=this.graphicsLayerIds.slice(0).reverse();f.some(a,function(a){a=this.getLayer(a);a.loaded&&!a.suspended&&a.hasWebGLSurface()&&(b=a._div.syncHitTest(c.x,c.y));return!!b},this);return b},setExtent:function(a,
b){a=new M(a.toJson());var c=a.getWidth(),d=a.getHeight();return 0===c&&0===d?this.centerAt(new G({x:a.xmin,y:a.ymin,spatialReference:a.spatialReference&&a.spatialReference.toJson()})):this._extentUtil(null,null,a,b)},centerAt:function(a){return this._extentUtil(null,{mapCenter:a})},centerAndZoom:function(a,b){return this._extentUtil({targetLevel:b,mapCenter:a,levelOrFactor:!0})},getScale:function(){return this.__LOD?this.__LOD.scale:L.getScale(this)},getResolution:function(){return this.__LOD?this.__LOD.resolution:
this.extent?this.extent.getWidth()/this.width:0},getResolutionInMeters:function(){return this.getResolution()*L.getUnitValueForSR(this.spatialReference)},getResolutionForPopup:function(){var a=this.getResolution(),b=this.getResolutionInMeters(),c=b/16;return 10>=c?0:a/b*c},getMinResolution:function(){return this._minResolution},getMaxResolution:function(){return this._maxResolution},getMinScale:function(){return this._params.minScale},getMaxScale:function(){return this._params.maxScale},_getViewInfo:function(){return this._viewInfo},
setScale:function(a){return this._extentUtil({targetScale:a})},getLayersVisibleAtScale:function(a){var b=[];(a=a||this.getScale())&&f.forEach(this.layerIds.concat(this.graphicsLayerIds),function(c){c=this.getLayer(c);c.isVisibleAtScale(a)&&b.push(c)},this);return b},getNumLevels:function(){var a=this.getMinZoom(),b=this.getMaxZoom();return a===b&&0>a?0:b-a+1},getLevel:function(){return this.__LOD?this.__LOD.level:-1},setLevel:function(a){if(-1<a)return this._extentUtil({targetLevel:a})},getZoom:function(){return this.getLevel()},
setZoom:function(a){return this.setLevel(a)},getMinZoom:function(){return this._params.minZoom},getMaxZoom:function(){return this._params.maxZoom},setBasemap:function(a){var b;l.isObject(a)?(b=a,a=b.title):b=x&&x[a];if(b){this._basemapDfd&&-1===this._basemapDfd.fired&&this._basemapDfd.cancel();var c=[],d=[],e=0;f.forEach(b.baseMapLayers||b.layers,function(b){var k,r={id:b.id,displayLevels:b.displayLevels,opacity:A.isDefined(b.opacity)?b.opacity:null,visible:A.isDefined(b.visibility)?b.visibility:
null};if(b.type)switch(b.type){case "OpenStreetMap":k=new ga(r);break;case "VectorTile":k=F.normalize(b.url);k=new ha(k,r);break;default:console.log("Map.setBasemap: "+A.substitute({basemapName:a,type:b.type},this.unknownLayerType))}else k=F.normalize(b.url),k=new ea(k,r);k&&(c.push(k),d.push(b),b.isReference||e++)},this);if(c.length&&e){var k={basemapName:a,infos:d,layers:c};if(this.loaded){var r=this,m=new p(H._dfdCanceller),t=function(a){m._pendingLayers--;a=f.indexOf(k.layers,this);-1<a&&(a=m._layerEvents[a])&&
(h.disconnect(a[0]),h.disconnect(a[1]));0>=m._pendingLayers&&(delete m._layerEvents,delete r._basemapDfd,0>m.fired&&m.callback(k))};this._basemapDfd=m;m._pendingLayers=0;m._layerEvents={};f.forEach(c,function(a,b){a&&(m._pendingLayers++,a.loaded?t(a):m._layerEvents[b]=[h.connect(a,"onLoad",a,t),h.connect(a,"onError",a,t)])});m.addCallback(ra(this,this._basemapLoaded))}else this._basemapLoaded(k)}else console.log("Map.setBasemap: "+A.substitute({basemapName:a},this.invalidBasemap))}else{b=[];for(var u in x)b.push(u);
console.log("Map.setBasemap: "+A.substitute({basemapName:a,list:b.join(",")},this.unknownBasemap))}},_basemapLoaded:function(a){var b=a.layers,c=a.infos,d=0,e=!0,k;this.loaded&&(f.forEach(b,function(a,b){a.loaded&&(c[b].isReference||d++)}),e=d);e&&(this.basemapLayerIds&&(k={basemapName:this._basemap,infos:x&&x[this._basemap]&&x[this._basemap].baseMapLayers},k.basemapName||(f.forEach(this.basemapLayerIds,function(a){if(this.getLayer(a)instanceof ga)return k.basemapName="osm",k.infos=x&&x.osm&&x.osm.baseMapLayers,
!1},this),k.basemapName||(k=null))),this._removeBasemap(),this._basemap=a.basemapName,this.basemapLayerIds=this._addBasemap(b,c),this.attr("data-basemap",this.getBasemap()),this.emit("basemap-change",{current:a,previous:k}))},_addBasemap:function(a,b){var c=[],d=[],e=0;f.forEach(a,function(a,k){b[k].isReference?c.push(a):(this.addLayer(a,e++),d.push(a.id))},this);c.length&&f.forEach(c,function(a){a.attr("data-reference",!0);this.addLayer(a,"top");d.push(a.id)},this);return d},_removeBasemap:function(){var a=
this.basemapLayerIds,b;a&&a.length&&f.forEach(a,function(a){(b=this.getLayer(a))&&this.removeLayer(b)},this)},getBasemap:function(){return this._basemap||""},translate:function(a,b){a=a||0;b=b||0;if(!this._txTimer){this._tx=this._ty=0;var c=this.toScreen(this.extent.getCenter());this.__panStart(c.x,c.y)}this._tx+=a;this._ty+=b;this.__pan(this._tx,this._ty);clearTimeout(this._txTimer);this._txTimer=setTimeout(this._endTranslate,150)},_endTranslate:function(){clearTimeout(this._txTimer);this._txTimer=
null;var a=this._tx,b=this._ty;this._tx=this._ty=0;this.__panEnd(a,b)},setTimeExtent:function(a){a=(this.timeExtent=a)?new a.constructor(a.toJson()):null;this.onTimeExtentChange(a)},setTimeSlider:function(a){this.timeSlider&&(ta(this._tsTimeExtentChange_connect),this.timeSlider=this._tsTimeExtentChange_connect=null);a&&(this.timeSlider=a,this.setTimeExtent(a.getCurrentTimeExtent()),this._tsTimeExtentChange_connect=Ca(a,"onTimeExtentChange",this,"setTimeExtent"))},setVisibility:function(a){if(this.visible!==
a){this.visible=a;a||(this._display=this.container.style.display);this.container.style.display=a?this._display:"none";if(this.autoResize){var b=a?"resume":"pause";this._rszSignal[b]();this._oriSignal[b]()}a&&this.resize()}return this},resize:function(a){clearTimeout(this._resizeTimerHandle);this._destroyed||(!0===a?this._execResize():this._resizeTimerHandle=setTimeout(this._execResize,this.resizeDelay))},_timedResize:function(){this._resizeTimerHandle||this._execResize()},_execResize:function(){clearTimeout(this._resizeTimerHandle);
this._resizeTimerHandle=null;this.reposition();this._resize();this.autoResize&&this._startResizeTimer()},_resize:function(){var a=this.width,b=this.height,c=k.get(this.container,"display"),d=t.getContentBox(this.container);if(!("none"===c||0>=d.w||0>=d.h||a===d.w&&b===d.h)){if(c=this._zoomAnim||this._panAnim)c.stop(),c._fire("onEnd",[c.node]);va(this.root,{width:(this.width=d.w)+"px",height:(this.height=d.h)+"px"});d=this.width;c=this.height;this.attribution&&this.attribution.domNode&&k.set(this.attribution.domNode,
"maxWidth",Math.floor(d*this._mapParams.attributionWidth)+"px");this.__visibleRect.update(this.__visibleRect.x,this.__visibleRect.y,d,c);this.__visibleDelta.update(this.__visibleDelta.x,this.__visibleDelta.y,d,c);var e=new U(this.extent),a=(new U(e.x,e.y,d/a*e.width,c/b*e.height,this.spatialReference)).getExtent();this.onResize(a,d,c);this._extentUtil(null,null,a,null,!0)}},reposition:function(){var a=this.position,b=a.x,c=a.y;this._reposition();a=this.position;if(b!==a.x||c!==a.y)this.onReposition(a.x,
a.y)},_reposition:function(){var a=t.position(this.container,!0),b=t.getPadBorderExtents(this.container);this.position.update(a.x+b.l,a.y+b.t)},_setClipRect:function(){delete this._clip;var a=7>=u("ie")||void 0===u("ie")&&7<=u("trident")?"rect(auto,auto,auto,auto)":"auto";if(this.wrapAround180){var b=this.width,c=this.height,d=this._getFrameWidth(),e=b-d;0<e&&(a=e/2,a="rect(0px,"+(a+d)+"px,"+c+"px,"+a+"px)",c=this.extent.getWidth(),b=d/b*c,this._clip=[(c-b)/2,b])}va(this.__container,"clip",a)},_getAvailExtent:function(){var a=
this.extent,b=this._clip;if(b){if(!a._clip){var c=new U(a);c.width=b[1];c.x+=b[0];a._clip=c.getExtent()}return a._clip}return a},_fixedPan:function(a,b){return this._extentUtil(null,{dx:a,dy:b})},panUp:function(){return this._fixedPan(0,-.75*this.height)},panUpperRight:function(){return this._fixedPan(.75*this.width,-.75*this.height)},panRight:function(){return this._fixedPan(.75*this.width,0)},panLowerRight:function(){return this._fixedPan(.75*this.width,.75*this.height)},panDown:function(){return this._fixedPan(0,
.75*this.height)},panLowerLeft:function(){return this._fixedPan(-.75*this.width,.75*this.height)},panLeft:function(){return this._fixedPan(-.75*this.width,0)},panUpperLeft:function(){return this._fixedPan(-.75*this.width,-.75*this.height)},enableSnapping:function(a){a=a||{};if("esri.SnappingManager"===a.declaredClass)this.snappingManager=a;else{var b=S++,c=this;this._rids&&this._rids.push(b);q(["./SnappingManager"],function(d){var e=c._rids?f.indexOf(c._rids,b):-1;-1!==e&&(c._rids.splice(e,1),c.snappingManager=
new d(l.mixin({map:c},a)))})}return this.snappingManager},disableSnapping:function(){this.snappingManager&&this.snappingManager.destroy();this.snappingManager=null},_createLabelLayer:function(){!this._labels&&sa&&this.loaded&&(this._labels=new sa({id:"_internal_LabelLayer"}),this._labels._setMap(this,this._gc._surface),this._processLabelLayers(),this.on("layers-reordered",this._processLabelLayers))},_processLabelLayers:function(){null==this._labelProcessor&&(this._labelProcessor=setTimeout(this._updateLabelLayers,
0))},_updateLabelLayers:function(){this._labelProcessor=null;this._labels&&(this._labels.removeAllFeatureLayers(),f.forEach(this.graphicsLayerIds,function(a){a=this.getLayer(a);"function"===typeof a.applyEdits?this._labels.addFeatureLayer(a):"esri.layers.WFSLayer"===a.declaredClass&&this._labels.addFeatureLayer(a)},this))},_getMapImageLyr:function(){this.loaded&&!this._mapImageLyr&&(this._mapImageLyr=new ca,this._mapImageLyr._setMap(this,this._layersDiv),this._placeMapImageLyr());return this._mapImageLyr},
_placeMapImageLyr:function(){for(var a=this.layerIds,b=this._layerDivs,c=!1,d,e,k=a.length-1;0<=k;k--)if(d=a[k],e=this.getLayer(d),d=b[d],e&&d&&!e._isReference){w.place(this._mapImageLyr._div,d,"after");c=!0;break}c||w.place(this._mapImageLyr._div,this._layersDiv,"first")}});u("extend-esri")&&(v._CoreMap=g);return g})},"dojox/gfx/matrix":function(){define(["./_base","dojo/_base/lang"],function(q,n){var b=q.matrix={},g={};b._degToRad=function(b){return g[b]||(g[b]=Math.PI*b/180)};b._radToDeg=function(b){return b/
Math.PI*180};b.Matrix2D=function(h){if(h)if("number"==typeof h)this.xx=this.yy=h;else if(h instanceof Array){if(0<h.length){for(var g=b.normalize(h[0]),l=1;l<h.length;++l){var f=g,e=b.normalize(h[l]),g=new b.Matrix2D;g.xx=f.xx*e.xx+f.xy*e.yx;g.xy=f.xx*e.xy+f.xy*e.yy;g.yx=f.yx*e.xx+f.yy*e.yx;g.yy=f.yx*e.xy+f.yy*e.yy;g.dx=f.xx*e.dx+f.xy*e.dy+f.dx;g.dy=f.yx*e.dx+f.yy*e.dy+f.dy}n.mixin(this,g)}}else n.mixin(this,h)};n.extend(b.Matrix2D,{xx:1,xy:0,yx:0,yy:1,dx:0,dy:0});n.mixin(b,{identity:new b.Matrix2D,
flipX:new b.Matrix2D({xx:-1}),flipY:new b.Matrix2D({yy:-1}),flipXY:new b.Matrix2D({xx:-1,yy:-1}),translate:function(h,g){return 1<arguments.length?new b.Matrix2D({dx:h,dy:g}):new b.Matrix2D({dx:h.x,dy:h.y})},scale:function(h,g){return 1<arguments.length?new b.Matrix2D({xx:h,yy:g}):"number"==typeof h?new b.Matrix2D({xx:h,yy:h}):new b.Matrix2D({xx:h.x,yy:h.y})},rotate:function(h){var g=Math.cos(h);h=Math.sin(h);return new b.Matrix2D({xx:g,xy:-h,yx:h,yy:g})},rotateg:function(h){return b.rotate(b._degToRad(h))},
skewX:function(h){return new b.Matrix2D({xy:Math.tan(h)})},skewXg:function(h){return b.skewX(b._degToRad(h))},skewY:function(h){return new b.Matrix2D({yx:Math.tan(h)})},skewYg:function(h){return b.skewY(b._degToRad(h))},reflect:function(h,g){1==arguments.length&&(g=h.y,h=h.x);var l=h*h,f=g*g,e=l+f,c=2*h*g/e;return new b.Matrix2D({xx:2*l/e-1,xy:c,yx:c,yy:2*f/e-1})},project:function(h,g){1==arguments.length&&(g=h.y,h=h.x);var l=h*h,f=g*g,e=l+f,c=h*g/e;return new b.Matrix2D({xx:l/e,xy:c,yx:c,yy:f/e})},
normalize:function(h){return h instanceof b.Matrix2D?h:new b.Matrix2D(h)},isIdentity:function(b){return 1==b.xx&&0==b.xy&&0==b.yx&&1==b.yy&&0==b.dx&&0==b.dy},clone:function(h){var g=new b.Matrix2D,l;for(l in h)"number"==typeof h[l]&&"number"==typeof g[l]&&g[l]!=h[l]&&(g[l]=h[l]);return g},invert:function(h){h=b.normalize(h);var g=h.xx*h.yy-h.xy*h.yx;return h=new b.Matrix2D({xx:h.yy/g,xy:-h.xy/g,yx:-h.yx/g,yy:h.xx/g,dx:(h.xy*h.dy-h.yy*h.dx)/g,dy:(h.yx*h.dx-h.xx*h.dy)/g})},_multiplyPoint:function(b,
g,l){return{x:b.xx*g+b.xy*l+b.dx,y:b.yx*g+b.yy*l+b.dy}},multiplyPoint:function(h,g,l){h=b.normalize(h);return"number"==typeof g&&"number"==typeof l?b._multiplyPoint(h,g,l):b._multiplyPoint(h,g.x,g.y)},multiplyRectangle:function(g,p){var l=b.normalize(g);p=p||{x:0,y:0,width:0,height:0};if(b.isIdentity(l))return{x:p.x,y:p.y,width:p.width,height:p.height};g=b.multiplyPoint(l,p.x,p.y);var f=b.multiplyPoint(l,p.x,p.y+p.height),e=b.multiplyPoint(l,p.x+p.width,p.y);p=b.multiplyPoint(l,p.x+p.width,p.y+p.height);
var l=Math.min(g.x,f.x,e.x,p.x),c=Math.min(g.y,f.y,e.y,p.y);return{x:l,y:c,width:Math.max(g.x,f.x,e.x,p.x)-l,height:Math.max(g.y,f.y,e.y,p.y)-c}},multiply:function(g){for(var h=b.normalize(g),l=1;l<arguments.length;++l){var f=h,e=b.normalize(arguments[l]),h=new b.Matrix2D;h.xx=f.xx*e.xx+f.xy*e.yx;h.xy=f.xx*e.xy+f.xy*e.yy;h.yx=f.yx*e.xx+f.yy*e.yx;h.yy=f.yx*e.xy+f.yy*e.yy;h.dx=f.xx*e.dx+f.xy*e.dy+f.dx;h.dy=f.yx*e.dx+f.yy*e.dy+f.dy}return h},_sandwich:function(g,p,l){return b.multiply(b.translate(p,
l),g,b.translate(-p,-l))},scaleAt:function(g,p,l,f){switch(arguments.length){case 4:return b._sandwich(b.scale(g,p),l,f);case 3:return"number"==typeof l?b._sandwich(b.scale(g),p,l):b._sandwich(b.scale(g,p),l.x,l.y)}return b._sandwich(b.scale(g),p.x,p.y)},rotateAt:function(g,p,l){return 2<arguments.length?b._sandwich(b.rotate(g),p,l):b._sandwich(b.rotate(g),p.x,p.y)},rotategAt:function(g,p,l){return 2<arguments.length?b._sandwich(b.rotateg(g),p,l):b._sandwich(b.rotateg(g),p.x,p.y)},skewXAt:function(g,
p,l){return 2<arguments.length?b._sandwich(b.skewX(g),p,l):b._sandwich(b.skewX(g),p.x,p.y)},skewXgAt:function(g,p,l){return 2<arguments.length?b._sandwich(b.skewXg(g),p,l):b._sandwich(b.skewXg(g),p.x,p.y)},skewYAt:function(g,p,l){return 2<arguments.length?b._sandwich(b.skewY(g),p,l):b._sandwich(b.skewY(g),p.x,p.y)},skewYgAt:function(g,p,l){return 2<arguments.length?b._sandwich(b.skewYg(g),p,l):b._sandwich(b.skewYg(g),p.x,p.y)}});q.Matrix2D=b.Matrix2D;return b})},"dojox/gfx/_base":function(){define("dojo/_base/kernel dojo/_base/lang dojo/_base/Color dojo/_base/sniff dojo/_base/window dojo/_base/array dojo/dom dojo/dom-construct dojo/dom-geometry".split(" "),
function(q,n,b,g,h,p,l,f,e){var c=n.getObject("dojox.gfx",!0),a=c._base={};c._hasClass=function(a,b){return(a=a.getAttribute("className"))&&0<=(" "+a+" ").indexOf(" "+b+" ")};c._addClass=function(a,b){var c=a.getAttribute("className")||"";(!c||0>(" "+c+" ").indexOf(" "+b+" "))&&a.setAttribute("className",c+(c?" ":"")+b)};c._removeClass=function(a,b){var c=a.getAttribute("className");c&&a.setAttribute("className",c.replace(new RegExp("(^|\\s+)"+b+"(\\s+|$)"),"$1$2"))};a._getFontMeasurements=function(){var a=
{"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},b,c;g("ie")&&(c=h.doc.documentElement.style.fontSize||"",c||(h.doc.documentElement.style.fontSize="100%"));var d=f.create("div",{style:{position:"absolute",left:"0",top:"-100px",width:"30px",height:"1000em",borderWidth:"0",margin:"0",padding:"0",outline:"none",lineHeight:"1",overflow:"hidden"}},h.body());for(b in a)d.style.fontSize=b,a[b]=16*Math.round(12*d.offsetHeight/16)/12/1E3;
g("ie")&&(h.doc.documentElement.style.fontSize=c);h.body().removeChild(d);return a};var d=null;a._getCachedFontMeasurements=function(b){if(b||!d)d=a._getFontMeasurements();return d};var m=null,w={};a._getTextBox=function(a,b,c){var d,k,r=arguments.length,l;m||(m=f.create("div",{style:{position:"absolute",top:"-10000px",left:"0",visibility:"hidden"}},h.body()));d=m;d.className="";k=d.style;k.borderWidth="0";k.margin="0";k.padding="0";k.outline="0";if(1<r&&b)for(l in b)l in w||(k[l]=b[l]);2<r&&c&&(d.className=
c);d.innerHTML=a;d.getBoundingClientRect?(k=d.getBoundingClientRect(),k={l:k.left,t:k.top,w:k.width||k.right-k.left,h:k.height||k.bottom-k.top}):k=e.getMarginBox(d);d.innerHTML="";return k};a._computeTextLocation=function(a,b,c,d){var e={};switch(a.align){case "end":e.x=a.x-b;break;case "middle":e.x=a.x-b/2;break;default:e.x=a.x}e.y=a.y-c*(d?.75:1);return e};a._computeTextBoundingBox=function(b){if(!c._base._isRendered(b))return{x:0,y:0,width:0,height:0};var d;d=b.getShape();var e=b.getFont()||c.defaultFont;
b=b.getTextWidth();e=c.normalizedLength(e.size);d=a._computeTextLocation(d,b,e,!0);return{x:d.x,y:d.y,width:b,height:e}};a._isRendered=function(a){for(a=a.parent;a&&a.getParent;)a=a.parent;return null!==a};var t=0;a._getUniqueId=function(){var a;do a=q._scopeName+"xUnique"+ ++t;while(l.byId(a));return a};var k=g("pointer-events")?"touchAction":g("MSPointer")?"msTouchAction":null;a._fixMsTouchAction=k?function(a){a.rawNode.style[k]="none"}:function(){};n.mixin(c,{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:!1,kerning:!0},defaultTextPath:{type:"textpath",text:"",align:"start",decoration:"none",rotated:!1,kerning:!0},
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"},getDefault:function(){var a=
{};return function(b){var d=a[b];if(d)return new d;d=a[b]=new Function;d.prototype=c["default"+b];return new d}}(),normalizeColor:function(a){return a instanceof b?a:new b(a)},normalizeParameters:function(a,b){var c;if(b){var d={};for(c in a)c in b&&!(c in d)&&(a[c]=b[c])}return a},makeParameters:function(a,b){var c=null;if(!b)return n.delegate(a);var d={};for(c in a)c in d||(d[c]=n.clone(c in b?b[c]:a[c]));return d},formatNumber:function(a,b){var c=a.toString();if(0<=c.indexOf("e"))c=a.toFixed(4);
else{var d=c.indexOf(".");0<=d&&5<c.length-d&&(c=a.toFixed(4))}return 0>a?c:b?" "+c:c},makeFontString:function(a){return a.style+" "+a.variant+" "+a.weight+" "+a.size+" "+a.family},splitFontString:function(a){var b=c.getDefault("Font");a=a.split(/\s+/);if(!(5>a.length)){b.style=a[0];b.variant=a[1];b.weight=a[2];var d=a[3].indexOf("/");b.size=0>d?a[3]:a[3].substring(0,d);var e=4;0>d&&("/"==a[4]?e=6:"/"==a[4].charAt(0)&&(e=5));e<a.length&&(b.family=a.slice(e).join(" "))}return b},cm_in_pt:72/2.54,mm_in_pt:7.2/
2.54,px_in_pt:function(){return c._base._getCachedFontMeasurements()["12pt"]/12},pt2px:function(a){return a*c.px_in_pt()},px2pt:function(a){return a/c.px_in_pt()},normalizedLength:function(a){if(0===a.length)return 0;if(2<a.length){var b=c.px_in_pt(),d=parseFloat(a);switch(a.slice(-2)){case "px":return d;case "pt":return d*b;case "in":return 72*d*b;case "pc":return 12*d*b;case "mm":return d*c.mm_in_pt*b;case "cm":return d*c.cm_in_pt*b}}return parseFloat(a)},pathVmlRegExp:/([A-Za-z]+)|(\d+(\.\d+)?)|(\.\d+)|(-\d+(\.\d+)?)|(-\.\d+)/g,
pathSvgRegExp:/([A-DF-Za-df-z])|([-+]?\d*[.]?\d+(?:[eE][-+]?\d+)?)/g,equalSources:function(a,b){return a&&b&&a===b},switchTo:function(a){var b="string"==typeof a?c[a]:a;b&&(p.forEach("Group Rect Ellipse Circle Line Polyline Image Text Path TextPath EsriPath Surface createSurface fixTarget".split(" "),function(a){c[a]=b[a]}),"string"==typeof a?c.renderer=a:p.some(["svg","vml","canvas","canvasWithEvents","silverlight"],function(a){return c.renderer=c[a]&&c[a].Surface===c.Surface?a:null}))}});return c})},
"esri/basemaps":function(){define(["require","dojo/has","./kernel","dojo/i18n!./nls/jsapi"],function(q,n,b,g){q={streets:{title:g.basemaps.streets,thumbnailUrl:q.toUrl("./images/basemap/streets.jpg"),itemId:"d8855ee4d3d74413babfb0f41203b168",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"}]},satellite:{title:g.basemaps.satellite,thumbnailUrl:q.toUrl("./images/basemap/satellite.jpg"),itemId:"86de95d4e0244cba80f0fa2c9403a7b2",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"}]},
hybrid:{title:g.basemaps.hybrid,thumbnailUrl:q.toUrl("./images/basemap/hybrid.jpg"),itemId:"413fd05bbd7342f5991d5ec96f4f8b18",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"},{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Boundaries_and_Places/MapServer",isReference:!0}]},terrain:{title:g.basemaps.terrain,thumbnailUrl:q.toUrl("./images/basemap/terrain.jpg"),itemId:"aab054ab883c4a4094c72e949566ad40",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Terrain_Base/MapServer"},
{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Reference_Overlay/MapServer",isReference:!0}]},topo:{title:g.basemaps.topo,thumbnailUrl:q.toUrl("./images/basemap/topo.jpg"),itemId:"6e03e8c26aad4b9c92a87c1063ddb0e3",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer"}]},gray:{title:g.basemaps.gray,thumbnailUrl:q.toUrl("./images/basemap/gray.jpg"),itemId:"8b3b470883a744aeb60e5fff0a319ce7",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer"},
{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Reference/MapServer",isReference:!0}]},"dark-gray":{title:g.basemaps["dark-gray"],thumbnailUrl:q.toUrl("./images/basemap/dark-gray.jpg"),itemId:"da65bacab5bd4defb576f839b6b28098",baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Dark_Gray_Base/MapServer"},{url:"https://services.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Dark_Gray_Reference/MapServer",isReference:!0}]},
oceans:{title:g.basemaps.oceans,thumbnailUrl:q.toUrl("./images/basemap/oceans.jpg"),itemId:"48b8cec7ebf04b5fbdcaf70d09daff21",baseMapLayers:[{url:"https://services.arcgisonline.com/arcgis/rest/services/Ocean/World_Ocean_Base/MapServer"},{url:"https://services.arcgisonline.com/arcgis/rest/services/Ocean/World_Ocean_Reference/MapServer",isReference:!0}]},"national-geographic":{title:g.basemaps["national-geographic"],thumbnailUrl:q.toUrl("./images/basemap/national-geographic.jpg"),itemId:"509e2d6b034246d692a461724ae2d62c",
baseMapLayers:[{url:"https://services.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer"}]},osm:{title:g.basemaps.osm,thumbnailUrl:q.toUrl("./images/basemap/osm.jpg"),itemId:"5d2bfa736f8448b3a1708e1f6be23eed",baseMapLayers:[{type:"OpenStreetMap"}]},"dark-gray-vector":{title:g.basemaps["dark-gray"],thumbnailUrl:q.toUrl("./images/basemap/dark-gray.jpg"),itemId:"c11ce4f7801740b2905eb03ddc963ac8",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/c11ce4f7801740b2905eb03ddc963ac8/resources/styles/root.json",
type:"VectorTile"}]},"gray-vector":{title:g.basemaps.gray,thumbnailUrl:q.toUrl("./images/basemap/gray.jpg"),itemId:"8a2cba3b0ebf4140b7c0dc5ee149549a",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/8a2cba3b0ebf4140b7c0dc5ee149549a/resources/styles/root.json",type:"VectorTile"}]},"streets-vector":{title:g.basemaps.streets,thumbnailUrl:q.toUrl("./images/basemap/streets.jpg"),itemId:"de26a3cf4cc9451298ea173c4b324736",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/de26a3cf4cc9451298ea173c4b324736/resources/styles/root.json",
type:"VectorTile"}]},"topo-vector":{title:g.basemaps.topo,thumbnailUrl:q.toUrl("./images/basemap/topo.jpg"),itemId:"7dc6cea0b1764a1f9af2e679f642f0f5",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/7dc6cea0b1764a1f9af2e679f642f0f5/resources/styles/root.json",type:"VectorTile"}]},"streets-night-vector":{title:g.basemaps["streets-night-vector"],thumbnailUrl:q.toUrl("./images/basemap/streets-night.jpg"),itemId:"86f556a2d1fd468181855a35e344567f",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/86f556a2d1fd468181855a35e344567f/resources/styles/root.json",
type:"VectorTile"}]},"streets-relief-vector":{title:g.basemaps["streets-relief-vector"],thumbnailUrl:q.toUrl("./images/basemap/streets-relief.jpg"),itemId:"b266e6d17fc345b498345613930fbd76",baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/b266e6d17fc345b498345613930fbd76/resources/styles/root.json",type:"VectorTile"}]},"streets-navigation-vector":{title:g.basemaps["streets-navigation-vector"],thumbnailUrl:q.toUrl("./images/basemap/streets-navigation.jpg"),itemId:"63c47b7177f946b49902c24129b87252",
baseMapLayers:[{url:"https://www.arcgis.com/sharing/rest/content/items/63c47b7177f946b49902c24129b87252/resources/styles/root.json",type:"VectorTile"}]}};n("extend-esri")&&(b.basemaps=q);return q})},"esri/Evented":function(){define("dojo/_base/declare dojo/_base/lang dojo/aspect dojo/Evented dojo/has ./kernel".split(" "),function(q,n,b,g,h,p){q=q([g],{declaredClass:"esri.Evented",registerConnectEvents:function(){var b=this.constructor,f=this.constructor._meta.parents,e=[{}],c={},a,d,m=function(a,
b){n.isArray(a)||(a=[a]);for(var c=0;c<a.length;c++){var d=a[c];d._meta&&d._meta.parents&&m(d._meta.parents,b);d.prototype._eventMap&&b.push(n.mixin({},d.prototype._eventMap))}return b};if(!b._onMap){m(f,e);e.push(this._eventMap);f=n.mixin.apply(this,e);for(a in this)/^on\w/.test(a)&&n.isFunction(this[a])&&(e=this._hyphenLower(a).toLowerCase(),f[e]||(c[e]={method:a}));for(d in f)a=this._onCamelCase(d),c[d]={method:a,argKeys:f[d]};b._onMap=c;return b._onMap}},on:function(l,f){if(-1<l.indexOf(",")){for(var e=
l.split(/\s*,\s*/),c=e.length,a=[];c--;)a.push(this.on(e[c],f));a.remove=function(){for(var b=0;b<a.length;b++)a[b].remove()};return a}var e=this.constructor._onMap||this.registerConnectEvents(),c="string"==typeof l&&l.toLowerCase(),d=this._onCamelCase(c),m=e&&e[c];return(d=m&&m.method||this[d]&&n.isFunction(this[d])&&d)?m&&n.isArray(m.argKeys)?(e=this._onArr2Obj(f,e[c].argKeys),b.after(this,d,e,!0)):b.after(this,d,function(a){a=a||{};a.target||(a.target=this);f.call(this,a)},!0):this.inherited(arguments)},
emit:function(b,f){var e,c,a,d,m=b.toLowerCase();d=this._onCamelCase(b);var l=this.constructor._onMap||this.registerConnectEvents();d=(a=l&&l[m]&&l[m].method||n.isFunction(this[d])&&d)&&this[a];a&&l&&l[m]&&this._onObj2Arr(function(){c=Array.prototype.slice.call(arguments)},l[m].argKeys)(f);f=f||{};f.target||(f.target=this);d&&(e=c&&c.length?c:[f],e=d.apply(this,e));this.inherited(arguments,[b,f]);return e},_onObj2Arr:function(b,f){if(f){var e=this;return function(c){var a,d=[],m=f.length;for(a=0;a<
m;a++)d[a]=c[f[a]];b.apply(e,d)}}return b},_onArr2Obj:function(b,f){if(f){var e=this;return function(){var c,a={},d=arguments.length;for(c=0;c<d;c++)a[f[c]]=arguments[c];a.target||(a.target=e);b.call(e,a)}}return b},_hyphenLower:function(b){return b.replace(/^on/,"").replace(/[A-Z](?=[a-z])/g,function(b,e){return(e?"-":"")+b.toLowerCase()})},_onCamelCase:function(b){return"on"+b.substr(0,1).toUpperCase()+b.substr(1).replace(/\-([a-z])/g,function(b,e){return e.toUpperCase()})}});h("extend-esri")&&
(p.Evented=q);return q})},"esri/fx":function(){define("dojo/_base/connect dojo/_base/fx dojo/_base/lang dojo/dom dojo/dom-geometry dojo/dom-style dojo/fx dojo/has ./kernel".split(" "),function(q,n,b,g,h,p,l,f,e){var c={animateRange:function(a){var c=a.range;return new n.Animation(b.mixin({curve:new n._Line(c.start,c.end)},a))},resize:function(a){var c=a.node=g.byId(a.node),e=a.start,f=a.end;e||(e=h.getMarginBox(c),c=h.getPadBorderExtents(c),e=a.start={left:e.l+c.l,top:e.t+c.t,width:e.w-c.w,height:e.h-
c.h});f||(f=a.anchor?a.anchor:{x:e.left,y:e.top},c=a.size,f=a.end={left:e.left-(c.width-e.width)*(f.x-e.left)/e.width,top:e.top-(c.height-e.height)*(f.y-e.top)/e.height,width:c.width,height:c.height});return n.animateProperty(b.mixin({properties:{left:{start:e.left,end:f.left},top:{start:e.top,end:f.top},width:{start:e.width,end:f.width},height:{start:e.height,end:f.height}}},a))},slideTo:function(a){var c=a.node=g.byId(a.node),e=p.getComputedStyle,f=null,l=null,k=function(){return function(){var a=
"absolute"==c.style.position?"absolute":"relative";f="absolute"==a?c.offsetTop:parseInt(e(c).top)||0;l="absolute"==a?c.offsetLeft:parseInt(e(c).left)||0;"absolute"!=a&&"relative"!=a&&(a=h.position(c,!0),f=a.y,l=a.x,c.style.position="absolute",c.style.top=f+"px",c.style.left=l+"px")}}();k();a=n.animateProperty(b.mixin({properties:{top:{start:f,end:a.top||0},left:{start:l,end:a.left||0}}},a));q.connect(a,"beforeBegin",a,k);return a},flash:function(a){a=b.mixin({end:"#f00",duration:500,count:1},a);a.duration/=
2*a.count;var c=g.byId(a.node),e=a.start;e||(e=p.getComputedStyle(c).backgroundColor);var f=a.end,t=[],k=a.count,c={node:c,duration:a.duration};for(a=0;a<k;a++)t.push(n.animateProperty(b.mixin({properties:{backgroundColor:{start:e,end:f}}},c))),t.push(n.animateProperty(b.mixin({properties:{backgroundColor:{start:f,end:e}}},c)));return l.chain(t)}};f("extend-esri")&&b.mixin(b.getObject("fx",!0,e),c);return c})},"dojo/fx":function(){define("./_base/lang ./Evented ./_base/kernel ./_base/array ./aspect ./_base/fx ./dom ./dom-style ./dom-geometry ./ready require".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a){b.isAsync||c(0,function(){a(["./fx/Toggler"])});b=b.fx={};c={_fire:function(a,b){this[a]&&this[a].apply(this,b||[]);return this}};var d=function(a){this._index=-1;this._animations=a||[];this._current=this._onAnimateCtx=this._onEndCtx=null;this.duration=0;g.forEach(this._animations,function(a){a&&("undefined"!=typeof a.duration&&(this.duration+=a.duration),a.delay&&(this.duration+=a.delay))},this)};d.prototype=new n;q.extend(d,{_onAnimate:function(){this._fire("onAnimate",
arguments)},_onEnd:function(){this._onAnimateCtx.remove();this._onEndCtx.remove();this._onAnimateCtx=this._onEndCtx=null;this._index+1==this._animations.length?this._fire("onEnd"):(this._current=this._animations[++this._index],this._onAnimateCtx=h.after(this._current,"onAnimate",q.hitch(this,"_onAnimate"),!0),this._onEndCtx=h.after(this._current,"onEnd",q.hitch(this,"_onEnd"),!0),this._current.play(0,!0))},play:function(a,b){this._current||(this._current=this._animations[this._index=0]);if(!b&&"playing"==
this._current.status())return this;var c=h.after(this._current,"beforeBegin",q.hitch(this,function(){this._fire("beforeBegin")}),!0),d=h.after(this._current,"onBegin",q.hitch(this,function(a){this._fire("onBegin",arguments)}),!0),e=h.after(this._current,"onPlay",q.hitch(this,function(a){this._fire("onPlay",arguments);c.remove();d.remove();e.remove()}));this._onAnimateCtx&&this._onAnimateCtx.remove();this._onAnimateCtx=h.after(this._current,"onAnimate",q.hitch(this,"_onAnimate"),!0);this._onEndCtx&&
this._onEndCtx.remove();this._onEndCtx=h.after(this._current,"onEnd",q.hitch(this,"_onEnd"),!0);this._current.play.apply(this._current,arguments);return this},pause:function(){if(this._current){var a=h.after(this._current,"onPause",q.hitch(this,function(b){this._fire("onPause",arguments);a.remove()}),!0);this._current.pause()}return this},gotoPercent:function(a,b){this.pause();var c=this.duration*a;this._current=null;g.some(this._animations,function(a,b){if(c<=a.duration)return this._current=a,this._index=
b,!0;c-=a.duration;return!1},this);this._current&&this._current.gotoPercent(c/this._current.duration);b&&this.play();return this},stop:function(a){if(this._current){if(a){for(;this._index+1<this._animations.length;++this._index)this._animations[this._index].stop(!0);this._current=this._animations[this._index]}var b=h.after(this._current,"onStop",q.hitch(this,function(a){this._fire("onStop",arguments);b.remove()}),!0);this._current.stop()}return this},status:function(){return this._current?this._current.status():
"stopped"},destroy:function(){this.stop();this._onAnimateCtx&&this._onAnimateCtx.remove();this._onEndCtx&&this._onEndCtx.remove()}});q.extend(d,c);b.chain=function(a){return new d(q.isArray(a)?a:Array.prototype.slice.call(a,0))};var m=function(a){this._animations=a||[];this._connects=[];this.duration=this._finished=0;g.forEach(a,function(a){var b=a.duration;a.delay&&(b+=a.delay);this.duration<b&&(this.duration=b);this._connects.push(h.after(a,"onEnd",q.hitch(this,"_onEnd"),!0))},this);this._pseudoAnimation=
new p.Animation({curve:[0,1],duration:this.duration});var b=this;g.forEach("beforeBegin onBegin onPlay onAnimate onPause onStop onEnd".split(" "),function(a){b._connects.push(h.after(b._pseudoAnimation,a,function(){b._fire(a,arguments)},!0))})};q.extend(m,{_doAction:function(a,b){g.forEach(this._animations,function(c){c[a].apply(c,b)});return this},_onEnd:function(){++this._finished>this._animations.length&&this._fire("onEnd")},_call:function(a,b){var c=this._pseudoAnimation;c[a].apply(c,b)},play:function(a,
b){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(a,b){var c=this.duration*a;g.forEach(this._animations,function(a){a.gotoPercent(a.duration<c?1:c/a.duration,b)});this._call("gotoPercent",arguments);return this},stop:function(a){this._doAction("stop",arguments);this._call("stop",arguments);return this},status:function(){return this._pseudoAnimation.status()},
destroy:function(){this.stop();g.forEach(this._connects,function(a){a.remove()})}});q.extend(m,c);b.combine=function(a){return new m(q.isArray(a)?a:Array.prototype.slice.call(a,0))};b.wipeIn=function(a){var b=a.node=l.byId(a.node),c=b.style,d;a=p.animateProperty(q.mixin({properties:{height:{start:function(){d=c.overflow;c.overflow="hidden";if("hidden"==c.visibility||"none"==c.display)return c.height="1px",c.display="",c.visibility="",1;var a=f.get(b,"height");return Math.max(a,1)},end:function(){return b.scrollHeight}}}},
a));var e=function(){c.height="auto";c.overflow=d};h.after(a,"onStop",e,!0);h.after(a,"onEnd",e,!0);return a};b.wipeOut=function(a){var b=(a.node=l.byId(a.node)).style,c;a=p.animateProperty(q.mixin({properties:{height:{end:1}}},a));h.after(a,"beforeBegin",function(){c=b.overflow;b.overflow="hidden";b.display=""},!0);var d=function(){b.overflow=c;b.height="auto";b.display="none"};h.after(a,"onStop",d,!0);h.after(a,"onEnd",d,!0);return a};b.slideTo=function(a){var b=null,c=null,d=function(a){return function(){var d=
f.getComputedStyle(a),k=d.position;b="absolute"==k?a.offsetTop:parseInt(d.top)||0;c="absolute"==k?a.offsetLeft:parseInt(d.left)||0;"absolute"!=k&&"relative"!=k&&(d=e.position(a,!0),b=d.y,c=d.x,a.style.position="absolute",a.style.top=b+"px",a.style.left=c+"px")}}(a.node=l.byId(a.node));d();a=p.animateProperty(q.mixin({properties:{top:a.top||0,left:a.left||0}},a));h.after(a,"beforeBegin",d,!0);return a};return b})},"esri/deferredUtils":function(){define(["dojo/_base/lang","dojo/has","./kernel"],function(q,
n,b){var g={_dfdCanceller:function(b){b.canceled=!0;var g=b._pendingDfd,l;b.isFulfilled()||!g||g.isFulfilled()||(g.cancel(),l=g.results&&g.results[1]);b._pendingDfd=null;return l},_fixDfd:function(b){var g=b.then;b.then=function(b,f,e){if(b){var c=b;b=function(a){return a&&a._argsArray?c.apply(null,a):c(a)}}return g.call(this,b,f,e)};return b},_resDfd:function(b,g,l){var f=g.length;1===f?l?b.errback(g[0]):b.callback(g[0]):1<f?(g._argsArray=!0,b.callback(g)):b.callback()}};n("extend-esri")&&q.mixin(b,
g);return g})},"esri/tileUtils":function(){define(["dojo/_base/array","dojo/has","./kernel","./geometry/Point","./geometry/Extent"],function(q,n,b,g,h){var p={_addFrameInfo:function(b,f){var e,c,a=2*f.origin[1],d=f.origin[0],m=b.origin.x,l=b.width,g;q.forEach(b.lods,function(b){e=Math.round(a/b.resolution);c=Math.ceil(e/l);g=Math.floor((d-m)/(l*b.resolution));b._frameInfo||(b._frameInfo=[c,g,g+c-1,e])})},getContainingTileCoords:function(b,f,e){var c=b.origin;e=e.resolution;return{row:Math.floor((c.y-
f.y)/(b.height*e)),col:Math.floor((f.x-c.x)/(b.width*e))}},getCandidateTileInfo:function(b,f,e){var c;c=b.width;for(var a=b.height,d=e.xmax-e.xmin,m=e.ymax-e.ymin,l=b.__tileInfo===f,t=l?b.getMinZoom():-1,l=l?b.getMaxZoom():-1,k=-1,u=f.lods,r=Math.abs,y,v,p,l=-1<l?l:u.length-1,t=-1<t?t:0;t<=l;t++)if(v=u[t])if(p=d>m?r(m-a*v.resolution):r(d-c*v.resolution),0>k||p<=k)y=v,k=p;else break;c=y;y=c.resolution;a=(e.xmin+e.xmax)/2;d=(e.ymin+e.ymax)/2;m=b.width/2*y;y*=b.height/2;a=new h(a-m,d-y,a+m,d+y,e.spatialReference);
e=new g(a.xmin,a.ymax,e.spatialReference);l=c.resolution;m=f.width;d=f.height;f=f.origin;b=b.__visibleDelta;y=Math.floor;u=m*l;r=d*l;l=y((f.y-e.y)/r);k=y((e.x-f.x)/u);t=f.y-l*r;f=y(Math.abs((e.x-(f.x+k*u))*m/u))+b.x;b=y(Math.abs((e.y-t)*d/r))+b.y;return{tile:{point:e,coords:{row:l,col:k},offsets:{x:f,y:b}},lod:c,extent:a}},getTileExtent:function(b,f,e,c){var a=b.origin;f=b.lods[f].resolution;var d=b.width,m=b.height;return new h(c*f*d+a.x,a.y-(e+1)*f*m,(c+1)*f*d+a.x,a.y-e*f*m,b.spatialReference)}};
n("extend-esri")&&(b.TileUtils=p);return p})},"esri/geometry/Point":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ../SpatialReference ./Geometry ../srUtils".split(" "),function(q,n,b,g,h,p,l,f){function e(a,b){89.99999<b?b=89.99999:-89.99999>b&&(b=-89.99999);b*=.017453292519943;return[111319.49079327169*a,3189068.5*Math.log((1+Math.sin(b))/(1-Math.sin(b)))]}function c(a,b,c){a=a/6378137*57.29577951308232;return c?[a,57.29577951308232*(1.5707963267948966-2*Math.atan(Math.exp(-1*
b/6378137)))]:[a-360*Math.floor((a+180)/360),57.29577951308232*(1.5707963267948966-2*Math.atan(Math.exp(-1*b/6378137)))]}function a(){}function d(){}function m(a){var b=a._json;a._unquantizeFn?(b=a._unquantizeFn({x:b.x,y:b.y}),a._xVal=b.x,a._yVal=b.y,a._unquantizeFn=null):(a._xVal=b.x,a._yVal=b.y);a._json=null}p={type:"point",x:0,y:0};q=q(l,{declaredClass:"esri.geometry.Point",type:"point",x:0,y:0,constructor:function(a,b,c){n.isArray(a)?(this.x=a[0],this.y=a[1],this.spatialReference=b):h.isObject(a)?
(h.mixin(this,a),null!=this.latitude&&(this.y=this.latitude),null!=this.longitude&&(this.x=this.longitude),this.spatialReference&&(this.spatialReference=f.createSpatialReference(this.spatialReference))):(this.x=a,this.y=b,this.spatialReference=c);this.verifySR()},offset:function(a,b){return new this.constructor(this.x+a,this.y+b,this.spatialReference)},setX:function(a){this.x=a;this.clearCache();return this},setY:function(a){this.y=a;this.clearCache();return this},setLongitude:function(a){var b=this.spatialReference;
b&&(b._isWebMercator()?this.setX(e(a,this.y)[0]):4326===b.wkid&&this.setX(a));return this},setLatitude:function(a){var b=this.spatialReference;b&&(b._isWebMercator()?this.setY(e(this.x,a)[1]):4326===b.wkid&&this.setY(a));return this},getLongitude:function(){var a=this.spatialReference,b;a&&(a._isWebMercator()?b=c(this.x,this.y)[0]:4326===a.wkid&&(b=this.x));return b},getLatitude:function(){var a=this.spatialReference,b;a&&(a._isWebMercator()?b=c(this.x,this.y)[1]:4326===a.wkid&&(b=this.y));return b},
update:function(a,b){this.x=a;this.y=b;this.clearCache();return this},normalize:function(){var a=this.x,b=this.spatialReference;if(b){var c=b._getInfo();c&&(a=this._normalizeX(a,c))}return new this.constructor(a,this.y,b)},_normalizeX:function(a,b){var c=b.valid[0],d=b.valid[1];b=2*d;a>d?(c=Math.ceil(Math.abs(a-d)/b),a-=c*b):a<c&&(c=Math.ceil(Math.abs(a-c)/b),a+=c*b);return a},toJson:function(){var a={x:this.x,y:this.y},b=this.spatialReference;b&&(a.spatialReference=b.toJson());return a}});a.prototype=
q.prototype;d.prototype=new a;Object.defineProperty(d.prototype,"x",{get:function(){this._json&&m(this);return this._xVal},set:function(a){this._xVal=a}});Object.defineProperty(d.prototype,"y",{get:function(){this._json&&m(this);return this._yVal},set:function(a){this._yVal=a}});d.prototype.setupLazyUnquantization=function(a,b){this._unquantizeFn=a;this._json=b};q.simpleConstructor=a;q.accessorConstructor=d;q.lngLatToXY=e;q.xyToLngLat=c;q.defaultProps=p;q.metersPerDegree=6378137*Math.PI/180;b("extend-esri")&&
(n.setObject("geometry.Point",q,g),g.geometry.defaultPoint=p);return q})},"esri/SpatialReference":function(){define(["dojo/_base/declare","dojo/_base/array","dojo/has","./kernel","./lang"],function(q,n,b,g,h){function p(){}var l=[-2.0037508342788905E7,2.0037508342788905E7],f=[-2.0037508342787E7,2.0037508342787E7];q=q(null,{declaredClass:"esri.SpatialReference",constructor:function(b){b&&(h.isObject(b)?h.mixin(this,b):h.isString(b)?this.wkt=b:this.wkid=b)},wkid:null,wkt:null,_info:{102113:{wkTemplate:'PROJCS["WGS_1984_Web_Mercator",GEOGCS["GCS_WGS_1984_Major_Auxiliary_Sphere",DATUM["D_WGS_1984_Major_Auxiliary_Sphere",SPHEROID["WGS_1984_Major_Auxiliary_Sphere",6378137.0,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",${Central_Meridian}],PARAMETER["Standard_Parallel_1",0.0],UNIT["Meter",1.0]]',
valid:l,origin:f,dx:1E-5},102100:{wkTemplate:'PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",${Central_Meridian}],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]',valid:l,origin:f,
dx:1E-5},3785:{wkTemplate:'PROJCS["WGS_1984_Web_Mercator",GEOGCS["GCS_WGS_1984_Major_Auxiliary_Sphere",DATUM["D_WGS_1984_Major_Auxiliary_Sphere",SPHEROID["WGS_1984_Major_Auxiliary_Sphere",6378137.0,0.0]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",${Central_Meridian}],PARAMETER["Standard_Parallel_1",0.0],UNIT["Meter",1.0]]',valid:l,origin:f,dx:1E-5},3857:{wkTemplate:'PROJCS["WGS_1984_Web_Mercator_Auxiliary_Sphere",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Mercator_Auxiliary_Sphere"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",${Central_Meridian}],PARAMETER["Standard_Parallel_1",0.0],PARAMETER["Auxiliary_Sphere_Type",0.0],UNIT["Meter",1.0]]',
valid:l,origin:f,dx:1E-5},4326:{wkTemplate:'GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",${Central_Meridian}],UNIT["Degree",0.0174532925199433]]',altTemplate:'PROJCS["WGS_1984_Plate_Carree",GEOGCS["GCS_WGS_1984",DATUM["D_WGS_1984",SPHEROID["WGS_1984",6378137.0,298.257223563]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Plate_Carree"],PARAMETER["False_Easting",0.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",${Central_Meridian}],UNIT["Degrees",111319.491]]',
valid:[-180,180],origin:[-180,180],dx:1E-5}},_isWebMercator:function(){return-1!==n.indexOf([102113,102100,3857,3785],this.wkid)},_isWrappable:function(){return-1!==n.indexOf([102113,102100,3857,3785,4326],this.wkid)},_getInfo:function(){return this.wkid?this._info[this.wkid]:null},_canProject:function(b){var c=!1;b&&(c=this.isWebMercator()&&4326===b.wkid||b.isWebMercator()&&4326===this.wkid);return c},isWebMercator:function(){return this._isWebMercator()},equals:function(b){var c=!1;b&&(this===b&&
(c=!0),this.wkid||b.wkid?c=this.wkid===b.wkid||this.isWebMercator()&&b.isWebMercator()||this.wkid===b.latestWkid||b.wkid===this.latestWkid:this.wkt&&b.wkt&&(c=this.wkt.toUpperCase()===b.wkt.toUpperCase()));return c},toJson:function(){var b=null;null!=this.wkid?b={wkid:this.wkid}:null!=this.wkt&&(b={wkt:this.wkt});b&&null!=this.latestWkid&&(b.latestWkid=this.latestWkid);return b}});p.prototype=q.prototype;q.simpleConstructor=p;b("extend-esri")&&(g.SpatialReference=q);return q})},"esri/geometry/Geometry":function(){define(["dojo/_base/declare",
"dojo/_base/lang","dojo/has","../kernel","../SpatialReference"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.geometry.Geometry",spatialReference:null,type:null,cache:void 0,setSpatialReference:function(b){this.spatialReference=b;return this},verifySR:function(){this.spatialReference||this.setSpatialReference(new h(4326))},getExtent:function(){return null},clearCache:function(){this.cache=void 0},getCacheValue:function(b){return this.cache&&this.cache[b]},setCacheValue:function(b,l){this.cache||
(this.cache={});this.cache[b]=l}});b("extend-esri")&&n.setObject("geometry.Geometry",q,g);return q})},"esri/srUtils":function(){define(["./SpatialReference","./ImageSpatialReference","./kernel","./sniff","dojo/_base/lang"],function(q,n,b,g,h){function p(b){var e=!1;b&&(b.ics||b.icsid)&&(e=!0);return e}var l={isICS:p,createSpatialReference:function(b){var e=null;b&&(e=p(b)?new n(b):new q(b));return e}};g("extend-esri")&&h.mixin(b,l);return l})},"esri/ImageSpatialReference":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ./kernel ./lang ./SpatialReference".split(" "),
function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.ImageSpatialReference",constructor:function(b){b&&n.isObject(b)&&n.mixin(this,b)},icsid:null,icsns:null,ics:null,_isWebMercator:function(){return!1},_isWrappable:function(){return!1},equals:function(b){var f=!1;if(b)if(this.icsid&&b.icsid){if(f=this.icsid===b.icsid,this.icsns||b.icsns)f=f&&this.icsns===b.icsns}else this.ics&&b.ics&&(f=this.ics===b.ics);return f},toJson:function(b){var f=null,e=h.isDefined;b=e(b)?b:!0;e(this.icsid)?(f={icsid:this.icsid},
e(this.icsns)&&(f.icsns=this.icsns)):e(this.ics)&&(f={ics:this.ics});e(this.url)&&e(f)&&b&&(f.url=this.url);return f}});b("extend-esri")&&(g.ImageSpatialReference=q);return q})},"esri/geometry/Extent":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../SpatialReference ./Geometry ./Point ./webMercatorUtils ./mathUtils ../srUtils".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d){function m(){}var w={type:"extent",xmin:0,ymin:0,xmax:0,ymax:0},t=q(f,{declaredClass:"esri.geometry.Extent",
type:"extent",xmin:0,ymin:0,xmax:0,ymax:0,constructor:function(a,b,c,e,m){p.isObject(a)?(p.mixin(this,a),this.spatialReference&&(this.spatialReference=d.createSpatialReference(this.spatialReference))):this.update(a,b,c,e,m);this.verifySR()},getWidth:function(){return Math.abs(this.xmax-this.xmin)},getHeight:function(){return Math.abs(this.ymax-this.ymin)},getCenter:function(){return new e((this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2,this.spatialReference)},centerAt:function(a){var b=this.getCenter(),
c=a.x-b.x;a=a.y-b.y;return new t(this.xmin+c,this.ymin+a,this.xmax+c,this.ymax+a,this.spatialReference)},update:function(a,b,c,d,e){this.xmin=a;this.ymin=b;this.xmax=c;this.ymax=d;this.spatialReference=e;this.clearCache();return this},offset:function(a,b){return new t(this.xmin+a,this.ymin+b,this.xmax+a,this.ymax+b,this.spatialReference)},expand:function(a){var b=(1-a)/2;a=this.getWidth()*b;b*=this.getHeight();return new t(this.xmin+a,this.ymin+b,this.xmax-a,this.ymax-b,this.spatialReference)},intersects:function(a){if(!a)return!1;
var b=a.type,d=this.spatialReference,e=a.spatialReference;d&&e&&!d.equals(e)&&d._canProject(e)&&(a=d.isWebMercator()?c.geographicToWebMercator(a):c.webMercatorToGeographic(a,!0));switch(b){case "point":return this.contains(a);case "multipoint":return this._intersectsMultipoint(a);case "extent":return this._intersectsExtent(a);case "polygon":return this._intersectsPolygon(a);case "polyline":return this._intersectsPolyline(a)}},normalize:function(){var a=this._normalize(!1,!0);b.isArray(a)||(a=[a]);
return a},shiftCentralMeridian:function(){return this._normalize(!0)},bisect:function(){var a=this.spatialReference,b=a&&a._getInfo(),c=[],d=0;if(b&&this._isOutOfBounds(b)){var e=this,d=e.xmin,m=e.ymin,f=e.ymax,g=b.valid[0],h=b.valid[1];e.getWidth()>2*h&&(e=e.getCenter(),e=new t(e.x-h,m,e.x+h,f,new l(a.toJson())));var d=e.xmin-d,p=this._normalizeX(e.xmin,b),b=this._normalizeX(e.xmax,b);p.frameId===b.frameId?c.push(new t(p.x,m,b.x,f,new l(a.toJson()))):c.push(new t(p.x,m,h,f,new l(a.toJson())),new t(g,
m,b.x,f,new l(a.toJson())))}else c.push(this.getExtent());return{extents:c,marginLeft:d}},_intersectsMultipoint:function(a){var b=a.points.length,c;for(c=0;c<b;c++)if(this.contains(a.getPoint(c)))return!0;return!1},_intersectsExtent:function(a){var b,c,d,e,k=!1;this.xmin<=a.xmin?(b=a.xmin,this.xmax<b?k=!0:d=Math.min(this.xmax,a.xmax)-b):(b=this.xmin,a.xmax<b?k=!0:d=Math.min(this.xmax,a.xmax)-b);this.ymin<=a.ymin?(c=a.ymin,this.ymax<c?k=!0:e=Math.min(this.ymax,a.ymax)-c):(c=this.ymin,a.ymax<c?k=!0:
e=Math.min(this.ymax,a.ymax)-c);return k?null:new t(b,c,b+d,c+e,this.spatialReference)},_intersectsPolygon:function(a){var b=[this.xmin,this.ymax],c=[this.xmax,this.ymax],d=[this.xmin,this.ymin],k=[this.xmax,this.ymin],m=[b,c,d,k],b=[[d,b],[b,c],[c,k],[k,d]],d=a.rings,k=d.length,f,l=new e(0,0,this.spatialReference);f=m.length;for(c=0;c<f;c++)if(l.update(m[c][0],m[c][1]),a.contains(l))return!0;l.setSpatialReference(a.spatialReference);for(var g,h,c=0;c<k;c++)if(m=d[c],f=m.length){g=m[0];l.update(g[0],
g[1]);if(this.contains(l))return!0;for(a=1;a<f;a++){h=m[a];l.update(h[0],h[1]);if(this.contains(l)||this._intersectsLine([g,h],b))return!0;g=h}}return!1},_intersectsPolyline:function(a){var b=[[[this.xmin,this.ymin],[this.xmin,this.ymax]],[[this.xmin,this.ymax],[this.xmax,this.ymax]],[[this.xmax,this.ymax],[this.xmax,this.ymin]],[[this.xmax,this.ymin],[this.xmin,this.ymin]]],c,d=a.paths,k=d.length,m,f,l,g,h=new e(0,0,a.spatialReference);for(a=0;a<k;a++)if(m=d[a],f=m.length){l=m[0];h.update(l[0],l[1]);
if(this.contains(h))return!0;for(c=1;c<f;c++){g=m[c];h.update(g[0],g[1]);if(this.contains(h)||this._intersectsLine([l,g],b))return!0;l=g}}return!1},_intersectsLine:function(b,c){var d=a._getLineIntersection2,e,k=c.length;for(e=0;e<k;e++)if(d(b,c[e]))return!0;return!1},contains:function(a){if(!a)return!1;var b=a.type;if("point"===b){var c=this.spatialReference,d=a.spatialReference,b=a.x;a=a.y;c&&d&&!c.equals(d)&&c._canProject(d)&&(a=c.isWebMercator()?e.lngLatToXY(b,a):e.xyToLngLat(b,a,!0),b=a[0],a=
a[1]);return b>=this.xmin&&b<=this.xmax&&a>=this.ymin&&a<=this.ymax}return"extent"===b?this._containsExtent(a):!1},_containsExtent:function(a){var b=a.xmin,c=a.ymin,d=a.xmax,k=a.ymax,m=a.spatialReference;a=new e(b,c,m);b=new e(b,k,m);k=new e(d,k,m);c=new e(d,c,m);return this.contains(a)&&this.contains(b)&&this.contains(k)&&this.contains(c)?!0:!1},union:function(a){return new t(Math.min(this.xmin,a.xmin),Math.min(this.ymin,a.ymin),Math.max(this.xmax,a.xmax),Math.max(this.ymax,a.ymax),this.spatialReference)},
getExtent:function(){var a=this.spatialReference;return new t(this.xmin,this.ymin,this.xmax,this.ymax,a&&new l(a.toJson()))},_shiftCM:function(a){var b=this.getCacheValue("_shifted");if(!b){var b=new t(this.toJson()),d=b.spatialReference;if(a=a||d._getInfo()){var e=this._getCM(a);if(e){var k=d._isWebMercator()?c.webMercatorToGeographic(e):e;b.xmin-=e.x;b.xmax-=e.x;d._isWebMercator()||(k.x=this._normalizeX(k.x,a).x);b.setSpatialReference(new l(p.substitute({Central_Meridian:k.x},4326===d.wkid?a.altTemplate:
a.wkTemplate)))}}this.setCacheValue("_shifted",b)}return b},_getCM:function(a){var b;this._isOutOfBounds(a)&&(b=this.getCenter());return b},_isOutOfBounds:function(a){var b=a.valid[0];a=a.valid[1];var c=this.xmin,d=this.xmax;return!(c>=b&&c<=a&&d>=b&&d<=a)},_normalize:function(a,b,c){var d=new t(this.toJson()),e=d.spatialReference;if(e&&(c=c||e._getInfo())){var k=n.map(this._getParts(c),function(a){return a.extent});return 2<k.length?a?this._shiftCM(c):d.update(c.valid[0],d.ymin,c.valid[1],d.ymax,
e):2===k.length?a?this._shiftCM(c):b?k:{rings:n.map(k,function(a){return[[a.xmin,a.ymin],[a.xmin,a.ymax],[a.xmax,a.ymax],[a.xmax,a.ymin],[a.xmin,a.ymin]]}),spatialReference:e}:k[0]||d}return d},_getParts:function(a){var b=this.getCacheValue("_parts");if(!b){var b=[],c=this.xmin,d=this.xmax,e=this.ymin,k=this.ymax,m=this.spatialReference,f=this.getWidth(),l=c,g=d,h=0,p=0,w,n;a=a||m._getInfo();w=a.valid[0];n=a.valid[1];p=this._normalizeX(c,a);c=p.x;h=p.frameId;p=this._normalizeX(d,a);d=p.x;p=p.frameId;
a=c===d&&0<f;if(f>2*n){f=new t(l<g?c:d,e,n,k,m);c=new t(w,e,l<g?d:c,k,m);n=new t(0,e,n,k,m);e=new t(w,e,0,k,m);m=[];w=[];f.contains(n)&&m.push(h);f.contains(e)&&w.push(h);c.contains(n)&&m.push(p);c.contains(e)&&w.push(p);for(k=h+1;k<p;k++)m.push(k),w.push(k);b.push({extent:f,frameIds:[h]},{extent:c,frameIds:[p]},{extent:n,frameIds:m},{extent:e,frameIds:w})}else c>d||a?b.push({extent:new t(c,e,n,k,m),frameIds:[h]},{extent:new t(w,e,d,k,m),frameIds:[p]}):b.push({extent:new t(c,e,d,k,m),frameIds:[h]});
this.setCacheValue("_parts",b)}return b},_normalizeX:function(a,b){var c=0,d=b.valid[0],e=b.valid[1];b=2*e;a>e?(c=Math.ceil(Math.abs(a-e)/b),a-=c*b):a<d&&(c=Math.ceil(Math.abs(a-d)/b),a+=c*b,c=-c);return{x:a,frameId:c}},toJson:function(){var a={xmin:this.xmin,ymin:this.ymin,xmax:this.xmax,ymax:this.ymax},b=this.spatialReference;b&&(a.spatialReference=b.toJson());return a}});m.prototype=t.prototype;t.simpleConstructor=m;t.defaultProps=w;g("extend-esri")&&(b.setObject("geometry.Extent",t,h),h.geometry.defaultExtent=
w);return t})},"esri/geometry/webMercatorUtils":function(){define("dojo/_base/array dojo/_base/lang dojo/has ../kernel ../SpatialReference ./Point".split(" "),function(q,n,b,g,h,p){function l(b,a,d,e){if("point"===b.type){var c=a(b.x,b.y,e);return new b.constructor(c[0],c[1],new h(d))}if("extent"===b.type){var c=a(b.xmin,b.ymin,e),m=a(b.xmax,b.ymax,e);return new b.constructor(c[0],c[1],m[0],m[1],new h(d))}if("polyline"===b.type||"polygon"===b.type){var c="polyline"===b.type,k=[],f;q.forEach(c?b.paths:
b.rings,function(b){k.push(f=[]);q.forEach(b,function(b){f.push(a(b[0],b[1],e))})});return c?new b.constructor({paths:k,spatialReference:new h(d)}):new b.constructor({rings:k,spatialReference:new h(d)})}if("multipoint"===b.type){var r=[];q.forEach(b.points,function(b){r.push(a(b[0],b[1],e))});return new b.constructor({points:r,spatialReference:new h(d)})}}function f(b,a){b=b&&(null!=b.wkid?b:b.spatialReference);a=a&&(null!=a.wkid?a:a.spatialReference);return b&&a?a.equals(b)?!0:a._canProject(b):!1}
var e={canProject:f,project:function(b,a){var c=b&&b.spatialReference;a=a&&(null!=a.wkid?a:a.spatialReference);c&&a?c.equals(a)?b=new b.constructor(b.toJson()):f(c,a)?a.isWebMercator()?b=l(b,p.lngLatToXY,{wkid:102100}):4326===a.wkid&&(b=l(b,p.xyToLngLat,{wkid:4326})):b=null:b=null;return b},lngLatToXY:p.lngLatToXY,xyToLngLat:p.xyToLngLat,metersPerDegree:p.metersPerDegree,geographicToWebMercator:function(b){return l(b,p.lngLatToXY,{wkid:102100})},webMercatorToGeographic:function(b,a){return l(b,p.xyToLngLat,
{wkid:4326},a)}};b("extend-esri")&&n.mixin(n.getObject("geometry",!0,g),e);return e})},"esri/geometry/mathUtils":function(){define(["dojo/_base/lang","dojo/has","../kernel","./Point"],function(q,n,b,g){function h(b,c,a){return b instanceof g?new g(b.x+a*(c.x-b.x),b.y+a*(c.y-b.y)):[b[0]+a*(c[0]-b[0]),b[1]+a*(c[1]-b[1])]}function p(b,c){return 1E-8>Math.abs(b-c)}function l(b,c,a,d){var e,f=p(b[0],c[0])?1E10:(b[1]-c[1])/(b[0]-c[0]),l=p(a[0],d[0])?1E10:(a[1]-d[1])/(a[0]-d[0]),k=b[1]-f*b[0],g=a[1]-l*a[0];
if(p(f,l)){if(p(k,g)){if(p(b[0],c[0]))if(Math.min(b[1],c[1])<Math.max(a[1],d[1])||Math.max(b[1],c[1])>Math.min(a[1],d[1]))b=(b[1]+c[1]+a[1]+d[1]-Math.min(b[1],c[1],a[1],d[1])-Math.max(b[1],c[1],a[1],d[1]))/2,e=(b-k)/f;else return null;else if(Math.min(b[0],c[0])<Math.max(a[0],d[0])||Math.max(b[0],c[0])>Math.min(a[0],d[0]))e=(b[0]+c[0]+a[0]+d[0]-Math.min(b[0],c[0],a[0],d[0])-Math.max(b[0],c[0],a[0],d[0]))/2,b=f*e+k;else return null;return[e,b]}return null}p(f,1E10)?(e=b[0],b=l*e+g):p(l,1E10)?(e=a[0],
b=f*e+k):(e=-(k-g)/(f-l),b=b[1]===c[1]?b[1]:a[1]===d[1]?a[1]:f*e+k);return[e,b]}var f={getLength:function(b,c){var a=c.x-b.x;b=c.y-b.y;return Math.sqrt(a*a+b*b)},_getLength:function(b,c){var a=c[0]-b[0];b=c[1]-b[1];return Math.sqrt(a*a+b*b)},getPointOnLine:h,getMidpoint:function(b,c){return h(b,c,.5)},_equals:p,_getLineIntersection:l,getLineIntersection:function(b,c,a,d,m){(b=l([b.x,b.y],[c.x,c.y],[a.x,a.y],[d.x,d.y]))&&(b=new g(b[0],b[1],m));return b},_getLineIntersection2:function(b,c){var a=b[0],
d=b[1],e=c[0],f=c[1];c=a[0];a=a[1];b=d[0];var d=d[1],l=e[0],k=e[1],e=f[0]-l,l=c-l,g=b-c,f=f[1]-k,k=a-k,r=d-a,h=f*g-e*r;if(0===h)return!1;e=(e*k-f*l)/h;l=(g*k-r*l)/h;return 0<=e&&1>=e&&0<=l&&1>=l?[c+e*(b-c),a+e*(d-a)]:!1},_pointLineDistance:function(b,c){var a=c[0],d=c[1];c=a[0];var e=a[1],a=b[0];b=b[1];var f=d[0]-c,l=d[1]-e,k=a-c,g=b-e,d=Math.sqrt,r=Math.pow,h=d(r(f,2)+r(l,2)),k=(k*f+g*l)/(h*h),e=e+k*l;return d(r(a-(c+k*f),2)+r(b-e,2))}};n("extend-esri")&&q.mixin(q.getObject("geometry",!0,b),f);return f})},
"esri/urlUtils":function(){define("dojo/_base/lang dojo/_base/array dojo/_base/url dojo/global dojo/io-query ./kernel ./lang ./config ./sniff dojo/i18n!./nls/jsapi".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a={},d=f.defaults.io,m=/^[a-z][a-z0-9\+\-\.]*:/i,w=/^\s*http:/i,t=/^\s*https:/i,k=/:\d+$/,u=/^https?:\/\/[^/]+\.arcgis.com\/sharing(\/|$)/i;a.isHTTP=function(a){var b=g.location.protocol;return null==a?"http:"===b||"https:"===b:a?"https:"===b:"http:"===b};a.getProtocolForWebResource=function(b){return a.isHTTP()?
g.location.protocol:b?"https:":"http:"};a.urlToObject=function(a){var c={},d=new b(a),e=a.indexOf("?");null===d.query?c={path:a,query:null}:(c.path=a.substring(0,e),c.query=h.queryToObject(d.query));d.fragment&&(c.hash=d.fragment,null===d.query&&(c.path=c.path.substring(0,c.path.length-(d.fragment.length+1))));return c};a.getProxyUrl=function(b,e){var k=q.isString(b)?0===q.trim(b).toLowerCase().indexOf("https:"):b,r=d.proxyUrl,m,f=c.io.proxyNotSet;q.isString(b)&&(b=a.getProxyRule(b))&&(r=b.proxyUrl);
if(!r)throw console.log(f),Error(f);k&&!1!==e&&0!==g.location.href.toLowerCase().indexOf("https:")&&(e=r,0!==e.toLowerCase().indexOf("http")&&(e=a.getAbsoluteUrl(e)),e=e.replace(/^http:/i,"https:"),a.canUseXhr(e)&&(r=e,m=1));r=a.urlToObject(r);r._xo=m;return r};a.addProxy=function(b){var c=a.getProxyRule(b),e;c?e=a.urlToObject(c.proxyUrl):d.alwaysUseProxy&&(e=a.getProxyUrl());e&&(c=a.urlToObject(b),b=e.path+"?"+c.path,(e=h.objectToQuery(q.mixin(e.query||{},c.query)))&&(b+="?"+e));return b};a.addProxyRule=
function(b){var c=b.urlPrefix=a.urlToObject(b.urlPrefix).path.replace(/([^\/])$/,"$1/").replace(/^https?:\/\//ig,"").toLowerCase(),e=d.proxyRules,k,r=e.length,m,f=r;for(k=0;k<r;k++)if(m=e[k].urlPrefix,0===c.indexOf(m)){if(c.length===m)return-1;f=k;break}else 0===m.indexOf(c)&&(f=k+1);e.splice(f,0,b);return f};a.getProxyRule=function(b){var c=d.proxyRules,e=c.length,k=a.urlToObject(b).path.replace(/([^\/])$/,"$1/").replace(/^https?:\/\//ig,"").toLowerCase(),r;for(b=0;b<e;b++)if(0===k.indexOf(c[b].urlPrefix)){r=
c[b];break}return r};a.hasSameOrigin=function(a,c,d){a=a.toLowerCase();c=c.toLowerCase();var e=g.location.href.toLowerCase();a=0===a.indexOf("http")?new b(a):e=new b(e);c=0===c.indexOf("http")?new b(c):q.isString(e)?new b(e):e;return(d||a.scheme===c.scheme)&&a.host===c.host&&a.port===c.port};a.canUseXhr=function(b,c){var k=e("esri-phonegap")?!0:!1,r=a.hasSameOrigin,m=d.corsEnabledServers,f,l=-1;!k&&e("esri-cors")&&m&&m.length&&(k=n.some(m,function(a,c){a=!a||"object"!==typeof a||a instanceof RegExp?
a:a.host;if(a instanceof RegExp){if(a.test(b))return l=c,!0}else if(a&&(f=0!==a.trim().toLowerCase().indexOf("http"),r(b,f?"http://"+a:a)||f&&r(b,"https://"+a)))return l=c,!0;return!1}));return c?l:k};a.getAbsoluteUrl=function(b){var c=a.getProtocolForWebResource();return q.isString(b)&&!m.test(b)?0===b.indexOf("//")?c+b:0===b.indexOf("/")?c+"//"+g.location.host+b:p._appBaseUrl+b:b};a.fixUrl=function(b){b=q.trim(b);b=a.getAbsoluteUrl(b);b=a.normalizeSlashes(b);b=b.replace(/^(https?:\/\/)(arcgis\.com)/i,
"$1www.$2");b=a.downgradeToHTTP(b);return b=a.upgradeToHTTPS(b)};a.normalize=function(b){return a.fixUrl(b)};a.normalizeSlashes=function(a){if(/^https?:\/\//i.test(a)){var b,c,d=a.indexOf("?");-1<d?(b=a.slice(0,d),c=a.slice(d+1)):b=a;a=b.replace(/\/{2,}/g,"/");a=a.replace("/","//");c&&(a+="?"+c)}return a};a.downgradeToHTTP=function(b){return a.isHTTP(!1)&&t.test(b)&&a.hasSameOrigin(g.location.href,b,!0)&&!a.canUseXhr(b)?b.replace(t,"http:"):b};a.upgradeToHTTPS=function(b){var c=d.httpsDomains,e=a.isHTTP(!1),
m=a.isHTTP(!0);if(!w.test(b))return b;b=q.trim(b);var r=b.indexOf("/",7),r=-1===r?b:b.slice(0,r),r=r.toLowerCase().slice(7);if(k.test(r))if(l.endsWith(r,":80"))r=r.slice(0,-3),b=b.replace(":80","");else return b;if(e&&r===g.location.host&&(!u.test(b)||!a.canUseXhr(b)))return b;e=!1;if(m&&r===g.location.host)e=!0;else if(c)for(var f=0;f<c.length;f++){var h=c[f];if(r===h||l.endsWith(r,"."+h)){e=!0;break}}e||!m||d.alwaysUseProxy||a.getProxyRule(b)||(e=!0);e&&(b=b.replace(w,"https:"));return b};e("extend-esri")&&
(q.mixin(p,a),p._getProxyUrl=a.getProxyUrl,p._getProxiedUrl=a.addProxy,p._hasSameOrigin=a.hasSameOrigin,p._canDoXOXHR=a.canUseXhr,p._getAbsoluteUrl=a.getAbsoluteUrl,p.fixUrl=a.fixUrl);return a})},"esri/PluginTarget":function(){define("require dojo/aspect dojo/_base/array dojo/_base/lang dojo/Deferred dojo/when".split(" "),function(q,n,b,g,h,p){function l(){n.after(this.constructor._meta,"ctor",this._pluginsHandler,!0);this._plugins={}}l.prototype={addPlugin:function(b,e){var c=this,a=this._plugins,
d=new h;try{q([b],function(m){b in a?d.resolve({id:a[b].declaredId||b.replace(/\//g,".")}):(a[b]=m,p(m.add(c,e),function(){var a={id:m.declaredId||b.replace(/\//g,".")};c.emit("plugin-add",a);d.resolve(a)},function(a){d.reject(a)}))})}catch(m){d.reject(m)}return d.promise},removePlugin:function(b){if(b in this._plugins){var e=this._plugins[b];e.remove(this);delete this._plugins[b];this.emit("plugin-remove",{id:e.declaredId||b.replace(/\//g,".")})}},_pluginsHandler:function(){var f=this;b.some(arguments,
function(b){if(b&&b.plugins&&b.plugins instanceof Array){b=b.plugins;var c,a,d;for(d=0;d<b.length;d++)c=b[d],a=c instanceof Object?c.id:c,f.addPlugin(a,c.options);return!0}})}};return l})},"esri/Color":function(){define(["dojo/_base/declare","dojo/_base/Color","dojo/has","./kernel"],function(q,n,b,g){q=q([n],{declaredClass:"esri.Color"});q.toJsonColor=function(b){return b&&[b.r,b.g,b.b,1<b.a?b.a:Math.round(255*b.a)]};q.toDojoColor=function(b){return b&&new n([b[0],b[1],b[2],b[3]/255])};var h,p="named blendColors fromRgb fromHex fromArray fromString".split(" ");
for(h=0;h<p.length;h++)q[p[h]]=n[p[h]];b("extend-esri")&&(g.Color=q);return q})},"esri/arcade/Dictionary":function(){define(["require","exports","./ImmutableArray","./languageUtils","../geometry/Geometry"],function(q,n,b,g,h){return function(){function p(b){this.attributes=null;this.plain=!1;this.immutable=!0;this.attributes=b instanceof p?b.attributes:void 0===b?{}:null===b?{}:b}p.prototype.field=function(b){var f=b.toLowerCase();b=this.attributes[b];if(void 0!==b)return b;for(var e in this.attributes)if(e.toLowerCase()===
f)return this.attributes[e];throw Error("Field not Found");};p.prototype.setField=function(b,f){if(this.immutable)throw Error("Dictionary is Immutable");var e=b.toLowerCase();if(void 0===this.attributes[b])for(var c in this.attributes)if(c.toLowerCase()===e){this.attributes[c]=f;return}this.attributes[b]=f};p.prototype.hasField=function(b){var f=b.toLowerCase();if(void 0!==this.attributes[b])return!0;for(var e in this.attributes)if(e.toLowerCase()===f)return!0;return!1};p.prototype.keys=function(){var b=
[],f;for(f in this.attributes)b.push(f);return b=b.sort()};p.prototype.castToText=function(){var l="",f;for(f in this.attributes){""!==l&&(l+=",");var e=this.attributes[f];null==e?l+=JSON.stringify(f)+":null":g.isBoolean(e)||g.isNumber(e)||g.isString(e)?l+=JSON.stringify(f)+":"+JSON.stringify(e):e instanceof h?l+=JSON.stringify(f)+":"+g.toStringExplicit(e):e instanceof b?l+=JSON.stringify(f)+":"+g.toStringExplicit(e):e instanceof Array?l+=JSON.stringify(f)+":"+g.toStringExplicit(e):e instanceof Date?
l+=JSON.stringify(f)+":"+JSON.stringify(e):null!==e&&"object"===typeof e&&void 0!==e.castToText&&(l+=JSON.stringify(f)+":"+e.castToText())}return"{"+l+"}"};return p}()})},"esri/arcade/ImmutableArray":function(){define(["require","exports"],function(q,n){return function(){function b(b){void 0===b&&(b=[]);this._elements=b}b.prototype.length=function(){return this._elements.length};b.prototype.get=function(b){return this._elements[b]};b.prototype.toArray=function(){for(var b=[],h=0;h<this.length();h++)b.push(this.get(h));
return b};return b}()})},"esri/arcade/languageUtils":function(){define("require exports dojo/number ../kernel ../moment ./FunctionWrapper ./ImmutableArray ./ImmutablePathArray ./ImmutablePointArray ../geometry/Extent ../geometry/Geometry ../geometry/Multipoint ../geometry/Point ../geometry/Polygon ../geometry/Polyline".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){function k(a,b,c){if(""===b||null===b||void 0===b||b===c||b===c)return a;do a=a.replace(b,c);while(-1!==a.indexOf(b));return a}function u(a){return a instanceof
U||a instanceof p||a instanceof O}function r(a){return"string"===typeof a||a instanceof String}function y(a){return"boolean"===typeof a}function v(a){return"number"===typeof a}function z(a){return a instanceof Array}function x(a){return a instanceof Date}function A(a,c){if(!1===isNaN(a)){if(void 0===c||null===c||""===c)return a.toString();c=k(c,"\u2030","");c=k(c,"\u00a4","");return b.format(a,{pattern:c})}return a.toString()}function B(a,b){a=h(a);return void 0===b||null===b||""===b?a.format():a.format(C(b))}
function C(a){return a.replace(/(LTS)|L|l/g,function(a){return"["+a+"]"})}function H(a,b,c){switch(c){case "\x3e":return a>b;case "\x3c":return a<b;case "\x3e\x3d":return a>=b;case "\x3c\x3d":return a<=b}return!1}function E(a,b){if(a===b||null===a&&b===n.voidOperation||null===b&&a===n.voidOperation)return!0;if(x(a)&&x(b))return a.getTime()===b.getTime();if(a instanceof f||a instanceof e)return a.equalityTest(b);if(a instanceof m&&b instanceof m){var c=void 0,d=void 0;n.isVersion4?(c=a.cache._arcadeCacheId,
d=b.cache._arcadeCacheId):(c=a.getCacheValue("_arcadeCacheId"),d=b.getCacheValue("_arcadeCacheId"));if(void 0!==c&&null!==c)return c===d}return void 0!==a&&void 0!==b&&null!==a&&null!==b&&"object"===typeof a&&"object"===typeof b&&(a._arcadeCacheId===b._arcadeCacheId&&void 0!==a._arcadeCacheId&&null!==a._arcadeCacheId||a._underlyingGraphic===b._underlyingGraphic&&void 0!==a._underlyingGraphic&&null!==a._underlyingGraphic)?!0:!1}function F(b,c){if(r(b))return b;if(null===b)return"";if(v(b))return A(b,
c);if(y(b))return b.toString();if(x(b))return B(b,c);if(b instanceof a)return JSON.stringify(b.toJson());if(z(b)){c=[];for(var d=0;d<b.length;d++)c[d]=X(b[d]);return"["+c.join(",")+"]"}if(b instanceof l){c=[];for(d=0;d<b.length();d++)c[d]=X(b.get(d));return"["+c.join(",")+"]"}return null!==b&&"object"===typeof b&&void 0!==b.castToText?b.castToText():u(b)?"object, Function":""}function I(b,d){if(r(b))return b;if(null===b)return"";if(v(b))return A(b,d);if(y(b))return b.toString();if(x(b))return B(b,
d);if(b instanceof a)return b instanceof c?'{"xmin":'+b.xmin.toString()+',"ymin":'+b.ymin.toString()+","+(b.hasZ?'"zmin":'+b.zmin.toString()+",":"")+(b.hasM?'"mmin":'+b.mmin.toString()+",":"")+'"xmax":'+b.xmax.toString()+',"ymax":'+b.ymax.toString()+","+(b.hasZ?'"zmax":'+b.zmax.toString()+",":"")+(b.hasM?'"mmax":'+b.mmax.toString()+",":"")+'"spatialReference":'+Q(b.spatialReference)+"}":Q(b.toJson(),function(a,b){return a.key===b.key?0:"spatialReference"===a.key?1:"spatialReference"===b.key||a.key<
b.key?-1:a.key>b.key?1:0});if(z(b)){d=[];for(var e=0;e<b.length;e++)d[e]=X(b[e]);return"["+d.join(",")+"]"}if(b instanceof l){d=[];for(e=0;e<b.length();e++)d[e]=X(b.get(e));return"["+d.join(",")+"]"}return null!==b&&"object"===typeof b&&void 0!==b.castToText?b.castToText():u(b)?"object, Function":""}function X(b){if(null!==b){if(y(b)||v(b)||r(b))return JSON.stringify(b);if(b instanceof a||b instanceof l||b instanceof Array)return I(b);if(b instanceof Date)return JSON.stringify(B(b,""));if(null!==
b&&"object"===typeof b&&void 0!==b.castToText)return b.castToText()}return"null"}function N(a,c){return v(a)?a:null===a||""===a?0:x(a)?NaN:y(a)?a?1:0:z(a)||""===a||void 0===a?NaN:void 0!==c&&r(a)?(c=k(c,"\u2030",""),c=k(c,"\u00a4",""),b.parse(a,{pattern:c})):a===n.voidOperation?0:Number(a)}function G(a,b){var c;b.fields.some(function(b){b.name===a&&(c=b.domain);return!!c});return c}function Q(a,b){b||(b={});"function"===typeof b&&(b={cmp:b});var c="boolean"===typeof b.cycles?b.cycles:!1,d=b.cmp&&
function(a){return function(b){return function(c,d){return a({key:c,value:b[c]},{key:d,value:b[d]})}}}(b.cmp),e=[];return function ea(a){a&&a.toJson&&"function"===typeof a.toJson&&(a=a.toJson());if(void 0!==a){if("number"===typeof a)return isFinite(a)?""+a:"null";if("object"!==typeof a)return JSON.stringify(a);var b,k;if(Array.isArray(a)){k="[";for(b=0;b<a.length;b++)b&&(k+=","),k+=ea(a[b])||"null";return k+"]"}if(null===a)return"null";if(-1!==e.indexOf(a)){if(c)return JSON.stringify("__cycle__");
throw new TypeError("Converting circular structure to JSON");}var m=e.push(a)-1,r=Object.keys(a).sort(d&&d(a));k="";for(b=0;b<r.length;b++){var f=r[b],g=ea(a[f]);g&&(k&&(k+=","),k+=JSON.stringify(f)+":"+g)}e.splice(m,1);return"{"+k+"}"}}(a)}Object.defineProperty(n,"__esModule",{value:!0});q=function(){return function(a){this.value=a}}();var M=function(){return function(a){this.value=a}}(),U=function(){return function(a){this.fn=a}}(),O=function(){return function(a){this.fn=a}}();n.NativeFunction=
U;n.ImplicitResult=M;n.ReturnResult=q;n.SizzleFunction=O;n.isVersion4=0===g.version.indexOf("4.");n.voidOperation={type:"VOID"};n.breakResult={type:"BREAK"};n.continueResult={type:"CONTINUE"};n.multiReplace=k;n.isFunctionParameter=u;n.isSimpleType=function(a){return r(a)||v(a)||x(a)||y(a)||null===a||a===n.voidOperation||"number"===typeof a?!0:!1};n.defaultUndefined=function(a,b){return void 0===a?b:a};n.isString=r;n.isBoolean=y;n.isNumber=v;n.isArray=z;n.isFeatureCursor=function(a){return a&&void 0!==
a.isFeatureCursor};n.isImmutableArray=function(a){return a instanceof l};n.isDate=x;n.pcCheck=function(a,b,c){if(a.length<b||a.length>c)throw Error("Function called with wrong number of Parameters");};n.generateUUID=function(){var a=(new Date).getTime();return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(b){var c=(a+16*Math.random())%16|0;a=Math.floor(a/16);return("x"===b?c:c&3|8).toString(16)})};n.formatNumber=A;n.formatDate=B;n.standardiseDateFormat=C;n.greaterThanLessThan=function(a,
b,c){if(null===a){if(null===b||b===n.voidOperation)return H(null,null,c);if(v(b))return H(0,b,c);if(r(b)||y(b))return H(0,N(b),c);if(x(b))return H(0,b.getTime(),c)}if(a===n.voidOperation){if(null===b||b===n.voidOperation)return H(null,null,c);if(v(b))return H(0,b,c);if(r(b)||y(b))return H(0,N(b),c);if(x(b))return H(0,b.getTime(),c)}else if(v(a)){if(v(b))return H(a,b,c);if(y(b))return H(a,N(b),c);if(null===b||b===n.voidOperation)return H(a,0,c);if(r(b))return H(a,N(b),c);if(x(b))return H(a,b.getTime(),
c)}else if(r(a)){if(r(b))return H(F(a),F(b),c);if(x(b))return H(N(a),b.getTime(),c);if(v(b))return H(N(a),b,c);if(null===b||b===n.voidOperation)return H(N(a),0,c);if(y(b))return H(N(a),N(b),c)}else if(x(a)){if(x(b))return H(a,b,c);if(null===b||b===n.voidOperation)return H(a.getTime(),0,c);if(v(b))return H(a.getTime(),b,c);if(y(b)||r(b))return H(a.getTime(),N(b),c)}else if(y(a)){if(y(b))return H(a,b,c);if(v(b))return H(N(a),N(b),c);if(x(b))return H(N(a),b.getTime(),c);if(null===b||b===n.voidOperation)return H(N(a),
0,c);if(r(b))return H(N(a),N(b),c)}return!E(a,b)||"\x3c\x3d"!==c&&"\x3e\x3d"!==c?!1:!0};n.equalityTest=E;n.toString=F;n.toNumberArray=function(a){var b=[];if(!1===z(a))return null;if(a instanceof l){for(var c=0;c<a.length();c++)b[c]=N(a.get(c));return b}for(c=0;c<a.length;c++)b[c]=N(a[c]);return b};n.toStringExplicit=I;n.toNumber=N;n.toDate=function(a,b){return x(a)?a:r(a)&&(a=h(a,[void 0===b||null===b||""===b?h.ISO_8601:b]),a.isValid())?a.toDate():null};n.toDateM=function(a,b){return x(a)?h(a):r(a)&&
(a=h(a,[void 0===b||null===b||""===b?h.ISO_8601:b]),a.isValid())?a:null};n.toBoolean=function(a){if(y(a))return a;if(r(a)){if(a=a.toLowerCase(),"true"===a)return!0}else if(v(a))return 0===a||isNaN(a)?!1:!0;return!1};n.fixSpatialReference=function(a,b){if(null===a||void 0===a)return null;if(null===a.spatialReference||void 0===a.spatialReference)a.spatialReference=b;return a};n.fixNullGeometry=function(a){return null===a?null:a instanceof m?"NaN"===a.x||null===a.x||isNaN(a.x)?null:a:a instanceof w?
0===a.rings.length?null:a:a instanceof t?0===a.paths.length?null:a:a instanceof d?0===a.points.length?null:a:a instanceof c?"NaN"===a.xmin||null===a.xmin||isNaN(a.xmin)?null:a:null};n.getDomainValue=function(a,b){if(!a||!a.domain)return null;var c=null;b="string"===a.field.type||"esriFieldTypeString"===a.field.type?F(b):N(b);for(var d=0;d<a.domain.codedValues.length;d++){var e=a.domain.codedValues[d];e.code===b&&(c=e)}return null===c?null:c.name};n.getDomainCode=function(a,b){if(!a||!a.domain)return null;
var c=null;b=F(b);for(var d=0;d<a.domain.codedValues.length;d++){var e=a.domain.codedValues[d];e.name===b&&(c=e)}return null===c?null:c.code};n.getDomain=function(a,b,c,d){void 0===c&&(c=null);if(!b||!b.fields)return null;for(var e=null,k=0;k<b.fields.length;k++){var m=b.fields[k];m.name.toLowerCase()===a.toString().toLowerCase()&&(e=m)}if(null===e)return null;var r,f;d||(d=c&&b.typeIdField&&c._field(b.typeIdField));null!=d&&b.types.some(function(a){return a.id===d?((r=a.domains&&a.domains[e.name])&&
"inherited"===r.type&&(r=G(e.name,b),f=!0),!0):!1});f||r||(r=G(a,b));return{field:e,domain:r}};n.stableStringify=Q;n.autoCastFeatureToGeometry=function(a){if(null===a)return null;for(var b=[],c=0;c<a.length;c++){var d=a[c];d&&d.declaredClass&&"esri.arcade.Feature"===d.declaredClass?b.push(d.geometry()):b.push(d)}return b}})},"esri/moment":function(){define(["require","exports","./plugins/moment!"],function(q,n,b){return b})},"esri/plugins/moment":function(){define(["require","exports","dojo/_base/kernel",
"moment/moment"],function(q,n,b,g){Object.defineProperty(n,"__esModule",{value:!0});var h={ar:1,"ar-dz":1,"ar-kw":1,"ar-ly":1,"ar-ma":1,"ar-sa":1,"ar-tn":1,bs:1,ca:1,cs:1,da:1,de:1,"de-at":1,"de-ch":1,el:1,"en-au":1,"en-ca":1,"en-gb":1,"en-ie":1,"en-il":1,"en-nz":1,es:1,"es-do":1,"es-us":1,et:1,fi:1,fr:1,"fr-ca":1,"fr-ch":1,he:1,hi:1,hr:1,hu:1,id:1,it:1,ja:1,ko:1,lt:1,lv:1,nb:1,nl:1,"nl-be":1,pl:1,pt:1,"pt-br":1,ro:1,ru:1,sl:1,sr:1,"sr-cyrl":1,sv:1,th:1,tr:1,vi:1,"zh-cn":1,"zh-hk":1,"zh-tw":1};n.load=
function(p,l,f){p=b.locale;var e=p in h;if(!e){var c=p.split("-");1<c.length&&c[0]in h&&(p=c[0],e=!0)}e?l(["moment/locale/"+p],function(){f(g)}):f(g)}})},"moment/moment":function(){(function(q,n){"object"===typeof exports&&"undefined"!==typeof module?module.exports=n():"function"===typeof define&&define.amd?define(n):q.moment=n()})(this,function(){function q(){return Wb.apply(null,arguments)}function n(a){return a instanceof Array||"[object Array]"===Object.prototype.toString.call(a)}function b(a){return null!=
a&&"[object Object]"===Object.prototype.toString.call(a)}function g(a){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(a).length;for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}function h(a){return void 0===a}function p(a){return"number"===typeof a||"[object Number]"===Object.prototype.toString.call(a)}function l(a){return a instanceof Date||"[object Date]"===Object.prototype.toString.call(a)}function f(a,b){var c=[],d;for(d=0;d<a.length;++d)c.push(b(a[d],d));return c}
function e(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function c(a,b){for(var c in b)e(b,c)&&(a[c]=b[c]);e(b,"toString")&&(a.toString=b.toString);e(b,"valueOf")&&(a.valueOf=b.valueOf);return a}function a(a,b,c,d){return hb(a,b,c,d,!0).utc()}function d(a){null==a._pf&&(a._pf={empty:!1,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:!1,invalidMonth:null,invalidFormat:!1,userInvalidated:!1,iso:!1,parsedDateParts:[],meridiem:null,rfc2822:!1,weekdayMismatch:!1});return a._pf}
function m(a){if(null==a._isValid){var b=d(a),c=Xb.call(b.parsedDateParts,function(a){return null!=a}),c=!isNaN(a._d.getTime())&&0>b.overflow&&!b.empty&&!b.invalidMonth&&!b.invalidWeekday&&!b.weekdayMismatch&&!b.nullInput&&!b.invalidFormat&&!b.userInvalidated&&(!b.meridiem||b.meridiem&&c);a._strict&&(c=c&&0===b.charsLeftOver&&0===b.unusedTokens.length&&void 0===b.bigHour);if(null!=Object.isFrozen&&Object.isFrozen(a))return c;a._isValid=c}return a._isValid}function w(b){var e=a(NaN);null!=b?c(d(e),
b):d(e).userInvalidated=!0;return e}function t(a,b){var c,e,k;h(b._isAMomentObject)||(a._isAMomentObject=b._isAMomentObject);h(b._i)||(a._i=b._i);h(b._f)||(a._f=b._f);h(b._l)||(a._l=b._l);h(b._strict)||(a._strict=b._strict);h(b._tzm)||(a._tzm=b._tzm);h(b._isUTC)||(a._isUTC=b._isUTC);h(b._offset)||(a._offset=b._offset);h(b._pf)||(a._pf=d(b));h(b._locale)||(a._locale=b._locale);if(0<Nb.length)for(c=0;c<Nb.length;c++)e=Nb[c],k=b[e],h(k)||(a[e]=k);return a}function k(a){t(this,a);this._d=new Date(null!=
a._d?a._d.getTime():NaN);this.isValid()||(this._d=new Date(NaN));!1===Ob&&(Ob=!0,q.updateOffset(this),Ob=!1)}function u(a){return a instanceof k||null!=a&&null!=a._isAMomentObject}function r(a){return 0>a?Math.ceil(a)||0:Math.floor(a)}function y(a){a=+a;var b=0;0!==a&&isFinite(a)&&(b=r(a));return b}function v(a,b,c){var d=Math.min(a.length,b.length),e=Math.abs(a.length-b.length),k=0,m;for(m=0;m<d;m++)(c&&a[m]!==b[m]||!c&&y(a[m])!==y(b[m]))&&k++;return k+e}function z(a){!1===q.suppressDeprecationWarnings&&
"undefined"!==typeof console&&console.warn&&console.warn("Deprecation warning: "+a)}function x(a,b){var d=!0;return c(function(){null!=q.deprecationHandler&&q.deprecationHandler(null,a);if(d){for(var c=[],e,k=0;k<arguments.length;k++){e="";if("object"===typeof arguments[k]){e+="\n["+k+"] ";for(var m in arguments[0])e+=m+": "+arguments[0][m]+", ";e=e.slice(0,-2)}else e=arguments[k];c.push(e)}z(a+"\nArguments: "+Array.prototype.slice.call(c).join("")+"\n"+Error().stack);d=!1}return b.apply(this,arguments)},
b)}function A(a,b){null!=q.deprecationHandler&&q.deprecationHandler(a,b);Yb[a]||(z(b),Yb[a]=!0)}function B(a){return a instanceof Function||"[object Function]"===Object.prototype.toString.call(a)}function C(a,d){var k=c({},a),m;for(m in d)e(d,m)&&(b(a[m])&&b(d[m])?(k[m]={},c(k[m],a[m]),c(k[m],d[m])):null!=d[m]?k[m]=d[m]:delete k[m]);for(m in a)e(a,m)&&!e(d,m)&&b(a[m])&&(k[m]=c({},k[m]));return k}function H(a){null!=a&&this.set(a)}function E(a,b){var c=a.toLowerCase();xb[c]=xb[c+"s"]=xb[b]=a}function F(a){return"string"===
typeof a?xb[a]||xb[a.toLowerCase()]:void 0}function I(a){var b={},c,d;for(d in a)e(a,d)&&(c=F(d))&&(b[c]=a[d]);return b}function X(a){var b=[],c;for(c in a)b.push({unit:c,priority:Ja[c]});b.sort(function(a,b){return a.priority-b.priority});return b}function N(a,b,c){var d=""+Math.abs(a);return(0<=a?c?"+":"":"-")+Math.pow(10,Math.max(0,b-d.length)).toString().substr(1)+d}function G(a,b,c,d){var e=d;"string"===typeof d&&(e=function(){return this[d]()});a&&(ob[a]=e);b&&(ob[b[0]]=function(){return N(e.apply(this,
arguments),b[1],b[2])});c&&(ob[c]=function(){return this.localeData().ordinal(e.apply(this,arguments),a)})}function Q(a){return a.match(/\[[\s\S]/)?a.replace(/^\[|\]$/g,""):a.replace(/\\/g,"")}function M(a){var b=a.match(Zb),c,d;c=0;for(d=b.length;c<d;c++)b[c]=ob[b[c]]?ob[b[c]]:Q(b[c]);return function(c){var e="",k;for(k=0;k<d;k++)e+=B(b[k])?b[k].call(c,a):b[k];return e}}function U(a,b){if(!a.isValid())return a.localeData().invalidDate();b=O(b,a.localeData());Pb[b]=Pb[b]||M(b);return Pb[b](a)}function O(a,
b){function c(a){return b.longDateFormat(a)||a}var d=5;for(Eb.lastIndex=0;0<=d&&Eb.test(a);)a=a.replace(Eb,c),Eb.lastIndex=0,--d;return a}function L(a,b,c){Qb[a]=B(b)?b:function(a,d){return a&&c?c:b}}function ba(a,b){return e(Qb,a)?Qb[a](b._strict,b._locale):new RegExp(P(a))}function P(a){return V(a.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,function(a,b,c,d,e){return b||c||d||e}))}function V(a){return a.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$\x26")}function Y(a,b){var c,d=b;"string"===
typeof a&&(a=[a]);p(b)&&(d=function(a,c){c[b]=y(a)});for(c=0;c<a.length;c++)Rb[a[c]]=d}function oa(a,b){Y(a,function(a,c,d,e){d._w=d._w||{};b(a,d._w,d,e)})}function ea(a){return 0===a%4&&0!==a%100||0===a%400}function ca(a,b){return function(c){return null!=c?(ha(this,a,c),q.updateOffset(this,b),this):ga(this,a)}}function ga(a,b){return a.isValid()?a._d["get"+(a._isUTC?"UTC":"")+b]():NaN}function ha(a,b,c){if(a.isValid()&&!isNaN(c))if("FullYear"===b&&ea(a.year())&&1===a.month()&&29===a.date())a._d["set"+
(a._isUTC?"UTC":"")+b](c,a.month(),pa(c,a.month()));else a._d["set"+(a._isUTC?"UTC":"")+b](c)}function pa(a,b){if(isNaN(a)||isNaN(b))return NaN;var c=(b%12+12)%12;return 1===c?ea(a+(b-c)/12)?29:28:31-c%7%2}function ja(a,b){var c;if(!a.isValid())return a;if("string"===typeof b)if(/^\d+$/.test(b))b=y(b);else if(b=a.localeData().monthsParse(b),!p(b))return a;c=Math.min(a.date(),pa(a.year(),b));a._d["set"+(a._isUTC?"UTC":"")+"Month"](b,c);return a}function ya(a){return null!=a?(ja(this,a),q.updateOffset(this,
!0),this):ga(this,"Month")}function sa(){function b(a,b){return b.length-a.length}var c=[],d=[],e=[],k,m;for(k=0;12>k;k++)m=a([2E3,k]),c.push(this.monthsShort(m,"")),d.push(this.months(m,"")),e.push(this.months(m,"")),e.push(this.monthsShort(m,""));c.sort(b);d.sort(b);e.sort(b);for(k=0;12>k;k++)c[k]=V(c[k]),d[k]=V(d[k]);for(k=0;24>k;k++)e[k]=V(e[k]);this._monthsShortRegex=this._monthsRegex=new RegExp("^("+e.join("|")+")","i");this._monthsStrictRegex=new RegExp("^("+d.join("|")+")","i");this._monthsShortStrictRegex=
new RegExp("^("+c.join("|")+")","i")}function wa(a,b,c,d,e,k,m){b=new Date(a,b,c,d,e,k,m);100>a&&0<=a&&isFinite(b.getFullYear())&&b.setFullYear(a);return b}function Ba(a){var b=new Date(Date.UTC.apply(null,arguments));100>a&&0<=a&&isFinite(b.getUTCFullYear())&&b.setUTCFullYear(a);return b}function Ca(a,b,c){c=7+b-c;return-((7+Ba(a,0,c).getUTCDay()-b)%7)+c-1}function ta(a,b,c,d,e){c=(7+c-d)%7;d=Ca(a,d,e);d=1+7*(b-1)+c+d;0>=d?(b=a-1,a=(ea(b)?366:365)+d):d>(ea(a)?366:365)?(b=a+1,a=d-(ea(a)?366:365)):
(b=a,a=d);return{year:b,dayOfYear:a}}function ra(a,b,c){var d=Ca(a.year(),b,c),d=Math.floor((a.dayOfYear()-d-1)/7)+1;1>d?(a=a.year()-1,b=d+va(a,b,c)):d>va(a.year(),b,c)?(b=d-va(a.year(),b,c),a=a.year()+1):(a=a.year(),b=d);return{week:b,year:a}}function va(a,b,c){var d=Ca(a,b,c);b=Ca(a+1,b,c);return((ea(a)?366:365)-d+b)/7}function Aa(b,c,d){var e,k;b=b.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],e=0;7>e;++e)k=a([2E3,1]).day(e),
this._minWeekdaysParse[e]=this.weekdaysMin(k,"").toLocaleLowerCase(),this._shortWeekdaysParse[e]=this.weekdaysShort(k,"").toLocaleLowerCase(),this._weekdaysParse[e]=this.weekdays(k,"").toLocaleLowerCase();if(d)c="dddd"===c?Ga.call(this._weekdaysParse,b):"ddd"===c?Ga.call(this._shortWeekdaysParse,b):Ga.call(this._minWeekdaysParse,b);else if("dddd"===c){c=Ga.call(this._weekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._shortWeekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._minWeekdaysParse,b)}else if("ddd"===
c){c=Ga.call(this._shortWeekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._weekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._minWeekdaysParse,b)}else{c=Ga.call(this._minWeekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._weekdaysParse,b);if(-1!==c)return c;c=Ga.call(this._shortWeekdaysParse,b)}return-1!==c?c:null}function qa(){function b(a,b){return b.length-a.length}var c=[],d=[],e=[],k=[],m,r,f,g;for(m=0;7>m;m++)r=a([2E3,1]).day(m),f=this.weekdaysMin(r,""),g=this.weekdaysShort(r,""),r=this.weekdays(r,
""),c.push(f),d.push(g),e.push(r),k.push(f),k.push(g),k.push(r);c.sort(b);d.sort(b);e.sort(b);k.sort(b);for(m=0;7>m;m++)d[m]=V(d[m]),e[m]=V(e[m]),k[m]=V(k[m]);this._weekdaysMinRegex=this._weekdaysShortRegex=this._weekdaysRegex=new RegExp("^("+k.join("|")+")","i");this._weekdaysStrictRegex=new RegExp("^("+e.join("|")+")","i");this._weekdaysShortStrictRegex=new RegExp("^("+d.join("|")+")","i");this._weekdaysMinStrictRegex=new RegExp("^("+c.join("|")+")","i")}function S(){return this.hours()%12||12}
function ka(a,b){G(a,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),b)})}function Pa(a,b){return b._meridiemParse}function Ma(a){return a?a.toLowerCase().replace("_","-"):a}function Na(a){var b=null;if(!Ka[a]&&"undefined"!==typeof module&&module&&module.exports)try{b=yb._abbr,require("./locale/"+a),Da(b)}catch(Wc){}return Ka[a]}function Da(a,b){a&&((b=h(b)?Ea(a):Fa(a,b))?yb=b:"undefined"!==typeof console&&console.warn&&console.warn("Locale "+a+" not found. Did you forget to load it?"));
return yb._abbr}function Fa(a,b){if(null!==b){var c;c=$b;b.abbr=a;if(null!=Ka[a])A("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),c=Ka[a]._config;else if(null!=b.parentLocale)if(null!=Ka[b.parentLocale])c=Ka[b.parentLocale]._config;else if(c=Na(b.parentLocale),null!=c)c=c._config;else return zb[b.parentLocale]||
(zb[b.parentLocale]=[]),zb[b.parentLocale].push({name:a,config:b}),null;Ka[a]=new H(C(c,b));zb[a]&&zb[a].forEach(function(a){Fa(a.name,a.config)});Da(a);return Ka[a]}delete Ka[a];return null}function Ea(a){var b;a&&a._locale&&a._locale._abbr&&(a=a._locale._abbr);if(!a)return yb;if(!n(a)){if(b=Na(a))return b;a=[a]}a:{b=0;for(var c,d,e,k;b<a.length;){k=Ma(a[b]).split("-");c=k.length;for(d=(d=Ma(a[b+1]))?d.split("-"):null;0<c;){if(e=Na(k.slice(0,c).join("-"))){a=e;break a}if(d&&d.length>=c&&v(k,d,!0)>=
c-1)break;c--}b++}a=yb}return a}function Qa(a){var b;(b=a._a)&&-2===d(a).overflow&&(b=0>b[eb]||11<b[eb]?eb:1>b[$a]||b[$a]>pa(b[Wa],b[eb])?$a:0>b[La]||24<b[La]||24===b[La]&&(0!==b[Xa]||0!==b[fb]||0!==b[kb])?La:0>b[Xa]||59<b[Xa]?Xa:0>b[fb]||59<b[fb]?fb:0>b[kb]||999<b[kb]?kb:-1,d(a)._overflowDayOfYear&&(b<Wa||b>$a)&&(b=$a),d(a)._overflowWeeks&&-1===b&&(b=lc),d(a)._overflowWeekday&&-1===b&&(b=mc),d(a).overflow=b);return a}function Ha(a,b,c){return null!=a?a:null!=b?b:c}function Oa(a){var b,c=[],e;if(!a._d){e=
new Date(q.now());e=a._useUTC?[e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate()]:[e.getFullYear(),e.getMonth(),e.getDate()];if(a._w&&null==a._a[$a]&&null==a._a[eb]){var k,m,r,f,g,l;k=a._w;if(null!=k.GG||null!=k.W||null!=k.E){if(g=1,l=4,m=Ha(k.GG,a._a[Wa],ra(J(),1,4).year),r=Ha(k.W,1),f=Ha(k.E,1),1>f||7<f)b=!0}else if(g=a._locale._week.dow,l=a._locale._week.doy,r=ra(J(),g,l),m=Ha(k.gg,a._a[Wa],r.year),r=Ha(k.w,r.week),null!=k.d){if(f=k.d,0>f||6<f)b=!0}else if(null!=k.e){if(f=k.e+g,0>k.e||6<k.e)b=
!0}else f=g;1>r||r>va(m,g,l)?d(a)._overflowWeeks=!0:null!=b?d(a)._overflowWeekday=!0:(b=ta(m,r,f,g,l),a._a[Wa]=b.year,a._dayOfYear=b.dayOfYear)}if(null!=a._dayOfYear){b=Ha(a._a[Wa],e[Wa]);if(a._dayOfYear>(ea(b)?366:365)||0===a._dayOfYear)d(a)._overflowDayOfYear=!0;b=Ba(b,0,a._dayOfYear);a._a[eb]=b.getUTCMonth();a._a[$a]=b.getUTCDate()}for(b=0;3>b&&null==a._a[b];++b)a._a[b]=c[b]=e[b];for(;7>b;b++)a._a[b]=c[b]=null==a._a[b]?2===b?1:0:a._a[b];24===a._a[La]&&0===a._a[Xa]&&0===a._a[fb]&&0===a._a[kb]&&
(a._nextDay=!0,a._a[La]=0);a._d=(a._useUTC?Ba:wa).apply(null,c);c=a._useUTC?a._d.getUTCDay():a._d.getDay();null!=a._tzm&&a._d.setUTCMinutes(a._d.getUTCMinutes()-a._tzm);a._nextDay&&(a._a[La]=24);a._w&&"undefined"!==typeof a._w.d&&a._w.d!==c&&(d(a).weekdayMismatch=!0)}}function R(a){var b,c;b=a._i;var e=nc.exec(b)||oc.exec(b),k,m,r,f;if(e){d(a).iso=!0;b=0;for(c=Fb.length;b<c;b++)if(Fb[b][1].exec(e[1])){m=Fb[b][0];k=!1!==Fb[b][2];break}if(null==m)a._isValid=!1;else{if(e[3]){b=0;for(c=Sb.length;b<c;b++)if(Sb[b][1].exec(e[3])){r=
(e[2]||" ")+Sb[b][0];break}if(null==r){a._isValid=!1;return}}if(k||null==r){if(e[4])if(pc.exec(e[4]))f="Z";else{a._isValid=!1;return}a._f=m+(r||"")+(f||"");aa(a)}else a._isValid=!1}}else a._isValid=!1}function Ia(a){var b=qc.exec(a._i.replace(/\([^)]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim());if(b){var c=b[3],e=b[2],k=b[5],m=b[6],r=b[7],f=parseInt(b[4],10),c=[49>=f?2E3+f:999>=f?1900+f:f,ac.indexOf(c),parseInt(e,10),parseInt(k,10),parseInt(m,10)];r&&c.push(parseInt(r,10));a:{if(r=b[1])if(r=bc.indexOf(r),
e=(new Date(c[0],c[1],c[2])).getDay(),r!==e){d(a).weekdayMismatch=!0;r=a._isValid=!1;break a}r=!0}r&&(a._a=c,(r=b[8])?b=rc[r]:b[9]?b=0:(b=parseInt(b[10],10),r=b%100,b=(b-r)/100*60+r),a._tzm=b,a._d=Ba.apply(null,a._a),a._d.setUTCMinutes(a._d.getUTCMinutes()-a._tzm),d(a).rfc2822=!0)}else a._isValid=!1}function ua(a){var b=sc.exec(a._i);null!==b?a._d=new Date(+b[1]):(R(a),!1===a._isValid&&(delete a._isValid,Ia(a),!1===a._isValid&&(delete a._isValid,q.createFromInputFallback(a))))}function aa(a){if(a._f===
q.ISO_8601)R(a);else if(a._f===q.RFC_2822)Ia(a);else{a._a=[];d(a).empty=!0;var b=""+a._i,c,k,m,r,f,g=b.length,l=0;m=O(a._f,a._locale).match(Zb)||[];for(c=0;c<m.length;c++){r=m[c];if(k=(b.match(ba(r,a))||[])[0])f=b.substr(0,b.indexOf(k)),0<f.length&&d(a).unusedInput.push(f),b=b.slice(b.indexOf(k)+k.length),l+=k.length;if(ob[r]){if(k?d(a).empty=!1:d(a).unusedTokens.push(r),f=a,null!=k&&e(Rb,r))Rb[r](k,f._a,f,r)}else a._strict&&!k&&d(a).unusedTokens.push(r)}d(a).charsLeftOver=g-l;0<b.length&&d(a).unusedInput.push(b);
12>=a._a[La]&&!0===d(a).bigHour&&0<a._a[La]&&(d(a).bigHour=void 0);d(a).parsedDateParts=a._a.slice(0);d(a).meridiem=a._meridiem;b=a._a;c=La;g=a._locale;m=a._a[La];l=a._meridiem;null!=l&&(null!=g.meridiemHour?m=g.meridiemHour(m,l):null!=g.isPM&&((g=g.isPM(l))&&12>m&&(m+=12),g||12!==m||(m=0)));b[c]=m;Oa(a);Qa(a)}}function Sa(a){if(!a._d){var b=I(a._i);a._a=f([b.year,b.month,b.day||b.date,b.hour,b.minute,b.second,b.millisecond],function(a){return a&&parseInt(a,10)});Oa(a)}}function Ta(a){var b=a._i,
e=a._f;a._locale=a._locale||Ea(a._l);if(null===b||void 0===e&&""===b)return w({nullInput:!0});"string"===typeof b&&(a._i=b=a._locale.preparse(b));if(u(b))return new k(Qa(b));if(l(b))a._d=b;else if(n(e)){var r,f,g;if(0===a._f.length)d(a).invalidFormat=!0,a._d=new Date(NaN);else{for(b=0;b<a._f.length;b++)if(e=0,r=t({},a),null!=a._useUTC&&(r._useUTC=a._useUTC),r._f=a._f[b],aa(r),m(r)&&(e+=d(r).charsLeftOver,e+=10*d(r).unusedTokens.length,d(r).score=e,null==g||e<g))g=e,f=r;c(a,f||r)}}else e?aa(a):ia(a);
m(a)||(a._d=null);return a}function ia(a){var c=a._i;h(c)?a._d=new Date(q.now()):l(c)?a._d=new Date(c.valueOf()):"string"===typeof c?ua(a):n(c)?(a._a=f(c.slice(0),function(a){return parseInt(a,10)}),Oa(a)):b(c)?Sa(a):p(c)?a._d=new Date(c):q.createFromInputFallback(a)}function hb(a,c,d,e,m){var r={};if(!0===d||!1===d)e=d,d=void 0;if(b(a)&&g(a)||n(a)&&0===a.length)a=void 0;r._isAMomentObject=!0;r._useUTC=r._isUTC=m;r._l=d;r._i=a;r._f=c;r._strict=e;a=new k(Qa(Ta(r)));a._nextDay&&(a.add(1,"d"),a._nextDay=
void 0);return a}function J(a,b,c,d){return hb(a,b,c,d,!1)}function ma(a,b){var c,d;1===b.length&&n(b[0])&&(b=b[0]);if(!b.length)return J();c=b[0];for(d=1;d<b.length;++d)if(!b[d].isValid()||b[d][a](c))c=b[d];return c}function D(a){for(var b in a)if(-1===Ga.call(Ab,b)||null!=a[b]&&isNaN(a[b]))return!1;b=!1;for(var c=0;c<Ab.length;++c)if(a[Ab[c]]){if(b)return!1;parseFloat(a[Ab[c]])!==y(a[Ab[c]])&&(b=!0)}return!0}function da(a){a=I(a);var b=a.year||0,c=a.quarter||0,d=a.month||0,e=a.week||0,k=a.day||
0,m=a.hour||0,r=a.minute||0,f=a.second||0,g=a.millisecond||0;this._isValid=D(a);this._milliseconds=+g+1E3*f+6E4*r+36E5*m;this._days=+k+7*e;this._months=+d+3*c+12*b;this._data={};this._locale=Ea();this._bubble()}function fa(a){return a instanceof da}function la(a){return 0>a?-1*Math.round(-1*a):Math.round(a)}function W(a,b){G(a,0,0,function(){var a=this.utcOffset(),c="+";0>a&&(a=-a,c="-");return c+N(~~(a/60),2)+b+N(~~a%60,2)})}function Z(a,b){a=(b||"").match(a);if(null===a)return null;a=((a[a.length-
1]||[])+"").match(tc)||["-",0,0];b=+(60*a[1])+y(a[2]);return 0===b?0:"+"===a[0]?b:-b}function K(a,b){return b._isUTC?(b=b.clone(),a=(u(a)||l(a)?a.valueOf():J(a).valueOf())-b.valueOf(),b._d.setTime(b._d.valueOf()+a),q.updateOffset(b,!1),b):J(a).local()}function rb(){return this.isValid()?this._isUTC&&0===this._offset:!1}function Ra(a,b){var c=a,d=null;fa(a)?c={ms:a._milliseconds,d:a._days,M:a._months}:p(a)?(c={},b?c[b]=a:c.milliseconds=a):(d=uc.exec(a))?(c="-"===d[1]?-1:1,c={y:0,d:y(d[$a])*c,h:y(d[La])*
c,m:y(d[Xa])*c,s:y(d[fb])*c,ms:y(la(1E3*d[kb]))*c}):(d=vc.exec(a))?(c="-"===d[1]?-1:1,c={y:Ya(d[2],c),M:Ya(d[3],c),w:Ya(d[4],c),d:Ya(d[5],c),h:Ya(d[6],c),m:Ya(d[7],c),s:Ya(d[8],c)}):null==c?c={}:"object"===typeof c&&("from"in c||"to"in c)&&(d=J(c.from),c=J(c.to),d.isValid()&&c.isValid()?(c=K(c,d),d.isBefore(c)?c=sb(d,c):(c=sb(c,d),c.milliseconds=-c.milliseconds,c.months=-c.months),d=c):d={milliseconds:0,months:0},c={},c.ms=d.milliseconds,c.M=d.months);c=new da(c);fa(a)&&e(a,"_locale")&&(c._locale=
a._locale);return c}function Ya(a,b){a=a&&parseFloat(a.replace(",","."));return(isNaN(a)?0:a)*b}function sb(a,b){var c={milliseconds:0,months:0};c.months=b.month()-a.month()+12*(b.year()-a.year());a.clone().add(c.months,"M").isAfter(b)&&--c.months;c.milliseconds=+b-+a.clone().add(c.months,"M");return c}function Za(a,b){return function(c,d){var e;null===d||isNaN(+d)||(A(b,"moment()."+b+"(period, number) is deprecated. Please use moment()."+b+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),
e=c,c=d,d=e);c=Ra("string"===typeof c?+c:c,d);tb(this,c,a);return this}}function tb(a,b,c,d){var e=b._milliseconds,k=la(b._days);b=la(b._months);a.isValid()&&(d=null==d?!0:d,b&&ja(a,ga(a,"Month")+b*c),k&&ha(a,"Date",ga(a,"Date")+k*c),e&&a._d.setTime(a._d.valueOf()+e*c),d&&q.updateOffset(a,k||b))}function nb(a,b){var c=12*(b.year()-a.year())+(b.month()-a.month()),d=a.clone().add(c,"months");0>b-d?(a=a.clone().add(c-1,"months"),b=(b-d)/(d-a)):(a=a.clone().add(c+1,"months"),b=(b-d)/(a-d));return-(c+
b)||0}function ub(a){if(void 0===a)return this._locale._abbr;a=Ea(a);null!=a&&(this._locale=a);return this}function vb(){return this._locale}function cb(a,b){G(0,[a,a.length],0,b)}function wb(a,b,c,d,e){var k;if(null==a)return ra(this,d,e).year;k=va(a,d,e);b>k&&(b=k);a=ta(a,b,c,d,e);a=Ba(a.year,0,a.dayOfYear);this.year(a.getUTCFullYear());this.month(a.getUTCMonth());this.date(a.getUTCDate());return this}function db(a,b){b[kb]=y(1E3*("0."+a))}function Va(a){return a}function lb(b,c,d,e){var k=Ea();
c=a().set(e,c);return k[d](c,b)}function Bb(a,b,c){p(a)&&(b=a,a=void 0);a=a||"";if(null!=b)return lb(a,b,c,"month");var d=[];for(b=0;12>b;b++)d[b]=lb(a,b,c,"month");return d}function pb(a,b,c,d){"boolean"!==typeof a&&(c=b=a,a=!1);p(b)&&(c=b,b=void 0);b=b||"";var e=Ea();a=a?e._week.dow:0;if(null!=c)return lb(b,(c+a)%7,d,"day");e=[];for(c=0;7>c;c++)e[c]=lb(b,(c+a)%7,d,"day");return e}function Cb(a,b,c,d){b=Ra(b,c);a._milliseconds+=d*b._milliseconds;a._days+=d*b._days;a._months+=d*b._months;return a._bubble()}
function Gb(a){return 0>a?Math.floor(a):Math.ceil(a)}function ab(a){return function(){return this.as(a)}}function mb(a){return function(){return this.isValid()?this._data[a]:NaN}}function wc(a,b,c,d,e){return e.relativeTime(b||1,!!c,a,d)}function qb(a){return(0<a)-(0>a)||+a}function Hb(){if(!this.isValid())return this.localeData().invalidDate();var a=Tb(this._milliseconds)/1E3,b=Tb(this._days),c=Tb(this._months),d,e;d=r(a/60);e=r(d/60);a%=60;d%=60;var k=r(c/12),c=c%12,a=a?a.toFixed(3).replace(/\.?0+$/,
""):"",m=this.asSeconds();if(!m)return"P0D";var f=0>m?"-":"",g=qb(this._months)!==qb(m)?"-":"",l=qb(this._days)!==qb(m)?"-":"",m=qb(this._milliseconds)!==qb(m)?"-":"";return f+"P"+(k?g+k+"Y":"")+(c?g+c+"M":"")+(b?l+b+"D":"")+(e||d||a?"T":"")+(e?m+e+"H":"")+(d?m+d+"M":"")+(a?m+a+"S":"")}var Wb,Xb;Xb=Array.prototype.some?Array.prototype.some:function(a){for(var b=Object(this),c=b.length>>>0,d=0;d<c;d++)if(d in b&&a.call(this,b[d],d,b))return!0;return!1};var Nb=q.momentProperties=[],Ob=!1,Yb={};q.suppressDeprecationWarnings=
!1;q.deprecationHandler=null;var cc;cc=Object.keys?Object.keys:function(a){var b,c=[];for(b in a)e(a,b)&&c.push(b);return c};var xb={},Ja={},Zb=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,Eb=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Pb={},ob={},dc=/\d/,Ua=/\d\d/,ec=/\d{3}/,Ub=/\d{4}/,Ib=/[+-]?\d{6}/,za=/\d\d?/,fc=/\d\d\d\d?/,gc=/\d\d\d\d\d\d?/,Jb=/\d{1,3}/,
Vb=/\d{1,4}/,Kb=/[+-]?\d{1,6}/,xc=/\d+/,Lb=/[+-]?\d+/,yc=/Z|[+-]\d\d:?\d\d/gi,Mb=/Z|[+-]\d\d(?::?\d\d)?/gi,Db=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Qb={},Rb={},Wa=0,eb=1,$a=2,La=3,Xa=4,fb=5,kb=6,lc=7,mc=8;G("Y",0,0,function(){var a=this.year();return 9999>=a?""+a:"+"+a});G(0,["YY",2],0,function(){return this.year()%100});G(0,["YYYY",4],0,"year");G(0,["YYYYY",5],0,"year");G(0,["YYYYYY",
6,!0],0,"year");E("year","y");Ja.year=1;L("Y",Lb);L("YY",za,Ua);L("YYYY",Vb,Ub);L("YYYYY",Kb,Ib);L("YYYYYY",Kb,Ib);Y(["YYYYY","YYYYYY"],Wa);Y("YYYY",function(a,b){b[Wa]=2===a.length?q.parseTwoDigitYear(a):y(a)});Y("YY",function(a,b){b[Wa]=q.parseTwoDigitYear(a)});Y("Y",function(a,b){b[Wa]=parseInt(a,10)});q.parseTwoDigitYear=function(a){return y(a)+(68<y(a)?1900:2E3)};var hc=ca("FullYear",!0),Ga;Ga=Array.prototype.indexOf?Array.prototype.indexOf:function(a){var b;for(b=0;b<this.length;++b)if(this[b]===
a)return b;return-1};G("M",["MM",2],"Mo",function(){return this.month()+1});G("MMM",0,0,function(a){return this.localeData().monthsShort(this,a)});G("MMMM",0,0,function(a){return this.localeData().months(this,a)});E("month","M");Ja.month=8;L("M",za);L("MM",za,Ua);L("MMM",function(a,b){return b.monthsShortRegex(a)});L("MMMM",function(a,b){return b.monthsRegex(a)});Y(["M","MM"],function(a,b){b[eb]=y(a)-1});Y(["MMM","MMMM"],function(a,b,c,e){e=c._locale.monthsParse(a,e,c._strict);null!=e?b[eb]=e:d(c).invalidMonth=
a});var ic=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,ac="Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" ");G("w",["ww",2],"wo","week");G("W",["WW",2],"Wo","isoWeek");E("week","w");E("isoWeek","W");Ja.week=5;Ja.isoWeek=5;L("w",za);L("ww",za,Ua);L("W",za);L("WW",za,Ua);oa(["w","ww","W","WW"],function(a,b,c,d){b[d.substr(0,1)]=y(a)});G("d",0,"do","day");G("dd",0,0,function(a){return this.localeData().weekdaysMin(this,a)});G("ddd",0,0,function(a){return this.localeData().weekdaysShort(this,a)});G("dddd",
0,0,function(a){return this.localeData().weekdays(this,a)});G("e",0,0,"weekday");G("E",0,0,"isoWeekday");E("day","d");E("weekday","e");E("isoWeekday","E");Ja.day=11;Ja.weekday=11;Ja.isoWeekday=11;L("d",za);L("e",za);L("E",za);L("dd",function(a,b){return b.weekdaysMinRegex(a)});L("ddd",function(a,b){return b.weekdaysShortRegex(a)});L("dddd",function(a,b){return b.weekdaysRegex(a)});oa(["dd","ddd","dddd"],function(a,b,c,e){e=c._locale.weekdaysParse(a,e,c._strict);null!=e?b.d=e:d(c).invalidWeekday=a});
oa(["d","e","E"],function(a,b,c,d){b[d]=y(a)});var bc="Sun Mon Tue Wed Thu Fri Sat".split(" ");G("H",["HH",2],0,"hour");G("h",["hh",2],0,S);G("k",["kk",2],0,function(){return this.hours()||24});G("hmm",0,0,function(){return""+S.apply(this)+N(this.minutes(),2)});G("hmmss",0,0,function(){return""+S.apply(this)+N(this.minutes(),2)+N(this.seconds(),2)});G("Hmm",0,0,function(){return""+this.hours()+N(this.minutes(),2)});G("Hmmss",0,0,function(){return""+this.hours()+N(this.minutes(),2)+N(this.seconds(),
2)});ka("a",!0);ka("A",!1);E("hour","h");Ja.hour=13;L("a",Pa);L("A",Pa);L("H",za);L("h",za);L("k",za);L("HH",za,Ua);L("hh",za,Ua);L("kk",za,Ua);L("hmm",fc);L("hmmss",gc);L("Hmm",fc);L("Hmmss",gc);Y(["H","HH"],La);Y(["k","kk"],function(a,b,c){a=y(a);b[La]=24===a?0:a});Y(["a","A"],function(a,b,c){c._isPm=c._locale.isPM(a);c._meridiem=a});Y(["h","hh"],function(a,b,c){b[La]=y(a);d(c).bigHour=!0});Y("hmm",function(a,b,c){var e=a.length-2;b[La]=y(a.substr(0,e));b[Xa]=y(a.substr(e));d(c).bigHour=!0});Y("hmmss",
function(a,b,c){var e=a.length-4,k=a.length-2;b[La]=y(a.substr(0,e));b[Xa]=y(a.substr(e,2));b[fb]=y(a.substr(k));d(c).bigHour=!0});Y("Hmm",function(a,b,c){c=a.length-2;b[La]=y(a.substr(0,c));b[Xa]=y(a.substr(c))});Y("Hmmss",function(a,b,c){c=a.length-4;var d=a.length-2;b[La]=y(a.substr(0,c));b[Xa]=y(a.substr(c,2));b[fb]=y(a.substr(d))});var zc=ca("Hours",!0),$b={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",
sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:"January February March April May June July August September October November December".split(" "),
monthsShort:ac,week:{dow:0,doy:6},weekdays:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),weekdaysMin:"Su Mo Tu We Th Fr Sa".split(" "),weekdaysShort:bc,meridiemParse:/[ap]\.?m?\.?/i},Ka={},zb={},yb,nc=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,oc=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,
pc=/Z|[+-]\d\d(?::?\d\d)?/,Fb=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],Sb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",
/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],sc=/^\/?Date\((\-?\d+)/i,qc=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,rc={UT:0,GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};q.createFromInputFallback=x("value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.",
function(a){a._d=new Date(a._i+(a._useUTC?" UTC":""))});q.ISO_8601=function(){};q.RFC_2822=function(){};var Ac=x("moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var a=J.apply(null,arguments);return this.isValid()&&a.isValid()?a<this?this:a:w()}),Bc=x("moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/",function(){var a=J.apply(null,arguments);return this.isValid()&&a.isValid()?a>this?this:
a:w()}),Ab="year quarter month week day hour minute second millisecond".split(" ");W("Z",":");W("ZZ","");L("Z",Mb);L("ZZ",Mb);Y(["Z","ZZ"],function(a,b,c){c._useUTC=!0;c._tzm=Z(Mb,a)});var tc=/([\+\-]|\d\d)/gi;q.updateOffset=function(){};var uc=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,vc=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;Ra.fn=da.prototype;Ra.invalid=
function(){return Ra(NaN)};var Cc=Za(1,"add"),Dc=Za(-1,"subtract");q.defaultFormat="YYYY-MM-DDTHH:mm:ssZ";q.defaultFormatUtc="YYYY-MM-DDTHH:mm:ss[Z]";var jc=x("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(a){return void 0===a?this.localeData():this.locale(a)});G(0,["gg",2],0,function(){return this.weekYear()%100});G(0,["GG",2],0,function(){return this.isoWeekYear()%100});cb("gggg","weekYear");
cb("ggggg","weekYear");cb("GGGG","isoWeekYear");cb("GGGGG","isoWeekYear");E("weekYear","gg");E("isoWeekYear","GG");Ja.weekYear=1;Ja.isoWeekYear=1;L("G",Lb);L("g",Lb);L("GG",za,Ua);L("gg",za,Ua);L("GGGG",Vb,Ub);L("gggg",Vb,Ub);L("GGGGG",Kb,Ib);L("ggggg",Kb,Ib);oa(["gggg","ggggg","GGGG","GGGGG"],function(a,b,c,d){b[d.substr(0,2)]=y(a)});oa(["gg","GG"],function(a,b,c,d){b[d]=q.parseTwoDigitYear(a)});G("Q",0,"Qo","quarter");E("quarter","Q");Ja.quarter=7;L("Q",dc);Y("Q",function(a,b){b[eb]=3*(y(a)-1)});
G("D",["DD",2],"Do","date");E("date","D");Ja.date=9;L("D",za);L("DD",za,Ua);L("Do",function(a,b){return a?b._dayOfMonthOrdinalParse||b._ordinalParse:b._dayOfMonthOrdinalParseLenient});Y(["D","DD"],$a);Y("Do",function(a,b){b[$a]=y(a.match(za)[0])});var kc=ca("Date",!0);G("DDD",["DDDD",3],"DDDo","dayOfYear");E("dayOfYear","DDD");Ja.dayOfYear=4;L("DDD",Jb);L("DDDD",ec);Y(["DDD","DDDD"],function(a,b,c){c._dayOfYear=y(a)});G("m",["mm",2],0,"minute");E("minute","m");Ja.minute=14;L("m",za);L("mm",za,Ua);
Y(["m","mm"],Xa);var Ec=ca("Minutes",!1);G("s",["ss",2],0,"second");E("second","s");Ja.second=15;L("s",za);L("ss",za,Ua);Y(["s","ss"],fb);var Fc=ca("Seconds",!1);G("S",0,0,function(){return~~(this.millisecond()/100)});G(0,["SS",2],0,function(){return~~(this.millisecond()/10)});G(0,["SSS",3],0,"millisecond");G(0,["SSSS",4],0,function(){return 10*this.millisecond()});G(0,["SSSSS",5],0,function(){return 100*this.millisecond()});G(0,["SSSSSS",6],0,function(){return 1E3*this.millisecond()});G(0,["SSSSSSS",
7],0,function(){return 1E4*this.millisecond()});G(0,["SSSSSSSS",8],0,function(){return 1E5*this.millisecond()});G(0,["SSSSSSSSS",9],0,function(){return 1E6*this.millisecond()});E("millisecond","ms");Ja.millisecond=16;L("S",Jb,dc);L("SS",Jb,Ua);L("SSS",Jb,ec);var ib;for(ib="SSSS";9>=ib.length;ib+="S")L(ib,xc);for(ib="S";9>=ib.length;ib+="S")Y(ib,db);var Gc=ca("Milliseconds",!1);G("z",0,0,"zoneAbbr");G("zz",0,0,"zoneName");var T=k.prototype;T.add=Cc;T.calendar=function(a,b){a=a||J();var c=K(a,this).startOf("day"),
c=q.calendarFormat(this,c)||"sameElse";b=b&&(B(b[c])?b[c].call(this,a):b[c]);return this.format(b||this.localeData().calendar(c,this,J(a)))};T.clone=function(){return new k(this)};T.diff=function(a,b,c){var d;if(!this.isValid())return NaN;a=K(a,this);if(!a.isValid())return NaN;d=6E4*(a.utcOffset()-this.utcOffset());b=F(b);switch(b){case "year":b=nb(this,a)/12;break;case "month":b=nb(this,a);break;case "quarter":b=nb(this,a)/3;break;case "second":b=(this-a)/1E3;break;case "minute":b=(this-a)/6E4;break;
case "hour":b=(this-a)/36E5;break;case "day":b=(this-a-d)/864E5;break;case "week":b=(this-a-d)/6048E5;break;default:b=this-a}return c?b:r(b)};T.endOf=function(a){a=F(a);if(void 0===a||"millisecond"===a)return this;"date"===a&&(a="day");return this.startOf(a).add(1,"isoWeek"===a?"week":a).subtract(1,"ms")};T.format=function(a){a||(a=this.isUtc()?q.defaultFormatUtc:q.defaultFormat);a=U(this,a);return this.localeData().postformat(a)};T.from=function(a,b){return this.isValid()&&(u(a)&&a.isValid()||J(a).isValid())?
Ra({to:this,from:a}).locale(this.locale()).humanize(!b):this.localeData().invalidDate()};T.fromNow=function(a){return this.from(J(),a)};T.to=function(a,b){return this.isValid()&&(u(a)&&a.isValid()||J(a).isValid())?Ra({from:this,to:a}).locale(this.locale()).humanize(!b):this.localeData().invalidDate()};T.toNow=function(a){return this.to(J(),a)};T.get=function(a){a=F(a);return B(this[a])?this[a]():this};T.invalidAt=function(){return d(this).overflow};T.isAfter=function(a,b){a=u(a)?a:J(a);if(!this.isValid()||
!a.isValid())return!1;b=F(h(b)?"millisecond":b);return"millisecond"===b?this.valueOf()>a.valueOf():a.valueOf()<this.clone().startOf(b).valueOf()};T.isBefore=function(a,b){a=u(a)?a:J(a);if(!this.isValid()||!a.isValid())return!1;b=F(h(b)?"millisecond":b);return"millisecond"===b?this.valueOf()<a.valueOf():this.clone().endOf(b).valueOf()<a.valueOf()};T.isBetween=function(a,b,c,d){d=d||"()";return("("===d[0]?this.isAfter(a,c):!this.isBefore(a,c))&&(")"===d[1]?this.isBefore(b,c):!this.isAfter(b,c))};T.isSame=
function(a,b){a=u(a)?a:J(a);if(!this.isValid()||!a.isValid())return!1;b=F(b||"millisecond");if("millisecond"===b)return this.valueOf()===a.valueOf();a=a.valueOf();return this.clone().startOf(b).valueOf()<=a&&a<=this.clone().endOf(b).valueOf()};T.isSameOrAfter=function(a,b){return this.isSame(a,b)||this.isAfter(a,b)};T.isSameOrBefore=function(a,b){return this.isSame(a,b)||this.isBefore(a,b)};T.isValid=function(){return m(this)};T.lang=jc;T.locale=ub;T.localeData=vb;T.max=Bc;T.min=Ac;T.parsingFlags=
function(){return c({},d(this))};T.set=function(a,b){if("object"===typeof a){a=I(a);b=X(a);for(var c=0;c<b.length;c++)this[b[c].unit](a[b[c].unit])}else if(a=F(a),B(this[a]))return this[a](b);return this};T.startOf=function(a){a=F(a);switch(a){case "year":this.month(0);case "quarter":case "month":this.date(1);case "week":case "isoWeek":case "day":case "date":this.hours(0);case "hour":this.minutes(0);case "minute":this.seconds(0);case "second":this.milliseconds(0)}"week"===a&&this.weekday(0);"isoWeek"===
a&&this.isoWeekday(1);"quarter"===a&&this.month(3*Math.floor(this.month()/3));return this};T.subtract=Dc;T.toArray=function(){return[this.year(),this.month(),this.date(),this.hour(),this.minute(),this.second(),this.millisecond()]};T.toObject=function(){return{years:this.year(),months:this.month(),date:this.date(),hours:this.hours(),minutes:this.minutes(),seconds:this.seconds(),milliseconds:this.milliseconds()}};T.toDate=function(){return new Date(this.valueOf())};T.toISOString=function(a){if(!this.isValid())return null;
var b=(a=!0!==a)?this.clone().utc():this;return 0>b.year()||9999<b.year()?U(b,a?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):B(Date.prototype.toISOString)?a?this.toDate().toISOString():(new Date(this.valueOf()+6E4*this.utcOffset())).toISOString().replace("Z",U(b,"Z")):U(b,a?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")};T.inspect=function(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var a="moment",b="";this.isLocal()||(a=0===this.utcOffset()?"moment.utc":
"moment.parseZone",b="Z");var a="["+a+'("]',c=0<=this.year()&&9999>=this.year()?"YYYY":"YYYYYY";return this.format(a+c+"-MM-DD[T]HH:mm:ss.SSS"+(b+'[")]'))};T.toJSON=function(){return this.isValid()?this.toISOString():null};T.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")};T.unix=function(){return Math.floor(this.valueOf()/1E3)};T.valueOf=function(){return this._d.valueOf()-6E4*(this._offset||0)};T.creationData=function(){return{input:this._i,format:this._f,
locale:this._locale,isUTC:this._isUTC,strict:this._strict}};T.year=hc;T.isLeapYear=function(){return ea(this.year())};T.weekYear=function(a){return wb.call(this,a,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)};T.isoWeekYear=function(a){return wb.call(this,a,this.isoWeek(),this.isoWeekday(),1,4)};T.quarter=T.quarters=function(a){return null==a?Math.ceil((this.month()+1)/3):this.month(3*(a-1)+this.month()%3)};T.month=ya;T.daysInMonth=function(){return pa(this.year(),
this.month())};T.week=T.weeks=function(a){var b=this.localeData().week(this);return null==a?b:this.add(7*(a-b),"d")};T.isoWeek=T.isoWeeks=function(a){var b=ra(this,1,4).week;return null==a?b:this.add(7*(a-b),"d")};T.weeksInYear=function(){var a=this.localeData()._week;return va(this.year(),a.dow,a.doy)};T.isoWeeksInYear=function(){return va(this.year(),1,4)};T.date=kc;T.day=T.days=function(a){if(!this.isValid())return null!=a?this:NaN;var b=this._isUTC?this._d.getUTCDay():this._d.getDay();if(null!=
a){var c=this.localeData();"string"===typeof a&&(isNaN(a)?(a=c.weekdaysParse(a),a="number"===typeof a?a:null):a=parseInt(a,10));return this.add(a-b,"d")}return b};T.weekday=function(a){if(!this.isValid())return null!=a?this:NaN;var b=(this.day()+7-this.localeData()._week.dow)%7;return null==a?b:this.add(a-b,"d")};T.isoWeekday=function(a){if(!this.isValid())return null!=a?this:NaN;if(null!=a){var b=this.localeData();a="string"===typeof a?b.weekdaysParse(a)%7||7:isNaN(a)?null:a;return this.day(this.day()%
7?a:a-7)}return this.day()||7};T.dayOfYear=function(a){var b=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864E5)+1;return null==a?b:this.add(a-b,"d")};T.hour=T.hours=zc;T.minute=T.minutes=Ec;T.second=T.seconds=Fc;T.millisecond=T.milliseconds=Gc;T.utcOffset=function(a,b,c){var d=this._offset||0,e;if(!this.isValid())return null!=a?this:NaN;if(null!=a){if("string"===typeof a){if(a=Z(Mb,a),null===a)return this}else 16>Math.abs(a)&&!c&&(a*=60);!this._isUTC&&b&&(e=15*-Math.round(this._d.getTimezoneOffset()/
15));this._offset=a;this._isUTC=!0;null!=e&&this.add(e,"m");d!==a&&(!b||this._changeInProgress?tb(this,Ra(a-d,"m"),1,!1):this._changeInProgress||(this._changeInProgress=!0,q.updateOffset(this,!0),this._changeInProgress=null));return this}return this._isUTC?d:15*-Math.round(this._d.getTimezoneOffset()/15)};T.utc=function(a){return this.utcOffset(0,a)};T.local=function(a){this._isUTC&&(this.utcOffset(0,a),this._isUTC=!1,a&&this.subtract(15*-Math.round(this._d.getTimezoneOffset()/15),"m"));return this};
T.parseZone=function(){if(null!=this._tzm)this.utcOffset(this._tzm,!1,!0);else if("string"===typeof this._i){var a=Z(yc,this._i);null!=a?this.utcOffset(a):this.utcOffset(0,!0)}return this};T.hasAlignedHourOffset=function(a){if(!this.isValid())return!1;a=a?J(a).utcOffset():0;return 0===(this.utcOffset()-a)%60};T.isDST=function(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()};T.isLocal=function(){return this.isValid()?!this._isUTC:!1};
T.isUtcOffset=function(){return this.isValid()?this._isUTC:!1};T.isUtc=rb;T.isUTC=rb;T.zoneAbbr=function(){return this._isUTC?"UTC":""};T.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""};T.dates=x("dates accessor is deprecated. Use date instead.",kc);T.months=x("months accessor is deprecated. Use month instead",ya);T.years=x("years accessor is deprecated. Use year instead",hc);T.zone=x("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",
function(a,b){return null!=a?("string"!==typeof a&&(a=-a),this.utcOffset(a,b),this):-this.utcOffset()});T.isDSTShifted=x("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!h(this._isDSTShifted))return this._isDSTShifted;var b={};t(b,this);b=Ta(b);if(b._a){var c=b._isUTC?a(b._a):J(b._a);this._isDSTShifted=this.isValid()&&0<v(b._a,c.toArray())}else this._isDSTShifted=!1;return this._isDSTShifted});var xa=H.prototype;xa.calendar=function(a,
b,c){a=this._calendar[a]||this._calendar.sameElse;return B(a)?a.call(b,c):a};xa.longDateFormat=function(a){var b=this._longDateFormat[a],c=this._longDateFormat[a.toUpperCase()];if(b||!c)return b;this._longDateFormat[a]=c.replace(/MMMM|MM|DD|dddd/g,function(a){return a.slice(1)});return this._longDateFormat[a]};xa.invalidDate=function(){return this._invalidDate};xa.ordinal=function(a){return this._ordinal.replace("%d",a)};xa.preparse=Va;xa.postformat=Va;xa.relativeTime=function(a,b,c,d){var e=this._relativeTime[c];
return B(e)?e(a,b,c,d):e.replace(/%d/i,a)};xa.pastFuture=function(a,b){a=this._relativeTime[0<a?"future":"past"];return B(a)?a(b):a.replace(/%s/i,b)};xa.set=function(a){var b,c;for(c in a)b=a[c],B(b)?this[c]=b:this["_"+c]=b;this._config=a;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)};xa.months=function(a,b){return a?n(this._months)?this._months[a.month()]:this._months[(this._months.isFormat||ic).test(b)?"format":
"standalone"][a.month()]:n(this._months)?this._months:this._months.standalone};xa.monthsShort=function(a,b){return a?n(this._monthsShort)?this._monthsShort[a.month()]:this._monthsShort[ic.test(b)?"format":"standalone"][a.month()]:n(this._monthsShort)?this._monthsShort:this._monthsShort.standalone};xa.monthsParse=function(b,c,d){var e,k;if(this._monthsParseExact){a:{b=b.toLocaleLowerCase();if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],e=0;12>e;++e)k=
a([2E3,e]),this._shortMonthsParse[e]=this.monthsShort(k,"").toLocaleLowerCase(),this._longMonthsParse[e]=this.months(k,"").toLocaleLowerCase();if(d)c="MMM"===c?Ga.call(this._shortMonthsParse,b):Ga.call(this._longMonthsParse,b);else if("MMM"===c){c=Ga.call(this._shortMonthsParse,b);if(-1!==c)break a;c=Ga.call(this._longMonthsParse,b)}else{c=Ga.call(this._longMonthsParse,b);if(-1!==c)break a;c=Ga.call(this._shortMonthsParse,b)}c=-1!==c?c:null}return c}this._monthsParse||(this._monthsParse=[],this._longMonthsParse=
[],this._shortMonthsParse=[]);for(e=0;12>e;e++)if(k=a([2E3,e]),d&&!this._longMonthsParse[e]&&(this._longMonthsParse[e]=new RegExp("^"+this.months(k,"").replace(".","")+"$","i"),this._shortMonthsParse[e]=new RegExp("^"+this.monthsShort(k,"").replace(".","")+"$","i")),d||this._monthsParse[e]||(k="^"+this.months(k,"")+"|^"+this.monthsShort(k,""),this._monthsParse[e]=new RegExp(k.replace(".",""),"i")),d&&"MMMM"===c&&this._longMonthsParse[e].test(b)||d&&"MMM"===c&&this._shortMonthsParse[e].test(b)||!d&&
this._monthsParse[e].test(b))return e};xa.monthsRegex=function(a){if(this._monthsParseExact)return e(this,"_monthsRegex")||sa.call(this),a?this._monthsStrictRegex:this._monthsRegex;e(this,"_monthsRegex")||(this._monthsRegex=Db);return this._monthsStrictRegex&&a?this._monthsStrictRegex:this._monthsRegex};xa.monthsShortRegex=function(a){if(this._monthsParseExact)return e(this,"_monthsRegex")||sa.call(this),a?this._monthsShortStrictRegex:this._monthsShortRegex;e(this,"_monthsShortRegex")||(this._monthsShortRegex=
Db);return this._monthsShortStrictRegex&&a?this._monthsShortStrictRegex:this._monthsShortRegex};xa.week=function(a){return ra(a,this._week.dow,this._week.doy).week};xa.firstDayOfYear=function(){return this._week.doy};xa.firstDayOfWeek=function(){return this._week.dow};xa.weekdays=function(a,b){return a?n(this._weekdays)?this._weekdays[a.day()]:this._weekdays[this._weekdays.isFormat.test(b)?"format":"standalone"][a.day()]:n(this._weekdays)?this._weekdays:this._weekdays.standalone};xa.weekdaysMin=function(a){return a?
this._weekdaysMin[a.day()]:this._weekdaysMin};xa.weekdaysShort=function(a){return a?this._weekdaysShort[a.day()]:this._weekdaysShort};xa.weekdaysParse=function(b,c,d){var e,k;if(this._weekdaysParseExact)return Aa.call(this,b,c,d);this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]);for(e=0;7>e;e++)if(k=a([2E3,1]).day(e),d&&!this._fullWeekdaysParse[e]&&(this._fullWeekdaysParse[e]=new RegExp("^"+this.weekdays(k,"").replace(".",
".?")+"$","i"),this._shortWeekdaysParse[e]=new RegExp("^"+this.weekdaysShort(k,"").replace(".",".?")+"$","i"),this._minWeekdaysParse[e]=new RegExp("^"+this.weekdaysMin(k,"").replace(".",".?")+"$","i")),this._weekdaysParse[e]||(k="^"+this.weekdays(k,"")+"|^"+this.weekdaysShort(k,"")+"|^"+this.weekdaysMin(k,""),this._weekdaysParse[e]=new RegExp(k.replace(".",""),"i")),d&&"dddd"===c&&this._fullWeekdaysParse[e].test(b)||d&&"ddd"===c&&this._shortWeekdaysParse[e].test(b)||d&&"dd"===c&&this._minWeekdaysParse[e].test(b)||
!d&&this._weekdaysParse[e].test(b))return e};xa.weekdaysRegex=function(a){if(this._weekdaysParseExact)return e(this,"_weekdaysRegex")||qa.call(this),a?this._weekdaysStrictRegex:this._weekdaysRegex;e(this,"_weekdaysRegex")||(this._weekdaysRegex=Db);return this._weekdaysStrictRegex&&a?this._weekdaysStrictRegex:this._weekdaysRegex};xa.weekdaysShortRegex=function(a){if(this._weekdaysParseExact)return e(this,"_weekdaysRegex")||qa.call(this),a?this._weekdaysShortStrictRegex:this._weekdaysShortRegex;e(this,
"_weekdaysShortRegex")||(this._weekdaysShortRegex=Db);return this._weekdaysShortStrictRegex&&a?this._weekdaysShortStrictRegex:this._weekdaysShortRegex};xa.weekdaysMinRegex=function(a){if(this._weekdaysParseExact)return e(this,"_weekdaysRegex")||qa.call(this),a?this._weekdaysMinStrictRegex:this._weekdaysMinRegex;e(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=Db);return this._weekdaysMinStrictRegex&&a?this._weekdaysMinStrictRegex:this._weekdaysMinRegex};xa.isPM=function(a){return"p"===(a+"").toLowerCase().charAt(0)};
xa.meridiem=function(a,b,c){return 11<a?c?"pm":"PM":c?"am":"AM"};Da("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(a){var b=a%10,b=1===y(a%100/10)?"th":1===b?"st":2===b?"nd":3===b?"rd":"th";return a+b}});q.lang=x("moment.lang is deprecated. Use moment.locale instead.",Da);q.langData=x("moment.langData is deprecated. Use moment.localeData instead.",Ea);var gb=Math.abs,Hc=ab("ms"),Ic=ab("s"),Jc=ab("m"),Kc=ab("h"),Lc=ab("d"),Mc=ab("w"),Nc=ab("M"),Oc=ab("y"),Pc=mb("milliseconds"),
Qc=mb("seconds"),Rc=mb("minutes"),Sc=mb("hours"),Tc=mb("days"),Uc=mb("months"),Vc=mb("years"),jb=Math.round,bb={ss:44,s:45,m:45,h:22,d:26,M:11},Tb=Math.abs,na=da.prototype;na.isValid=function(){return this._isValid};na.abs=function(){var a=this._data;this._milliseconds=gb(this._milliseconds);this._days=gb(this._days);this._months=gb(this._months);a.milliseconds=gb(a.milliseconds);a.seconds=gb(a.seconds);a.minutes=gb(a.minutes);a.hours=gb(a.hours);a.months=gb(a.months);a.years=gb(a.years);return this};
na.add=function(a,b){return Cb(this,a,b,1)};na.subtract=function(a,b){return Cb(this,a,b,-1)};na.as=function(a){if(!this.isValid())return NaN;var b,c=this._milliseconds;a=F(a);if("month"===a||"year"===a)return b=this._days+c/864E5,b=this._months+4800*b/146097,"month"===a?b:b/12;b=this._days+Math.round(146097*this._months/4800);switch(a){case "week":return b/7+c/6048E5;case "day":return b+c/864E5;case "hour":return 24*b+c/36E5;case "minute":return 1440*b+c/6E4;case "second":return 86400*b+c/1E3;case "millisecond":return Math.floor(864E5*
b)+c;default:throw Error("Unknown unit "+a);}};na.asMilliseconds=Hc;na.asSeconds=Ic;na.asMinutes=Jc;na.asHours=Kc;na.asDays=Lc;na.asWeeks=Mc;na.asMonths=Nc;na.asYears=Oc;na.valueOf=function(){return this.isValid()?this._milliseconds+864E5*this._days+this._months%12*2592E6+31536E6*y(this._months/12):NaN};na._bubble=function(){var a=this._milliseconds,b=this._days,c=this._months,d=this._data;0<=a&&0<=b&&0<=c||0>=a&&0>=b&&0>=c||(a+=864E5*Gb(146097*c/4800+b),c=b=0);d.milliseconds=a%1E3;a=r(a/1E3);d.seconds=
a%60;a=r(a/60);d.minutes=a%60;a=r(a/60);d.hours=a%24;b+=r(a/24);a=r(4800*b/146097);c+=a;b-=Gb(146097*a/4800);a=r(c/12);d.days=b;d.months=c%12;d.years=a;return this};na.clone=function(){return Ra(this)};na.get=function(a){a=F(a);return this.isValid()?this[a+"s"]():NaN};na.milliseconds=Pc;na.seconds=Qc;na.minutes=Rc;na.hours=Sc;na.days=Tc;na.weeks=function(){return r(this.days()/7)};na.months=Uc;na.years=Vc;na.humanize=function(a){if(!this.isValid())return this.localeData().invalidDate();var b=this.localeData(),
c;c=!a;var d=Ra(this).abs(),e=jb(d.as("s")),k=jb(d.as("m")),m=jb(d.as("h")),r=jb(d.as("d")),f=jb(d.as("M")),d=jb(d.as("y")),e=e<=bb.ss&&["s",e]||e<bb.s&&["ss",e]||1>=k&&["m"]||k<bb.m&&["mm",k]||1>=m&&["h"]||m<bb.h&&["hh",m]||1>=r&&["d"]||r<bb.d&&["dd",r]||1>=f&&["M"]||f<bb.M&&["MM",f]||1>=d&&["y"]||["yy",d];e[2]=c;e[3]=0<+this;e[4]=b;c=wc.apply(null,e);a&&(c=b.pastFuture(+this,c));return b.postformat(c)};na.toISOString=Hb;na.toString=Hb;na.toJSON=Hb;na.locale=ub;na.localeData=vb;na.toIsoString=x("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",
Hb);na.lang=jc;G("X",0,0,"unix");G("x",0,0,"valueOf");L("x",Lb);L("X",/[+-]?\d+(\.\d{1,3})?/);Y("X",function(a,b,c){c._d=new Date(1E3*parseFloat(a,10))});Y("x",function(a,b,c){c._d=new Date(y(a))});q.version="2.22.1";Wb=J;q.fn=T;q.min=function(){var a=[].slice.call(arguments,0);return ma("isBefore",a)};q.max=function(){var a=[].slice.call(arguments,0);return ma("isAfter",a)};q.now=function(){return Date.now?Date.now():+new Date};q.utc=a;q.unix=function(a){return J(1E3*a)};q.months=function(a,b){return Bb(a,
b,"months")};q.isDate=l;q.locale=Da;q.invalid=w;q.duration=Ra;q.isMoment=u;q.weekdays=function(a,b,c){return pb(a,b,c,"weekdays")};q.parseZone=function(){return J.apply(null,arguments).parseZone()};q.localeData=Ea;q.isDuration=fa;q.monthsShort=function(a,b){return Bb(a,b,"monthsShort")};q.weekdaysMin=function(a,b,c){return pb(a,b,c,"weekdaysMin")};q.defineLocale=Fa;q.updateLocale=function(a,b){if(null!=b){var c,d=$b;c=Na(a);null!=c&&(d=c._config);b=C(d,b);b=new H(b);b.parentLocale=Ka[a];Ka[a]=b;Da(a)}else null!=
Ka[a]&&(null!=Ka[a].parentLocale?Ka[a]=Ka[a].parentLocale:null!=Ka[a]&&delete Ka[a]);return Ka[a]};q.locales=function(){return cc(Ka)};q.weekdaysShort=function(a,b,c){return pb(a,b,c,"weekdaysShort")};q.normalizeUnits=F;q.relativeTimeRounding=function(a){return void 0===a?jb:"function"===typeof a?(jb=a,!0):!1};q.relativeTimeThreshold=function(a,b){if(void 0===bb[a])return!1;if(void 0===b)return bb[a];bb[a]=b;"s"===a&&(bb.ss=b-1);return!0};q.calendarFormat=function(a,b){a=a.diff(b,"days",!0);return-6>
a?"sameElse":-1>a?"lastWeek":0>a?"lastDay":1>a?"sameDay":2>a?"nextDay":7>a?"nextWeek":"sameElse"};q.prototype=T;q.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"YYYY-[W]WW",MONTH:"YYYY-MM"};return q})},"esri/arcade/FunctionWrapper":function(){define(["require","exports"],function(q,n){return function(){return function(b,g){this.context=
this.definition=null;this.definition=b;this.context=g}}()})},"esri/arcade/ImmutablePathArray":function(){define(["require","exports","../core/tsSupport/extendsHelper","./ImmutableArray","./ImmutablePointArray"],function(q,n,b,g,h){return function(g){function l(b,e,c,a,d){b=g.call(this,b)||this;b._lazyPath=[];b._hasZ=!1;b._hasM=!1;b._hasZ=c;b._hasM=a;b._spRef=e;b._cacheId=d;return b}b(l,g);l.prototype.get=function(b){if(void 0===this._lazyPath[b]){var e=this._elements[b];if(void 0===e)return;this._lazyPath[b]=
new h(e,this._spRef,this._hasZ,this._hasM,this._cacheId,b)}return this._lazyPath[b]};l.prototype.equalityTest=function(b){return b===this?!0:null===b||!1===b instanceof l?!1:b.getUniqueHash()===this.getUniqueHash()};l.prototype.getUniqueHash=function(){return this._cacheId.toString()};return l}(g)})},"esri/core/tsSupport/extendsHelper":function(){define([],function(){return function(){var q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,b){n.__proto__=b}||function(n,b){for(var g in b)b.hasOwnProperty(g)&&
(n[g]=b[g])};return function(n,b){function g(){this.constructor=n}q(n,b);n.prototype=null===b?Object.create(b):(g.prototype=b.prototype,new g)}}()})},"esri/arcade/ImmutablePointArray":function(){define("require exports ../core/tsSupport/extendsHelper ../kernel ./ImmutableArray ../geometry/Point".split(" "),function(q,n,b,g,h,p){var l=0===g.version.indexOf("4.");return function(f){function e(b,a,d,e,g,l){b=f.call(this,b)||this;b._lazyPt=[];b._hasZ=!1;b._hasM=!1;b._spRef=a;b._hasZ=d;b._hasM=e;b._cacheId=
g;b._partId=l;return b}b(e,f);e.prototype.get=function(b){if(void 0===this._lazyPt[b]){var a=this._elements[b];if(void 0===a)return;var c=this._hasZ,e=this._hasM,f=null,f=c&&!e?new p(a[0],a[1],a[2],void 0,this._spRef):e&&c?new p(a[0],a[1],void 0,a[2],this._spRef):c&&e?new p(a[0],a[1],a[2],a[3],this._spRef):new p(a[0],a[1],this._spRef);l?f.cache._arcadeCacheId=this._cacheId.toString()+"-"+this._partId.toString()+"-"+b.toString():f.setCacheValue("_arcadeCacheId",this._cacheId.toString()+"-"+this._partId.toString()+
"-"+b.toString());this._lazyPt[b]=f}return this._lazyPt[b]};e.prototype.equalityTest=function(b){return b===this?!0:null===b||!1===b instanceof e?!1:b.getUniqueHash()===this.getUniqueHash()};e.prototype.getUniqueHash=function(){return this._cacheId.toString()+"-"+this._partId.toString()};return e}(h)})},"esri/geometry/Multipoint":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ../SpatialReference ./Geometry ./Point ./Extent ../srUtils".split(" "),function(q,n,b,g,
h,p,l,f,e,c){function a(){}function d(){}p={type:"multipoint",points:null};q=q(l,{declaredClass:"esri.geometry.Multipoint",type:"multipoint",points:null,constructor:function(a){this.points=[];a&&(a.points?h.mixin(this,a):this.spatialReference=a,this.spatialReference&&(this.spatialReference=c.createSpatialReference(this.spatialReference)));this.verifySR()},addPoint:function(a){this.clearCache();n.isArray(a)?this.points.push(a):this.points.push([a.x,a.y]);return this},removePoint:function(a){if(this._validateInputs(a))return this.clearCache(),
new f(this.points.splice(a,1)[0],this.spatialReference)},getExtent:function(){var a=this.getCacheValue("_extent");if(a)return new e(a);var a=this.points,b=a.length;if(b){var c=a[0],d,f,r=d=c[0],g=f=c[1],l=Math.min,h=Math.max,p=this.spatialReference,n,q;for(q=0;q<b;q++)c=a[q],n=c[0],c=c[1],r=l(r,n),g=l(g,c),d=h(d,n),f=h(f,c);a={xmin:r,ymin:g,xmax:d,ymax:f,spatialReference:p?p.toJson():null};this.setCacheValue("_extent",a);return new e(a)}},_validateInputs:function(a){return null===a||0>a||a>=this.points.length?
!1:!0},getPoint:function(a){if(this._validateInputs(a))return a=this.points[a],new f(a[0],a[1],this.spatialReference)},setPoint:function(a,b){if(this._validateInputs(a))return this.clearCache(),this.points[a]=[b.x,b.y],this},toJson:function(){var a={points:h.clone2DArray(this.points)},b=this.spatialReference;b&&(a.spatialReference=b.toJson());return a}});a.prototype=q.prototype;d.prototype=new a;Object.defineProperty(d.prototype,"points",{get:function(){this._unquantizeFn&&(this._pointsVal=this._unquantizeFn({points:h.clone2DArray(this._pointsVal)}).points,
this._unquantizeFn=null);return this._pointsVal},set:function(a){this._pointsVal=a}});d.prototype.setupLazyUnquantization=function(a,b){this._unquantizeFn=a;this._pointsVal=b.points};q.simpleConstructor=a;q.accessorConstructor=d;q.defaultProps=p;b("extend-esri")&&(n.setObject("geometry.Multipoint",q,g),g.geometry.defaultMultipoint=p);return q})},"esri/geometry/Polygon":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../SpatialReference ./Geometry ./Point ./Extent ./mathUtils ../srUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d){function m(){}function w(){}l={type:"polygon",rings:null};var t=q(f,{declaredClass:"esri.geometry.Polygon",type:"polygon",rings:null,constructor:function(a){this.rings=[];this._ring=0;a&&(b.isArray(a)?this.rings=b.isArray(a[0][0])?a:[a]:a.rings?p.mixin(this,a):this.spatialReference=a,this.spatialReference&&(this.spatialReference=d.createSpatialReference(this.spatialReference)));this.verifySR()},addRing:function(a){this.clearCache();this._ring=this.rings.length;this.rings[this._ring]=
[];b.isArray(a[0])?n.forEach(a,this._addPointArr,this):n.forEach(a,this._addPoint,this);return this},_addPointArr:function(a){this.rings[this._ring].push(a)},_addPoint:function(a){this.rings[this._ring].push([a.x,a.y])},_insertPoints:function(a,b){this.clearCache();this._ring=b;this.rings[this._ring]||(this.rings[this._ring]=[]);n.forEach(a,this._addPoint,this)},_validateInputs:function(a,b){return null!==a&&void 0!==a&&(0>a||a>=this.rings.length)||null!==b&&void 0!==a&&(0>b||b>=this.rings[a].length)?
!1:!0},getPoint:function(a,b){if(this._validateInputs(a,b))return new e(this.rings[a][b],this.spatialReference)},setPoint:function(a,b,c){if(this._validateInputs(a,b))return this.clearCache(),this.rings[a][b]=[c.x,c.y],this},insertPoint:function(a,b,c){if(this._validateInputs(a)&&null!=b&&0<=b&&b<=this.rings[a].length)return this.clearCache(),this.rings[a].splice(b,0,[c.x,c.y]),this},removeRing:function(a){if(this._validateInputs(a,null)){this.clearCache();a=this.rings.splice(a,1)[0];var b,c=a.length,
d=this.spatialReference;for(b=0;b<c;b++)a[b]=new e(a[b],d);return a}},removePoint:function(a,b){if(this._validateInputs(a,b))return this.clearCache(),new e(this.rings[a].splice(b,1)[0],this.spatialReference)},getExtent:function(){var a;a=this.getCacheValue("_extent");var b=this.getCacheValue("_partwise");if(a)return a=new c(a),a._partwise=b,a;a=this.rings;var d=a.length;if(d&&a[0].length){var e,m,f,g,l,h,t,p,w=g=a[0][0][0],n=l=a[0][0][1],q=Math.min,X=Math.max,N=this.spatialReference,b=[],G,Q,M,U;
for(h=0;h<d;h++){e=a[h];G=Q=e[0]&&e[0][0];M=U=e[0]&&e[0][1];p=e.length;for(t=0;t<p;t++)m=e[t],f=m[0],m=m[1],w=q(w,f),n=q(n,m),g=X(g,f),l=X(l,m),G=q(G,f),M=q(M,m),Q=X(Q,f),U=X(U,m);b.push(new c({xmin:G,ymin:M,xmax:Q,ymax:U,spatialReference:N?N.toJson():null}))}a={xmin:w,ymin:n,xmax:g,ymax:l,spatialReference:N?N.toJson():null};b=1<b.length?b:null;this.setCacheValue("_extent",a);this.setCacheValue("_partwise",b);a=new c(a);a._partwise=b;return a}},contains:function(a){var b=this.rings,c,d=!1,k,m,f,g,
l,h,t=b.length;c=this.spatialReference;k=a.spatialReference;var p=a.x;a=a.y;c&&k&&!c.equals(k)&&c._canProject(k)&&(a=c.isWebMercator()?e.lngLatToXY(p,a):e.xyToLngLat(p,a,!0),p=a[0],a=a[1]);for(h=0;h<t;h++)for(c=b[h],f=c.length,l=g=0;l<f;l++)g++,g===f&&(g=0),k=c[l],m=c[g],(k[1]<a&&m[1]>=a||m[1]<a&&k[1]>=a)&&k[0]+(a-k[1])/(m[1]-k[1])*(m[0]-k[0])<p&&(d=!d);return d},getCentroid:function(){var a=this.getCacheValue("_centroid");if(void 0!==a)return a;var a=this.rings,b,c,d,m,f=[],g,l,h=Infinity,t=-Infinity,
p=Infinity,w=-Infinity;n.forEach(a,function(a){b=c=d=0;n.forEach(a,function(e,k){k<a.length-1&&(g=a[k+1],l=e[0]*g[1]-g[0]*e[1],b+=(e[0]+g[0])*l,c+=(e[1]+g[1])*l,d+=l,e[0]<h&&(h=e[0]),e[0]>t&&(t=e[0]),e[1]<p&&(p=e[1]),e[1]>w&&(w=e[1]))});0<d&&(d*=-1);d&&f.push([b,c,d/2])});f.sort(function(a,b){return a[2]-b[2]});b=c=void 0;f[0]&&(m=6*f[0][2],b=f[0][0]/m,c=f[0][1]/m,b<h||b>t||c<p||c>w)&&(b=c=void 0);if(void 0===b||void 0===c)if(a=a[0]&&a[0].length?this._getLineCentroid(a[0]):null)b=a.x,c=a.y;a=isNaN(b)||
isNaN(c)?null:new e(b,c,this.spatialReference);this.setCacheValue("_centroid",a);return a},_getLineCentroid:function(b){var c,d=0,e=0,k=0,m,f,g={x:0,y:0},l={x:0,y:0},h,t=b.length,p;for(h=0;h<t-1;h++)m=b[h],f=b[h+1],m&&f&&(g.x=m[0],g.y=m[1],l.x=f[0],l.y=f[1],c=a.getLength(g,l),0<c&&(d+=c,m=a.getMidpoint(m,f),e+=c*m[0],k+=c*m[1]));0<d?p={x:e/d,y:k/d}:b[0]&&(p={x:b[0][0],y:b[0][1]});return p},isClockwise:function(a){var c=0,d,e=a.length,k=b.isArray(a[0])?function(a,b){return a[0]*b[1]-b[0]*a[1]}:function(a,
b){return a.x*b.y-b.x*a.y};for(d=0;d<e;d++)c+=k(a[d],a[(d+1)%e]);return 0>=c/2},isSelfIntersecting:function(b){b=b||this;var c,d,e,k,m,f,g,l=b.rings.length,h;for(e=0;e<l;e++){for(c=0;c<b.rings[e].length-1;c++)for(m=[[b.rings[e][c][0],b.rings[e][c][1]],[b.rings[e][c+1][0],b.rings[e][c+1][1]]],d=e+1;d<l;d++)for(k=0;k<b.rings[d].length-1;k++)if(f=[[b.rings[d][k][0],b.rings[d][k][1]],[b.rings[d][k+1][0],b.rings[d][k+1][1]]],(g=a._getLineIntersection2(m,f))&&!(g[0]===m[0][0]&&g[1]===m[0][1]||g[0]===f[0][0]&&
g[1]===f[0][1]||g[0]===m[1][0]&&g[1]===m[1][1]||g[0]===f[1][0]&&g[1]===f[1][1]))return!0;k=b.rings[e].length;if(!(4>=k))for(c=0;c<k-3;c++)for(h=k-1,0===c&&(h=k-2),m=[[b.rings[e][c][0],b.rings[e][c][1]],[b.rings[e][c+1][0],b.rings[e][c+1][1]]],d=c+2;d<h;d++)if(f=[[b.rings[e][d][0],b.rings[e][d][1]],[b.rings[e][d+1][0],b.rings[e][d+1][1]]],(g=a._getLineIntersection2(m,f))&&!(g[0]===m[0][0]&&g[1]===m[0][1]||g[0]===f[0][0]&&g[1]===f[0][1]||g[0]===m[1][0]&&g[1]===m[1][1]||g[0]===f[1][0]&&g[1]===f[1][1]))return!0}return!1},
toJson:function(){var a={rings:p.clone3DArray(this.rings)},b=this.spatialReference;b&&(a.spatialReference=b.toJson());return a}});m.prototype=t.prototype;w.prototype=new m;Object.defineProperty(w.prototype,"rings",{get:function(){this._unquantizeFn&&(this._ringsVal=this._unquantizeFn({rings:p.clone3DArray(this._ringsVal)}).rings,this._unquantizeFn=null);return this._ringsVal},set:function(a){this._ringsVal=a}});w.prototype.setupLazyUnquantization=function(a,b){this._unquantizeFn=a;this._ringsVal=
b.rings};t.simpleConstructor=m;t.accessorConstructor=w;t.defaultProps=l;t.createEllipse=function(a){var b=a.center.x,c=a.center.y,d=a.longAxis,e=a.shortAxis,k=a.numberOfPoints,m=a.map,f,g,l;a=[];var h=2*Math.PI/k;for(g=0;g<k;g++)f=Math.cos(g*h),l=Math.sin(g*h),f=m.toMap({x:d*f+b,y:e*l+c}),a.push(f);a.push(a[0]);b=new t(m.spatialReference);b.addRing(a);return b};t.createCircle=function(a){return t.createEllipse({center:a.center,longAxis:a.r,shortAxis:a.r,numberOfPoints:a.numberOfPoints,map:a.map})};
t.fromExtent=function(a){var b=a.normalize();a=a.spatialReference;return new t({rings:n.map(b,function(a){return[[a.xmin,a.ymin],[a.xmin,a.ymax],[a.xmax,a.ymax],[a.xmax,a.ymin],[a.xmin,a.ymin]]}),spatialReference:a?a.toJson():null})};g("extend-esri")&&(b.setObject("geometry.Polygon",t,h),h.geometry.defaultPolygon=l,h.geometry.createEllipse=t.createEllipse,h.geometry.createCircle=t.createCircle,h.geometry.isClockwise=t.prototype.isClockwise,h.geometry.polygonSelfIntersecting=t.prototype.isSelfIntersecting);
return t})},"esri/geometry/Polyline":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../SpatialReference ./Geometry ./Point ./Extent ../srUtils".split(" "),function(q,n,b,g,h,p,l,f,e,c,a){function d(){}function m(){}l={type:"polyline",paths:null};q=q(f,{declaredClass:"esri.geometry.Polyline",type:"polyline",paths:null,constructor:function(c){this.paths=[];this._path=0;c&&(b.isArray(c)?this.paths=b.isArray(c[0][0])?c:[c]:c.paths?p.mixin(this,c):this.spatialReference=
c,this.spatialReference&&(this.spatialReference=a.createSpatialReference(this.spatialReference)));this.verifySR()},addPath:function(a){this.clearCache();this._path=this.paths.length;this.paths[this._path]=[];b.isArray(a[0])?n.forEach(a,this._addPointArr,this):n.forEach(a,this._addPoint,this);return this},_addPointArr:function(a){this.paths[this._path].push(a)},_addPoint:function(a){this.paths[this._path].push([a.x,a.y])},_insertPoints:function(a,b){this.clearCache();this._path=b;this.paths[this._path]||
(this.paths[this._path]=[]);n.forEach(a,this._addPoint,this)},_validateInputs:function(a,b){return null!==a&&void 0!==a&&(0>a||a>=this.paths.length)||null!==b&&void 0!==a&&(0>b||b>=this.paths[a].length)?!1:!0},getPoint:function(a,b){if(this._validateInputs(a,b))return new e(this.paths[a][b],this.spatialReference)},setPoint:function(a,b,c){if(this._validateInputs(a,b))return this.clearCache(),this.paths[a][b]=[c.x,c.y],this},insertPoint:function(a,b,c){if(this._validateInputs(a)&&null!=b&&0<=b&&b<=
this.paths[a].length)return this.clearCache(),this.paths[a].splice(b,0,[c.x,c.y]),this},removePath:function(a){if(this._validateInputs(a,null)){this.clearCache();a=this.paths.splice(a,1)[0];var b,c=a.length,d=this.spatialReference;for(b=0;b<c;b++)a[b]=new e(a[b],d);return a}},removePoint:function(a,b){if(this._validateInputs(a,b))return this.clearCache(),new e(this.paths[a].splice(b,1)[0],this.spatialReference)},getExtent:function(){var a;a=this.getCacheValue("_extent");var b=this.getCacheValue("_partwise");
if(a)return a=new c(a),a._partwise=b,a;a=this.paths;var d=a.length;if(d&&a[0].length){var e,m,f,g,l,h,p,n,C=g=a[0][0][0],q=l=a[0][0][1],E=Math.min,F=Math.max,I=this.spatialReference,b=[],X,N,G,Q;for(h=0;h<d;h++){e=a[h];X=N=e[0]&&e[0][0];G=Q=e[0]&&e[0][1];n=e.length;for(p=0;p<n;p++)m=e[p],f=m[0],m=m[1],C=E(C,f),q=E(q,m),g=F(g,f),l=F(l,m),X=E(X,f),G=E(G,m),N=F(N,f),Q=F(Q,m);b.push(new c({xmin:X,ymin:G,xmax:N,ymax:Q,spatialReference:I?I.toJson():null}))}a={xmin:C,ymin:q,xmax:g,ymax:l,spatialReference:I?
I.toJson():null};b=1<b.length?b:null;this.setCacheValue("_extent",a);this.setCacheValue("_partwise",b);a=new c(a);a._partwise=b;return a}},toJson:function(){var a={paths:p.clone3DArray(this.paths)},b=this.spatialReference;b&&(a.spatialReference=b.toJson());return a}});d.prototype=q.prototype;m.prototype=new d;Object.defineProperty(m.prototype,"paths",{get:function(){this._unquantizeFn&&(this._pathsVal=this._unquantizeFn({paths:p.clone3DArray(this._pathsVal)}).paths,this._unquantizeFn=null);return this._pathsVal},
set:function(a){this._pathsVal=a}});m.prototype.setupLazyUnquantization=function(a,b){this._unquantizeFn=a;this._pathsVal=b.paths};q.simpleConstructor=d;q.accessorConstructor=m;q.defaultProps=l;g("extend-esri")&&(b.setObject("geometry.Polyline",q,h),h.geometry.defaultPolyline=l);return q})},"esri/geometry/ScreenPoint":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","./Point"],function(q,n,b,g,h){q=q(h,{declaredClass:"esri.geometry.ScreenPoint",verifySR:function(){}});
b("extend-esri")&&n.setObject("geometry.ScreenPoint",q,g);return q})},"esri/geometry/Rect":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./Geometry ./Point ./Extent ../srUtils".split(" "),function(q,n,b,g,h,p,l,f,e){function c(a){return new f(parseFloat(a.x),parseFloat(a.y)-parseFloat(a.height),parseFloat(a.x)+parseFloat(a.width),parseFloat(a.y),a.spatialReference)}var a=q(p,{declaredClass:"esri.geometry.Rect",type:"rect",x:0,y:0,width:100,height:100,constructor:function(a,
b,c,f,k){h.isObject(a)&&"extent"===a.type&&(b=a.ymax,c=a.getWidth(),f=a.getHeight(),k=a.spatialReference,a=a.xmin);h.isObject(a)?(h.mixin(this,a),this.spatialReference&&(this.spatialReference=e.createSpatialReference(this.spatialReference))):(this.x=a,this.y=b,this.width=c,this.height=f,this.spatialReference=k);this.verifySR()},getCenter:function(){return new l(this.x+this.width/2,this.y+this.height/2,this.spatialReference)},offset:function(b,c){return new a(this.x+b,this.y+c,this.width,this.height,
this.spatialReference)},intersects:function(a){return a.x+a.width<=this.x||a.y+a.height<=this.y||a.y>=this.y+this.height||a.x>=this.x+this.width?!1:!0},getExtent:function(){return c(this)},update:function(a,b,c,e,k){this.x=a;this.y=b;this.width=c;this.height=e;this.spatialReference=k;this.clearCache();return this}});b("extend-esri")&&(n.setObject("geometry.Rect",a,g),g.geometry._rectToExtent=c,g.geometry._extentToRect=function(b){return new a(b)});return a})},"esri/geometry/scaleUtils":function(){define(["dojo/_base/lang",
"dojo/has","../kernel","../config","../WKIDUnitConversion"],function(q,n,b,g,h){function p(a,b,c){return a&&b?a.getWidth()/b*(c||f)*39.37*e.screenDPI:0}function l(a,b,g,l,k){return a.expand(l*b/(39.37*((k?g:c.values[c[g]])||f)*e.screenDPI)/a.getWidth())}var f=6370997*Math.PI/180,e=g.defaults,c=h,a={getUnitValueForSR:function(a){return this.getUnitValue(a)||f},getUnitValue:function(a){var b,d,e;a&&("object"===typeof a?(b=a.wkid,d=a.wkt):"number"===typeof a?b=a:"string"===typeof a&&(d=a));b?e=c.values[c[b]]:
d&&-1!==d.search(/^PROJCS/i)&&(a=/UNIT\[([^\]]+)\]\]$/i.exec(d))&&a[1]&&(e=parseFloat(a[1].split(",")[1]));return e},getScale:function(b,c,e){var d,k,m;1<arguments.length&&null!=c&&!c.declaredClass?(d=b,k=c,c=null,m=a.getUnitValue(e)):(d=c||b.extent,k=b.width,m=a.getUnitValue(d&&d.spatialReference));return p(d,k,m)},getExtentForScale:function(b,c,e){return l(e||b.extent,b.width,a.getUnitValue(b.spatialReference),c,!0)}};n("extend-esri")&&(q.mixin(q.getObject("geometry",!0,b),a),b.geometry._getScale=
p,b.geometry._getExtentForScale=l);return a})},"esri/WKIDUnitConversion":function(){define(["dojo/has","./kernel"],function(q,n){var b,g={values:[1,.3048,.3048006096012192,.3047972654,.9143917962,.201166195164,.9143984146160287,.3047994715386762,20.11676512155263,20.11678249437587,.9143985307444408,.91439523,.3047997101815088,20.116756,5E4,15E4],units:"Meter Foot Foot_US Foot_Clarke Yard_Clarke Link_Clarke Yard_Sears Foot_Sears Chain_Sears Chain_Benoit_1895_B Yard_Indian Yard_Indian_1937 Foot_Gold_Coast Chain_Sears_1922_Truncated 50_Kilometers 150_Kilometers".split(" "),
2066:5,2136:12,2155:2,2157:0,2158:0,2159:12,2160:12,2204:2,2219:0,2220:0,2254:2,2255:2,2256:1,2265:1,2266:1,2267:2,2268:2,2269:1,2270:1,2271:2,2272:2,2273:1,2294:0,2295:0,2314:3,2899:2,2900:2,2901:1,2909:1,2910:1,2911:2,2912:2,2913:1,2914:1,2992:1,2993:0,2994:1,3080:1,3089:2,3090:0,3091:2,3102:2,3141:0,3142:0,3167:13,3359:2,3360:0,3361:1,3362:0,3363:2,3364:0,3365:2,3366:3,3404:2,3405:0,3406:0,3407:3,3439:0,3440:0,3479:1,3480:0,3481:1,3482:0,3483:1,3484:0,3485:2,3486:0,3487:2,3488:0,3489:0,3490:2,
3491:0,3492:2,3493:0,3494:2,3495:0,3496:2,3497:0,3498:2,3499:0,3500:2,3501:0,3502:2,3503:0,3504:2,3505:0,3506:2,3507:0,3508:2,3509:0,3510:2,3511:0,3512:2,3513:0,3514:0,3515:2,3516:0,3517:2,3518:0,3519:2,3520:0,3521:2,3522:0,3523:2,3524:0,3525:2,3526:0,3527:2,3528:0,3529:2,3530:0,3531:2,3532:0,3533:2,3534:0,3535:2,3536:0,3537:2,3538:0,3539:2,3540:0,3541:2,3542:0,3543:2,3544:0,3545:2,3546:0,3547:2,3548:0,3549:2,3550:0,3551:2,3552:0,3553:2,3582:2,3583:0,3584:2,3585:0,3586:2,3587:0,3588:1,3589:0,3590:1,
3591:0,3592:0,3593:1,3598:2,3599:0,3600:2,3605:1,3606:0,3607:0,3608:2,3609:0,3610:2,3611:0,3612:2,3613:0,3614:2,3615:0,3616:2,3617:0,3618:2,3619:0,3620:2,3621:0,3622:2,3623:0,3624:2,3625:0,3626:2,3627:0,3628:2,3629:0,3630:2,3631:0,3632:2,3633:0,3634:1,3635:0,3636:1,3640:2,3641:0,3642:2,3643:0,3644:1,3645:0,3646:1,3647:0,3648:1,3649:0,3650:2,3651:0,3652:2,3653:0,3654:2,3655:0,3656:1,3657:0,3658:2,3659:0,3660:2,3661:0,3662:2,3663:0,3664:2,3668:2,3669:0,3670:2,3671:0,3672:2,3673:0,3674:2,3675:0,3676:1,
3677:2,3678:0,3679:1,3680:2,3681:0,3682:1,3683:2,3684:0,3685:0,3686:2,3687:0,3688:2,3689:0,3690:2,3691:0,3692:2,3696:2,3697:0,3698:2,3699:0,3700:2,3793:0,3794:0,3812:0,3854:0,3857:0,3920:0,3978:0,3979:0,3991:2,3992:2,4026:0,4037:0,4038:0,4071:0,4082:0,4083:0,4087:0,4088:0,4217:2,4414:0,4415:0,4417:0,4434:0,4437:0,4438:2,4439:2,4462:0,4467:0,4471:0,4474:0,4559:0,4647:0,4822:0,4826:0,4839:0,5018:0,5048:0,5167:0,5168:0,5221:0,5223:0,5234:0,5235:0,5243:0,5247:0,5266:0,5316:0,5320:0,5321:0,5325:0,5337:0,
5361:0,5362:0,5367:0,5382:0,5383:0,5396:0,5456:0,5457:0,5469:0,5472:4,5490:0,5513:0,5514:0,5523:0,5559:0,5588:1,5589:3,5596:0,5627:0,5629:0,5641:0,5643:0,5644:0,5646:2,5654:2,5655:2,5659:0,5700:0,5825:0,5836:0,5837:0,5839:0,5842:0,5844:0,5858:0,5879:0,5880:0,5887:0,5890:0,6128:1,6129:1,6141:1,6204:0,6210:0,6211:0,6307:0,6312:0,6316:0,6362:0,6391:1,6405:1,6406:0,6407:1,6408:0,6409:1,6410:0,6411:2,6412:0,6413:2,6414:0,6415:0,6416:2,6417:0,6418:2,6419:0,6420:2,6421:0,6422:2,6423:0,6424:2,6425:0,6426:2,
6427:0,6428:2,6429:0,6430:2,6431:0,6432:2,6433:0,6434:2,6435:0,6436:2,6437:0,6438:2,6439:0,6440:0,6441:2,6442:0,6443:2,6444:0,6445:2,6446:0,6447:2,6448:0,6449:2,6450:0,6451:2,6452:0,6453:2,6454:0,6455:2,6456:0,6457:2,6458:0,6459:2,6460:0,6461:2,6462:0,6463:2,6464:0,6465:2,6466:0,6467:2,6468:0,6469:2,6470:0,6471:2,6472:0,6473:2,6474:0,6475:2,6476:0,6477:2,6478:0,6479:2,6484:2,6485:0,6486:2,6487:0,6488:2,6489:0,6490:2,6491:0,6492:2,6493:0,6494:1,6495:0,6496:1,6497:0,6498:0,6499:1,6500:0,6501:2,6502:0,
6503:2,6504:0,6505:2,6506:0,6507:2,6508:0,6509:0,6510:2,6515:1,6516:0,6518:0,6519:2,6520:0,6521:2,6522:0,6523:2,6524:0,6525:2,6526:0,6527:2,6528:0,6529:2,6530:0,6531:2,6532:0,6533:2,6534:0,6535:2,6536:0,6537:2,6538:0,6539:2,6540:0,6541:2,6542:0,6543:2,6544:0,6545:1,6546:0,6547:1,6548:0,6549:2,6550:0,6551:2,6552:0,6553:2,6554:0,6555:2,6556:0,6557:1,6558:0,6559:1,6560:0,6561:1,6562:0,6563:2,6564:0,6565:2,6566:0,6567:0,6568:2,6569:0,6570:1,6571:0,6572:2,6573:0,6574:2,6575:0,6576:2,6577:0,6578:2,6582:2,
6583:0,6584:2,6585:0,6586:2,6587:0,6588:2,6589:0,6590:2,6591:0,6592:0,6593:2,6594:0,6595:2,6596:0,6597:2,6598:0,6599:2,6600:0,6601:2,6602:0,6603:2,6605:2,6606:0,6607:2,6608:0,6609:2,6610:0,6611:0,6612:2,6613:0,6614:2,6615:0,6616:2,6617:0,6618:2,6633:2,6646:0,6703:0,6784:0,6785:1,6786:0,6787:1,6788:0,6789:1,6790:0,6791:1,6792:0,6793:1,6794:0,6795:1,6796:0,6797:1,6798:0,6799:1,6800:0,6801:1,6802:0,6803:1,6804:0,6805:1,6806:0,6807:1,6808:0,6809:1,6810:0,6811:1,6812:0,6813:1,6814:0,6815:1,6816:0,6817:1,
6818:0,6819:1,6820:0,6821:1,6822:0,6823:1,6824:0,6825:1,6826:0,6827:1,6828:0,6829:1,6830:0,6831:1,6832:0,6833:1,6834:0,6835:1,6836:0,6837:1,6838:0,6839:1,6840:0,6841:1,6842:0,6843:1,6844:0,6845:1,6846:0,6847:1,6848:0,6849:1,6850:0,6851:1,6852:0,6853:1,6854:0,6855:1,6856:0,6857:1,6858:0,6859:1,6860:0,6861:1,6862:0,6863:1,6867:0,6868:1,6870:0,6875:0,6876:0,6879:0,6880:2,6884:0,6885:1,6886:0,6887:1,6915:0,6922:0,6923:2,6924:0,6925:2,6962:0,6984:0,6991:0,7128:2,7131:0,7132:2,7142:0,7257:0,7258:2,7259:0,
7260:2,7261:0,7262:2,7263:0,7264:2,7265:0,7266:2,7267:0,7268:2,7269:0,7270:2,7271:0,7272:2,7273:0,7274:2,7275:0,7276:2,7277:0,7278:2,7279:0,7280:2,7281:0,7282:2,7283:0,7284:2,7285:0,7286:2,7287:0,7288:2,7289:0,7290:2,7291:0,7292:2,7293:0,7294:2,7295:0,7296:2,7297:0,7298:2,7299:0,7300:2,7301:0,7302:2,7303:0,7304:2,7305:0,7306:2,7307:0,7308:2,7309:0,7310:2,7311:0,7312:2,7313:0,7314:2,7315:0,7316:2,7317:0,7318:2,7319:0,7320:2,7321:0,7322:2,7323:0,7324:2,7325:0,7326:2,7327:0,7328:2,7329:0,7330:2,7331:0,
7332:2,7333:0,7334:2,7335:0,7336:2,7337:0,7338:2,7339:0,7340:2,7341:0,7342:2,7343:0,7344:2,7345:0,7346:2,7347:0,7348:2,7349:0,7350:2,7351:0,7352:2,7353:0,7354:2,7355:0,7356:2,7357:0,7358:2,7359:0,7360:2,7361:0,7362:2,7363:0,7364:2,7365:0,7366:2,7367:0,7368:2,7369:0,7370:2,7877:0,7878:0,7882:0,7883:0,7887:0,7899:0,7991:0,7992:0,8058:0,8059:0,8311:0,8312:1,8313:0,8314:1,8315:0,8316:1,8317:0,8318:1,8319:0,8320:1,8321:0,8322:1,8323:0,8324:1,8325:0,8326:1,8327:0,8328:1,8329:0,8330:1,8331:0,8332:1,8333:0,
8334:1,8335:0,8336:1,8337:0,8338:1,8339:0,8340:1,8341:0,8342:1,8343:0,8344:1,8345:0,8346:1,8347:0,8348:1,20499:0,20538:0,20539:0,20790:0,20791:0,21291:0,21292:0,21500:0,21817:0,21818:0,22032:0,22033:0,22091:0,22092:0,22332:0,22391:0,22392:0,22700:0,22770:0,22780:0,22832:0,23090:0,23095:0,23239:0,23240:0,23433:0,23700:0,24047:0,24048:0,24100:3,24200:0,24305:0,24306:0,24382:10,24383:0,24500:0,24547:0,24548:0,24571:9,24600:0,25E3:0,25231:0,25884:0,25932:0,26237:0,26331:0,26332:0,26432:0,26591:0,26592:0,
26632:0,26692:0,27120:0,27200:0,27291:6,27292:6,27429:0,27492:0,27493:0,27500:0,27700:0,28232:0,28600:0,28991:0,28992:0,29100:0,29101:0,29220:0,29221:0,29333:0,29635:0,29636:0,29701:0,29738:0,29739:0,29849:0,29850:0,29871:8,29872:7,29873:0,30200:5,30339:0,30340:0,30591:0,30592:0,30791:0,30792:0,30800:0,31028:0,31121:0,31154:0,31170:0,31171:0,31370:0,31528:0,31529:0,31600:0,31700:0,31838:0,31839:0,31900:0,31901:0,32061:0,32062:0,32098:0,32099:2,32100:0,32104:0,32161:0,32766:0,53034:0,53048:0,53049:0,
54034:0,65061:2,65062:2,65161:0,65163:0,102041:2,102064:11,102068:14,102069:15,102118:2,102119:1,102120:2,102121:2,102217:2,102218:0,102219:2,102220:2,102378:1,102379:1,102380:0,102381:1,102589:2,102599:2,102600:2,102604:2,102647:0,102704:2,102705:2,102706:0,102761:2,102762:0,102763:2,102764:0,102765:0,102766:2,102962:0,102963:0,102970:1,102974:2,102993:0,102994:0,102995:2,102996:2,103015:0,103016:2,103017:0,103018:2,103025:0,103026:0,103027:2,103028:2,103035:0,103036:0,103037:2,103038:2,103039:0,
103040:0,103041:2,103042:2,103043:0,103044:0,103045:2,103046:2,103047:0,103048:0,103049:2,103050:2,103051:0,103052:2,103053:0,103054:2,103055:0,103056:2,103057:0,103058:0,103059:2,103060:2,103061:0,103062:0,103063:2,103064:2,103069:2,103070:0,103071:0,103072:2,103073:2,103086:0,103087:0,103088:2,103089:2,103094:1,103095:0,103096:2,103103:0,103104:2,103105:0,103106:2,103121:0,103122:2,103123:0,103124:0,103125:1,103126:1,103127:0,103128:0,103129:2,103130:2,103131:0,103132:0,103133:2,103134:2,103135:0,
103136:0,103137:1,103138:1,103139:0,103140:2,103141:0,103142:2,103143:0,103144:2,103145:0,103146:1,103147:0,103148:0,103149:2,103150:2,103151:0,103152:2,103172:0,103173:2,103174:0,103175:0,103176:2,103177:2,103178:0,103179:0,103180:2,103181:2,103182:0,103183:0,103184:2,103185:2,103228:0,103229:0,103230:2,103231:2,103250:0,103251:2,103252:0,103253:2,103260:0,103261:0,103262:2,103263:2,103270:0,103271:0,103272:2,103273:2,103274:0,103275:0,103276:2,103277:2,103278:0,103279:0,103280:2,103281:2,103282:0,
103283:0,103284:2,103285:2,103286:0,103287:2,103288:0,103289:2,103290:0,103291:2,103292:0,103293:0,103294:2,103295:2,103296:0,103297:0,103298:2,103299:2,103376:2,103377:0,103378:0,103379:2,103380:2,103393:0,103394:0,103395:2,103396:2,103472:0,103473:1,103474:0,103475:2,103482:0,103483:2,103484:0,103485:2,103500:0,103501:2,103502:0,103503:0,103504:1,103505:1,103506:0,103507:0,103508:2,103509:2,103510:0,103511:0,103512:2,103513:2,103514:0,103515:2,103516:0,103517:2,103518:0,103519:2,103520:0,103521:1,
103522:0,103523:0,103524:2,103525:2,103526:0,103527:2,103561:2,103562:2,103563:0,103564:0,103565:2,103566:2,103567:0,103568:0,103569:2,103570:2,103584:0,103585:2,103695:2};for(b=2E3;2045>=b;b++)g[b]=0;for(b=2056;2065>=b;b++)g[b]=0;for(b=2067;2135>=b;b++)g[b]=0;for(b=2137;2154>=b;b++)g[b]=0;for(b=2161;2170>=b;b++)g[b]=0;for(b=2172;2193>=b;b++)g[b]=0;for(b=2195;2198>=b;b++)g[b]=0;for(b=2200;2203>=b;b++)g[b]=0;for(b=2205;2217>=b;b++)g[b]=0;for(b=2222;2224>=b;b++)g[b]=1;for(b=2225;2250>=b;b++)g[b]=2;
for(b=2251;2253>=b;b++)g[b]=1;for(b=2257;2264>=b;b++)g[b]=2;for(b=2274;2279>=b;b++)g[b]=2;for(b=2280;2282>=b;b++)g[b]=1;for(b=2283;2289>=b;b++)g[b]=2;for(b=2290;2292>=b;b++)g[b]=0;for(b=2308;2313>=b;b++)g[b]=0;for(b=2315;2491>=b;b++)g[b]=0;for(b=2494;2866>=b;b++)g[b]=0;for(b=2867;2869>=b;b++)g[b]=1;for(b=2870;2888>=b;b++)g[b]=2;for(b=2891;2895>=b;b++)g[b]=2;for(b=2896;2898>=b;b++)g[b]=1;for(b=2902;2908>=b;b++)g[b]=2;for(b=2915;2920>=b;b++)g[b]=2;for(b=2921;2923>=b;b++)g[b]=1;for(b=2924;2930>=b;b++)g[b]=
2;for(b=2931;2962>=b;b++)g[b]=0;for(b=2964;2968>=b;b++)g[b]=2;for(b=2969;2973>=b;b++)g[b]=0;for(b=2975;2991>=b;b++)g[b]=0;for(b=2995;3051>=b;b++)g[b]=0;for(b=3054;3079>=b;b++)g[b]=0;for(b=3081;3088>=b;b++)g[b]=0;for(b=3092;3101>=b;b++)g[b]=0;for(b=3106;3138>=b;b++)g[b]=0;for(b=3146;3151>=b;b++)g[b]=0;for(b=3153;3166>=b;b++)g[b]=0;for(b=3168;3172>=b;b++)g[b]=0;for(b=3174;3203>=b;b++)g[b]=0;for(b=3294;3358>=b;b++)g[b]=0;for(b=3367;3403>=b;b++)g[b]=0;for(b=3408;3416>=b;b++)g[b]=0;for(b=3417;3438>=b;b++)g[b]=
2;for(b=3441;3446>=b;b++)g[b]=2;for(b=3447;3450>=b;b++)g[b]=0;for(b=3451;3459>=b;b++)g[b]=2;for(b=3460;3478>=b;b++)g[b]=0;for(b=3554;3559>=b;b++)g[b]=0;for(b=3560;3570>=b;b++)g[b]=2;for(b=3571;3581>=b;b++)g[b]=0;for(b=3594;3597>=b;b++)g[b]=0;for(b=3601;3604>=b;b++)g[b]=0;for(b=3637;3639>=b;b++)g[b]=0;for(b=3665;3667>=b;b++)g[b]=0;for(b=3693;3695>=b;b++)g[b]=0;for(b=3701;3727>=b;b++)g[b]=0;for(b=3728;3739>=b;b++)g[b]=2;for(b=3740;3751>=b;b++)g[b]=0;for(b=3753;3760>=b;b++)g[b]=2;for(b=3761;3773>=b;b++)g[b]=
0;for(b=3775;3777>=b;b++)g[b]=0;for(b=3779;3781>=b;b++)g[b]=0;for(b=3783;3785>=b;b++)g[b]=0;for(b=3788;3791>=b;b++)g[b]=0;for(b=3797;3802>=b;b++)g[b]=0;for(b=3814;3816>=b;b++)g[b]=0;for(b=3825;3829>=b;b++)g[b]=0;for(b=3832;3841>=b;b++)g[b]=0;for(b=3844;3852>=b;b++)g[b]=0;for(b=3873;3885>=b;b++)g[b]=0;for(b=3890;3893>=b;b++)g[b]=0;for(b=3907;3912>=b;b++)g[b]=0;for(b=3942;3950>=b;b++)g[b]=0;for(b=3968;3970>=b;b++)g[b]=0;for(b=3973;3976>=b;b++)g[b]=0;for(b=3986;3989>=b;b++)g[b]=0;for(b=3994;3997>=b;b++)g[b]=
0;for(b=4048;4051>=b;b++)g[b]=0;for(b=4056;4063>=b;b++)g[b]=0;for(b=4093;4096>=b;b++)g[b]=0;for(b=4390;4398>=b;b++)g[b]=0;for(b=4399;4413>=b;b++)g[b]=2;for(b=4418;4433>=b;b++)g[b]=2;for(b=4455;4457>=b;b++)g[b]=2;for(b=4484;4489>=b;b++)g[b]=0;for(b=4491;4554>=b;b++)g[b]=0;for(b=4568;4589>=b;b++)g[b]=0;for(b=4652;4656>=b;b++)g[b]=0;for(b=4766;4800>=b;b++)g[b]=0;for(b=5014;5016>=b;b++)g[b]=0;for(b=5069;5072>=b;b++)g[b]=0;for(b=5105;5130>=b;b++)g[b]=0;for(b=5173;5188>=b;b++)g[b]=0;for(b=5253;5259>=b;b++)g[b]=
0;for(b=5269;5275>=b;b++)g[b]=0;for(b=5292;5311>=b;b++)g[b]=0;for(b=5329;5331>=b;b++)g[b]=0;for(b=5343;5349>=b;b++)g[b]=0;for(b=5355;5357>=b;b++)g[b]=0;for(b=5387;5389>=b;b++)g[b]=0;for(b=5459;5463>=b;b++)g[b]=0;for(b=5479;5482>=b;b++)g[b]=0;for(b=5518;5520>=b;b++)g[b]=0;for(b=5530;5539>=b;b++)g[b]=0;for(b=5550;5552>=b;b++)g[b]=0;for(b=5562;5583>=b;b++)g[b]=0;for(b=5623;5625>=b;b++)g[b]=2;for(b=5631;5639>=b;b++)g[b]=0;for(b=5649;5653>=b;b++)g[b]=0;for(b=5663;5680>=b;b++)g[b]=0;for(b=5682;5685>=b;b++)g[b]=
0;for(b=5875;5877>=b;b++)g[b]=0;for(b=5921;5940>=b;b++)g[b]=0;for(b=6050;6125>=b;b++)g[b]=0;for(b=6244;6275>=b;b++)g[b]=0;for(b=6328;6348>=b;b++)g[b]=0;for(b=6350;6356>=b;b++)g[b]=0;for(b=6366;6372>=b;b++)g[b]=0;for(b=6381;6387>=b;b++)g[b]=0;for(b=6393;6404>=b;b++)g[b]=0;for(b=6480;6483>=b;b++)g[b]=0;for(b=6511;6514>=b;b++)g[b]=0;for(b=6579;6581>=b;b++)g[b]=0;for(b=6619;6624>=b;b++)g[b]=0;for(b=6625;6627>=b;b++)g[b]=2;for(b=6628;6632>=b;b++)g[b]=0;for(b=6634;6637>=b;b++)g[b]=0;for(b=6669;6692>=b;b++)g[b]=
0;for(b=6707;6709>=b;b++)g[b]=0;for(b=6720;6723>=b;b++)g[b]=0;for(b=6732;6738>=b;b++)g[b]=0;for(b=6931;6933>=b;b++)g[b]=0;for(b=6956;6959>=b;b++)g[b]=0;for(b=7005;7007>=b;b++)g[b]=0;for(b=7057;7070>=b;b++)g[b]=2;for(b=7074;7082>=b;b++)g[b]=0;for(b=7109;7118>=b;b++)g[b]=0;for(b=7119;7127>=b;b++)g[b]=1;for(b=7374;7376>=b;b++)g[b]=0;for(b=7528;7586>=b;b++)g[b]=0;for(b=7587;7645>=b;b++)g[b]=2;for(b=7755;7787>=b;b++)g[b]=0;for(b=7791;7795>=b;b++)g[b]=0;for(b=7799;7801>=b;b++)g[b]=0;for(b=7803;7805>=b;b++)g[b]=
0;for(b=7825;7831>=b;b++)g[b]=0;for(b=7845;7859>=b;b++)g[b]=0;for(b=8013;8032>=b;b++)g[b]=0;for(b=20002;20032>=b;b++)g[b]=0;for(b=20062;20092>=b;b++)g[b]=0;for(b=20135;20138>=b;b++)g[b]=0;for(b=20248;20258>=b;b++)g[b]=0;for(b=20348;20358>=b;b++)g[b]=0;for(b=20436;20440>=b;b++)g[b]=0;for(b=20822;20824>=b;b++)g[b]=0;for(b=20934;20936>=b;b++)g[b]=0;for(b=21035;21037>=b;b++)g[b]=0;for(b=21095;21097>=b;b++)g[b]=0;for(b=21148;21150>=b;b++)g[b]=0;for(b=21413;21423>=b;b++)g[b]=0;for(b=21473;21483>=b;b++)g[b]=
0;for(b=21780;21782>=b;b++)g[b]=0;for(b=21891;21894>=b;b++)g[b]=0;for(b=21896;21899>=b;b++)g[b]=0;for(b=22171;22177>=b;b++)g[b]=0;for(b=22181;22187>=b;b++)g[b]=0;for(b=22191;22197>=b;b++)g[b]=0;for(b=22234;22236>=b;b++)g[b]=0;for(b=22521;22525>=b;b++)g[b]=0;for(b=22991;22994>=b;b++)g[b]=0;for(b=23028;23038>=b;b++)g[b]=0;for(b=23830;23853>=b;b++)g[b]=0;for(b=23866;23872>=b;b++)g[b]=0;for(b=23877;23884>=b;b++)g[b]=0;for(b=23886;23894>=b;b++)g[b]=0;for(b=23946;23948>=b;b++)g[b]=0;for(b=24311;24313>=
b;b++)g[b]=0;for(b=24342;24347>=b;b++)g[b]=0;for(b=24370;24374>=b;b++)g[b]=10;for(b=24375;24381>=b;b++)g[b]=0;for(b=24718;24721>=b;b++)g[b]=0;for(b=24817;24821>=b;b++)g[b]=0;for(b=24877;24882>=b;b++)g[b]=0;for(b=24891;24893>=b;b++)g[b]=0;for(b=25391;25395>=b;b++)g[b]=0;for(b=25828;25838>=b;b++)g[b]=0;for(b=26191;26195>=b;b++)g[b]=0;for(b=26391;26393>=b;b++)g[b]=0;for(b=26701;26722>=b;b++)g[b]=0;for(b=26729;26799>=b;b++)g[b]=2;for(b=26801;26803>=b;b++)g[b]=2;for(b=26811;26813>=b;b++)g[b]=2;for(b=26847;26870>=
b;b++)g[b]=2;for(b=26891;26899>=b;b++)g[b]=0;for(b=26901;26923>=b;b++)g[b]=0;for(b=26929;26946>=b;b++)g[b]=0;for(b=26948;26998>=b;b++)g[b]=0;for(b=27037;27040>=b;b++)g[b]=0;for(b=27205;27232>=b;b++)g[b]=0;for(b=27258;27260>=b;b++)g[b]=0;for(b=27391;27398>=b;b++)g[b]=0;for(b=27561;27564>=b;b++)g[b]=0;for(b=27571;27574>=b;b++)g[b]=0;for(b=27581;27584>=b;b++)g[b]=0;for(b=27591;27594>=b;b++)g[b]=0;for(b=28191;28193>=b;b++)g[b]=0;for(b=28348;28358>=b;b++)g[b]=0;for(b=28402;28432>=b;b++)g[b]=0;for(b=28462;28492>=
b;b++)g[b]=0;for(b=29118;29122>=b;b++)g[b]=0;for(b=29168;29172>=b;b++)g[b]=0;for(b=29177;29185>=b;b++)g[b]=0;for(b=29187;29195>=b;b++)g[b]=0;for(b=29900;29903>=b;b++)g[b]=0;for(b=30161;30179>=b;b++)g[b]=0;for(b=30491;30494>=b;b++)g[b]=0;for(b=30729;30732>=b;b++)g[b]=0;for(b=31251;31259>=b;b++)g[b]=0;for(b=31265;31268>=b;b++)g[b]=0;for(b=31275;31279>=b;b++)g[b]=0;for(b=31281;31297>=b;b++)g[b]=0;for(b=31461;31469>=b;b++)g[b]=0;for(b=31491;31495>=b;b++)g[b]=0;for(b=31917;31922>=b;b++)g[b]=0;for(b=31965;32E3>=
b;b++)g[b]=0;for(b=32001;32003>=b;b++)g[b]=2;for(b=32005;32031>=b;b++)g[b]=2;for(b=32033;32060>=b;b++)g[b]=2;for(b=32064;32067>=b;b++)g[b]=2;for(b=32074;32077>=b;b++)g[b]=2;for(b=32081;32086>=b;b++)g[b]=0;for(b=32107;32130>=b;b++)g[b]=0;for(b=32133;32158>=b;b++)g[b]=0;for(b=32164;32167>=b;b++)g[b]=2;for(b=32180;32199>=b;b++)g[b]=0;for(b=32201;32260>=b;b++)g[b]=0;for(b=32301;32360>=b;b++)g[b]=0;for(b=32601;32662>=b;b++)g[b]=0;for(b=32664;32667>=b;b++)g[b]=2;for(b=32701;32761>=b;b++)g[b]=0;for(b=53001;53004>=
b;b++)g[b]=0;for(b=53008;53019>=b;b++)g[b]=0;for(b=53021;53032>=b;b++)g[b]=0;for(b=53042;53046>=b;b++)g[b]=0;for(b=53074;53080>=b;b++)g[b]=0;for(b=54001;54004>=b;b++)g[b]=0;for(b=54008;54019>=b;b++)g[b]=0;for(b=54021;54032>=b;b++)g[b]=0;for(b=54042;54046>=b;b++)g[b]=0;for(b=54048;54053>=b;b++)g[b]=0;for(b=54074;54080>=b;b++)g[b]=0;for(b=102001;102040>=b;b++)g[b]=0;for(b=102042;102063>=b;b++)g[b]=0;for(b=102065;102067>=b;b++)g[b]=0;for(b=102070;102117>=b;b++)g[b]=0;for(b=102122;102216>=b;b++)g[b]=
0;for(b=102221;102377>=b;b++)g[b]=0;for(b=102382;102388>=b;b++)g[b]=0;for(b=102389;102398>=b;b++)g[b]=2;for(b=102399;102444>=b;b++)g[b]=0;for(b=102445;102447>=b;b++)g[b]=2;for(b=102448;102458>=b;b++)g[b]=0;for(b=102459;102468>=b;b++)g[b]=2;for(b=102469;102497>=b;b++)g[b]=0;for(b=102500;102519>=b;b++)g[b]=1;for(b=102520;102524>=b;b++)g[b]=0;for(b=102525;102529>=b;b++)g[b]=2;for(b=102530;102568>=b;b++)g[b]=0;for(b=102570;102588>=b;b++)g[b]=0;for(b=102590;102598>=b;b++)g[b]=0;for(b=102601;102603>=b;b++)g[b]=
0;for(b=102605;102628>=b;b++)g[b]=0;for(b=102629;102646>=b;b++)g[b]=2;for(b=102648;102700>=b;b++)g[b]=2;for(b=102701;102703>=b;b++)g[b]=0;for(b=102707;102730>=b;b++)g[b]=2;for(b=102733;102758>=b;b++)g[b]=2;for(b=102767;102900>=b;b++)g[b]=0;for(b=102965;102969>=b;b++)g[b]=0;for(b=102971;102973>=b;b++)g[b]=0;for(b=102975;102989>=b;b++)g[b]=0;for(b=102990;102992>=b;b++)g[b]=1;for(b=102997;103002>=b;b++)g[b]=0;for(b=103003;103008>=b;b++)g[b]=2;for(b=103009;103011>=b;b++)g[b]=0;for(b=103012;103014>=b;b++)g[b]=
2;for(b=103019;103021>=b;b++)g[b]=0;for(b=103022;103024>=b;b++)g[b]=2;for(b=103029;103031>=b;b++)g[b]=0;for(b=103032;103034>=b;b++)g[b]=2;for(b=103065;103068>=b;b++)g[b]=0;for(b=103074;103076>=b;b++)g[b]=0;for(b=103077;103079>=b;b++)g[b]=1;for(b=103080;103082>=b;b++)g[b]=0;for(b=103083;103085>=b;b++)g[b]=2;for(b=103090;103093>=b;b++)g[b]=0;for(b=103097;103099>=b;b++)g[b]=0;for(b=103100;103102>=b;b++)g[b]=2;for(b=103107;103109>=b;b++)g[b]=0;for(b=103110;103112>=b;b++)g[b]=2;for(b=103113;103116>=b;b++)g[b]=
0;for(b=103117;103120>=b;b++)g[b]=2;for(b=103153;103157>=b;b++)g[b]=0;for(b=103158;103162>=b;b++)g[b]=2;for(b=103163;103165>=b;b++)g[b]=0;for(b=103166;103168>=b;b++)g[b]=1;for(b=103169;103171>=b;b++)g[b]=2;for(b=103186;103188>=b;b++)g[b]=0;for(b=103189;103191>=b;b++)g[b]=2;for(b=103192;103195>=b;b++)g[b]=0;for(b=103196;103199>=b;b++)g[b]=2;for(b=103200;103224>=b;b++)g[b]=0;for(b=103225;103227>=b;b++)g[b]=1;for(b=103232;103237>=b;b++)g[b]=0;for(b=103238;103243>=b;b++)g[b]=2;for(b=103244;103246>=b;b++)g[b]=
0;for(b=103247;103249>=b;b++)g[b]=2;for(b=103254;103256>=b;b++)g[b]=0;for(b=103257;103259>=b;b++)g[b]=2;for(b=103264;103266>=b;b++)g[b]=0;for(b=103267;103269>=b;b++)g[b]=2;for(b=103300;103375>=b;b++)g[b]=0;for(b=103381;103383>=b;b++)g[b]=0;for(b=103384;103386>=b;b++)g[b]=1;for(b=103387;103389>=b;b++)g[b]=0;for(b=103390;103392>=b;b++)g[b]=2;for(b=103397;103399>=b;b++)g[b]=0;for(b=103400;103471>=b;b++)g[b]=2;for(b=103476;103478>=b;b++)g[b]=0;for(b=103479;103481>=b;b++)g[b]=2;for(b=103486;103488>=b;b++)g[b]=
0;for(b=103489;103491>=b;b++)g[b]=2;for(b=103492;103495>=b;b++)g[b]=0;for(b=103496;103499>=b;b++)g[b]=2;for(b=103528;103543>=b;b++)g[b]=0;for(b=103544;103548>=b;b++)g[b]=2;for(b=103549;103551>=b;b++)g[b]=0;for(b=103552;103554>=b;b++)g[b]=1;for(b=103555;103557>=b;b++)g[b]=2;for(b=103558;103560>=b;b++)g[b]=0;for(b=103571;103573>=b;b++)g[b]=0;for(b=103574;103576>=b;b++)g[b]=2;for(b=103577;103580>=b;b++)g[b]=0;for(b=103581;103583>=b;b++)g[b]=2;for(b=103600;103694>=b;b++)g[b]=0;for(b=103700;103793>=b;b++)g[b]=
2;for(b=103794;103871>=b;b++)g[b]=0;for(b=103900;103971>=b;b++)g[b]=2;q("extend-esri")&&(n.WKIDUnitConversion=g);return g})},"esri/geometry/screenUtils":function(){define("dojo/_base/array dojo/_base/lang dojo/sniff ../kernel ./Point ./ScreenPoint ./Polyline ./Polygon ./Multipoint ./Extent".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a=function(){return 9>b("ie")?function(a,b,c,d,e,f,g,l,h){var k=[],m=Math.round,r,t=g.length,p,v,u,y,n,w;for(r=0;r<t;r++)if(p=g[r],y=l?l(p[0][0],p[0][1],h):p[0],1<(u=
p.length))for(n=m((y[0]-a)*c+e),w=m((b-y[1])*d+f),y=l?l(p[1][0],p[1][1],h):p[1],v=m((y[0]-a)*c+e),y=m((b-y[1])*d+f),k.push("M",n+","+w,"L",v+","+y),v=2;v<u;v++)y=l?l(p[v][0],p[v][1],h):p[v],n=m((y[0]-a)*c+e),w=m((b-y[1])*d+f),k.push(n+","+w);else n=m((y[0]-a)*c+e),w=m((b-y[1])*d+f),k.push("M",n+","+w);return k}:function(a,b,c,d,e,f,g,l,h,p){var k=[],m,r,t,v,u,y,x=Math.round;m=0;for(t=g?g.length:0;m<t;m++){u=g[m];k.push("M");r=0;for(v=u?u.length:0;r<v;r++)y=l?l(u[r][0],u[r][1],h):u[r],k.push(x((y[0]-
a)*c+e)+","+x((b-y[1])*d+f));p||k.push("Z")}return k}}(),d={toScreenPoint:function(a,b,c,d,e){var k=a.spatialReference,m=d.spatialReference,f=d.x;d=d.y;k&&m&&!k.equals(m)&&k._canProject(m)&&(k=k.isWebMercator()?h.lngLatToXY(f,d):h.xyToLngLat(f,d,!0),f=k[0],d=k[1]);f=(f-a.xmin)*(b/a.getWidth());d=(a.ymax-d)*(c/a.getHeight());e||(f=Math.round(f),d=Math.round(d));return new p(f,d)},toScreenGeometry:function(a,b,d,k){var m=a.xmin,r=a.ymax,g=b/a.getWidth(),t=d/a.getHeight(),p=q.forEach,x=Math.round;if(k instanceof
h)return new h(x((k.x-m)*g),x((r-k.y)*t));if(k instanceof e){a=new e;var n=a.points;p(k.points,function(a,b){n[b]=[x((a[0]-m)*g),x((r-a[1])*t)]});return a}if(k instanceof c)return new c(x((k.xmin-m)*g),x((r-k.ymin)*t),x((k.xmax-m)*g),x((r-k.ymax)*g));if(k instanceof l){a=new l;var w=a.paths,C;p(k.paths,function(a,b){C=w[b]=[];p(a,function(a,b){C[b]=[x((a[0]-m)*g),x((r-a[1])*t)]})});return a}if(k instanceof f){a=new f;var H=a.rings,E;p(k.rings,function(a,b){E=H[b]=[];p(a,function(a,b){E[b]=[x((a[0]-
m)*g),x((r-a[1])*t)]})});return a}},_toScreenPath:function(b,c,d,e,f,r){var k=e instanceof l,m=b.spatialReference,g=e.spatialReference,t,p;m&&g&&!m.equals(g)&&m._canProject(g)&&(m.isWebMercator()?t=h.lngLatToXY:(t=h.xyToLngLat,p=!0));return a(b.xmin,b.ymax,c/b.getWidth(),d/b.getHeight(),f,r,k?e.paths:e.rings,t,p,k)},toMapPoint:function(a,b,c,d){return new h(a.xmin+d.x/(b/a.getWidth()),a.ymax-d.y/(c/a.getHeight()),a.spatialReference)},toMapGeometry:function(a,b,d,k){var m=a.xmin,r=a.ymax,g=a.spatialReference,
t=b/a.getWidth(),p=d/a.getHeight(),x=q.forEach;if(k instanceof h)return new h(m+k.x/t,r-k.y/p,g);if(k instanceof e){a=new e(g);var n=a.points;x(k.points,function(a,b){n[b]=[m+a[0]/t,r-a[1]/p]});return a}if(k instanceof c)return new c(m+k.xmin/t,r-k.ymin/p,m+k.xmax/t,r-k.ymax/p,g);if(k instanceof l){a=new l(g);var w=a.paths,C;x(k.paths,function(a,b){C=w[b]=[];x(a,function(a,b){C[b]=[m+a[0]/t,r-a[1]/p]})});return a}if(k instanceof f){a=new f(g);var H=a.rings,E;x(k.rings,function(a,b){E=H[b]=[];x(a,
function(a,b){E[b]=[m+a[0]/t,r-a[1]/p]})});return a}}};b("extend-esri")&&n.mixin(n.getObject("geometry",!0,g),d);return d})},"esri/layers/GraphicsLayer":function(){define("require dojo/_base/declare dojo/_base/Deferred dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/_base/window dojo/dom-attr dojo/dom-construct dojo/dom-style dojo/dom dojox/gfx dojox/gfx/matrix ./gfxSniff!esri-svg?dojox/gfx/filters ./layer ./support/webglUtils ./support/WebGLSurface ../kernel ../lang ../sniff ../Color ../domUtils ../symbols/MarkerSymbol ../symbols/SimpleMarkerSymbol ../symbols/utils ../geometry/Point ../geometry/ScreenPoint ../geometry/Extent ../geometry/mathUtils ../geometry/screenUtils ../PluginTarget ./gfxSniff!esri-svg?dojox/gfx/svgext".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H,E,F,I,X,N){var G=-1!==d.renderer.toLowerCase().indexOf("svg"),Q=-1!==d.renderer.toLowerCase().indexOf("canvas"),M=Q?"canvas-2d":d.renderer,U=9>v("ie");l=10===v("ie");var O=void 0===v("ie")&&7==v("trident"),L=l||O,ba=v("esri-touch"),P=!!v("chrome"),V=k.isWebGLEnabled(),Y=V||Q;k=n(null,{declaredClass:"esri.layers._GraphicsContainer",_setMap:function(a,b){var k,m=this._connects=[];this._map=a;this._useWillChange="css-transforms"===a.navigationMode&&
G&&v("esri-will-change");Y?(k=e.create("div",{style:{position:"absolute",overflow:"visible"}},b),this._surface={getEventSource:function(){return k}},Q&&(m.push(g.connect(k,"onmousedown",this,this._canvasDownHandler)),m.push(g.connect(k,"onmouseup",this,this._canvasUpHandler)),m.push(g.connect(k,"onclick",this,this._canvasClickHandler))),V&&(this._webglSurface=new u({map:a,node:k}))):(k=(this._surface=d.createSurface(b,a.width,a.height)).getEventSource(),this._useWillChange&&c.set(k,"will-change",
"transform"),c.set(k=U?k.parentNode:k,{overflow:"visible",position:"absolute"}));m.push(g.connect(a,"onResize",this,"_onResizeHandler"));this._useWillChange&&(m.push(g.connect(a,"onPan",this,"_onPanHandler")),m.push(g.connect(a,"onPanEnd",this,"_onPanEndHandler")),m.push(g.connect(a,"onExtentChange",this,"_onExtentChangeHandler")));return k},_reorderLayer:function(a,b,c){b=b.getEventSource();Y&&"svg"===a.surfaceType&&(b=b.parentNode);e.place(b,this._surface.getEventSource(),c)},_onPanHandler:function(a,
b){var d=this._map.__visibleRect;a=d.x+b.x;b=d.y+b.y;this._panDx=a;this._panDy=b;Y||c.set(this._surface.getEventSource(),r._css.names.transform,r._css.translate(a,b))},_onPanEndHandler:function(a,b){b=this._map.__visibleRect;a=b.x;b=b.y;this._panDx=a;this._panDy=b;Y||c.set(this._surface.getEventSource(),r._css.names.transform,r._css.translate(a,b))},_onExtentChangeHandler:function(a,b,d,e){d&&(this._panDy=this._panDx=0,Y||c.set(this._surface.getEventSource(),r._css.names.transform,r._css.translate(0,
0)))},_getTransform:function(){return{dx:this._panDx||0,dy:this._panDy||0}},_onResizeHandler:function(a,b,d){a=this._surface.getEventSource();var e=this._map,k;U&&c.set(a=a.parentNode,{width:b+"px",height:d+"px",clip:"rect(0px "+b+"px "+d+"px 0px)"});f.set(a,"width",b);f.set(a,"height",d);this._surface.declaredClass||p.forEach(a.childNodes,function(a){f.set(a,"width",b);f.set(a,"height",d)});e.loaded&&(e.graphics.suspended||(e.graphics._resized=!0),p.forEach(e.graphicsLayerIds,function(a){k=e.getLayer(a);
k.suspended||(k._resized=!0,k._childLayer&&(k._childLayer._resized=!0));k._updateSVGFilters(null,null,b,d)}),e.graphics._updateSVGFilters(null,null,b,d),e._labels&&e._labels._updateSVGFilters(null,null,b,d))},_cleanUp:function(){p.forEach(this._connects,g.disconnect,g);this._map=this._surface=null},_processEvent:function(a){var b=this._map;a.screenPoint=new E(a.pageX-b.position.x,a.pageY-b.position.y);a.mapPoint=b.toMap(a.screenPoint)},_canvasDownHandler:function(a){this._processEvent(a);this._downPt=
a.screenPoint.x+","+a.screenPoint.y},_canvasUpHandler:function(a){this._processEvent(a);this._upPt=a.screenPoint.x+","+a.screenPoint.y},_tolerance:15,_isPrimaryMatch:function(a,b,c,d){if(!a.visible||!b)return!1;var e=b.getTransformedBoundingBox(),k;return e?(k=new F(e[0].x,e[0].y,e[2].x,e[2].y),delete k.spatialReference,ba?k.intersects(c):k.contains(d)):p.some(b.children||[],function(a){e=a.getTransformedBoundingBox();k=new F(e[0].x,e[0].y,e[2].x,e[2].y);delete k.spatialReference;return ba?k.intersects(c):
k.contains(d)})},_canvasClickHandler:function(a){if(this._downPt&&this._upPt&&this._downPt===this._upPt){this._processEvent(a);var b=this._map,c=p.map(b.graphicsLayerIds,function(a){return b.getLayer(a)});c.push(b.graphics);c.reverse();var c=p.filter(c,function(a){return a.loaded&&!a.hasWebGLSurface()&&a._mouseEvents&&!a.suspended&&(!y.isDefined(a.opacity)||0<a.opacity)}),d=a.screenPoint,e=this._tolerance,k=d.x-e,m=d.y+e,f=d.x+e,e=d.y-e,r=new F(k,e,f,m),k=b.toMap(new E(k,m)),f=b.toMap(new E(f,e)),
m=k.spatialReference._getInfo(),g=new F(F.prototype._normalizeX(k.x,m).x,k.y,F.prototype._normalizeX(f.x,m).x,f.y,k.spatialReference),l;delete r.spatialReference;p.some(c,function(a){a=p.filter(a.graphics,function(a){return this._isPrimaryMatch(a,a.getDojoShape(),r,d)||!(!a._bgShape||!this._isPrimaryMatch(a,a._bgShape,r,d))},this);a.reverse();if(0<a.length){var b;p.some(a,function(a){return a.geometry&&g.intersects(a.geometry)?(b=a,!0):!1});if(b)return l=b,!0}return!1},this);l&&(c=l.getLayer())&&
(a.graphic=l,c.onClick(a))}}});t=n(t,{declaredClass:"esri.layers._GraphicsLayer",managedSuspension:!0,surfaceType:M,webglEnabled:V,renderer:null,_eventMap:{"graphic-add":["graphic"],"graphic-remove":["graphic"],"renderer-change":["renderer"]},_suspendGraphics:!1,constructor:function(a,b){a=a||{};if(h.isString(a)||h.isObject(a)&&(a.layerDefinition||a.query))a=b;this._params=h.mixin({displayOnPan:!0,drawMode:!0,styling:!0},a);b=this._params.dataAttributes;"string"===typeof b&&(b=[b]);this.styling=G?
this._params.styling:!0;this.dataAttributes=b;this.infoTemplate=a&&a.infoTemplate;this.graphics=[];this._draw=h.hitch(this,this._draw);this._refresh=h.hitch(this,this._refresh);this._acquireSVGMarker=h.hitch(this,this._acquireSVGMarker);this._evalSurfaceType=h.hitch(this,this._evalSurfaceType);this._setSurfaceType=h.hitch(this,this._setSurfaceType);this.setWebGLEnabled(null!=this._params.webglEnabled?this._params.webglEnabled:this.webglEnabled);this.registerConnectEvents()},getNode:function(){return this._div&&
this._div.getEventSource()},setDrawMode:function(a){this._params.drawMode=a},suspendGraphics:function(a){this._suspendGraphics=a;p.forEach(this.graphics,function(b){b._suspended=a})},setWebGLEnabled:function(a){var b=this.webglEnabled;this.webglEnabled=(a||!1)&&V;b!==this.webglEnabled&&(this._evalSurfaceType(),this.onWebGLEnabledChange())},hasWebGLSurface:function(){return"webgl"===this.surfaceType},_getSurfaceType:function(a){return a&&"webgl"===a.surfaceType?"webgl":M},_evalSurfaceType:function(a){V&&
(a?this._setSurfaceType():null==this._evalSurfaceTimerHandle&&(this._evalSurfaceTimerHandle=setTimeout(this._setSurfaceType,0)))},_hasPendingSurfaceEval:function(){return!!this._evalSurfaceTimerHandle},_setSurfaceType:function(){clearTimeout(this._evalSurfaceTimerHandle);this._evalSurfaceTimerHandle=null;var a=this._canUseWebGLSurface()?"webgl":M;this.surfaceType!==a?(this.surfaceType=a,this._handleSurfaceChange(),this.onSurfaceChange()):this._pendingRedraw&&this._redraw()},_handleSurfaceChange:function(){this._cancelWebGLDepsLoad();
this._webglDepsPromise=this._prepareToAttach(this._map);this._webglDepsPromise.always(h.hitch(this,function(a){this._webglDepsPromise=null;a&&"cancel"===a.dojoType||this._evalSurface()}))},_cancelWebGLDepsLoad:function(){this._webglDepsPromise&&!this._webglDepsPromise.isFulfilled()&&this._webglDepsPromise.cancel();this._webglDepsPromise=null},_evalSurface:function(){var a=this._map,b=this._div;a&&b&&this._getSurfaceType(b)!==this.surfaceType&&(a._detachGraphicsLayer(this),a._attachGraphicsLayer(this))},
_canUseWebGLSurface:function(a){a=a||this._map;return this.webglEnabled&&(!a||a.webglEnabled&&(a.ownsWebGLContext(this)||a.isWebGLContextAvailable()))&&this._params.drawMode&&this._isWebGLCompatible()},_isWebGLCompatible:function(){return!1},_prepareToAttach:function(a){var c=new b;!this.webglDeps&&this._canUseWebGLSurface(a)?q(["./support/webglDeps"],h.hitch(this,function(a){this.webglDeps=a;c.isFulfilled()||c.resolve()})):c.resolve();return c.promise},_setMap:function(a,b){this.inherited(arguments);
this._map=a;this._evalSurfaceType(!0);this._webglChangeMapHandle=a.on("webgl-enabled-change",h.hitch(this,function(){this._evalSurfaceType()}));this._wrap=a.wrapAround180;this._srInfo=a.spatialReference._getInfo();this._svgFilters={};this._lineMarkers={};if(this.hasWebGLSurface())a.acquireWebGLContext(this),this._div=a._gc._webglSurface.createRenderer(this.webglDeps.WebGLRenderer,a.width,a.height,this);else{if("svg"===this.surfaceType)if(Y){b=d.createSurface(b.getEventSource(),a.width,a.height);var e=
b.getEventSource();c.set(e,{position:"absolute",overflow:"visible",pointerEvents:"none"});this._map._gc._useWillChange&&c.set(e,"will-change","transform");this._div=b.createGroup();c.set(this._div.getEventSource(),"pointer-events","auto")}else this._div=b.createGroup();else b=d.createSurface(b.getEventSource(),a.width,a.height),c.set(b.rawNode,"position","absolute"),this._div=b.createGroup(),this._renderProto=this._div.constructor.prototype._render,this._div._render=h.hitch(this,this._canvasRender);
this._bgGroup=this._div.createGroup()}this._div.getEventSource().id=this.id+"_layer";this._initOpacity();return this._div},_unsetMap:function(a,b){a.releaseWebGLContext(this);"webgl"===this._div.surfaceType?a._gc._webglSurface.destroyRenderer(this._div):(p.forEach(this.graphics,function(a){a._shape=null}),"svg"===this.surfaceType?Y?(b=this._div.parent,this._div.clear(),b.remove(this._div),e.destroy(this._div.getEventSource()),e.destroy(b.getEventSource())):(this._div.clear(),b.remove(this._div),e.destroy(this._div.getEventSource())):
(b=this._div.getParent(),b._parent={},e.destroy(b.rawNode),b.destroy()));this._map=this._div=this._svgFilters=this._lineMarkers=null;this._pendingRedraw=!1;clearTimeout(this._wakeTimer);this._wakeTimer=null;clearTimeout(this._evalSurfaceTimerHandle);this._evalSurfaceTimerHandle=null;this._webglChangeMapHandle&&this._webglChangeMapHandle.remove();this._cancelWebGLDepsLoad();this._disableDrawConnectors();this.inherited(arguments)},_initOpacity:function(){var a=this.opacity;y.isDefined(a)&&1>a&&this.setOpacity(a,
!0)},_onZoomStartHandler:function(){this.hasWebGLSurface()||x.hide(this._div.getEventSource())},_onExtentChangeHandler:function(a,b,c,d){clearTimeout(this._wakeTimer);this._wakeTimer=null;c?(a=this._map.__visibleRect,b=this._div,this._evalSDRenderer(),this._refresh(!0),this._params._child||this._updateTransform(b,a.x,a.y,!0),this._renderProto&&b.surface.pendingRender?this._dirty=!0:this.suspended||x.show(b.getEventSource())):this._resized&&(this._resized=!1,this._refresh(!1));if(0<this.graphics.length)this.onUpdate()},
_canvasRender:function(){var a=this._div;this._dirty&&(delete this._dirty,this.suspended||x.show(a.getEventSource()));return this._renderProto.apply(a,arguments)},_refresh:function(a){if(!this.hasWebGLSurface()){var b=this.graphics,c=b.length,d,e=this._draw;for(d=0;d<c;d++)e(b[d],a)}},refresh:function(){this._refresh(!0)},_redraw:function(){this._pendingRedraw=!1;this.hasWebGLSurface()?this._div&&this._div.redraw():this._refresh(!0)},redraw:function(){this._hasPendingSurfaceEval()?this._pendingRedraw=
!0:this._redraw()},_getTransform:function(){var a={dx:0,dy:0};this._map&&(this._map._gc._useWillChange?a=this._map._gc._getTransform():this._div&&!this.hasWebGLSurface()&&(a=this._div.getTransform()));return a},_onPanHandler:function(a,b){this._panDx=b.x;this._panDy=b.y;a=this._map.__visibleRect;this._updateTransform(this._div,a.x+b.x,a.y+b.y);O&&this._updateSVGMarkers()},_onPanEndUpdateHandler:function(a,b){a=this._map.__visibleRect;this._params._child||b.x===this._panDx&&b.y===this._panDy?(this._updateSVGFilters(-a.x,
-a.y),this._updateSVGMarkers()):this._updateTransform(this._div,a.x,a.y,!0);this._refresh(!1);if(this.graphics.length)this.onUpdate()},_onPanStartHandler:function(){x.hide(this._div.getEventSource())},_onPanEndHandler:function(){var a=this._map.__visibleRect,b=this._div;this._updateTransform(b,a.x,a.y,!0);this._refresh(!1);this._renderProto&&b.surface.pendingRender?this._dirty=!0:x.show(b.getEventSource());if(this.graphics.length)this.onUpdate()},_updateTransform:function(a,b,d,e){this.hasWebGLSurface()||
(this._map._gc._useWillChange?Y&&c.set(this._div.parent.getEventSource(),r._css.names.transform,r._css.translate(b,d)):a.setTransform(m.translate({x:b,y:d})),e&&(this._updateSVGFilters(-b,-d),this._updateSVGMarkers()))},onSuspend:function(){this.inherited(arguments);x.hide(this._div.getEventSource());clearTimeout(this._wakeTimer);this._wakeTimer=null;this._disableDrawConnectors()},onResume:function(a){this.inherited(arguments);a.firstOccurrence&&this._evalSDRenderer();this._enableDrawConnectors();
this._wakeTimer=this._wakeTimer||setTimeout(h.hitch(this,function(){this.suspended||this._map.__zooming||this._onExtentChangeHandler(null,null,!0)}),0)},_enableDrawConnectors:function(){var a=this._map,b=g.connect;this._disableDrawConnectors();this._params.displayOnPan?(this._params._child||(this._onPanHandler_connect=b(a,"onPan",this,"_onPanHandler")),this._onPanEndHandler_connect=b(a,"onPanEnd",this,"_onPanEndUpdateHandler")):(this._onPanStartHandler_connect=b(a,"onPanStart",this,"_onPanStartHandler"),
this._onPanEndHandler_connect=b(a,"onPanEnd",this,"_onPanEndHandler"));this._onZoomStartHandler_connect=b(a,"onZoomStart",this,"_onZoomStartHandler");this._onExtentChangeHandler_connect=b(a,"onExtentChange",this,"_onExtentChangeHandler")},_disableDrawConnectors:function(){var a=g.disconnect;a(this._onExtentChangeHandler_connect);a(this._onZoomStartHandler_connect);a(this._onPanHandler_connect);a(this._onPanStartHandler_connect);a(this._onPanEndHandler_connect);this._onExtentChangeHandler_connect=
this._onZoomStartHandler_connect=this._onPanHandler_connect=this._onPanStartHandler_connect=this._onPanEndHandler_connect=null},_updateExtent:function(a){var b=a.geometry;if(!b)a._extent=null;else if(!(a._extent=b.getExtent())){var c,d;if("esri.geometry.Point"===b.declaredClass)c=b.x,d=b.y;else if("esri.geometry.Multipoint"===b.declaredClass)c=b.points[0][0],d=b.points[0][1];else{a._extent=null;return}a._extent=new F(c,d,c,d,b.spatialReference)}},_intersects:function(a,b,c){var d=a.spatialReference,
e=b.spatialReference,k=d&&e&&!d.equals(e)&&d._canProject(e)&&4326===e.wkid;if(this._wrap&&!c){c=[];var d=a._getFrameWidth(),m=this._srInfo,f=a._clip?a._getAvailExtent():a.extent,r,g,l,h,t=[];r=b._partwise;k&&(f=a.geographicExtent,m=e._getInfo());a=f._getParts(m);if(r&&r.length)for(b=[],e=0,k=r.length;e<k;e++)b=b.concat(r[e]._getParts(m));else b=b._getParts(m);e=0;for(k=b.length;e<k;e++)for(l=b[e],m=0,f=a.length;m<f;m++)if(h=a[m],h.extent.intersects(l.extent))for(r=0,g=l.frameIds.length;r<g;r++)c.push((h.frameIds[0]-
l.frameIds[r])*d);e=0;for(k=c.length;e<k;e++)r=c[e],p.indexOf(c,r)===e&&t.push(r);return t.length?t:null}return(k?a.geographicExtent:a.extent).intersects(b)?[0]:null},_defaultMarker:{type:"simplemarkersymbol",style:"square",size:1,xoffset:0,yoffset:0,angle:0},_draw:function(a,b){if(!this.hasWebGLSurface()&&this._params.drawMode&&this._map&&!this.suspended&&!this._map.__zooming&&!this._resized)try{var c=a._extent,d,e,k=!G||this.styling,m=G&&this.dataAttributes,f=a.getDojoShape(),r;if(!a._suspended&&
a.visible&&c&&(d=this._intersects(this._map,c,a.geometry._originOnly))&&(e=k?this._getSymbol(a):this._defaultMarker)){if(a._offsets&&a._offsets.join(",")===d.join(",")?r=!0:a._offsets=d,!f||b||!r){var g=a.geometry.type;b={graphic:a};var l=a._bgShape,h=k&&!a.symbol?this._getRenderer(a):null,t=h&&h.backgroundFillSymbol;if("point"===g)this._isInvalidShape(e,f)&&this._removeShape(a),a._shape=this._drawPoint(this._div,a.geometry,e,a.getDojoShape(),d,h,a),k&&this._symbolizePoint(a.getDojoShape(),e,h,a);
else if("multipoint"===g)this._drawMarkers(a,e,d,h),k&&this._symbolizeMarkers(a,e,h);else{var p,g=e,u,v,x;k&&(g=(p="simplemarkersymbol"===e.type||"picturemarkersymbol"===e.type||"textsymbol"===e.type?e:null)?t:e);k&&g&&-1<g.type.indexOf("fillsymbol")&&(u=this._bgGroup,x=!(!u||!p));l&&!x&&this._removeBgShape(a);if(g){!x&&(this._isInvalidShape(g,a._shape)||a._shape&&a._shape._isCentroidMarker)&&this._removeShape(a,!1);if(v=this._drawShape(a,d,u||this._div,x?l:a.getDojoShape()))v._isCentroidMarker=!1;
k&&this._symbolizeShape(v,g,h,g===t,a);a[x?"_bgShape":"_shape"]=v}if(p){(this._isInvalidShape(p,a._shape)||a._shape&&!a._shape._isCentroidMarker)&&this._removeShape(a,!1);var y=a.geometry.getCentroid();if(v=y&&this._drawPoint(this._div,y,p,a._shape,d,h,a))v._isCentroidMarker=!0,this._symbolizePoint(v,p,h,a);a._shape=v}}Q||(a._bgShape&&this._initNode(a,a._bgShape,a._bgShape!==l,b,m),a._shape&&this._initNode(a,a._shape,a._shape!==f,b,m));a._applyDataAttrs();b.node=a.getNode();this.onGraphicDraw(b)}}else f&&
this._removeShape(a)}catch(ka){this._errorHandler(ka,a)}},_initNode:function(a,b,c,d,e){if(b=b&&b.getNode())b.e_graphic=a,this._addDataAttrs(a,e,b),c&&(d.node=b,this.onGraphicNodeAdd(d))},_removeShape:function(a,b,c){var d=a.getDojoShape(),e=d&&d.getNode();d&&!c&&(d.removeShape(),d.destroy());a._shape=a._offsets=null;!1!==b&&this._removeBgShape(a,c);if(e&&(e.e_graphic=null,!Q))this.onGraphicNodeRemove({graphic:a,node:e})},_removeBgShape:function(a,b){var c=a._bgShape,d=c&&c.getNode();c&&!b&&(c.removeShape(),
c.destroy());a._bgShape=null;if(d&&(d.e_graphic=null,!Q))this.onGraphicNodeRemove({graphic:a,node:d})},_addDataAttrs:function(a,b,c){var d=a.attributes,e,k=b?b.length:0,m=this._getRenderer(a);if(c&&d){for(e=0;e<k;e++)(c=b[e])&&a.attr("data-"+c,d[c]);!this.styling&&m&&(m.getBreakIndex?(b=m.getBreakIndex(a),a.attr("data-class-break",-1!==b?b:null)):m.getUniqueValueInfo&&(b=m.getUniqueValueInfo(a),a.attr("data-unique-value",b?b.value:null)))}},_drawShape:function(a,b,c,d){a=a.geometry;var e=a.type,k=
this._map,m=k.extent,f=k.width,r=k.height,k=k.__visibleRect,g=[],l,h;l="extent"===e;if("rect"===e||l)g={x:0,y:0,spatialReference:a.spatialReference},g.x=l?a.xmin:a.x,g.y=l?a.ymax:a.y,e=X.toScreenPoint(m,f,r,g),g.x=l?a.xmax:a.x+a.width,g.y=l?a.ymin:a.y+a.height,a=X.toScreenPoint(m,f,r,g),b={x:e.x-k.x+b[0],y:e.y-k.y,width:Math.abs(a.x-e.x),height:Math.abs(a.y-e.y)},0===b.width&&(b.width=1),0===b.height&&(b.height=1),d=this._drawRect(c,d,b);else if("polyline"===e||"polygon"===e){l=0;for(h=b.length;l<
h;l++)g=g.concat(X._toScreenPath(m,f,r,a,-k.x+b[l],-k.y));d=this._drawPath(c,d,g);this._rendererLimits&&("polyline"===e?this._clipPolyline(d,a):this._clipPolygon(d,a))}return d},_drawRect:function(a,b,c){return b?b.setShape(c):a.createRect(c)},_drawImage:function(a,b,c){return b?b.setShape(c):a.createImage(c)},_drawCircle:function(a,b,c){return b?b.setShape(c):a.createCircle(c)},_drawPath:function(){return U?function(a,b,c,e){c=e?c:c.join(" ");if(b)return b.setShape(c);b=a.createObject(e?d.Path:d.EsriPath,
c);a._overrideSize(b.getEventSource());return b}:function(a,b,c,d){c=d?c:c.join(" ");return b?b.setShape(c):a.createPath(c)}}(),_drawText:function(a,b,c){return b?b.setShape(c):a.createText(c)},_evalSDRenderer:function(a){var b=this._map,c=this.renderer,d,e=this._rndForScale;b&&b.loaded&&c&&c.getRendererInfo&&(d="zoom"===c.rangeType?c.getRendererInfoByZoom(b.getZoom()):c.getRendererInfoByScale(b.getScale()));this._rndForScale=d&&d.renderer;a||this._rndForScale==e||this.emit("renderer-change",{renderer:this._rndForScale})},
_getRenderer:function(a){var b=this._rndForScale||this.renderer;a&&b&&b.getObservationRenderer&&(b=b.getObservationRenderer(a));return b},_getSymbol:function(a){var b=this._getRenderer();return a.symbol||b&&b.getSymbol(a)},_getVariable:function(a,b,c){var d;a&&(d=(a=a.getVisualVariablesForType(b,c))&&a[0]);return d},_applyOpacity:function(a,b,c,d){b=b.getOpacity(d,{opacityInfo:c});null!=b&&(a=new z(a),a.a=b);return a},_symbolizeShape:function(a,b,c,d,e){var k=b.getStroke(),m=b.getFill(),f=b.type,
r,g,l=-1!==f.indexOf("linesymbol"),t=-1!==f.indexOf("fillsymbol")?null:this._getVariable(c,"sizeInfo",!1),p=this._getVariable(c,"colorInfo",!1),u=this._getVariable(c,"opacityInfo",!1),v=l?"none"!==b.style:b.outline&&"none"!==b.outline.style,x=l?null:this._getVariable(c,"sizeInfo","outline"),t=(t=d?x:x||t)?c.getSize(e,{sizeInfo:t,resolution:this._map.getResolutionInMeters(),scale:this._map.getScale()}):null;d&&(p=u=null);(p||u)&&"picturefillsymbol"!==f&&(l?(r=k&&k.color,p&&(r=c.getColor(e,{colorInfo:p})||
r),r&&u&&(r=this._applyOpacity(r,c,u,e))):m&&m.toCss&&(g=m,p&&(g=c.getColor(e,{colorInfo:p})||g),g&&u&&(g=this._applyOpacity(g,c,u,e))));a.setStroke(!v||null==t&&!r?k:h.mixin({},k,null!=t?{width:t}:null,r&&{color:r})).setFill(g||m);l&&C.applyLineMarker(a,b,r,this._acquireSVGMarker)},_smsToPath:function(){return U?function(a,b,c,d,e,k,m,f,r){switch(b){case a.STYLE_SQUARE:return["M",e+","+m,"L",k+","+m,k+","+f,e+","+f,"X","E"];case a.STYLE_CROSS:return["M",c+","+m,"L",c+","+f,"M",e+","+d,"L",k+","+
d,"E"];case a.STYLE_X:return["M",e+","+m,"L",k+","+f,"M",e+","+f,"L",k+","+m,"E"];case a.STYLE_DIAMOND:return["M",c+","+m,"L",k+","+d,c+","+f,e+","+d,"X","E"];case a.STYLE_TARGET:return["M",e+","+m,"L",k+","+m,k+","+f,e+","+f,e+","+m,"M",e-r+","+d,"L",e+","+d,"M",c+","+(m-r),"L",c+","+m,"M",k+r+","+d,"L",k+","+d,"M",c+","+(f+r),"L",c+","+f,"E"]}}:function(a,b,c,d,e,k,m,f,r){switch(b){case a.STYLE_SQUARE:return["M",e+","+m,k+","+m,k+","+f,e+","+f,"Z"];case a.STYLE_CROSS:return["M",c+","+m,c+","+f,
"M",e+","+d,k+","+d];case a.STYLE_X:return["M",e+","+m,k+","+f,"M",e+","+f,k+","+m];case a.STYLE_DIAMOND:return["M",c+","+m,k+","+d,c+","+f,e+","+d,"Z"];case a.STYLE_TARGET:return["M",e+","+m,k+","+m,k+","+f,e+","+f,e+","+m,"M",e-r+","+d,e+","+d,"M",c+","+(m-r),c+","+m,"M",k+r+","+d,k+","+d,"M",c+","+(f+r),c+","+f]}}}(),_pathStyles:{square:1,cross:1,x:1,diamond:1,target:1},_typeMaps:{picturemarkersymbol:"image",picturefillsymbol:"path",simplefillsymbol:"path",simplelinesymbol:"path",cartographiclinesymbol:"path",
textsymbol:"text"},_isInvalidShape:function(a,b){b=b&&b.shape&&b.shape.type;var c=a&&a.type;a=a&&a.style;"rect"===b&&(b="path");c&&(a=this._typeMaps[c]||a);this._pathStyles[a]&&(a="path");return"shieldlabelsymbol"===c?!0:!(!b||!a||b===a)},_reArialFont:/\s*(^|,)\s*arial\s*(,|$)\s*/i,_fallbackFont:"Arial",_drawPoint:function(a,b,c,d,e,k,f){var r=c.type,g=this._map,l=g.__visibleRect,h=X.toScreenPoint(g.extent,g.width,g.height,b).offset(-l.x+e[0],-l.y),l=h.x,t=h.y,p;b=[];var u,v=this._getVariable(k,"rotationInfo",
!1),v=v?k.getRotationAngle(f,{rotationInfo:v}):null,x=this._getVariable(k,"sizeInfo",!1),g=x?k.getSize(f,{sizeInfo:x,shape:c.style,resolution:g.getResolutionInMeters(),scale:g.getScale()}):f.size;v&&b.push(m.rotategAt(v,h));if(0!==c.xoffset||0!==c.yoffset)u=m.translate(c.xoffset,-c.yoffset),b.push(u);0!==c.angle&&b.push(m.rotategAt(c.angle,h));if("simplemarkersymbol"===r)switch(p=c.style,k=Math.round,g=null!=g?g:c.size,p){case B.STYLE_SQUARE:case B.STYLE_CROSS:case B.STYLE_X:case B.STYLE_DIAMOND:c=
isNaN(g)?16:g/2;p=this._drawPath(a,d,this._smsToPath(B,p,l,t,k(l-c),k(l+c),k(t-c),k(t+c)));break;case B.STYLE_TARGET:f=c._targetWidth/2;h=c._targetHeight/2;p=this._drawPath(a,d,this._smsToPath(B,p,l,t,k(l-f),k(l+f),k(t-h),k(t+h),c._spikeSize));break;case B.STYLE_PATH:p=this._drawPath(a,d,c.path,!0);c=p.getBoundingBox();a=this._getScaleMatrix(c,g);1===a.xx&&1===a.yy||b.push(m.scaleAt(a.xx,a.yy,h));b.push(m.translate(-(c.x+c.width/2)+l,-(c.y+c.height/2)+t));break;default:c=isNaN(g)?16:g/2,p=this._drawCircle(a,
d,{cx:l,cy:t,r:c})}else if("shieldlabelsymbol"===r)p=c.width,h=c.height,d=a.createGroup(),p=a.createImage({x:l-p/2,y:t-h/2,width:p,height:h,src:c.url}),d.add(p),null!=c.font&&(t+=.2*c.getHeight(),a=a.createText({type:"text",text:c.text,x:l,y:t,align:"middle",decoration:c.decoration,rotated:c.rotated,kerning:c.kerning}),a.setFont(c.font),a.setFill(c.color),d.add(a)),p=d;else if("picturemarkersymbol"===r){if(null==g?(p=c.width,h=c.height):(h=g,p=c.width/c.height*h,u&&(null!=u.dx&&(u.dx=u.dx/c.width*
p),null!=u.dy&&(u.dy=u.dy/c.height*h))),p=this._drawImage(a,d,{x:l-p/2,y:t-h/2,width:p,height:h,src:c.url}),G&&(a=p.getNode()))c=(c=this._getVariable(k,"opacityInfo",!1))?k.getOpacity(f,{opacityInfo:c}):null,null!=c?a.setAttribute("opacity",c):a.setAttribute("opacity",1)}else if("textsymbol"===r){if(k=c.font){p=null!=g;f=k.family&&!this._reArialFont.test(k.family);if(p||f)k=new k.constructor(k.toJson());p&&k.setSize(g);f&&k.setFamily(k.family+","+this._fallbackFont)}p=this._drawText(a,d,{type:"text",
text:c.text,x:l,y:t,align:c.getSVGAlign(),decoration:c.decoration||k&&k.decoration,rotated:c.rotated,kerning:c.kerning});k&&p.setFont(k);G&&(a=p.getNode(),l=c.getSVGBaseline(),t=c.getSVGBaselineShift(),a&&(a.setAttribute("dominant-baseline",l),t&&a.setAttribute("baseline-shift",t),this._applyHalo(p,c.haloColor,c.haloSize)))}p.setTransform(m.multiply(b));p._wrapOffsets=e;return p},_acquireSVGMarker:function(a,b,c,d){a=this._getSVGMarkerId(b,d);var e=this._getSVGMarker(a);e||(e=C.createSVGMarker(b,
a,c,d),this._div.getParent().defNode.appendChild(e),this._lineMarkers[a]=e);return e},_getSVGMarkerId:function(a,b){return"marker_"+this._map.id+"_"+a.r+"_"+a.g+"_"+a.b+"_"+b},_getSVGMarker:function(a){return this._lineMarkers[a]},_updateSVGMarkers:function(){if(G&&L){var a=this._lineMarkers,b;for(b in a){var c=a[b];c.setAttribute("id",b+"_temp");c.setAttribute("id",b)}}},_applyHalo:function(a,b,c){var d=b&&c?this._getHaloId(b,c):null;a.setFilter(b&&c?v("webkit")||v("ff")?this._getDilateFilter(b,
c,d):this._getOffsetFilter(b,c,d):null)},_getDilateFilter:function(a,b,c){var d=this._getSVGFilter(c);d||(d=this._createSVGFilter({id:c},[w.feMorphology({operator:"dilate",radius:b,result:"dilated"}),w.feFlood({"flood-color":a.toCss(!0)}),w.feComposite({in2:"dilated",operator:"in",result:"composite"}),w.feMerge("composite","SourceGraphic")]));return d},_getOffsetFilter:function(a,b,c){var d=this._getSVGFilter(c);if(!d){a=a.toCss(!0);var d=this._offsetPrimitives,e,k=d.length,m=[],f=[];for(e=0;e<k;e++){var r=
d[e],g="offset"+r.dir,l="composite"+r.dir;f.push(l);m.push(w.feOffset({dx:r.dx*b,dy:r.dy*b,"in":"SourceAlpha",result:g}),w.feFlood({"flood-color":a}),w.feComposite({in2:g,operator:"in",result:l}))}f.push("SourceGraphic");m.push(w.feMerge.apply(w.feMerge,f));d=this._createSVGFilter({id:c},m)}return d},_offsetPrimitives:[{dir:"L",dx:-1,dy:0},{dir:"TL",dx:-1,dy:-1},{dir:"T",dx:0,dy:-1},{dir:"TR",dx:1,dy:-1},{dir:"R",dx:1,dy:0},{dir:"BR",dx:1,dy:1},{dir:"B",dx:0,dy:1},{dir:"BL",dx:-1,dy:1}],_getHaloId:function(a,
b){return"halo_"+this._map.id+"_"+this.id+"_"+a.r+"_"+a.g+"_"+a.b+"_"+a.a+"_"+b},_getSVGFilter:function(a){return this._svgFilters[a]},_createSVGFilter:function(a,b){b=w.createFilter(a,b);var c=this._map,d=c.__visibleRect;b.x=-d.x;b.y=-d.y;b.width=c.width;b.height=c.height;return this._svgFilters[a.id]=b},_updateSVGFilters:function(b,c,d,e){var k=this._svgFilters,m,f,r;for(f in k)if(m=k[f]){if(r=a.byId(f))null!=b&&r.setAttribute("x",b),null!=c&&r.setAttribute("y",c),null!=d&&r.setAttribute("width",
d),null!=e&&r.setAttribute("height",e);null!=b&&(m.x=b);null!=c&&(m.y=c);null!=d&&(m.width=d);null!=e&&(m.height=e)}},_getScaleMatrix:function(a,b){var c=a.width/a.height,d=1,e=1;isNaN(b)||(1<c?(d=b/a.width,e=b/c/a.height):(e=b/a.height,d=b*c/a.width));return{xx:d,yy:e}},_symbolizePoint:function(a,b,c,d){var e=b.type,k=b.style;if("shieldlabelsymbol"!==e&&"picturemarkersymbol"!==e){var m=b.getStroke();b=b.getFill();var k=k===B.STYLE_X||k===B.STYLE_CROSS,f=m&&m.color,r=k?f:b;if(c){var g=this._getVariable(c,
"colorInfo",!1),l=this._getVariable(c,"opacityInfo",!1);g&&(r=c.getColor(d,{colorInfo:g})||r);r&&l&&(r=this._applyOpacity(r,c,l,d));r&&(k?r!==f&&(m=m?h.mixin({},m):{},m.color=r):r!==b&&(b=r))}"textsymbol"===e?a.setFill(b):"simplemarkersymbol"===e&&a.setFill(b).setStroke(m)}},_drawMarkers:function(a,b,c,d){var e=a.geometry,k=e.points,m=a.getDojoShape()||this._div.createGroup(),f,r,g=k.length,l=[],h=0,p,t=c?c.length:0;m.children[0]&&this._isInvalidShape(b,m.children[0])&&m.clear();for(r=0;r<g;r++)for(f=
k[r],p=0;p<t;p++)l[0]=c[p],this._drawPoint(m,{x:f[0],y:f[1],spatialReference:e.spatialReference},b,m.children[h++],l,d,a);b=m.children.length;if(g*c.length<b)for(r=b-1;r>=g*c.length;r--)m.children[r].removeShape();a._shape=m},_symbolizeMarkers:function(a,b,c){var d=a.getDojoShape().children,e,k=d.length;for(e=0;e<k;e++)this._symbolizePoint(d[e],b,c,a)},_errorHandler:function(a,b){b&&(a.message="Unable to draw graphic (geometry:"+(b.geometry?b.geometry.declaredClass:null)+", symbol:"+(b.symbol?b.symbol.declaredClass:
null)+"): "+a.message);this.inherited(arguments)},_rendererLimits:function(){var a,b,c;U?(a=1E5,b=-1E5,c=1E5):v("chrome")&&6>v("chrome")&&(a=8150,b=-1E4,c=1E4);if(a)return{clipLimit:a,rangeMin:b,rangeMax:c,clipBBox:[-a,-a,a,a],clipSegments:[[[-a,-a],[a,-a]],[[a,-a],[a,a]],[[a,a],[-a,a]],[[-a,a],[-a,-a]]]}}(),_clipPolyline:function(a,b){b=this._getCorners(a,b);var c=b.br,d=this._rendererLimits,e=d.rangeMin,k=d.rangeMax,m=d.clipBBox,f=d.clipSegments,d=this._isPointWithinRange,r=this._isPointWithinBBox,
g=this._getClipperIntersection,l=this._getPlaneIndex;if(!d(b.tl,e,k)||!d(c,e,k)){U&&this._createSegments(a);var h=[];p.forEach(a.segments,function(a){a=a.args;var b=a.length,c=[],d;for(d=0;d<b;d+=2){var e=[a[d],a[d+1]],k=[a[d+2],a[d+3]],p=r(e,m),t=r(k,m);if(p^t){if(t=g([e,k],f))p?(d?c.push(t[1]):c.push(e,t[1]),h.push(c),c=[]):c.push(t[1],k)}else p?d?c.push(k):c.push(e,k):(t=l(e,m),p=l(k,m),-1!==t&&-1!==p&&t!==p&&(e=g([e,k],f,!0),0<e.length&&(e[t]||(t=e[t[0]]?t[0]:t[1]),e[p]||(p=e[p[0]]?p[0]:p[1]),
k=e[t],e=e[p],k&&c.push(k),e&&(c.push(e),h.push(c),c=[]))))}h.push(c)});a.setShape(this._getPathStringFromPaths(h))}},_clipPolygon:function(a,b){b=this._getCorners(a,b);var c=b.br,d=this._rendererLimits,e=d.clipLimit,k=d.rangeMin,m=d.rangeMax,f=d.clipBBox,r=d.clipSegments,d=this._isPointWithinRange,g=this._isPointWithinBBox,l=this._getClipperIntersection,t=this._getPlaneIndex,u=I._pointLineDistance;d(b.tl,k,m)&&d(c,k,m)||(U&&this._createSegments(a),b=p.filter(a.segments,function(a){return a.args&&
a.args.length}),b=p.map(b,function(a){var b=a.args,c=b.length,d=[];a=[];var k;for(k=0;k<c;k+=2){var m=[b[k],b[k+1]],v=[b[k+2],b[k+3]];if(k===c-2){d.push(m);break}var x=g(m,f),y=g(v,f);d.push(m);if(x^y){if(y=l([m,v],r))m=y[1],m[x?"inOut":"outIn"]=!0,d.push(m),a.push([x?"INOUT":"OUTIN",d.length-1,y[0]])}else if(!x){var x=t(m,f),n=t(v,f);-1!==x&&-1!==n&&x!==n&&(y=l([m,v],r,!0),0<y.length?(y[x]||(x=y[x[0]]?x[0]:x[1]),y[n]||(n=y[n[0]]?n[0]:n[1]),m=y[x],v=y[n],m&&(m.outIn=!0,d.push(m),a.push(["OUTIN",d.length-
1,x])),v&&(v.inOut=!0,d.push(v),a.push(["INOUT",d.length-1,n]))):h.isArray(x)&&h.isArray(n)&&(y=x.concat(n),y.sort(),"0123"===y.join("")&&(y=[],3===x[0]+x[1]?y.push([e,-e],[-e,e]):y.push([-e,-e],[e,e]),x=u(y[0],[m,v]),m=u(y[1],[m,v]),d.push(x<m?y[0]:y[1]))))}}var w=f[0],z=f[1],C=f[2],q=f[3];p.forEach(d,function(a){a[0]<w&&(a[1]>=z&&a[1]<=q?a[0]=w:(a[0]=w,a[1]=a[1]<z?z:q))});p.forEach(d,function(a){a[1]<z&&(a[0]>=w&&a[0]<=C?a[1]=z:(a[1]=z,a[0]=a[0]<w?w:C))});p.forEach(d,function(a){a[0]>C&&(a[1]>=
z&&a[1]<=q?a[0]=C:(a[0]=C,a[1]=a[1]<z?z:q))});p.forEach(d,function(a){a[1]>q&&(a[0]>=w&&a[0]<=C?a[1]=q:(a[1]=q,a[0]=a[0]<w?w:C))});b=0;c=a.length;if(0<c){do{v=a[b];k=a[(b+1)%c];if(v[2]===k[2]&&"INOUT"===v[0]&&"OUTIN"===k[0])if(m=v[1],k=k[1],m<k)for(m+=1;m<k;m++)d[m][2]=!0;else if(m>k){for(m+=1;m<d.length;m++)d[m][2]=!0;for(m=0;m<k;m++)d[m][2]=!0}b=(b+1)%c}while(0!==b)}c=d[0];b=d[d.length-1];c[2]&&(b[2]=!0,p.some(a,function(a){return 1===a[1]?(d.splice(d.length-1,0,h.clone(d[1])),!0):!1}));d=p.filter(d,
function(a){return a[2]?!1:!0});for(b=0;b<d.length-1;b++)c=d[b],(k=d[b+1])&&c[0]===k[0]&&c[1]===k[1]&&(k.outIn?c.outIn=!0:k.inOut&&(c.inOut=!0),d.splice(b+1,1));c=Math.abs;a=[];for(b=0;b<d.length-1;b++){v=d[b];m=v[0];v=v[1];x=c(m)===e;y=c(v)===e;k=d[b+1];n=k[0];k=k[1];var A=c(n)===e,B=c(k)===e;x&&B?a.push([b+1,[m,k]]):y&&A&&a.push([b+1,[n,v]])}for(b=a.length-1;0<=b;b--)k=a[b],m=d[k[0]-1],c=d[k[0]],m.outIn||m.inOut||c.outIn||c.inOut||d.splice(k[0],0,k[1]);c=d[0];b=d[d.length-1];c[0]===b[0]&&c[1]===
b[1]||d.push(c);return d}),a.setShape(this._getPathStringFromPaths(b)))},_getCorners:function(a,b){if(U){a=this._map;var c=b.getExtent(),d=c.spatialReference;b=a.toScreen(new H(c.xmin,c.ymax,d));a=a.toScreen(new H(c.xmax,c.ymin,d));return{tl:b,br:a}}a=a.getTransformedBoundingBox();return{tl:a[0],br:a[2]}},_createSegments:function(a){a.shape.path=a.vmlPath;a.segmented=!1;a._confirmSegmented();var b=a.segments;1<b.length&&(a.segments=p.filter(b,function(a,b,c){b=c[b+1];return"M"===a.action&&b&&"L"===
b.action?(a.args=a.args.concat(b.args),!0):!1}))},_getPathStringFromPaths:function(a){U?(a=p.map(a,function(a){return"m "+p.map(a,function(a,b){return(1===b?"l ":"")+a.join(",")}).join(" ")}),a.push("e")):a=p.map(a,function(a){return"M "+p.map(a,function(a){return a.join(",")}).join(" ")});return a.join(" ")},_isPointWithinBBox:function(a,b){var c=b[1],d=b[2],e=b[3],k=a[0];a=a[1];return k>b[0]&&k<d&&a>c&&a<e?!0:!1},_isPointWithinRange:function(a,b,c){var d=a.x;a=a.y;return d<b||a<b||d>c||a>c?!1:!0},
_getClipperIntersection:function(a,b,c){var d,e=I._getLineIntersection2,k=Math.round,m={length:0};for(d=0;4>d;d++){var f=e(a,b[d]);if(f)if(f[0]=k(f[0]),f[1]=k(f[1]),c)m[d]=f,m.length++;else return[d,f]}return c?m:null},_getPlaneIndex:function(a,b){var c=a[0];a=a[1];var d=b[0],e=b[1],k=b[2];b=b[3];return c<=d?a>=e&&a<=b?3:a<e?[0,3]:[2,3]:a<=e?c>=d&&c<=k?0:c<d?[3,0]:[1,0]:c>=k?a>=e&&a<=b?1:a<e?[0,1]:[2,1]:a>=b?c>=d&&c<=k?2:c<d?[3,2]:[1,2]:-1},onGraphicAdd:function(){},onGraphicRemove:function(){},onGraphicNodeAdd:function(){},
onGraphicNodeRemove:function(){},onGraphicDraw:function(){},onGraphicsClear:function(){},onRendererChange:function(){},onOpacityChange:function(){},onInfoTemplateChange:function(){},onSurfaceChange:function(){},onWebGLEnabledChange:function(){},setInfoTemplate:function(a){this.infoTemplate=a;this._evalSurfaceType();this.onInfoTemplateChange()},add:function(a,b){if(a._graphicsLayer===this)return a;a._suspended=this._suspendGraphics;b||this.graphics.push(a);a._graphicsLayer=this;a._sourceLayer||(a._layer&&
"esri.layers.GraphicsLayer"!==a._layer.declaredClass?a._sourceLayer=a._layer:"esri.layers.GraphicsLayer"!==this.declaredClass&&(a._sourceLayer=this));a._layer=this;this.hasWebGLSurface()||(this._updateExtent(a),this._draw(a));if(!b)this.onGraphicAdd(a);return a},remove:function(a,b,c){if(!b&&!c){b=this.graphics;var d;if(-1===(d=p.indexOf(b,a)))return null;if(!P||64<=P)b.splice(d,1);else{var e=b.length;if(e){for(;d<e;)b[d]=b[d+1],d++;b.length--}}}this.hasWebGLSurface()||a.getDojoShape()&&this._removeShape(a,
null,c);a._shape=a._graphicsLayer=null;this.onGraphicRemove(a);return a},clear:function(a,b){a=this.graphics;var c,d=!U;for(c=a.length-1;0<=c;c--)this.remove(a[c],null,d);this.graphics=[];this.hasWebGLSurface()||this._destroyAllNodes();if(!b)this.onGraphicsClear()},_destroyAllNodes:function(){if(!U&&this._div){var a;this._childLayer&&(a=this._childLayer.getNode())&&a.parentNode&&a.parentNode.removeChild(a);this._bgGroup.clear();this._div.clear();this._bgGroup=this._div.createGroup();a&&this._div.getEventSource().appendChild(a);
this._initOpacity()}},clearNodes:function(){if(!this.hasWebGLSurface()){var a=this.graphics,b=a.length,c;for(c=0;c<b;c++)this._removeShape(a[c],!0,!0);this._destroyAllNodes()}},_graphicVisibilityChanged:function(a){},_setIEOpacity:function(a,b){var d=a&&a.getNode();if(d){var e=a.strokeStyle,k=d.stroke;e&&k&&(k.opacity=e.color.a*b);a=a.fillStyle;e=d.fill;a&&e&&("tile"===e.type?c.set(d,"opacity",b):e.opacity=a.a*b)}},setOpacity:function(a,b){if(b||this.opacity!=a){var d=this._div;d&&!this.hasWebGLSurface()&&
(U?(p.forEach(this.graphics,function(b){this._setIEOpacity(b._shape,a);this._setIEOpacity(b._bgShape,a)},this),d._esriIeOpacity=a,this._bgGroup._esriIeOpacity=a):"canvas-2d"===this.surfaceType?c.set(d.getEventSource(),"opacity",a):d.getEventSource().setAttribute("opacity",a));this.opacity=a;if(!b)this.onOpacityChange(a)}},setRenderer:function(a){this.renderer=a;this._evalSDRenderer(!0);this._evalSurfaceType();this.emit("renderer-change",{renderer:this._rndForScale||a})}});n=n([t,N],{declaredClass:"esri.layers.GraphicsLayer",
constructor:function(){this.enableMouseEvents=h.hitch(this,this.enableMouseEvents);this.disableMouseEvents=h.hitch(this,this.disableMouseEvents);this._processEvent=h.hitch(this,this._processEvent);this._initLayer()},_initLayer:function(){this.loaded=!0;this.onLoad(this)},_setMap:function(){var a=this.inherited("_setMap",arguments);this.enableMouseEvents();return a},_unsetMap:function(){this.disableMouseEvents();this.inherited("_unsetMap",arguments)},_processEvent:function(a){var b=this._map,c=a.target,
d;a.screenPoint=new E(a.pageX-b.position.x,a.pageY-b.position.y);for(a.mapPoint=b.toMap(a.screenPoint);c&&!(d=c.e_graphic);)c=c.parentNode;if(d)return a.graphic=d,a},_onMouseOverHandler:function(a){if(this._processEvent(a))this.onMouseOver(a)},_onMouseMoveHandler:function(a){if(this._processEvent(a))this.onMouseMove(a)},_onMouseDragHandler:function(a){if(this._processEvent(a))this.onMouseDrag(a)},_onMouseOutHandler:function(a){if(this._processEvent(a))this.onMouseOut(a)},_onMouseDownHandler:function(a){this._downGr=
this._downPt=null;this._processEvent(a)&&(g.disconnect(this._onmousemove_connect),g.disconnect(this._onmousedrag_connect),this._onmousedrag_connect=g.connect(this._div.getEventSource(),"onmousemove",this,"_onMouseDragHandler"),this._downGr=a.graphic,this._downPt=a.screenPoint.x+","+a.screenPoint.y,this.onMouseDown(a))},_onMouseUpHandler:function(a){this._upGr=this._upPt=null;this._processEvent(a)&&(g.disconnect(this._onmousedrag_connect),g.disconnect(this._onmousemove_connect),this._onmousemove_connect=
g.connect(this._div.getEventSource(),"onmousemove",this,"_onMouseMoveHandler"),this._upGr=a.graphic,this._upPt=a.screenPoint.x+","+a.screenPoint.y,this.onMouseUp(a))},_onClickHandler:function(a){if(this._processEvent(a)){var b=this._downGr,c=this._upGr;b&&c&&b===c&&this._downPt===this._upPt&&(U&&(r._ieGraphic=a.graphic),this.onClick(a))}},_onDblClickHandler:function(a){if(this._processEvent(a))this.onDblClick(a)},onMouseOver:function(){},onMouseMove:function(){},onMouseDrag:function(){},onMouseOut:function(){},
onMouseDown:function(){},onMouseUp:function(){},onClick:function(){},onDblClick:function(){},enableMouseEvents:function(){if(!this._mouseEvents){var a=g.connect,b=this._div.getEventSource();Q||(this._onmouseover_connect=a(b,"onmouseover",this,"_onMouseOverHandler"),this._onmousemove_connect=a(b,"onmousemove",this,"_onMouseMoveHandler"),this._onmouseout_connect=a(b,"onmouseout",this,"_onMouseOutHandler"),this._onmousedown_connect=a(b,"onmousedown",this,"_onMouseDownHandler"),this._onmouseup_connect=
a(b,"onmouseup",this,"_onMouseUpHandler"),this._onclick_connect=a(b,"onclick",this,"_onClickHandler"),this._ondblclick_connect=a(b,"ondblclick",this,"_onDblClickHandler"));this._mouseEvents=!0}},disableMouseEvents:function(){if(this._mouseEvents){var a=g.disconnect;a(this._onmouseover_connect);a(this._onmousemove_connect);a(this._onmousedrag_connect);a(this._onmouseout_connect);a(this._onmousedown_connect);a(this._onmouseup_connect);a(this._onclick_connect);a(this._ondblclick_connect);this._mouseEvents=
!1}}});n._GraphicsContainer=k;n._GraphicsLayer=t;v("extend-esri")&&(h.setObject("layers.GraphicsLayer",n,r),h.setObject("layers._GraphicsContainer",k,r),h.setObject("layers._GraphicsLayer",t,r));return n})},"dojox/gfx":function(){define(["dojo/_base/lang","./gfx/_base","./gfx/renderer!"],function(q,n,b){n.switchTo(b);return n})},"dojox/gfx/renderer":function(){define(["./_base","dojo/_base/lang","dojo/_base/sniff","dojo/_base/window","dojo/_base/config"],function(q,n,b,g,h){var p=null;b.add("vml",
function(b,f,e){e.innerHTML='\x3cv:shape adj\x3d"1"/\x3e';b="adj"in e.firstChild;e.innerHTML="";return b});return{load:function(l,f,e){function c(){f(["dojox/gfx/"+a],function(b){q.renderer=a;p=b;e(b)})}if(p&&"force"!=l)e(p);else{var a=h.forceGfxRenderer;l=!a&&(n.isString(h.gfxRenderer)?h.gfxRenderer:"svg,vml,canvas,silverlight").split(",");for(var d,m;!a&&l.length;)switch(l.shift()){case "svg":"SVGAngle"in g.global&&(a="svg");break;case "vml":b("vml")&&(a="vml");break;case "silverlight":try{b("ie")?
(d=new ActiveXObject("AgControl.AgControl"),d.IsVersionSupported("1.0"))&&(m=!0):navigator.plugins["Silverlight Plug-In"]&&(m=!0)}catch(w){m=!1}finally{d=null}m&&(a="silverlight");break;case "canvas":g.global.CanvasRenderingContext2D&&(a="canvas")}"canvas"===a&&!1!==h.canvasEvents&&(a="canvasWithEvents");h.isDebug&&console.log("gfx renderer \x3d "+a);"svg"==a&&"undefined"!=typeof window.svgweb?window.svgweb.addOnLoad(c):c()}}}})},"esri/layers/gfxSniff":function(){define(["dojo/has","dojox/gfx"],function(q,
n){q.add("esri-svg",function(){return-1!==n.renderer.toLowerCase().indexOf("svg")});return q})},"esri/layers/layer":function(){define("dojo/_base/declare dojo/_base/config dojo/_base/connect dojo/_base/lang dojo/_base/Deferred dojo/_base/json dojo/has ../Evented ../kernel ../lang ../request ../deferredUtils ../urlUtils ../SpatialReference ../geometry/Extent".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){var k=q([f],{declaredClass:"esri.layers.Layer",_eventMap:{error:["error"],load:["layer"],
"opacity-change":["opacity"],"update-end":["error"],"visibility-change":["visible"]},constructor:function(a,d){this._attrs={};a&&g.isString(a)?this._url=m.urlToObject(this.url=a):(this.url=this._url=null,(d=d||a)&&(d.layerDefinition||d.query)&&(d=null));this.spatialReference=new w(4326);this.initialExtent=new t(-180,-90,180,90,new w(4326));this._map=this._div=null;this.normalization=!0;d&&(d.id&&(this.id=d.id),!1===d.visible&&(this.visible=!1),c.isDefined(d.opacity)&&(this.opacity=d.opacity),c.isDefined(d.minScale)&&
this.setMinScale(d.minScale),c.isDefined(d.maxScale)&&this.setMaxScale(d.maxScale),this.attributionDataUrl=d.attributionDataUrl||"",this.hasAttributionData=!!this.attributionDataUrl,c.isDefined(d.showAttribution)&&(this.showAttribution=d.showAttribution),this.className=d.className,this.refreshInterval=d.refreshInterval||0);this._errorHandler=g.hitch(this,this._errorHandler);this.refresh=g.hitch(this,this.refresh);if(this.managedSuspension){var e=this._setMap;this._setMap=function(a){var c=e.apply(this,
arguments);this._fireAttach(a);this.evaluateSuspension();if(this.suspended&&!a.loaded)var d=b.connect(a,"onLoad",this,function(){b.disconnect(d);d=null;this.evaluateSuspension()});return c}}this.registerConnectEvents()},id:null,visible:!0,opacity:1,loaded:!1,loadError:null,minScale:0,maxScale:0,visibleAtMapScale:!1,suspended:!0,attached:!1,attributionDataUrl:"",hasAttributionData:!1,showAttribution:!0,refreshInterval:0,_errorHandler:function(a){this.loaded||(this.loadError=a);this.onError(a)},_setMap:function(a,
c,d,e){this._map=a;this._lyrZEHandle=b.connect(a,"onZoomEnd",this,this._processMapScale);if(a.loaded)this.visibleAtMapScale=this._isMapAtVisibleScale();else var k=b.connect(a,"onLoad",this,function(){b.disconnect(k);k=null;this._processMapScale()})},_unsetMap:function(a,c){b.disconnect(this._lyrZEHandle);this._toggleRT();this._map=this._lyrZEHandle=null;this._resumedOnce=void 0;this.suspended=!0;this._fireDetach(a)},_fireAttach:function(a){this.attached=!0;this.onAttach({map:a})},_fireDetach:function(a){this.attached=
!1;this.onDetach({map:a})},_cleanUp:function(){this._map=this._div=null},_fireUpdateStart:function(){this.updating||(this.updating=!0,this.attr("data-updating",""),this._toggleRT(),this.onUpdateStart(),this._map&&this._map._incr())},_fireUpdateEnd:function(a,b){this.updating&&(this.updating=!1,this.attr("data-updating"),this._toggleRT(!0),this.onUpdateEnd(a,b),this._map&&this._map._decr())},_getToken:function(){var a=this._url,b=this.credential;return a&&a.query&&a.query.token||b&&b.token||void 0},
_findCredential:function(){this.credential=e.id&&this._url&&e.id.findCredential(this._url.path)},_useSSL:function(){var a=this._url,b=/^http:/i;this.url&&(this.url=this.url.replace(b,"https:"));a&&a.path&&(a.path=a.path.replace(b,"https:"))},refresh:function(){},show:function(){this.setVisibility(!0)},hide:function(){this.setVisibility(!1)},setMinScale:function(a){this.setScaleRange(a)},setMaxScale:function(a){this.setScaleRange(null,a)},setScaleRange:function(a,b){var d=c.isDefined(a),e=c.isDefined(b);
this.loaded||(this._hasMin=this._hasMin||d,this._hasMax=this._hasMax||e);var k=this.minScale,m=this.maxScale;this.minScale=(d?a:this.minScale)||0;this.maxScale=(e?b:this.maxScale)||0;if(k!==this.minScale||m!==this.maxScale)this.onScaleRangeChange(),this._processMapScale()},suspend:function(){this._suspended=!0;this.evaluateSuspension()},resume:function(){this._suspended=!1;this.evaluateSuspension()},canResume:function(){return this.loaded&&this._map&&this._map.loaded&&this.visible&&this.visibleAtMapScale&&
!this._suspended},evaluateSuspension:function(){this.canResume()?this.suspended&&this._resume():this.suspended||this._suspend()},_suspend:function(){this.suspended=!0;this.attr("data-suspended","");this._toggleRT();this.onSuspend();if(this._map)this._map.onLayerSuspend(this)},_resume:function(){this.suspended=!1;this.attr("data-suspended");var a=void 0===this._resumedOnce,b=this.className,c=this._attrs,d=this.getNode(),e;if(a){this._resumedOnce=!0;if(b&&d){var k=d.getAttribute("class")||"";(new RegExp("(^|\\s)"+
b+"(\\s|$)","i")).test(k)||d.setAttribute("class",k+((k?" ":"")+b))}if(c&&d)for(e in c)c.hasOwnProperty(e)&&d.setAttribute(e,c[e])}this._toggleRT(!0);this.onResume({firstOccurrence:a});if(this._map)this._map.onLayerResume(this)},_processMapScale:function(){var a=this.visibleAtMapScale;this.visibleAtMapScale=this._isMapAtVisibleScale();a!==this.visibleAtMapScale&&(this.onScaleVisibilityChange(),this.evaluateSuspension())},isVisibleAtScale:function(a){return a?k.prototype._isMapAtVisibleScale.apply(this,
arguments):!1},_isMapAtVisibleScale:function(a,b){if(!(a||this._map&&this._map.loaded))return!1;var c=this._map;a=a||c.getScale();var d=this.minScale,e=this.maxScale,k=!d,m=!e,f;b&&(f=c.width>c.height?c.width:c.height);k||(a<=d?k=!0:b&&(k=Math.abs(d-a)/d<1/f));m||(a>=e?m=!0:b&&(m=Math.abs(e-a)/e<1/f));return k&&m},getAttributionData:function(){var b=this.attributionDataUrl,c=new h(d._dfdCanceller);this.hasAttributionData&&b?(c._pendingDfd=a({url:b,content:{f:"json"},handleAs:"json",callbackParamName:"callback"}),
c._pendingDfd.then(function(a){c.callback(a)},function(a){c.errback(a)})):(b=Error("Layer does not have attribution data"),b.log=!!n.isDebug,c.errback(b));return c},getResourceInfo:function(){var a=this.resourceInfo;return g.isString(a)?p.fromJson(a):g.clone(a)},getMap:function(){return this._map},getNode:function(){return this._div},attr:function(a,b){var c=this.getNode();if("data-reference"===a&&11>l("ie"))return this;c&&(null==b?c.removeAttribute(a):c.setAttribute(a,b));this._attrs&&(null==b?delete this._attrs[a]:
this._attrs[a]=b);return this},setRefreshInterval:function(a){var b=this.refreshInterval;this.refreshInterval=a;this._toggleRT();a&&(this.updating||this.suspended||this._toggleRT(!0));if(b!==a)this.onRefreshIntervalChange();return this},_toggleRT:function(a){a&&this.refreshInterval?(clearTimeout(this._refreshT),this._refreshT=setTimeout(this.refresh,6E4*this.refreshInterval)):this._refreshT&&(clearTimeout(this._refreshT),this._refreshT=null)},setNormalization:function(a){this.normalization=a},setVisibility:function(a){this.visible!==
a&&(this.visible=a,this.onVisibilityChange(this.visible),this.evaluateSuspension());this.attr("data-hidden",a?null:"")},onLoad:function(){},onAttach:function(a){},onDetach:function(a){},onVisibilityChange:function(){},onScaleRangeChange:function(){},onScaleVisibilityChange:function(){},onSuspend:function(){},onResume:function(){},onUpdate:function(){},onUpdateStart:function(){},onUpdateEnd:function(){},onRefreshIntervalChange:function(){},onError:function(){}});l("extend-esri")&&g.setObject("layers.Layer",
k,e);return k})},"esri/request":function(){define("require dojo/_base/array dojo/_base/config dojo/_base/Deferred dojo/_base/lang dojo/_base/url dojo/_base/xhr ./core/request/script dojo/request/iframe dojo/dom-construct dojo/io-query ./kernel ./config ./sniff ./lang ./urlUtils ./deferredUtils".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u){function r(a){a=new p(a);return(a.host+(a.port?":"+a.port:"")).toLowerCase()}function y(a){return this._xhr?this._xhr.getResponseHeader(a):null}function v(b,
c){var d=a.objectToQuery(b.content);d&&(b.url+=(-1===b.url.indexOf("?")?"?":"\x26")+d);if(2E3<b.url.length){if("data:"!==b.url.toLowerCase().slice(0,5))return b=new g,b.reject(h.mixin(Error(),{message:"When using responseType 'image', URL length cannot exceed 2000 characters."})),b;if(3E6<b.url.length)return b=new g,b.reject(h.mixin(Error(),{message:"When using responseType 'image', data URL length cannot exceed 3000000 characters."})),b}var e=new Image;c.allowImageDataAccess&&(e.crossOrigin=b.withCredentials?
"use-credentials":"anonymous");var k=!1,m=new g(function(a){k=!0;e.onload=e.onerror=e.onabort=null;e.src=""});c=function(a){e.onload=e.onerror=e.onabort=null;k||m.reject(Error("Unable to load the resource"))};e.onload=function(){e.onload=e.onerror=e.onabort=null;k||m.resolve(this)};e.onerror=c;e.onabort=c;e.alt="";e.src=b.url;return m}function z(m,r,p,x){var y=!1,u=!1,C,q;t.isDefined(r)&&(h.isObject(r)?(y=!!r.useProxy,u=!!r.usePost,C=r.crossOrigin):y=!!r);m=h.mixin({},m);m._ssl&&(m.url=m.url.replace(/^http:/i,
"https:"));10>w("ie")&&!G.test(m.url)&&(m.url=encodeURI(m.url));var z=m.content,A=m.url,B=p&&m.form,E=I;C=t.isDefined(C)?C:E.useCors;m.load=function(a){var c;a&&(a.error?(c=h.mixin(Error(),a.error),c.log=!!b.isDebug):"error"===a.status&&(c=h.mixin(Error(),a),c.log=!!b.isDebug),c&&(m.failOk=!c.log,t.isDefined(c.httpCode)||(c.httpCode=c.code)));return c||a};m.error=function(a,c){c&&c.xhr&&c.xhr.abort();a instanceof Error||(a=h.mixin(Error(),a));a.log=!!b.isDebug;m.failOk=!a.log;E.errorHandler(a,c);
return a};m._token&&(m.content=m.content||{},m.content.token=m._token);var X=0,H;z&&A&&(H=a.objectToQuery(z),X=H.length+A.length+1,w("esri-url-encodes-apostrophe")&&(X=H.replace(/'/g,"%27").length+A.length+1));m.timeout=t.isDefined(m.timeout)?m.timeout:E.timeout;m.handleAs=m.handleAs||"json";try{var ja,L,Q=C&&k.canUseXhr(m.url)&&!/https?:\/\/[^\/]+\/[^\/]+\/admin\/?(\/.*)?$/i.test(m.url),M=k.hasSameOrigin(m.url,window.location.href)||Q,O=u||p||X>E.postLength?!0:!1,U=M||-1===m.handleAs.indexOf("json")||
!m.callbackParamName||p?!1:!0,ta=k.getProxyRule(m.url)||E.alwaysUseProxy||y||!("image"===m.handleAs&&!r.allowImageDataAccess||U&&!O||M)?!0:!1;p&&!w("esri-file-upload")&&!ta&&Q&&(ta=!0);if(ta)if(ja=k.getProxyUrl(A,C),L=ja.path,ja._xo&&(Q=!0),!O&&L.length+1+X>E.postLength&&(O=!0),m.url=L+"?"+A,O)m.content=h.mixin(ja.query||{},z);else{var ra=a.objectToQuery(h.mixin(ja.query||{},z));ra&&(m.url+="?"+ra);m.content=null}if(!U||O||ta){var va=m.headers;!Q||va&&va.hasOwnProperty("X-Requested-With")||(va=m.headers=
va||{},va["X-Requested-With"]=null);if(p){var Aa=m.callbackParamName||"callback.html",qa=m.callbackElementName||"textarea",S,ka,Pa,Ma,Na=B.elements?B.elements.length:0,Da;if(z=m.content)for(S in z.token&&-1<A.toLowerCase().indexOf("/sharing/servers/")&&(A+=(-1===A.indexOf("?")?"?":"\x26")+"token\x3d"+z.token,m.url=ta?L+"?"+A:A,delete z.token),z)if(Pa=z[S],t.isDefined(Pa)){ka=null;for(Ma=0;Ma<Na;Ma++)if(Da=B.elements[Ma],Da.name===S){ka=Da;break}ka?ka.value=Pa:x?B.append(S,Pa):B.appendChild(c.create("input",
{type:"hidden",name:S,value:Pa}))}if(w("esri-file-upload")){n.forEach(B.elements,function(a){a.name===Aa&&B.removeChild(a)});var Fa=x?B:new FormData(B);if(11<=w("safari")&&"entries"in Fa&&"delete"in Fa){x=[];for(var Ea=Fa.entries(),Qa=Ea.next();!Qa.done;){var Ha=Qa.value;Ha[1]instanceof File&&""===Ha[1].name&&x.push(Ha[0]);Qa=Ea.next()}x.forEach(function(a){Fa.delete(a)})}m.contentType=!1;m.postData=Fa;delete m.form}else{B.enctype="multipart/form-data";9>w("ie")&&(B.encoding="multipart/form-data");
B.method="post";n.some(B.elements,function(a){return a.name===Aa})||B.appendChild(c.create("input",{type:"hidden",name:Aa,value:qa}));if(-1!==A.toLowerCase().indexOf("addattachment")||-1!==A.toLowerCase().indexOf("updateattachment"))A+=(-1===A.indexOf("?")?"?":"\x26")+Aa+"\x3d"+qa,m.url=ta?L+"?"+A:A;delete m.content}}if(Q&&!m.hasOwnProperty("withCredentials")&&"with-credentials"===I.useCors){var A=ta?L:A,Oa=k.canUseXhr(A,!0),R=-1<Oa?I.corsEnabledServers[Oa]:null;if(R&&R.hasOwnProperty("withCredentials"))R.withCredentials&&
(m.withCredentials=!0);else if(d.id){var Ia=d.id.findServerInfo(A);Ia&&Ia.webTierAuth&&(m.withCredentials=!0)}}m=F?F(m):m;if("image"===m.handleAs)return v(m,r);if(O){if(p&&!w("esri-file-upload")){q=new g(function(){ua.cancel()});var ua=e.post(m.url,m).then(function(a){q.resolve(a)}).otherwise(function(a){q.reject(a)});q.addCallback(function(a){return m.load(a)});q.addErrback(function(a){return m.error(a)});return q}!ta&&w("safari")&&(m.url+=(-1===m.url.indexOf("?")?"?":"\x26")+"_ts\x3d"+(new Date).getTime()+
N++);return l.post(m)}return l.get(m)}m=F?F(m):m;m.jsonp=m.callbackParamName;m.query=m.content;q=new g(function(){aa.cancel()});var aa=f.get(m.url,m).then(function(a){q.resolve(a)}).otherwise(function(a){q.reject(a)});q.addCallback(function(a){return m.load(a)});q.addErrback(function(a){return m.error(a)});return q}catch(Sa){return q=new g,q.errback(m.error(Sa)),q}}function x(a){var c=I.corsStatus,d=k.canUseXhr(a,!0);-1<d&&I.corsEnabledServers.splice(d,1);var e=new g;e.reject({log:!!b.isDebug});c[r(a)]=
e.promise;return d}function A(a){var b=I.corsStatus;try{var c=r(a);if(I.corsDetection&&I.useCors&&w("esri-cors")&&a&&-1!==a.toLowerCase().indexOf("/rest/services")&&!k.hasSameOrigin(a,window.location.href)&&!k.canUseXhr(a)){if(b[c]&&!b[c].isCanceled())return b[c];var d=new g(u._dfdCanceller);b[c]=d.promise;var e=l.get({url:a.substring(0,a.toLowerCase().indexOf("/rest/")+6)+"info",content:{f:"json"},failOk:!0,handleAs:"json",headers:{"X-Requested-With":null},timeout:1E3*I.corsDetectionTimeout});d._pendingDfd=
e;e.then(function(b){b?(k.canUseXhr(a)||I.corsEnabledServers.push(c),d.resolve()):d.reject()},function(a){d.reject(a)});return d.promise}}catch(P){console.log("esri._detectCors: an unknown error occurred while detecting CORS support")}return Q}function B(a){F=a}function C(a,c,e,m){function f(a){a._pendingDfd=z(e,m,H,F);if(!a._pendingDfd){a.ioArgs=a._pendingDfd&&a._pendingDfd.ioArgs;var c=Error("Deferred object is missing");c.log=!!b.isDebug;a.errback(c);a._pendingDfd=null;return a}a._pendingDfd.addCallback(function(c){if(!c)return c;
var d=a._pendingDfd&&a._pendingDfd.ioArgs&&a._pendingDfd.ioArgs.xhr;if(!d)return c;if(d=d.getResponseHeader("Content-Type"))if(d=d.toLowerCase(),-1===d.indexOf("text/plain")&&-1===d.indexOf("application/json"))return c;if(c instanceof ArrayBuffer&&750>=c.byteLength)d=new Blob([c]);else if(c instanceof Blob&&750>=c.size)d=c;else return c;var e=new g,k=new FileReader;k.readAsText(d);k.onloadend=function(){var a;if(!k.error)try{var d=JSON.parse(k.result);d.error&&(a=d.error)}catch(Aa){}a?(a=h.mixin(Error(),
a),a.log=!!b.isDebug,null==a.httpCode&&(a.httpCode=a.code),e.reject(a)):e.resolve(c)};return e.promise}).addCallback(function(b){a.ioArgs=a._pendingDfd&&a._pendingDfd.ioArgs;m.returnFullResponse&&(b={data:b,_xhr:a.ioArgs&&a.ioArgs.xhr,getHeader:y});a.callback(b);a._pendingDfd=null}).addErrback(function(b){var c,k,f;b&&(c=b.code,k=b.subcode,f=(f=b.messageCode)&&f.toUpperCase());if(b&&403==c&&(4==k||b.message&&-1<b.message.toLowerCase().indexOf("ssl")&&-1===b.message.toLowerCase().indexOf("permission"))){if(!e._ssl){e._ssl=
e._sslFromServer=!0;C(a,!0,e,m);return}}else if(b&&415==b.status){if(x(e.url),!e._err415){e._err415=1;C(a,!0,e,m);return}}else if(d.id&&-1!==n.indexOf(d.id._errorCodes,c)&&!d.id._isPublic(e.url)&&!v&&(403!=c||-1===n.indexOf(X,f)&&(!t.isDefined(k)||2==k&&e._token))){a._pendingDfd=d.id.getCredential(e.url,{token:e._token,error:b});a._pendingDfd.addCallback(function(b){e._token=b.token;e._credential=b;e._ssl=e._sslFromServer||b.ssl;C(a,!0,e,m)}).addErrback(function(b){a.errback(b);a._pendingDfd=null});
return}a.ioArgs=a._pendingDfd&&a._pendingDfd.ioArgs;a.isFulfilled()||a.errback(b);a._pendingDfd=null})}var p=e.form,v=m.disableIdentityLookup,u=m._preLookup,A=!1;if(w("esri-workers")&&!1!==I.useWorkers)if(!0===m.useWorkers||!0===I.useWorkers)A=!0;else if(m.workerOptions){var B=m.workerOptions;if(B.callback||B.worker&&B.worker.worker instanceof Worker)A=!0}var F=p&&w("esri-file-upload")&&p instanceof FormData,H=p&&(p.elements?n.some(p.elements,function(a){return"file"===a.type}):F),N=-1!==e.url.toLowerCase().indexOf("token\x3d")||
e.content&&e.content.token||H&&n.some(p.elements,function(a){return"token"===a.name})?1:0;if(!c){a.addCallback(function(a){if((/\/sharing\/rest\/accounts\/self/i.test(e.url)||/\/sharing\/rest\/portals\/self/i.test(e.url))&&!N&&!e._token&&a.user&&a.user.username){I.webTierAuthServers.push(r(e.url));a=I.corsEnabledServers;var b=k.canUseXhr(e.url,!0),c={host:r(e.url),withCredentials:!0};if(-1===b)a.push(c);else{var m=a[b];m instanceof RegExp?(c.host=m,a.splice(b,1,c)):"object"===typeof m?m.withCredentials=
!0:a.splice(b,1,c)}}if(a=e._credential)if(b=(b=d.id.findServerInfo(a.server))&&b.owningSystemUrl)b=b.replace(/\/?$/,"/sharing"),(a=d.id.findCredential(b,a.userId))&&-1===d.id._getIdenticalSvcIdx(b,a)&&a.resources.splice(0,0,b)});a.addBoth(function(a){delete e._credential;!a||w("ie")&&a.nodeType||(a._ssl=e._ssl)});var G=e.load,ja=e.error;G&&a.addCallback(function(b){var c=a._pendingDfd,c=c&&c.ioArgs;return G.call(c&&c.args,b,c)});ja&&a.addErrback(function(b){var c=a._pendingDfd,c=c&&c.ioArgs;return ja.call(c&&
c.args,b,c)})}!d.id||N||e._token||d.id._isPublic(e.url)||v&&!u||!(c=d.id.findCredential(e.url))||(e._token=c.token,e._ssl=c.ssl);A?m.workerOptions&&m.workerOptions.worker?(E||(E=l),l=m.workerOptions.worker,f(a)):q(["./workers/RequestClient"],function(b){E||(E=l);if(m.workerOptions){var c=m.workerOptions;l=b.getClient(c.callback,c.cbFunction)}else l=b.getClient();f(a)}):(E&&(l=E,E=null),f(a));return a}function H(a,b){a.url=k.fixUrl(a.url);b=b||{};var c=new g(u._dfdCanceller),d=A(a.url);c._pendingDfd=
d;d.always(function(d){d&&"cancel"===d.dojoType?c.reject(d):C(c,!1,a,b)});return c}var E=null,F,I=m.defaults.io,X=["COM_0056","COM_0057"],N=0,G=/%[0-9A-F]{2}/i,Q=function(){var a=new g;a.resolve();return a.promise}();H._makeRequest=z;H._processRequest=C;H._disableCors=x;H._detectCors=A;H.setRequestPreCallback=B;w("extend-esri")&&(d.request=H,d._makeRequest=z,d._processRequest=C,d._disableCors=x,d._detectCors=A,d.setRequestPreCallback=B);return H})},"esri/core/request/script":function(){define("require exports dojo/Deferred dojo/request/script dojo/text!./iframe.html ../sniff".split(" "),
function(q,n,b,g,h,p){function l(){var a=document.createElement("iframe");a.name="esri_core_jsonp_iframe";a.style.display="none";a.setAttribute("sandbox","allow-scripts");if(!p("ff")&&"srcdoc"in a){var b=q.toUrl("dojo/dojo.js"),c=h.replace("../../../dojo/dojo.js",b),b=b.slice(0,-7),c=c.replace("../../../dojo/",b);a.srcdoc=c}else c=q.toUrl("./iframe.html"),"http:"===window.location.protocol&&0===c.indexOf("https:")&&(c=c.replace("https:","http:")),a.src=c;document.body.appendChild(a);return a}function f(){var a=
new MessageChannel;a.port1.addEventListener("message",e);a.port1.start();return a}function e(b){var c=b.data;if("ready"===c){for(var c=0,d=t;c<d.length;c++)b=d[c],a(b,m);t=null}else if(b=k[c.id])delete k[c.id],c.isError?b.dfd.reject(Error(c.message)):b.dfd.resolve(c.response)}function c(a,b){a.addEventListener("load",function(){a.contentWindow.postMessage("init","*",[b.port2])})}function a(a,b){k[a.message.id]=a;b.port1.postMessage(a.message)}Object.defineProperty(n,"__esModule",{value:!0});var d,
m,w=0,t=[],k={};n.get=function(e,r){if(!p("esri-script-sandbox"))return g.get(e,r);var h=null;r&&(h={jsonp:r.jsonp,preventCache:r.preventCache,query:r.query,timeout:r.timeout});r=new b(function(){if(t){var a=t.indexOf(v);-1<a&&t.splice(a,1)}else v.message.id in k&&delete k[v.message.id]});var v={dfd:r,message:{id:"id"+(++w+Math.random()),url:e,options:h}};d||(d=l(),m=f(),c(d,m));t?t.push(v):a(v,m);return r.promise}})},"esri/core/sniff":function(){define(["../sniff"],function(q){return q})},"dojo/request/iframe":function(){define("module require ./watch ./util ./handlers ../_base/lang ../io-query ../query ../has ../dom ../dom-construct ../_base/window ../NodeList-dom ../NodeList-manipulate".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d){function m(a){return!this.isFulfilled()}function w(a){return!!this._finished}function t(a,b){if(!b)try{var c=a.options,d=u.doc(u._frame),e=c.handleAs;if("html"!==e){if("xml"===e)if("html"===d.documentElement.tagName.toLowerCase()){f("a",d.documentElement).orphan();var k=d.documentElement.innerText||d.documentElement.textContent,k=k.replace(/>\s+</g,"\x3e\x3c");a.text=p.trim(k)}else a.data=d;else a.text=d.getElementsByTagName("textarea")[0].value;h(a)}else a.data=
d}catch(E){b=E}b?this.reject(b):this._finished?this.resolve(a):this.reject(Error("Invalid dojo/request/iframe request state"))}function k(a){this._callNext()}function u(a,c,d){var e=g.parseArgs(a,g.deepCreate(v,c),!0);a=e.url;c=e.options;if("GET"!==c.method&&"POST"!==c.method)throw Error(c.method+" not supported by dojo/request/iframe");u._frame||(u._frame=u.create(u._iframeName,y+"();"));a=g.deferred(e,null,m,w,t,k);a._callNext=function(){this._calledNext||(this._calledNext=!0,u._currentDfd=null,
u._fireNextRequest())};a._legacy=d;u._dfdQueue.push(a);u._fireNextRequest();b(a);return d?a:a.promise}var r=q.id.replace(/[\/\.\-]/g,"_"),y=r+"_onload";d.global[y]||(d.global[y]=function(){var b=u._currentDfd;if(b){var d=c.byId(b.response.options.form)||b._tmpForm;if(d){for(var e=b._contentToClean,k=0;k<e.length;k++)for(var m=e[k],f=0;f<d.childNodes.length;f++){var r=d.childNodes[f];if(r.name===m){a.destroy(r);break}}b._originalAction&&d.setAttribute("action",b._originalAction);b._originalMethod&&
(d.setAttribute("method",b._originalMethod),d.method=b._originalMethod);b._originalTarget&&(d.setAttribute("target",b._originalTarget),d.target=b._originalTarget)}b._tmpForm&&(a.destroy(b._tmpForm),delete b._tmpForm);b._finished=!0}else u._fireNextRequest()});var v={method:"POST"};u.create=function(b,c,k){if(d.global[b])return d.global[b];if(d.global.frames[b])return d.global.frames[b];k||(e("config-useXDomain")&&!e("config-dojoBlankHtmlUrl")&&console.warn("dojo/request/iframe: When using cross-domain Dojo builds, please save dojo/resources/blank.html to your domain and set dojoConfig.dojoBlankHtmlUrl to the path on your domain to blank.html"),
k=e("config-dojoBlankHtmlUrl")||n.toUrl("dojo/resources/blank.html"));c=a.place('\x3ciframe id\x3d"'+b+'" name\x3d"'+b+'" src\x3d"'+k+'" onload\x3d"'+c+'" style\x3d"position: absolute; left: 1px; top: 1px; height: 1px; width: 1px; visibility: hidden"\x3e',d.body());return d.global[b]=c};u.doc=function(a){if(a.contentDocument)return a.contentDocument;var b=a.name;if(b){var c=d.doc.getElementsByTagName("iframe");if(a.document&&c[b].contentWindow&&c[b].contentWindow.document)return c[b].contentWindow.document;
if(d.doc.frames[b]&&d.doc.frames[b].document)return d.doc.frames[b].document}return null};u.setSrc=function(a,b,c){a=d.global.frames[a.name];a.contentWindow&&(a=a.contentWindow);try{c?a.location.replace(b):a.location=b}catch(B){console.log("dojo/request/iframe.setSrc: ",B)}};u._iframeName=r+"_IoIframe";u._notifyStart=function(){};u._dfdQueue=[];u._currentDfd=null;u._fireNextRequest=function(){var b;try{if(!u._currentDfd&&u._dfdQueue.length){do b=u._currentDfd=u._dfdQueue.shift();while(b&&(b.canceled||
b.isCanceled&&b.isCanceled())&&u._dfdQueue.length);if(!b||b.canceled||b.isCanceled&&b.isCanceled())u._currentDfd=null;else{var e=b.response,k=e.options,m=b._contentToClean=[],h=c.byId(k.form),t=g.notify,v=k.data||null,y;b._legacy||"POST"!==k.method||h?"GET"===k.method&&h&&-1<e.url.indexOf("?")&&(y=e.url.slice(e.url.indexOf("?")+1),v=p.mixin(l.queryToObject(y),v)):h=b._tmpForm=a.create("form",{name:r+"_form",style:{position:"absolute",top:"-1000px",left:"-1000px"}},d.body());if(h){if(!b._legacy){var n=
h;do n=n.parentNode;while(n&&n!==d.doc.documentElement);n||(h.style.position="absolute",h.style.left="-1000px",h.style.top="-1000px",d.body().appendChild(h));h.name||(h.name=r+"_form")}if(v){var n=function(b,c){a.create("input",{type:"hidden",name:b,value:c},h);m.push(b)},w;for(w in v){var q=v[w];if(p.isArray(q)&&1<q.length)for(y=0;y<q.length;y++)n(w,q[y]);else{var G=f("input[name\x3d'"+w+"']",h);-1==G.indexOf()?n(w,q):G.val(q)}}}var Q=h.getAttributeNode("action"),M=h.getAttributeNode("method"),U=
h.getAttributeNode("target");e.url&&(b._originalAction=Q?Q.value:null,Q?Q.value=e.url:h.setAttribute("action",e.url));b._legacy?M&&M.value||(M?M.value=k.method:h.setAttribute("method",k.method)):(b._originalMethod=M?M.value:null,M?M.value=k.method:h.setAttribute("method",k.method));b._originalTarget=U?U.value:null;U?U.value=u._iframeName:h.setAttribute("target",u._iframeName);h.target=u._iframeName;t&&t.emit("send",e,b.promise.cancel);u._notifyStart(e);h.submit()}else k="",e.options.data&&(k=e.options.data,
"string"!==typeof k&&(k=l.objectToQuery(k))),n=e.url+(-1<e.url.indexOf("?")?"\x26":"?")+k,t&&t.emit("send",e,b.promise.cancel),u._notifyStart(e),u.setSrc(u._frame,n,!0)}}}catch(O){b.reject(O)}};g.addCommonMethods(u,["GET","POST"]);return u})},"dojo/NodeList-manipulate":function(){define("./query ./_base/lang ./_base/array ./dom-construct ./dom-attr ./NodeList-dom".split(" "),function(q,n,b,g,h){function p(b){for(;b.childNodes[0]&&1==b.childNodes[0].nodeType;)b=b.childNodes[0];return b}function l(b,
c){"string"==typeof b?(b=g.toDom(b,c&&c.ownerDocument),11==b.nodeType&&(b=b.childNodes[0])):1==b.nodeType&&b.parentNode&&(b=b.cloneNode(!1));return b}var f=q.NodeList;n.extend(f,{_placeMultiple:function(b,c){b="string"==typeof b||b.nodeType?q(b):b;for(var a=[],d=0;d<b.length;d++)for(var e=b[d],f=this.length,l=f-1,k;k=this[l];l--)0<d&&(k=this._cloneNode(k),a.unshift(k)),l==f-1?g.place(k,e,c):e.parentNode.insertBefore(k,e),e=k;a.length&&(a.unshift(0),a.unshift(this.length-1),Array.prototype.splice.apply(this,
a));return this},innerHTML:function(b){return arguments.length?this.addContent(b,"only"):this[0].innerHTML},text:function(b){if(arguments.length){for(var c=0,a;a=this[c];c++)1==a.nodeType&&h.set(a,"textContent",b);return this}for(var d="",c=0;a=this[c];c++)d+=h.get(a,"textContent");return d},val:function(e){if(arguments.length){for(var c=n.isArray(e),a=0,d;d=this[a];a++){var m=d.nodeName.toUpperCase(),f=d.type,g=c?e[a]:e;if("SELECT"==m)for(m=d.options,f=0;f<m.length;f++){var k=m[f];k.selected=d.multiple?
-1!=b.indexOf(e,k.value):k.value==g}else"checkbox"==f||"radio"==f?d.checked=d.value==g:d.value=g}return this}if((d=this[0])&&1==d.nodeType){e=d.value||"";if("SELECT"==d.nodeName.toUpperCase()&&d.multiple){e=[];m=d.options;for(f=0;f<m.length;f++)k=m[f],k.selected&&e.push(k.value);e.length||(e=null)}return e}},append:function(b){return this.addContent(b,"last")},appendTo:function(b){return this._placeMultiple(b,"last")},prepend:function(b){return this.addContent(b,"first")},prependTo:function(b){return this._placeMultiple(b,
"first")},after:function(b){return this.addContent(b,"after")},insertAfter:function(b){return this._placeMultiple(b,"after")},before:function(b){return this.addContent(b,"before")},insertBefore:function(b){return this._placeMultiple(b,"before")},remove:f.prototype.orphan,wrap:function(b){if(this[0]){b=l(b,this[0]);for(var c=0,a;a=this[c];c++){var d=this._cloneNode(b);a.parentNode&&a.parentNode.replaceChild(d,a);p(d).appendChild(a)}}return this},wrapAll:function(b){if(this[0]){b=l(b,this[0]);this[0].parentNode.replaceChild(b,
this[0]);b=p(b);for(var c=0,a;a=this[c];c++)b.appendChild(a)}return this},wrapInner:function(b){if(this[0]){b=l(b,this[0]);for(var c=0;c<this.length;c++){var a=this._cloneNode(b);this._wrap(n._toArray(this[c].childNodes),null,this._NodeListCtor).wrapAll(a)}}return this},replaceWith:function(b){b=this._normalize(b,this[0]);for(var c=0,a;a=this[c];c++)this._place(b,a,"before",0<c),a.parentNode.removeChild(a);return this},replaceAll:function(b){b=q(b);for(var c=this._normalize(this,this[0]),a=0,d;d=
b[a];a++)this._place(c,d,"before",0<a),d.parentNode.removeChild(d);return this},clone:function(){for(var b=[],c=0;c<this.length;c++)b.push(this._cloneNode(this[c]));return this._wrap(b,this,this._NodeListCtor)}});f.prototype.html||(f.prototype.html=f.prototype.innerHTML);return f})},"esri/layers/support/webglUtils":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/has","../../kernel"],function(q,n,b,g){var h=!1,p=b("esri-webgl-max-contexts"),p=null!=p?p:b("esri-mobile")?8:16,l={isWebGLSupported:function(){return!!h},
isWebGLEnabled:function(){return this.isWebGLSupported()&&!!b("esri-featurelayer-webgl")},createCanvas:function(b,e){var c=document.createElement("canvas");c.style.width=b+"px";c.style.height=e+"px";return c},createWebGLContext:function(b){var e;n.some(["webgl","experimental-webgl","webkit-3d","moz-webgl"],function(c){try{e=b.getContext?b.getContext(c):null}catch(a){e=null}return!!e});return e},_contextOwners:[],isContextAvailable:function(){return-1===p||0<p&&l._contextOwners.length<p},acquireContext:function(b){return-1!==
n.indexOf(l._contextOwners,b)?!0:l.isContextAvailable()?(l._contextOwners.push(b),!0):!1},releaseContext:function(b){b=n.indexOf(l._contextOwners,b);-1!==b&&l._contextOwners.splice(b,1)}},h=l.createWebGLContext(l.createCanvas());b("extend-esri")&&q.setObject("layers.support.webglUtils",l,g);return l})},"esri/layers/support/WebGLSurface":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/_base/array","dojo/has","../../kernel"],function(q,n,b,g,h){q=q(null,{map:null,node:null,renderers:null,
constructor:function(b){n.mixin(this,b);this.renderers=[]},destroy:function(){b.forEach(this.renderers,function(b){b.destroy()});this.renderers=null},getEventSource:function(){return this.node},createRenderer:function(b,g,f,e){b=new b({surface:this,width:g,height:f,map:this.map,layer:e});this.renderers.push(b);return b},destroyRenderer:function(g){var l=b.indexOf(this.renderers,g);-1<l&&(g.destroy(),this.renderers.splice(l,1))},_createNode:function(){var b=document.createElement("div");b.style.pointerEvents=
"auto";b.style.position="absolute";return b}});g("extend-esri")&&n.setObject("layers.support.WebGLSurface",q,h);return q})},"esri/domUtils":function(){define(["./kernel","dojo/_base/connect","dojo/_base/lang","dojo/dom-style","dojo/has"],function(q,n,b,g,h){var p={show:function(b){if(b=p.getNode(b))b.style.display="block"},getNode:function(b){return b&&b.domNode||b},hide:function(b){if(b=p.getNode(b))b.style.display="none"},toggle:function(b){if(b=p.getNode(b))b.style.display="none"===b.style.display?
"block":"none"},documentBox:8>=h("ie")?{w:document.documentElement.clientWidth,h:document.documentElement.clientHeight}:{w:window.innerWidth,h:window.innerHeight},setScrollable:function(b){if(b=this.getNode(b)){var f=0,e=0,c=0,a=0,d=0,m=0;return[n.connect(b,"ontouchstart",function(g){f=g.touches[0].screenX;e=g.touches[0].screenY;c=b.scrollWidth;a=b.scrollHeight;d=b.clientWidth;m=b.clientHeight}),n.connect(b,"ontouchmove",function(l){l.preventDefault();var h=b.firstChild;h instanceof Text&&(h=b.childNodes[1]);
var k=h._currentX||0,p=h._currentY||0,k=k+(l.touches[0].screenX-f);0<k?k=0:0>k&&Math.abs(k)+d>c&&(k=-1*(c-d));h._currentX=k;p+=l.touches[0].screenY-e;0<p?p=0:0>p&&Math.abs(p)+m>a&&(p=-1*(a-m));h._currentY=p;g.set(h,{"-webkit-transition-property":"-webkit-transform","-webkit-transform":"translate("+k+"px, "+p+"px)"});f=l.touches[0].screenX;e=l.touches[0].screenY})]}}};h("extend-esri")&&b.mixin(q,p);return p})},"esri/symbols/MarkerSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojox/gfx/_base ../kernel ./Symbol".split(" "),
function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.symbol.MarkerSymbol",angle:0,xoffset:0,yoffset:0,size:12,constructor:function(b){b&&n.isObject(b)&&(this.size="auto"===this.size?this.size:g.pt2px(this.size),this.xoffset=g.pt2px(this.xoffset),this.yoffset=g.pt2px(this.yoffset),this.angle&&(this.angle*=-1))},setAngle:function(b){this.angle=b;return this},setSize:function(b){this.size=b;return this},setOffset:function(b,f){this.xoffset=b;this.yoffset=f;return this},toJson:function(){var b=g.px2pt(this.size),
b=isNaN(b)?void 0:b,f=g.px2pt(this.xoffset),f=isNaN(f)?void 0:f,e=g.px2pt(this.yoffset),e=isNaN(e)?void 0:e;return n.mixin(this.inherited("toJson",arguments),{size:"auto"===this.size?this.size:b,angle:this.angle&&-1*this.angle,xoffset:f,yoffset:e})}});b("extend-esri")&&n.setObject("symbol.MarkerSymbol",q,h);return q})},"esri/symbols/Symbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ../Color".split(" "),function(q,n,b,g,h,p){q=q(null,{declaredClass:"esri.symbol.Symbol",
color:new p([0,0,0,1]),type:null,constructor:function(b){b&&n.isObject(b)&&(n.mixin(this,b),this.color&&h.isDefined(this.color[0])&&(this.color=p.toDojoColor(this.color)),(b=this.type)&&0===b.indexOf("esri")&&(this.type={esriSMS:"simplemarkersymbol",esriPMS:"picturemarkersymbol",esriSLS:"simplelinesymbol",esriCLS:"cartographiclinesymbol",esriSFS:"simplefillsymbol",esriPFS:"picturefillsymbol",esriTS:"textsymbol",esriSHD:"shieldlabelsymbol"}[b]))},setColor:function(b){this.color=b;return this},toJson:function(){return{color:p.toJsonColor(this.color)}}});
b("extend-esri")&&n.setObject("symbol.Symbol",q,g);return q})},"esri/symbols/SimpleMarkerSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/Color dojo/has dojox/gfx/_base ../kernel ../lang ./MarkerSymbol ./SimpleLineSymbol".split(" "),function(q,n,b,g,h,p,l,f,e){var c={STYLE_CIRCLE:"circle",STYLE_SQUARE:"square",STYLE_CROSS:"cross",STYLE_X:"x",STYLE_DIAMOND:"diamond",STYLE_PATH:"path",STYLE_TARGET:"target"},a={style:c.STYLE_CIRCLE,color:[255,255,255,.25],size:12,angle:0,xoffset:0,
yoffset:0};q=q(f,{declaredClass:"esri.symbol.SimpleMarkerSymbol",type:"simplemarkersymbol",_styles:{circle:"esriSMSCircle",square:"esriSMSSquare",cross:"esriSMSCross",x:"esriSMSX",diamond:"esriSMSDiamond",path:"esriSMSPath"},constructor:function(d,m,f,g){d?n.isString(d)?(this.style=d,m&&(this.size=m),f&&(this.outline=f),g&&(this.color=g)):(this.style=l.valueOf(this._styles,this.style),d.outline&&(this.outline=new e(d.outline))):(n.mixin(this,a),this.size=h.pt2px(this.size),this.outline=new e(this.outline),
this.color=new b(this.color));this.style||(this.style=c.STYLE_CIRCLE)},setStyle:function(a){this.style=a;return this},setPath:function(a){this.path=a;this.setStyle(c.STYLE_PATH);return this},setOutline:function(a){this.outline=a;return this},getStroke:function(){return this.outline&&this.outline.getStroke()},getFill:function(){return this.color},_setDim:function(a,b,c){this._targetWidth=a;this._targetHeight=b;this._spikeSize=c},getShapeDescriptors:function(){var b,e,f,g=this.style,k=(this.size||h.pt2px(a.size))/
2,l=0-k,r=0+k,p=0-k,v=0+k;switch(g){case c.STYLE_CIRCLE:b={type:"circle",cx:0,cy:0,r:k};e=this.getFill();if(f=this.getStroke())f.style=f.style||"Solid";break;case c.STYLE_CROSS:b={type:"path",path:"M "+l+",0 L "+r+",0 M 0,"+p+" L 0,"+v+" E"};e=null;f=this.getStroke();break;case c.STYLE_DIAMOND:b={type:"path",path:"M "+l+",0 L 0,"+p+" L "+r+",0 L 0,"+v+" L "+l+",0 Z"};e=this.getFill();f=this.getStroke();break;case c.STYLE_SQUARE:b={type:"path",path:"M "+l+","+v+" L "+l+","+p+" L "+r+","+p+" L "+r+
","+v+" L "+l+","+v+" Z"};e=this.getFill();f=this.getStroke();break;case c.STYLE_X:b={type:"path",path:"M "+l+","+v+" L "+r+","+p+" M "+l+","+p+" L "+r+","+v+" E"};e=null;f=this.getStroke();break;case c.STYLE_PATH:b={type:"path",path:this.path||""},e=this.getFill(),f=this.getStroke()}return{defaultShape:b,fill:e,stroke:f}},toJson:function(){var a=this.style,b=this.outline,c=n.mixin(this.inherited("toJson",arguments),{type:"esriSMS",style:this._styles[a]||"esriSMSCircle"});b&&(c.outline=b.toJson());
"x"===a||"cross"===a?delete c.color:"target"===a&&(c.style="esriSMSSquare",delete c.color,0<this._targetHeight&&0<this._targetWidth&&(c.size=h.px2pt(Math.max(this._targetHeight,this._targetWidth))));c.path=this.path;return l.fixJson(c)}});n.mixin(q,c);q.defaultProps=a;g("extend-esri")&&(n.setObject("symbol.SimpleMarkerSymbol",q,p),p.symbol.defaultSimpleMarkerSymbol=a);return q})},"esri/symbols/SimpleLineSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/Color dojo/has dojox/gfx/_base ../kernel ../lang ./LineSymbol".split(" "),
function(q,n,b,g,h,p,l,f){var e={STYLE_SOLID:"solid",STYLE_DASH:"dash",STYLE_DOT:"dot",STYLE_DASHDOT:"dashdot",STYLE_DASHDOTDOT:"longdashdotdot",STYLE_NULL:"none",STYLE_SHORTDASH:"shortdash",STYLE_SHORTDOT:"shortdot",STYLE_SHORTDASHDOT:"shortdashdot",STYLE_SHORTDASHDOTDOT:"shortdashdotdot",STYLE_LONGDASH:"longdash",STYLE_LONGDASHDOT:"longdashdot"},c={color:[0,0,0,1],style:e.STYLE_SOLID,width:1};q=q(f,{declaredClass:"esri.symbol.SimpleLineSymbol",type:"simplelinesymbol",marker:null,_styles:{solid:"esriSLSSolid",
dash:"esriSLSDash",dot:"esriSLSDot",dashdot:"esriSLSDashDot",longdashdotdot:"esriSLSDashDotDot",none:"esriSLSNull",insideframe:"esriSLSInsideFrame",shortdash:"esriSLSShortDash",shortdot:"esriSLSShortDot",shortdashdot:"esriSLSShortDashDot",shortdashdotdot:"esriSLSShortDashDotDot",longdash:"esriSLSLongDash",longdashdot:"esriSLSLongDashDot"},constructor:function(a,d,m){a?n.isString(a)?(this.style=a,d&&(this.color=d),m&&(this.width=m)):(this.style=l.valueOf(this._styles,a.style)||e.STYLE_SOLID,this.marker=
a.marker):(n.mixin(this,c),this.color=new b(this.color),this.width=h.pt2px(this.width))},setStyle:function(a){this.style=a;return this},setMarker:function(a){this.marker=a},getStroke:function(){return this.style===e.STYLE_NULL||0===this.width?null:{color:this.color,style:this.style,width:this.width}},getFill:function(){return null},getShapeDescriptors:function(){return{defaultShape:{type:"path",path:"M -15,0 L 15,0 E"},fill:null,stroke:this.getStroke()}},toJson:function(){return l.fixJson(n.mixin(this.inherited("toJson",
arguments),{type:"esriSLS",style:this._styles[this.style],marker:this.marker?n.clone(this.marker):void 0}))}});n.mixin(q,e);q.defaultProps=c;g("extend-esri")&&(n.setObject("symbol.SimpleLineSymbol",q,p),p.symbol.defaultSimpleLineSymbol=c);return q})},"esri/symbols/LineSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojox/gfx/_base ../kernel ./Symbol".split(" "),function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.symbol.LineSymbol",constructor:function(b){n.isObject(b)?this.width=
g.pt2px(this.width):this.width=12},setWidth:function(b){this.width=b;return this},toJson:function(){var b=g.px2pt(this.width),b=isNaN(b)?void 0:b;return n.mixin(this.inherited("toJson",arguments),{width:b})}});b("extend-esri")&&n.setObject("symbol.LineSymbol",q,h);return q})},"esri/symbols/utils":function(){define("dojo/_base/lang dojo/_base/window dojo/has dojox/gfx ../kernel ../Color".split(" "),function(q,n,b,g,h,p){function l(a){a.removeAttribute("marker-start");a.removeAttribute("marker-end");
a.removeAttribute("opacity")}function f(a,b){for(var c in b)a.setAttribute(c,b[c])}function e(a,b,c){b="url(#"+b.getAttribute("id")+")";a.rawNode.setAttribute("marker-"+c,b)}var c=-1!==g.renderer.toLowerCase().indexOf("svg"),a=9===b("ie"),d={marker:{markerWidth:"6",markerHeight:"6",markerUnits:"strokeWidth",orient:"auto"},spear:{marker:{end:{viewBox:"0 0 25.4 23.43",refX:"20",refY:"12.76"},start:{viewBox:"-25.4 0 25.4 23.43",refX:"-20",refY:"12.76"}},path:{common:{d:"M1.63 23.43 L5.37 16.6 L5.37 8.93 L1.63 2.09 L25.4 12.76 L1.63 23.43 Z",
"stroke-width":"0","fill-opacity":"1"},start:{transform:"matrix(-1, 0, 0, 1, 0, 0)"}}}};g={applyLineMarker:function(b,d,f,k){if(c&&!a){var m=b&&b.rawNode,g=d.marker;f=f||d.color;m&&"none"!==d.style&&f&&g&&"arrow"===g.style&&g.placement?m.getTotalLength&&0===m.getTotalLength()?l(m):(d=-1!==g.placement.indexOf("begin"),g=-1!==g.placement.indexOf("end"),d||g?(m.removeAttribute("stroke-opacity"),m.setAttribute("opacity",f.a),d?(d=k(b,f,"spear","start"),e(b,d,"start")):m.removeAttribute("marker-start"),
g?(f=k(b,f,"spear","end"),e(b,f,"end")):m.removeAttribute("marker-end")):l(m)):m&&l(m)}},createSVGMarker:function(a,b,c,e){c=d[c];var k=n.doc.createElementNS("http://www.w3.org/2000/svg","marker");k.setAttribute("id",b);f(k,d.marker);f(k,c.marker[e]);b=n.doc.createElementNS("http://www.w3.org/2000/svg","path");b.setAttribute("fill",a.toCss());f(b,c.path.common);f(b,c.path[e]);k.appendChild(b);return k},create2DColorRamp:function(a){var b=a.surface.createGroup(),c=a.colors,d=a.numClasses;a=(a.size||
75)/d;for(var e=0;e<d;e++)for(var m=e*a,f=0;f<d;f++){var g=c[e][f];b.createRect({x:f*a,y:m,width:a,height:a}).setFill(g).setStroke(null)}return b},setSymbolFillColor:function(a,b){if(a)switch(b=b?new p(b):null,a.type){case "simplemarkersymbol":"cross"===a.style||"x"===a.style?a.outline&&a.outline.setColor(b):a.setColor(b);break;case "simplelinesymbol":case "cartographiclinesymbol":case "simplefillsymbol":case "shieldlabelsymbol":case "textsymbol":a.setColor(b)}}};b("extend-esri")&&q.setObject("renderer.utils",
g,h);return g})},"esri/layers/TileInfo":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ../SpatialReference ../geometry/Point ./LOD".split(" "),function(q,n,b,g,h,p,l,f,e){q=q(null,{declaredClass:"esri.layers.TileInfo",constructor:function(c){n.mixin(this,c);this.width=this.cols;this.height=this.rows;this._levelToLOD={};c=this.spatialReference;var a=this.origin;c&&(c=this.spatialReference=new l(c.toJson?c.toJson():c));a&&(this.origin=new f(a.toJson?
a.toJson():a),!a.spatialReference&&c&&this.origin.setSpatialReference(new l(c.toJson())));this.lods=b.map(this.lods,function(a){return new e(a)});b.forEach(this.lods,function(a){this._levelToLOD[a.level]=a},this);c=!1;var a=this.spatialReference,d=this.origin;if(a&&d){var m=a._getInfo();m&&(c=a._isWrappable()&&Math.abs(m.origin[0]-d.x)<=m.dx)}this.isWrappable=c;this._initializeUpsampleLevels()},toJson:function(){return p.fixJson({rows:this.rows,cols:this.cols,dpi:this.dpi,format:this.format,compressionQuality:this.compressionQuality,
origin:this.origin&&this.origin.toJson(),spatialReference:this.spatialReference&&this.spatialReference.toJson(),lods:this.lods&&b.map(this.lods,function(b){return b.toJson()})})},lodAt:function(b){return this._levelToLOD&&this._levelToLOD[b]||null},updateTileInfo:function(b){var a=this.lodAt(b.level),c=a.resolution*this.width,a=a.resolution*this.height;b.id=b.level+"/"+b.row+"/"+b.col;b.extent||(b.extent=[0,0,0,0]);b.extent[0]=this.origin.x+b.col*c;b.extent[1]=this.origin.y-(b.row+1)*a;b.extent[2]=
b.extent[0]+c;b.extent[3]=b.extent[1]+a},upsampleTile:function(b){var a=this._upsampleLevels[b.level];if(!a||-1===a.parentLevel)return!1;b.level=a.parentLevel;b.row=Math.floor(b.row/a.factor+.001);b.col=Math.floor(b.col/a.factor+.001);this.updateTileInfo(b);return!0},_initializeUpsampleLevels:function(){var b=this.lods;this._upsampleLevels=[];for(var a=null,d=0;d<b.length;d++){var e=b[d];this._upsampleLevels[e.level]={parentLevel:a?a.level:-1,factor:a?a.resolution/e.resolution:0};a=e}}});g("extend-esri")&&
n.setObject("layers.TileInfo",q,h);return q})},"esri/layers/LOD":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","../lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.layers.LOD",constructor:function(b){n.mixin(this,b)},toJson:function(){return h.fixJson({level:this.level,levelValue:this.levelValue,resolution:this.resolution,scale:this.scale})}});b("extend-esri")&&n.setObject("layers.LOD",q,g);return q})},"esri/layers/ArcGISTiledMapServiceLayer":function(){define("dojo/_base/kernel dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/has dojo/io-query ../kernel ../urlUtils ../SpatialReference ./TiledMapServiceLayer ./ArcGISMapServiceLayer ./TileInfo ./TimeInfo ./TileMap".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){n=n([a,d],{declaredClass:"esri.layers.ArcGISTiledMapServiceLayer",_agolAttrs:"Canvas/World_Dark_Gray_Base Canvas/World_Dark_Gray_Reference Canvas/World_Light_Gray_Base Canvas/World_Light_Gray_Reference Elevation/World_Hillshade Ocean/World_Ocean_Base Ocean/World_Ocean_Reference Ocean_Basemap Reference/World_Boundaries_and_Places Reference/World_Boundaries_and_Places_Alternate Reference/World_Transportation World_Imagery World_Street_Map World_Topo_Map".split(" "),
_isReference:!1,_referenceLayers:"Canvas/World_Dark_Gray_Reference Canvas/World_Light_Gray_Reference Ocean/World_Ocean_Reference Reference/World_Boundaries_and_Places Reference/World_Boundaries_and_Places_Alternate Reference/World_Reference_Overlay Reference/World_Transportation".split(" "),constructor:function(a,c){c&&(c.roundrobin&&(q.deprecated(this.declaredClass+" : Constructor option 'roundrobin' deprecated. Use option 'tileServers'."),c.tileServers=c.roundrobin),this._setTileServers(c.tileServers),
this._loadCallback=c.loadCallback);this._params=b.mixin({},this._url.query);this._initLayer=b.hitch(this,this._initLayer);(a=c&&c.resourceInfo)?this._initLayer(a):(this._load=b.hitch(this,this._load),this._load())},_TILE_FORMATS:{PNG:"png",PNG8:"png",PNG24:"png",PNG32:"png",JPG:"jpg",JPEG:"jpg",GIF:"gif"},_setTileServers:function(a){if(a&&0<a.length){this.tileServers=a;var b,c=a.length;for(b=0;b<c;b++)a[b]=e.urlToObject(a[b]).path}},_initLayer:function(a,b){this.inherited(arguments);this.resourceInfo=
h.toJson(a);this.tileInfo=new m(a.tileInfo);!1!==this.resampling&&(a.capabilities&&-1<a.capabilities.indexOf("Tilemap")?(this.resampling=!0,this.tileMap=new t(this)):this.resampling=!!a.resampling);!this.spatialReference&&this.tileInfo.spatialReference&&(this.spatialReference=new c(this.tileInfo.spatialReference.toJson()));this.isPNG32="PNG24"===this.tileInfo.format||"PNG32"===this.tileInfo.format;a.timeInfo&&(this.timeInfo=new w(a.timeInfo));a.mensurationCapabilities&&(this.mensurationCapabilities=
a.mensurationCapabilities);var d=this._url.path,k=this._loadCallback,f=e.getProtocolForWebResource(!0),g=d.match(/^https?\:\/\/(server|services)\.arcgisonline\.com\/arcgis\/rest\/services\/([^\/]+(\/[^\/]+)*)\/mapserver/i),g=g&&g[2];if(!this.tileServers)if(a.tileServers)this._setTileServers(a.tileServers);else{var l=-1!==d.search(/^https?\:\/\/server\.arcgisonline\.com/i),p=-1!==d.search(/^https?\:\/\/services\.arcgisonline\.com/i);(l||p)&&this._setTileServers([d,d.replace(l?/server\.arcgisonline/i:
/services\.arcgisonline/i,l?"services.arcgisonline":"server.arcgisonline")])}if(g){g=g.toLowerCase();for(d=0;d<this._agolAttrs.length;d++)if(l=this._agolAttrs[d],l.toLowerCase()===g){this.hasAttributionData=!0;this.attributionDataUrl=this.attributionDataUrl||f+"//static.arcgis.com/attribution/"+l;break}for(d=0;d<this._referenceLayers.length;d++)if(l=this._referenceLayers[d],l.toLowerCase()===g){this._isReference=!0;break}}this.loaded=!0;this.onLoad(this);k&&(delete this._loadCallback,k(this))},getTileUrl:function(a,
b,c){var d=this.tileServers,k=this._getToken(),m=this._url.query;a=(d?d[b%d.length]:this._url.path)+"/tile/"+a+"/"+b+"/"+c;a=e.upgradeToHTTPS(a);this.resampling&&!this.tileMap&&(a+="?blankTile\x3dfalse");m&&(a=this.resampling&&!this.tileMap?a+("\x26"+l.objectToQuery(m)):a+("?"+l.objectToQuery(m)));!k||m&&m.token||(a+=(-1===a.indexOf("?")?"?":"\x26")+"token\x3d"+k);a=this.addTimestampToURL(a);return e.addProxy(a)}});p("extend-esri")&&b.setObject("layers.ArcGISTiledMapServiceLayer",n,f);return n})},
"esri/layers/TiledMapServiceLayer":function(){define("dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/_base/url dojo/dom-construct dojo/dom-class dojo/dom-geometry dojo/dom-style dojo/dom dojox/collections/ArrayList dojox/gfx/matrix ../kernel ../config ../sniff ../domUtils ../tileUtils ../geometry/Point ../geometry/Rect ../geometry/Extent ./layer".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z){q=q(z,{declaredClass:"esri.layers.TiledMapServiceLayer",constructor:function(a,
c){n.connect(this,"onLoad",this,"_initTiledLayer");this._lowestLevel=(this._displayLevels=c?c.displayLevels:null)?this._displayLevels[0]:0;this.resampling=c?c.resampling:void 0;this._resamplingTolerance=c?c.resamplingTolerance:null;this.exclusionAreas=c?c.exclusionAreas:null;a=b.hitch;this._addImage=a(this,this._addImage);this._tileLoadHandler=a(this,this._tileLoadHandler);this._tileErrorHandler=a(this,this._tileErrorHandler);this._popTile=a(this,this._popTile);this._cleanUpRemovedImages=a(this,this._cleanUpRemovedImages);
this._fireOnUpdateEvent=a(this,this._fireOnUpdateEvent);this._transitionEnd=a(this,this._transitionEnd);this._tileMapCallback=a(this,this._tileMapCallback)},opacity:1,isPNG32:!1,_multiple:1,isResampling:!1,_initTiledLayer:function(){var a=this.tileInfo,b=a.lods;this.resampling=null!=this.resampling?this.resampling:!1;this._tileW=a.width;this._tileH=a.height;var c=this.scales=[],d=this._displayLevels,e=-Infinity,k=Infinity,m=this.fullExtent,f=new r(m.xmin,m.ymax),m=new r(m.xmax,m.ymin),l=u.getContainingTileCoords,
h,p,v,y=b.length;for(v=0;v<y;v++)p=b[v],h=l(a,f,p),p.startTileRow=0>h.row?0:h.row,p.startTileCol=0>h.col?0:h.col,h=l(a,m,p),p.endTileRow=h.row,p.endTileCol=h.col,d&&-1===g.indexOf(d,p.level)||(c[v]=p.scale,e=p.scale>e?p.scale:e,k=p.scale<k?p.scale:k);-Infinity===e||this._hasMin||this.setMinScale(e);Infinity===k||this._hasMax||this.setMaxScale(k);this.setExclusionAreas(this.exclusionAreas);this._patchIE=6<=t("ie")&&7>t("ie")&&(this.isPNG32||"Mixed"===a.format)},isVisibleAtScale:function(a){return a?
z.prototype._isMapAtVisibleScale.call(this,a,!0):!1},_isMapAtVisibleScale:function(a){var b=this.inherited(arguments,[a,!0]);if(b){var c;c=this._map;var b=this.scales,d=c.getScale(),e=!1,k=c.width>c.height?c.width:c.height;for(c=0;c<b.length;c++)if(Math.abs(b[c]-d)/b[c]<1/k){e=!0;break}b=e}return b},_setMap:function(a,b,c,d){this.inherited(arguments);this._map=a;var k=this._div=p.create("div",null,b),f=a.__visibleDelta,g=n.connect,r=m._css.names,l={position:"absolute",width:a.width+"px",height:a.height+
"px",overflow:"visible"},h=w.defaults.map.zoomDuration;"css-transforms"===a.navigationMode?(l[r.transform]=m._css.translate(-f.x,-f.y),e.set(k,l),delete l[r.transform],l[r.transition]=r.transformName+" "+h+"ms ease",e.set(this._active=p.create("div",null,k),l),this._active._remove=0,this._passives=[]):(l.left=-f.x+"px",l.top=-f.y+"px",e.set(k,l));this._onResizeHandler_connect=g(a,"onResize",this,"_onResizeHandler");this._opacityChangeHandler_connect=g(this,"onOpacityChange",this,"_opacityChangeHandler");
f=this.tileInfo;g=f.spatialReference;r=g._getInfo();(this._wrap=a.wrapAround180&&g._isWrappable()&&Math.abs(r.origin[0]-f.origin.x)<=r.dx)&&u._addFrameInfo(f,r);this.setExclusionAreas(this.exclusionAreas);this.evaluateSuspension();if(this.suspended&&!a.loaded)var t=n.connect(a,"onLoad",this,function(){n.disconnect(t);t=null;this.setExclusionAreas(this.exclusionAreas);this.evaluateSuspension()});return k},_unsetMap:function(a,b){this.suspended||this._suspendImpl();p.destroy(this._div);this._map=this._div=
null;var c=n.disconnect;c(this._onResizeHandler_connect);c(this._opacityChangeHandler_connect);this.inherited(arguments)},onSuspend:function(){this.inherited(arguments);this._suspendImpl()},_suspendImpl:function(){k.hide(this._div);clearTimeout(this._wakeTimer);this._wakeTimer=null;this._disableDrawConnectors();var a=this._tiles,b=this._tileIds,c=this._loadingList,d,e,m=n.disconnect,f=p.destroy;c&&0<c.count&&(c.forEach(function(b){if(d=a[b])m(d._onload_connect),m(d._onerror_connect),m(d._onabort_connect),
d._onload_connect=d._onerror_connect=d._onabort_connect=null}),c.clear(),this._fireUpdateEnd());this._removeList.clear();for(c=b.length-1;0<=c;c--)(d=(e=b[c])&&a[e])&&f(d);if("css-transforms"===this._map.navigationMode){b=this._active;e=this._passives;var g;this._noDom=0;for(c=e.length-1;0<=c;c--)g=e[c],g._endHandle&&m(g._endHandle),g._matrix=g._multiply=g._endHandle=null,g._marked=g._remove=0,e.splice(c,1),f(g);b._matrix=b._multiply=null;b._marked=b._remove=0}this._tileIds=this._tiles=this._tileBounds=
this._ct=this._loadingList=this._removeList=this._standby=null},onResume:function(){this.inherited(arguments);this._tileIds=[];this._tiles=[];this._tileBounds=[];this._ct=null;this._removeList=new a;this._loadingList=new a;k.show(this._div);this._enableDrawConnectors();this._wakeTimer=this._wakeTimer||setTimeout(b.hitch(this,function(){this.suspended||this._onExtentChangeHandler(this._map.extent,null,!0,this._map.__LOD)}),0)},_enableDrawConnectors:function(){var a=this._map,b=n.connect;if("css-transforms"===
a.navigationMode){if(this._onScaleHandler_connect=b(a,"onScale",this,this._onScaleHandler),t("esri-mobile")){this._standby=[];var c=this,d=function(){c._noDom=1};this._onPanStartHandler_connect=b(a,"onPanStart",d);this._onZoomStartHandler_connect=b(a,"onZoomStart",d)}}else this._onZoomHandler_connect=b(a,"onZoom",this,"_onZoomHandler");this._onPanHandler_connect=b(a,"onPan",this,"_onPanHandler");this._onExtentChangeHandler_connect=b(a,"onExtentChange",this,"_onExtentChangeHandler")},_disableDrawConnectors:function(){var a=
n.disconnect;a(this._onPanHandler_connect);a(this._onZoomHandler_connect);a(this._onScaleHandler_connect);a(this._onExtentChangeHandler_connect);a(this._onPanStartHandler_connect);a(this._onZoomStartHandler_connect);this._onPanHandler_connect=this._onZoomHandler_connect=this._onScaleHandler_connect=this._onExtentChangeHandler_connect=this._onPanStartHandler_connect=this._onZoomStartHandler_connect=null},_onResizeHandler:function(a,b,c){a={width:b+"px",height:c+"px"};b=e.set;b(this._div,a);if("css-transforms"===
this._map.navigationMode)for(this._active&&b(this._active,a),c=this._passives.length-1;0<=c;c--)b(this._passives[c],a)},_onExtentChangeHandler:function(a,b,c,k){b=this._map;var g=this._standby,r;clearTimeout(this._wakeTimer);this._wakeTimer=null;if(!b._isPanningOrZooming()){if("css-transforms"===b.navigationMode){if(c)for(k=this._passives.length-1;0<=k;k--)r=this._passives[k],e.set(r,m._css.names.transition,"none"),r._marked?(this._passives.splice(k,1),r.parentNode&&r.parentNode.removeChild(r),p.destroy(r)):
0<r.childNodes.length&&(r._multiply=r._multiply?d.multiply(r._matrix,r._multiply):r._matrix);this._noDom=0;if(g&&g.length)for(k=g.length-1;0<=k;k--)r=g[k],e.set(r,"visibility","inherit"),this._popTile(r),g.splice(k,1)}this._fireUpdateStart();this._rrIndex=0;k=u.getCandidateTileInfo(b,this.tileInfo,a);a=b.__visibleDelta;if(!this._ct||k.lod.level!==this._ct.lod.level||c){r=k&&this._ct&&k.lod.level!==this._ct.lod.level;this._ct=k;var l=this._tiles,h=this._tileIds,t=this._tileBounds,v=this._removeList,
n,x=h.length;this._cleanUpRemovedImages();for(k=0;k<x;k++)g=h[k],n=l[g],t[g]=h[k]=null,"css-transforms"===b.navigationMode&&r&&n.parentNode&&b.fadeOnZoom&&(n._fadeOut=r,n.parentNode._remove++),v.add(n);c&&(this._tileIds=[],this._tiles=[],this._tileBounds=[])}k=a.x;c=a.y;"css-transforms"===b.navigationMode?(g={},g[m._css.names.transform]=m._css.translate(k,c),e.set(this._div,g)):e.set(this._div,{left:k+"px",top:c+"px"});this.__coords_dx=k;this.__coords_dy=c;this._updateImages(new y(0,0,a.width,a.height));
0===this._loadingList.count?(this._cleanUpRemovedImages(),this.onUpdate(),this._fireUpdateEnd()):this._fireOnUpdate=!0;c=this._tileW;l=this._tileH;a=new y(-a.x,-a.y,a.width,a.height);for(k=this._tileIds.length-1;0<=k;k--)(g=this._tileIds[k])?(r=this._tiles[g],h=f.getMarginBox(r),h=new y(h.l,h.t,c,l),"css-transforms"===b.navigationMode&&(h.x=r._left,h.y=r._top),a.intersects(h)?this._tileBounds[g]=h:(this._loadingList.contains(g)&&this._popTile(r),p.destroy(r),this._tileIds.splice(k,1),delete this._tileBounds[g],
delete this._tiles[g])):(this._tileIds.splice(k,1),delete this._tileBounds[g],delete this._tiles[g])}},_onPanHandler:function(a,b){a=this._map;b=a.__visibleDelta.offset(b.x,b.y);this.__coords_dx=this.__coords_dy=0;"css-transforms"===a.navigationMode?(a={},a[m._css.names.transform]=m._css.translate(b.x,b.y),e.set(this._div,a),t("esri-mobile")||this._updateImages({x:-b.x,y:-b.y,width:b.width,height:b.height})):(e.set(this._div,{left:b.x+"px",top:b.y+"px"}),this._updateImages({x:-b.x,y:-b.y,width:b.width,
height:b.height}));0<this._loadingList.count&&(this._fireUpdateStart(),this._fireOnUpdate=!0)},_onScaleHandler:function(a,b){var c,k={},f=m._css.names,g=this._map,r=w.defaults.map.zoomDuration;for(c=this._passives.length-1;0<=c;c--){var l=this._passives[c];0===l.childNodes.length?(this._passives.splice(c,1),p.destroy(l)):("none"===l.style[f.transition]&&e.set(l,f.transition,f.transformName+" "+r+"ms ease"),e.set(l,f.transition,b?"none":f.transformName+" "+r+"ms ease"),l._matrix=a,k[f.transform]=m._css.matrix(l._multiply?
d.multiply(a,l._multiply):a),e.set(l,k))}this._active&&0===this._active.childNodes.length||(e.set(this._active,f.transition,b?"none":f.transformName+" "+r+"ms ease"),this._active._matrix=a,k[f.transform]=m._css.matrix(this._active._matrix),e.set(this._active,k),this._passives.push(this._active),k={position:"absolute",width:g.width+"px",height:g.height+"px",overflow:"visible"},k[f.transition]=f.transformName+" "+r+"ms ease",e.set(this._active=p.create("div",null,this._div),k),this._active._remove=
0,g.fadeOnZoom&&p.place(this._active,this._div,"first"))},_onZoomHandler:function(a,b,c){a=f.getMarginBox(this._div);c=c.offset(-a.l,-a.t);this._previousScale&&1!==b||(this._previousScale=1);var d,k=this._tileW*b,m=this._tileH*b,r=this._tileBounds,l=this._tiles,h=this._previousScale,p=this._multiple,v=e.set,y,n;if((a=t("ie"))&&8>a)g.forEach(this._tileIds,function(a){n="";d=r[a];y=l[a].style.margin.split(" ");g.forEach(y,function(a){""!==n&&(n+=" ");a=parseFloat(a);n+=a/h*b+"px"});v(l[a],{left:d.x-
(k-d.width)*(c.x-d.x)/d.width+"px",top:d.y-(m-d.height)*(c.y-d.y)/d.height+"px",margin:1!==p&&-1===n.indexOf("NaN")?n:"",zoom:b})});else{var u=k*p,x=m*p,q,w;g.forEach(this._tileIds,function(a){n="";d=r[a];q=d.x-(k-d.width)*(c.x-d.x)/d.width;w=d.y-(m-d.height)*(c.y-d.y)/d.height;y=l[a].style.margin.split(" ");g.forEach(y,function(a){""!==n&&(n+=" ");a=parseFloat(a);n+=a/h*b+"px"});v(l[a],{left:q+"px",top:w+"px",margin:1!==p&&-1===n.indexOf("NaN")?n:"",width:u+"px",height:x+"px"})})}this._previousScale=
b},_updateImages:function(a){if(this._ct){var b,c=this._tileW,d=this._tileH,e=this._ct;b=e.lod;var e=e.tile,k=e.offsets,m=e.coords,f=m.row,m=m.col,r=b.level,l=this.opacity,h=this._tileIds,p=this._loadingList,t=this._addImage,v=this._map.id,y=this.id,n=a.x,u=a.y,q=b.startTileRow,x=b.endTileRow,w=b.startTileCol,z=b.endTileCol,ea=g.indexOf,ca,ga,ha=k.x-this.__coords_dx,pa=k.y-this.__coords_dy;ga=c-ha+-a.x;var ja=d-pa+-a.y;ca=Math.ceil;ga=0<ga?ga%c:c-Math.abs(ga)%c;ja=0<ja?ja%d:d-Math.abs(ja)%d;n=0<n?
Math.floor((n+ha)/c):ca((n-(c-ha))/c);u=0<u?Math.floor((u+pa)/d):ca((u-(d-pa))/d);pa=n+ca((a.width-ga)/c);a=u+ca((a.height-ja)/d);var ya,sa,wa;this._wrap&&(ya=b._frameInfo,sa=ya[0],wa=ya[1],ya=ya[2]);for(ja=n;ja<=pa;ja++)for(n=u;n<=a;n++)ca=f+n,ga=m+ja,this._wrap&&(ga<wa?(ga%=sa,ga=ga<wa?ga+sa:ga):ga>ya&&(ga%=sa)),!this._isExcluded(r,ca,ga)&&ca>=q&&ca<=x&&ga>=w&&ga<=z&&(b=v+"_"+y+"_tile_"+r+"_"+n+"_"+ja,-1===ea(h,b)&&(p.add(b),h.push(b),t(r,n,ca,ja,ga,b,c,d,l,e,k)))}},_cleanUpRemovedImages:function(){var a=
this._removeList,b=p.destroy,c,d=m._css.names;a.forEach(function(a){a._fadeOut||(a.style.filter="",a.style.zoom=1,b(a))});if("css-transforms"===this._map.navigationMode)for(c=this._passives.length-1;0<=c;c--){var k=this._passives[c];0===k.childNodes.length?(this._passives.splice(c,1),b(k)):this._map.fadeOnZoom&&!k._marked&&k._remove===k.childNodes.length&&(k._marked=1,2048>m._css.getScaleFromMatrix(e.get(k,d.transform))?(e.set(k,d.transition,"opacity 0.65s"),e.set(k,"opacity",0),n.disconnect(k._endHandle),
k._endHandle=n.connect(k,d.endEvent,this._transitionEnd)):this._transitionEnd({propertyName:"opacity",target:k}))}a.clear()},_transitionEnd:function(a){var b=a.target;"opacity"===a.propertyName&&(n.disconnect(b._endHandle),b._endHandle=null,a=g.indexOf(this._passives,b),-1<a&&this._passives.splice(a,1),b.parentNode&&b.parentNode.removeChild(b),p.destroy(b))},_addImage:function(a,c,d,k,f,g,r,h,t,v,y){if(this._patchIE)v=this._tiles[g]=p.create("div"),v.id=g,l.add(v,"layerTile"),e.set(v,{left:r*k-y.x+
"px",top:h*c-y.y+"px",width:r+"px",height:h+"px",filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src\x3d'"+this.getTileUrl(a,d,f)+"', sizingMethod\x3d'scale')"}),1>t&&e.set(v,"opacity",t),a=v.appendChild(p.create("div")),e.set(a,{opacity:0,width:r+"px",height:h+"px"}),this._div.appendChild(v),v=null,this._loadingList.remove(g),this._fireOnUpdateEvent();else{v=this._tiles[g]=p.create("img");var u=n.connect;v.id=g;v._uid=a+"_"+d+"_"+f;v.alt="";l.add(v,"layerTile");k=r*k-y.x;y=h*c-y.y;c=this._map;
var q=m._css.names;r={width:r+"px",height:h+"px",visibility:"hidden"};"css-transforms"===c.navigationMode?(r[q.transform]=m._css.translate(k,y),e.set(v,r),v._left=k,v._top=y):(r.left=k+"px",r.top=y+"px",e.set(v,r));1>t&&e.set(v,"opacity",t);v._onload_connect=u(v,"onload",this,"_tileLoadHandler");v._onerror_connect=u(v,"onerror",b.hitch(this,"_tileErrorHandler",d,f));v._onabort_connect=u(v,"onabort",this,"_tileAbortHandler");if(this.tileMap)this.tileMap.getTile(a,d,f,g,this._tileMapCallback);else if(g=
this.getTileUrl(a,d,f,v))this._failedRequests&&this._failedRequests[g]?(e.set(v,this._failedRequests[g].css),v.src=this._failedRequests[g].src,this._multiple=parseInt(this._failedRequests[g].css.width)/this._tileW,this.isResampling=1!==this._multiple):(this._multiple=1,this.isResampling=!1,v.src=g);"css-transforms"===c.navigationMode?this._active.appendChild(v):this._div.appendChild(v);v=null}},_tileMapCallback:function(a,b){var d;if(!this.suspended){d=this._tiles[b.id]||c.byId(b.id);var k=b.level+
"_"+b.row+"_"+b.col;d&&d._uid===k?(this._multiple=2*(b.level-a.level)||1,this.isResampling=1!==this._multiple,b=this.tileMap.style(a,b),e.set(d,b),d.src=this.getTileUrl(a.level,a.row,a.col)):this._popTile(b)}},getTileUrl:function(a,b,c){},_reCheckTS:/[\?\&]_ts=/ig,_reReplaceTS:/([\?\&]_ts=)[0-9]+/ig,addTimestampToURL:function(a){var b=this._refreshTS;b&&(a=this._reCheckTS.test(a)?a.replace(this._reReplaceTS,"$$$1"+b):a+((-1===a.indexOf("?")?"?":"\x26")+"_ts\x3d"+b));return a},refresh:function(){this.suspended||
(this._refreshTS=(new Date).getTime(),this._onExtentChangeHandler(this._map.extent,null,!0,this._map.__LOD))},_popTile:function(a){var b=n.disconnect;b(a._onload_connect);b(a._onerror_connect);b(a._onabort_connect);a._onload_connect=a._onerror_connect=a._onabort_connect=null;this._loadingList.remove(a.id);this._fireOnUpdateEvent()},_tileLoadHandler:function(a){a=a.currentTarget;this._noDom?this._standby.push(a):(e.set(a,"visibility","inherit"),this._popTile(a))},_tileAbortHandler:function(a){a=a.currentTarget;
this.onError(Error("Unable to load tile: "+a.src));e.set(a,"visibility","hidden");this._popTile(a)},_tileErrorHandler:function(a,b,c){c=c.currentTarget;var d,k,m=!0;if(this.tileMap||!this.resampling)m=!1;else if(d=new h(c.src),d=d.path.split("/"),d=parseInt(d[d.length-3]),k=this._ct.lod.level-d+1,this._multiple=Math.pow(2,k),d===this._lowestLevel||0===this._resamplingTolerance||this._resamplingTolerance&&Math.log(this._multiple)/Math.LN2>this._resamplingTolerance)m=!1;m?(this.isResampling=!0,this._resample(c,
a,b)):(this.onError(Error("Unable to load tile: "+c.src)),e.set(c,"visibility","hidden"),this._popTile(c))},_resample:function(a,b,c){var d=(new h(a.src)).path.split("/"),k=this._multiple,m=parseInt(d[d.length-3])-1,f=parseInt(b/k),g=parseInt(c/k),d=c%k,r=b%k,f=this.getTileUrl(m,f,g);b=this.getTileUrl(m+Math.log(k)/Math.LN2,b,c);k={width:this._tileW*k+"px",height:this._tileH*k+"px",margin:"-"+this._tileW*r+"px 0 0 "+("-"+this._tileH*d+"px")};this._failedRequests||(this._failedRequests={});this._failedRequests[b]=
{src:f,css:k};e.set(a,k);t("chrome")&&a.setAttribute("src",null);a.src=f},_fireOnUpdateEvent:function(){0===this._loadingList.count&&(this._cleanUpRemovedImages(),this._fireOnUpdate&&(this._fireOnUpdate=!1,this.onUpdate(),this._fireUpdateEnd()))},setOpacity:function(a){if(this.opacity!=a)this.onOpacityChange(this.opacity=a)},onOpacityChange:function(){},_opacityChangeHandler:function(a){var b=e.set,c,d,k;if("css-transforms"===this._map.navigationMode){if(this._active)for(k=this._active.childNodes,
c=k.length-1;0<=c;c--)b(k[c],"opacity",a);for(c=this._passives.length-1;0<=c;c--)for(k=this._passives[c].childNodes,d=k.length-1;0<=d;d--)b(k[d],"opacity",a)}else for(k=this._div.childNodes,c=k.length-1;0<=c;c--)b(k[c],"opacity",a)},setExclusionAreas:function(a){this.exclusionAreas=a;if(this.loaded&&this._map&&this._map.loaded){var b=this._map.spatialReference,c=this.tileInfo,d=c.origin,e=c.lods,k=e[0].level,m=e[e.length-1].level,f,g,l,h,p,t,y,n,u;if(this.exclusionAreas&&this.exclusionAreas.length)for(this._exclusionsPerZoom=
[],g=0,l=a.length;g<l;g++){if(f=a[g],(u=f.geometry)&&"extent"===u.type&&u.xmin<=u.xmax&&u.ymin<=u.ymax){if(!b.equals(u.spatialReference))if(b._canProject(u.spatialReference))b.isWebMercator()?(n=r.lngLatToXY(u.xmin,u.ymin),u=r.lngLatToXY(u.xmax,u.ymax)):(n=r.xyToLngLat(u.xmin,u.ymin,!0),u=r.xyToLngLat(u.xmax,u.ymax,!0)),u=new v(n[0],n[1],u[0],u[1],b);else continue;y=-1;if(f.minZoom&&-1!==f.minZoom)y=f.minZoom;else if(f.minScale&&-1!==f.minScale)for(h=0,p=e.length;h<p;h++)if(e[h].scale<=f.minScale){y=
e[h].level;break}y=Math.max(y,k);n=-1;if(f.maxZoom&&-1!==f.maxZoom)n=f.maxZoom;else if(f.maxScale&&-1!==f.maxScale)for(h=0,p=e.length;h<p;h++)if(e[h].scale<f.maxScale){n=e[h-1].level;break}else if(e[h].scale===f.maxScale){n=e[h].level;break}n=-1===n?m:Math.min(n,m);for(f=y;f<=n;f++){h=0;for(p=e.length;h<p;h++)if(e[h].level===f){t=e[h];break}t&&(this._exclusionsPerZoom[f]||(this._exclusionsPerZoom[f]=[]),h=1/t.resolution/c.rows,p=1/t.resolution/c.cols,this._exclusionsPerZoom[f].push({rowFrom:Math.floor((d.y-
u.ymax)*h),rowTo:Math.ceil((d.y-u.ymin)*h),colFrom:Math.floor((u.xmin-d.x)*p),colTo:Math.ceil((u.xmax-d.x)*p)}))}}}else this._exclusionsPerZoom=null;this.suspended||this._onExtentChangeHandler(this._map.extent,null,!0,this._map.__LOD)}},_isExcluded:function(a,b,c){var d,e,k;if(!this._exclusionsPerZoom)return!1;d=this._exclusionsPerZoom[a];if(!d)return!1;e=0;for(k=d.length;e<k;e++)if(a=d[e],b>=a.rowFrom&&b<a.rowTo&&c>=a.colFrom&&c<a.colTo)return!0;return!1}});t("extend-esri")&&b.setObject("layers.TiledMapServiceLayer",
q,m);return q})},"dojox/collections/ArrayList":function(){define(["dojo/_base/kernel","dojo/_base/array","./_base"],function(q,n,b){b.ArrayList=function(g){var h=[];g&&(h=h.concat(g));this.count=h.length;this.add=function(b){h.push(b);this.count=h.length};this.addRange=function(b){if(b.getIterator)for(b=b.getIterator();!b.atEnd();)this.add(b.get());else for(var g=0;g<b.length;g++)h.push(b[g]);this.count=h.length};this.clear=function(){h.splice(0,h.length);this.count=0};this.clone=function(){return new b.ArrayList(h)};
this.contains=function(b){for(var g=0;g<h.length;g++)if(h[g]==b)return!0;return!1};this.forEach=function(b,g){q.forEach(h,b,g)};this.getIterator=function(){return new b.Iterator(h)};this.indexOf=function(b){for(var g=0;g<h.length;g++)if(h[g]==b)return g;return-1};this.insert=function(b,g){h.splice(b,0,g);this.count=h.length};this.item=function(b){return h[b]};this.remove=function(b){b=this.indexOf(b);0<=b&&h.splice(b,1);this.count=h.length};this.removeAt=function(b){h.splice(b,1);this.count=h.length};
this.reverse=function(){h.reverse()};this.sort=function(b){b?h.sort(b):h.sort()};this.setByIndex=function(b,g){h[b]=g;this.count=h.length};this.toArray=function(){return[].concat(h)};this.toString=function(b){return h.join(b||",")}};return b.ArrayList})},"dojox/collections/_base":function(){define(["dojo/_base/kernel","dojo/_base/lang","dojo/_base/array"],function(q,n,b){q=n.getObject("dojox.collections",!0);q.DictionaryEntry=function(b,h){this.key=b;this.value=h;this.valueOf=function(){return this.value};
this.toString=function(){return String(this.value)}};q.Iterator=function(g){var h=0;this.element=g[h]||null;this.atEnd=function(){return h>=g.length};this.get=function(){return this.atEnd()?null:this.element=g[h++]};this.map=function(h,l){return b.map(g,h,l)};this.reset=function(){h=0;this.element=g[h]}};q.DictionaryIterator=function(g){var h=[],p={},l;for(l in g)p[l]||h.push(g[l]);var f=0;this.element=h[f]||null;this.atEnd=function(){return f>=h.length};this.get=function(){return this.atEnd()?null:
this.element=h[f++]};this.map=function(e,c){return b.map(h,e,c)};this.reset=function(){f=0;this.element=h[f]}};return q})},"esri/layers/ArcGISMapServiceLayer":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ../request ../SpatialReference ../geometry/Extent ./LayerInfo".split(" "),function(q,n,b,g,h,p,l,f,e,c){q=q(null,{declaredClass:"esri.layers.ArcGISMapServiceLayer",infoTemplates:null,constructor:function(a,b){this.layerInfos=[];b&&(this.infoTemplates=
b.infoTemplates||null);a=this._params={};if(b=this._url.query?this._url.query.token:null)a.token=b},setInfoTemplates:function(a){this.infoTemplates=a},_load:function(){l({url:this._url.path,content:n.mixin({f:"json"},this._params),callbackParamName:"callback",load:this._initLayer,error:this._errorHandler})},spatialReference:null,initialExtent:null,fullExtent:null,description:null,units:null,_initLayer:function(a,d){try{this._findCredential();(this.credential&&this.credential.ssl||a&&a._ssl)&&this._useSSL();
this.description=a.description;this.copyright=a.copyrightText;this.spatialReference=a.spatialReference&&new f(a.spatialReference);this.initialExtent=a.initialExtent&&new e(a.initialExtent);this.fullExtent=a.fullExtent&&new e(a.fullExtent);this.units=a.units;this.maxRecordCount=a.maxRecordCount;this.maxImageHeight=a.maxImageHeight;this.maxImageWidth=a.maxImageWidth;this.supportsDynamicLayers=a.supportsDynamicLayers;var m=this.layerInfos=[],g=a.layers,h=this._defaultVisibleLayers=[];b.forEach(g,function(a,
b){m[b]=new c(a);a.defaultVisibility&&h.push(a.id)});this.visibleLayers||(this.visibleLayers=h);this.version=a.currentVersion;this.cimVersion=a.cimVersion;this.version||(this.version="capabilities"in a||"tables"in a?10:"supportedImageFormatTypes"in a?9.31:9.3);this.capabilities=a.capabilities;p.isDefined(a.minScale)&&!this._hasMin&&this.setMinScale(a.minScale);p.isDefined(a.maxScale)&&!this._hasMax&&this.setMaxScale(a.maxScale)}catch(k){this._errorHandler(k)}}});g("extend-esri")&&n.setObject("layers.ArcGISMapServiceLayer",
q,h);return q})},"esri/layers/LayerInfo":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","../lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.layers.LayerInfo",constructor:function(b){n.mixin(this,b)},toJson:function(){return h.fixJson({defaultVisibility:this.defaultVisibility,id:this.id,maxScale:this.maxScale,minScale:this.minScale,name:this.name,parentLayerId:this.parentLayerId,subLayerIds:this.subLayerIds})}});b("extend-esri")&&n.setObject("layers.LayerInfo",
q,g);return q})},"esri/layers/TimeInfo":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../TimeExtent ./TimeReference ./LayerTimeOptions".split(" "),function(q,n,b,g,h,p,l){q=q(null,{declaredClass:"esri.layers.TimeInfo",constructor:function(b){null!==b&&(n.mixin(this,b),b.exportOptions&&(this.exportOptions=new l(b.exportOptions)),this.timeExtent=null,b.timeExtent&&2===b.timeExtent.length&&(this.timeExtent=new h(b.timeExtent)),this.timeReference=new p(b.timeReference))}});
n.mixin(q,{UNIT_CENTURIES:"esriTimeUnitsCenturies",UNIT_DAYS:"esriTimeUnitsDays",UNIT_DECADES:"esriTimeUnitsDecades",UNIT_HOURS:"esriTimeUnitsHours",UNIT_MILLISECONDS:"esriTimeUnitsMilliseconds",UNIT_MINUTES:"esriTimeUnitsMinutes",UNIT_MONTHS:"esriTimeUnitsMonths",UNIT_SECONDS:"esriTimeUnitsSeconds",UNIT_UNKNOWN:"esriTimeUnitsUnknown",UNIT_WEEKS:"esriTimeUnitsWeeks",UNIT_YEARS:"esriTimeUnitsYears"});b("extend-esri")&&n.setObject("layers.TimeInfo",q,g);return q})},"esri/TimeExtent":function(){define(["dojo/_base/declare",
"dojo/_base/lang","dojo/has","./kernel"],function(q,n,b,g){var h=q(null,{declaredClass:"esri.TimeExtent",constructor:function(b){if(1<arguments.length)this._create(arguments[0],arguments[1]);else if(b)if(n.isArray(b)){var g=b[0],f=b[1];this.startTime=null===g||"null"===g?null:new Date(g);this.endTime=null===f||"null"===f?null:new Date(f)}else b instanceof Date&&this._create(b,null)},offset:function(b,g){var f=new h,e=this.startTime,c=this.endTime;e&&(f.startTime=this._getOffsettedDate(e,b,g));c&&
(f.endTime=this._getOffsettedDate(c,b,g));return f},intersection:function(b){return this._intersection(this,b)},toJson:function(){var b=[],g=this.startTime;b.push(g?g.getTime():"null");g=this.endTime;b.push(g?g.getTime():"null");return b},_create:function(b,g){this.startTime=b?new Date(b.getTime()):null;this.endTime=g?new Date(g.getTime()):null},_refData:{esriTimeUnitsMilliseconds:{getter:"getUTCMilliseconds",setter:"setUTCMilliseconds",multiplier:1},esriTimeUnitsSeconds:{getter:"getUTCSeconds",setter:"setUTCSeconds",
multiplier:1},esriTimeUnitsMinutes:{getter:"getUTCMinutes",setter:"setUTCMinutes",multiplier:1},esriTimeUnitsHours:{getter:"getUTCHours",setter:"setUTCHours",multiplier:1},esriTimeUnitsDays:{getter:"getUTCDate",setter:"setUTCDate",multiplier:1},esriTimeUnitsWeeks:{getter:"getUTCDate",setter:"setUTCDate",multiplier:7},esriTimeUnitsMonths:{getter:"getUTCMonth",setter:"setUTCMonth",multiplier:1},esriTimeUnitsYears:{getter:"getUTCFullYear",setter:"setUTCFullYear",multiplier:1},esriTimeUnitsDecades:{getter:"getUTCFullYear",
setter:"setUTCFullYear",multiplier:10},esriTimeUnitsCenturies:{getter:"getUTCFullYear",setter:"setUTCFullYear",multiplier:100}},_intersection:function(b,g){if(b&&g){var f=b.startTime;b=b.endTime;var e=g.startTime;g=g.endTime;f=f?f.getTime():-Infinity;e=e?e.getTime():-Infinity;b=b?b.getTime():Infinity;g=g?g.getTime():Infinity;var c,a;e>=f&&e<=b?c=e:f>=e&&f<=g&&(c=f);b>=e&&b<=g?a=b:g>=f&&g<=b&&(a=g);if(isNaN(c)||isNaN(a))return null;f=new h;f.startTime=-Infinity===c?null:new Date(c);f.endTime=Infinity===
a?null:new Date(a);return f}return null},_getOffsettedDate:function(b,g,f){var e=this._refData;b=new Date(b.getTime());g&&f&&(e=e[f],b[e.setter](b[e.getter]()+g*e.multiplier));return b}});b("extend-esri")&&(g.TimeExtent=h);return h})},"esri/layers/TimeReference":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],function(q,n,b,g){q=q(null,{declaredClass:"esri.layers.TimeReference",constructor:function(b){b&&n.mixin(this,b)}});b("extend-esri")&&n.setObject("layers.TimeReference",
q,g);return q})},"esri/layers/LayerTimeOptions":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","../lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.layers.LayerTimeOptions",constructor:function(b){b&&n.mixin(this,b)},toJson:function(){return h.fixJson({timeDataCumulative:this.timeDataCumulative,timeOffset:this.timeOffset,timeOffsetUnits:this.timeOffsetUnits,useTime:this.useTime})}});b("extend-esri")&&n.setObject("layers.LayerTimeOptions",q,g);return q})},
"esri/layers/TileMap":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/Deferred dojo/io-query ../request ../urlUtils ../sniff".split(" "),function(q,n,b,g,h,p,l,f){var e=f("esri-iphone");return q(null,{declaredClass:"esri.layers.TileMap",constructor:function(b){this.layer=b;this._tileMaps={}},getTile:function(b,a,d,e,f){b={id:e,level:b,row:a,col:d};a=this._getResamplingBudget();0<a?this._process({tile:b,requestedTile:b,callback:f,resamplingBudget:a}):(f||this.callback).call(this,
b,b)},statusOf:function(b,a,d){var c=this._getResamplingBudget();b={level:b,row:a,col:d};if(0===c)return 1;for(;0<=c;){a=this._tileToTileMap(b);if(!this._tileMaps[a.uid])return-1;a=this._tileMaps[a.uid];if(!a.promise.isFulfilled())return-1;if(this._isTileAvailable(b,a))return 1;b=this._parentTile(b);if(!b)break;c--}return 0},style:function(b,a){if(b.level!==a.level||b.row!==a.row||b.col!==a.col){for(var c=this.layer.tileInfo,m=c.lods,f=c.cols,c=c.rows,g,k,h=m.length-1;!g||!k;)g||m[h].level!==b.level||
(g=m[h]),k||m[h].level!==a.level||(k=m[h]),h--;m=Math.round(g.resolution/k.resolution);b=a.col%m*-1*f;a=a.row%m*-1*c;m={width:f*m+"px",height:c*m+"px",margin:a+"px 0 0 "+b+"px","will-change":"transform"};e&&(b=0===b?0:-1*b,a=0===a?0:-1*a,m.clip="rect("+a+"px,"+(b+f)+"px,"+(a+c)+"px,"+b+"px)");return m}},_process:function(b){var a=b.tile,c=this._tileToTileMap(a),e=this._parentTile(a);this._getTileMap(c).then(n.hitch(this,function(d){c=d;this._isTileAvailable(a,c)?(b.callback||this.callback).call(this,
a,b.requestedTile):0<b.resamplingBudget&&e?(b.resamplingBudget--,b.tile=e,this._process(b)):(b.callback||this.callback).call(this,b.requestedTile,b.requestedTile)}),n.hitch(this,function(){(b.callback||this.callback).call(this,b.requestedTile,b.requestedTile)}))},_getTileMap:function(b){var a,c,e,f,h=null;this._tileMaps[b.uid]?(b=this._tileMaps[b.uid],a=b.promise):(this._tileMaps[b.uid]=b,c=new g,p({url:this._getTileMapUrl(b.level,b.row,b.col),handleAs:"json",content:{f:"json"},callbackParamName:"callback",
timeout:3E3,load:function(a){n.mixin(b,a);if(b.data&&0<b.data.length){f=b.data.length;if(1===f)h=b.data[0];else for(h=b.data[0],e=1;e<f;e++)if(b.data[e]!==h){h=null;break}null!==h&&(delete b.data,b.value=h);null==b.valid&&(b.valid=!0)}c.resolve(b)},error:function(a){a&&422===a.code?(n.mixin(b,{location:{top:b.row,left:b.col,width:8,height:8},valid:!0,value:0}),c.resolve(b)):c.reject()}}),a=b.promise=c.promise);return a},_parentTile:function(c){var a=this.layer.tileInfo.lods,d,e,f=null;b.some(a,function(a,
b){return c.level===a.level?(d=a,e=b,!0):!1});0<e&&(a=a[e-1],f={id:c.id,level:a.level,row:Math.floor(c.row*d.resolution/a.resolution+.01),col:Math.floor(c.col*d.resolution/a.resolution+.01)});return f},_tileToTileMap:function(b){var a=8*Math.floor(b.row/8),c=8*Math.floor(b.col/8);return{uid:b.level+"_"+a+"_"+c,level:b.level,row:a,col:c}},_isTileAvailable:function(b,a){var c,e;a.valid?void 0!==a.value?b=a.value:(c=a.location.left,e=a.location.top,b=(b.row-e)*a.location.width+(b.col-c),b=b<a.data.length?
a.data[b]:0):b=0;return b},_getTileMapUrl:function(b,a,d){var c=this.layer,e=c.tileServers,f=c._getToken(),k=c._url.query;b=(e?e[a%e.length]:c._url.path)+"/tilemap/"+b+"/"+a+"/"+d+"/8/8";k&&(b+="?"+h.objectToQuery(k));!f||k&&k.token||(b+=(-1===b.indexOf("?")?"?":"\x26")+"token\x3d"+f);return b=c.addTimestampToURL(b)},_getResamplingBudget:function(){var b=this.layer,a=0;b.resampling&&(a=b._resamplingTolerance,null===a||void 0===a)&&(a=b.tileInfo.lods.length);return a}})})},"esri/layers/MapImageLayer":function(){define("dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/dom-construct dojo/dom-style ../kernel ../config ../sniff ../domUtils ../geometry/Point ../geometry/webMercatorUtils ./layer".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){var w=q([m],{declaredClass:"esri.layers.MapImageLayer","-chains-":{constructor:"manual"},constructor:function(a){this.inherited(arguments,[null,a]);this._mapImages=[];var c=b.hitch;this._panStart=c(this,this._panStart);this._pan=c(this,this._pan);this._extentChange=c(this,this._extentChange);this._zoom=c(this,this._zoom);this._zoomStart=c(this,this._zoomStart);this._scale=c(this,this._scale);this._resize=c(this,this._resize);n.connect(this,"onSuspend",this,this._onSuspend);
n.connect(this,"onResume",this,this._onResume);this.loaded=!0;this.onLoad(this)},opacity:1,addImage:function(a){var b=this._mapImages.push(a),b=b-1;a._idx=b;a._layer=this;this._div&&this._createImage(a,b)},removeImage:function(a){if(a){var b=a._idx,c=this._mapImages;if(c[b]===a){delete c[b];if(b=a._node)this._clearEvents(b),b.e_idx=b.e_bl=b.e_tr=b.e_l=b.e_t=b.e_w=b.e_h=null,b.parentNode&&(b.parentNode.removeChild(b),h.destroy(b));a._node=a._idx=a._layer=null}}},removeAllImages:function(){var a=this._mapImages,
b,c=a.length;for(b=0;b<c;b++){var d=a[b];d&&this.removeImage(d)}this._mapImages=[]},getImages:function(){var a=this._mapImages,b=[],c,d=a.length;for(c=0;c<d;c++)a[c]&&b.push(a[c]);return b},setOpacity:function(a){this.opacity!=a&&(this._opacityChanged(this.opacity=a),this.onOpacityChange())},onOpacityChange:function(){},_opacityChanged:function(a){var b=this._div,c,d;if(b)if(!e("ie")||8<e("ie"))p.set(b,"opacity",a);else for(d=b.childNodes,c=d.length,b=0;b<c;b++)p.set(d[b],"opacity",a)},_createImage:function(a,
b){var c=h.create("img");p.set(c,{position:"absolute"});1>a.opacity?p.set(c,"opacity",a.opacity):8>=e("ie")&&p.set(c,"opacity",this.opacity);!a.rotation||9>e("ie")||p.set(c,l._css.names.transform,l._css.rotate(360-a.rotation));a._node=c;c.e_idx=b;c.e_layer=this;c.e_load=n.connect(c,"onload",w.prototype._imageLoaded);c.e_error=n.connect(c,"onerror",w.prototype._imageError);c.e_abort=n.connect(c,"onabort",w.prototype._imageError);c.src=a.href},_imageLoaded:function(a,b){a=b||a.target||a.currentTarget;
b=a.e_layer;var c=b._mapImages[a.e_idx],d=b._map;d&&(d.__zooming||d.__panning||!b._sr)?b._standby.push(a):(b._clearEvents(a),c&&c._node===a&&d&&b._attach(c))},_imageError:function(a){a=a.target||a.currentTarget;var b=a.e_layer,c=b._mapImages[a.e_idx];b._clearEvents(a);c&&(c._node=null)},_clearEvents:function(a){var b=n.disconnect;b(a.e_load);b(a.e_error);b(a.e_abort);a.e_load=a.e_error=a.e_abort=a.e_layer=null},_attach:function(b){var c=b.extent,e=c.spatialReference,m=this._sr,f=this._div,g=b._node,
h=new a({x:c.xmin,y:c.ymin,spatialReference:e}),c=new a({x:c.xmax,y:c.ymax,spatialReference:e});m.equals(e)||(m.isWebMercator()&&4326===e.wkid?(h=d.geographicToWebMercator(h),c=d.geographicToWebMercator(c)):e.isWebMercator()&&4326===m.wkid&&(h=d.webMercatorToGeographic(h),c=d.webMercatorToGeographic(c)));g.e_bl=h;g.e_tr=c;b.visible&&(this._setPos(g,f._left,f._top),(this._active||f).appendChild(g))},_setPos:function(a,b,c){var d=a.e_bl,e=a.e_tr,k=this._map,d=k.toScreen(d),e=k.toScreen(e);b=d.x-b;c=
e.y-c;var m=Math.abs(e.x-d.x),d=Math.abs(d.y-e.y),e={width:m+"px",height:d+"px"},f=this._mapImages[a.e_idx];"css-transforms"===k.navigationMode?e[l._css.names.transform]=l._css.translate(b,c)+(f.rotation?" "+l._css.rotate(360-f.rotation):""):(e.left=b+"px",e.top=c+"px");p.set(a,e);a.e_l=b;a.e_t=c;a.e_w=m;a.e_h=d},managedSuspension:!0,_setMap:function(a,b){this.inherited(arguments);var d=this._div=h.create("div",null,b),k=l._css.names,m={position:"absolute"},f=a.__visibleDelta;if(!e("ie")||8<e("ie"))m.opacity=
this.opacity;"css-transforms"===a.navigationMode?(m[k.transform]=l._css.translate(f.x,f.y),p.set(d,m),d._left=f.x,d._top=f.y,m={position:"absolute",width:a.width+"px",height:a.height+"px",overflow:"visible"},this._active=h.create("div",null,d),p.set(this._active,m),this._passive=h.create("div",null,d),p.set(this._passive,m)):(d._left=0,d._top=0,p.set(d,m));this._standby=[];k=this._mapImages;f=k.length;for(m=0;m<f;m++){var g=k[m];g._node||this._createImage(g,g._idx)}c.hide(d);return d},_unsetMap:function(a,
b){this._disconnect();var c=this._div;if(c){var d=this._mapImages,e,k=d.length;for(e=0;e<k;e++){var m=d[e];if(m){var f=m._node;f&&(this._clearEvents(f),f.e_idx=f.e_bl=f.e_tr=f.e_l=f.e_t=f.e_w=f.e_h=null);m._node=null}}b.removeChild(c);h.destroy(c)}this._map=this._div=this._sr=this._active=this._passive=this._standby=null;this.inherited(arguments)},_onSuspend:function(){this._disconnect();c.hide(this._div)},_onResume:function(a){a.firstOccurrence&&(this._sr=this._map.spatialReference,this._processStandbyList());
a=this._map;var b=this._div,d=a.__visibleDelta;"css-transforms"===a.navigationMode&&(b._left=d.x,b._top=d.y,p.set(b,l._css.names.transform,l._css.translate(b._left,b._top)));this._redraw("css-transforms"===a.navigationMode);this._connect(a);c.show(b)},_connect:function(a){if(!this._connections){var b=n.connect,c="css-transforms"===a.navigationMode;this._connections=[b(a,"onPanStart",this._panStart),b(a,"onPan",this._pan),b(a,"onExtentChange",this._extentChange),c&&b(a,"onZoomStart",this._zoomStart),
c?b(a,"onScale",this._scale):b(a,"onZoom",this._zoom),c&&b(a,"onResize",this._resize)]}},_disconnect:function(){this._connections&&(g.forEach(this._connections,n.disconnect),this._connections=null)},_panStart:function(){this._panL=this._div._left;this._panT=this._div._top},_pan:function(a,b){a=this._div;a._left=this._panL+b.x;a._top=this._panT+b.y;"css-transforms"===this._map.navigationMode?p.set(a,l._css.names.transform,l._css.translate(a._left,a._top)):p.set(a,{left:a._left+"px",top:a._top+"px"})},
_extentChange:function(a,b,c){c?this._redraw("css-transforms"===this._map.navigationMode):b&&this._pan(a,b);this._processStandbyList()},_processStandbyList:function(){var a,b=this._standby;if(b&&b.length)for(a=b.length-1;0<=a;a--)this._imageLoaded(null,b[a]),b.splice(a,1)},_redraw:function(a){if(a){a=this._passive;var b=l._css.names;p.set(a,b.transition,"none");this._moveImages(a,this._active);p.set(a,b.transform,"none")}a=this._active||this._div;var b=this._div._left,c=this._div._top,d,e=a.childNodes.length,
m;for(d=0;d<e;d++)m=a.childNodes[d],this._setPos(m,b,c)},_zoom:function(a,b,c){a=this._div;var d=a._left,e=a._top,k,m=a.childNodes.length,f;for(k=0;k<m;k++){f=a.childNodes[k];var g=f.e_w*b,h=f.e_h*b,l=(c.x-d-f.e_l)*(g-f.e_w)/f.e_w,t=(c.y-e-f.e_t)*(h-f.e_h)/f.e_h,l=isNaN(l)?0:l,t=isNaN(t)?0:t;p.set(f,{left:f.e_l-l+"px",top:f.e_t-t+"px",width:g+"px",height:h+"px"})}},_zoomStart:function(){this._moveImages(this._active,this._passive)},_moveImages:function(a,b){a=a.childNodes;var c;c=a.length;if(0<c)for(--c;0<=
c;c--)b.appendChild(a[c])},_scale:function(a,b){var c=l._css.names,d=this._passive;p.set(d,c.transition,b?"none":c.transformName+" "+f.defaults.map.zoomDuration+"ms ease");({})[c.transform]=l._css.matrix(a);p.set(d,c.transform,l._css.matrix(a))},_resize:function(a,b,c){p.set(this._active,{width:b+"px",height:c+"px"});p.set(this._passive,{width:b+"px",height:c+"px"})}});e("extend-esri")&&b.setObject("layers.MapImageLayer",w,l);return w})},"esri/layers/OpenStreetMapLayer":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../urlUtils ../SpatialReference ../geometry/Extent ./TiledMapServiceLayer ./TileInfo".split(" "),
function(q,n,b,g,h,p,l,f,e){q=q(f,{declaredClass:"esri.layers.OpenStreetMapLayer",constructor:function(b){this.spatialReference=new p({wkid:102100});this.tileInfo=new e({rows:256,cols:256,dpi:96,format:"PNG8",compressionQuality:0,origin:{x:-2.0037508342787E7,y:2.0037508342787E7},spatialReference:{wkid:102100},lods:[{level:0,scale:5.91657527591555E8,resolution:156543.033928},{level:1,scale:2.95828763795777E8,resolution:78271.5169639999},{level:2,scale:1.47914381897889E8,resolution:39135.7584820001},
{level:3,scale:7.3957190948944E7,resolution:19567.8792409999},{level:4,scale:3.6978595474472E7,resolution:9783.93962049996},{level:5,scale:1.8489297737236E7,resolution:4891.96981024998},{level:6,scale:9244648.868618,resolution:2445.98490512499},{level:7,scale:4622324.434309,resolution:1222.99245256249},{level:8,scale:2311162.217155,resolution:611.49622628138},{level:9,scale:1155581.108577,resolution:305.748113140558},{level:10,scale:577790.554289,resolution:152.874056570411},{level:11,scale:288895.277144,
resolution:76.4370282850732},{level:12,scale:144447.638572,resolution:38.2185141425366},{level:13,scale:72223.819286,resolution:19.1092570712683},{level:14,scale:36111.909643,resolution:9.55462853563415},{level:15,scale:18055.954822,resolution:4.77731426794937},{level:16,scale:9027.977411,resolution:2.38865713397468},{level:17,scale:4513.988705,resolution:1.19432856685505},{level:18,scale:2256.994353,resolution:.597164283559817},{level:19,scale:1128.497176,resolution:.298582141647617}]});this.fullExtent=
new l({xmin:-2.003750834E7,ymin:-2.003750834E7,xmax:2.003750834E7,ymax:2.003750834E7,spatialReference:{wkid:102100}});this.initialExtent=new l({xmin:-2.003750834E7,ymin:-2.003750834E7,xmax:2.003750834E7,ymax:2.003750834E7,spatialReference:{wkid:102100}});this.tileServers=b&&b.tileServers||["//a.tile.openstreetmap.org","//b.tile.openstreetmap.org","//c.tile.openstreetmap.org"];this.serversLength=this.tileServers.length;this._displayLevels=b?b.displayLevels:null;this.copyright=b&&b.copyright||"Map data \u00a9 OpenStreetMap contributors, CC-BY-SA";
this.loaded=!0;this.onLoad(this);(b=b&&b.loadCallback)&&b(this)},getTileUrl:function(b,a,d){b=this.tileServers[a%this.serversLength]+"/"+b+"/"+d+"/"+a+".png";b=h.normalize(b);b=this.addTimestampToURL(b);return h.addProxy(b)}});b("extend-esri")&&n.setObject("layers.OpenStreetMapLayer",q,g);return q})},"esri/layers/VectorTileLayer":function(){(function(){var q=function(){var b;try{b=window.WebGLRenderingContext}catch(e){b=!1}var g;try{for(var h=document.createElement("canvas"),p=["webgl","experimental-webgl",
"webkit-3d","moz-webgl"],l=null,f=0;f<p.length;++f){try{l=h.getContext(p[f])}catch(e){}if(l)break}g=l}catch(e){g=!1}return b&&g?!0:!1}(),n=["dojo/_base/lang","dojo/has","dojo/Deferred","../sniff","./layer"];q&&n.push("./VectorTileLayerImpl");define(n,function(b,g,h,p,l,f){l=f?f:l.createSubclass({declaredClass:"esri.layers.VectorTileLayer",constructor:function(){var e=new h;e.reject(Error("esri.layers.VectorTileLayer is not supported"));e.promise.otherwise(b.hitch(this,function(b){this._errorHandler(b)}))}});
l.ACCESS_TOKEN=null;l.supported=function(){return q};g("extend-esri")&&b.setObject("layers.VectorTileLayer",l,p);return l})})()},"esri/dijit/Popup":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/connect dojo/_base/kernel dojo/has dojo/window dojo/Stateful dojo/query dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/dom-geometry dojo/dom-style dijit/registry ../kernel ../lang ../domUtils ../geometry/Polyline ../geometry/Polygon ../geometry/Multipoint ../geometry/normalizeUtils ../InfoWindowBase ../PopupBase dojo/i18n!../nls/jsapi dojo/NodeList-dom dojo/has!extend-esri?./PopupTemplate dojo/has!extend-esri?./PopupRenderer".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H){q=q([B,C,f],{declaredClass:"esri.dijit.Popup",offsetX:3,offsetY:3,zoomFactor:4,marginLeft:25,marginTop:25,highlight:!0,pagingControls:!0,pagingInfo:!0,keepHighlightOnHide:!1,popupWindow:!0,titleInBody:!0,anchor:"auto",visibleWhenEmpty:!0,hideDelay:1E3,location:null,constructor:function(b,e){this.initialize();n.mixin(this,b);this.domNode=c.byId(e);e=this._nls=n.mixin({},H.widgets.popup);b=this.domNode;d.add(b,"esriPopup");(this._isRTL=!w.isBodyLtr())&&
t.set(b,"direction","rtl");a.set(b,"innerHTML","\x3cdiv class\x3d'esriPopupWrapper' style\x3d'position: absolute;'\x3e\x3cdiv class\x3d'sizer'\x3e\x3cdiv class\x3d'titlePane'\x3e\x3cdiv class\x3d'spinner hidden' title\x3d'"+e.NLS_searching+"...'\x3e\x3c/div\x3e\x3cdiv class\x3d'title'\x3e\x3c/div\x3e\x3cdiv class\x3d'titleButton prev hidden' title\x3d'"+e.NLS_prevFeature+"'\x3e\x3c/div\x3e\x3cdiv class\x3d'titleButton next hidden' title\x3d'"+e.NLS_nextFeature+"'\x3e\x3c/div\x3e\x3cdiv class\x3d'titleButton maximize' title\x3d'"+
e.NLS_maximize+"'\x3e\x3c/div\x3e\x3cdiv class\x3d'titleButton close' title\x3d'"+e.NLS_close+"'\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'sizer content'\x3e\x3cdiv class\x3d'contentPane'\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'sizer'\x3e\x3cdiv class\x3d'actionsPane'\x3e\x3cdiv class\x3d'actionList hidden'\x3e\x3ca title\x3d'"+e.NLS_zoomTo+"' class\x3d'action zoomTo' href\x3d'javascript:void(0);'\x3e\x3cspan\x3e"+e.NLS_zoomTo+"\x3c/span\x3e\x3c/a\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'pointer hidden'\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'outerPointer hidden'\x3e\x3c/div\x3e");
this._sizers=h.query(".sizer",b);e=h.query(".titlePane",b)[0];this._title=h.query(".title",e)[0];this._prevFeatureButton=h.query(".prev",e)[0];this._nextFeatureButton=h.query(".next",e)[0];this._maxButton=h.query(".maximize",e)[0];this._spinner=h.query(".spinner",e)[0];this._contentPane=h.query(".contentPane",b)[0];this._positioner=h.query(".esriPopupWrapper",b)[0];this._pointer=h.query(".pointer",b)[0];this._outerPointer=h.query(".outerPointer",b)[0];this._actionList=h.query(".actionsPane .actionList",
b)[0];this._contentUpdateHandles={};this._eventConnections=[g.connect(h.query(".close",e)[0],"onclick",this,this.hide),g.connect(this._prevFeatureButton,"onclick",this,this.selectPrevious),g.connect(this._nextFeatureButton,"onclick",this,this.selectNext),g.connect(this._maxButton,"onclick",this,this._toggleSize),g.connect(h.query(".zoomTo",this._actionList)[0],"onclick",this,this._zoomToFeature),g.connect(this,"onClearFeatures",this,this._featuresCleared),g.connect(this,"onSelectionChange",this,this._featureSelected),
g.connect(this,"onDfdComplete",this,this._updateUI)];p("esri-touch")&&(b=y.setScrollable(this._contentPane),this._eventConnections.push(b[0],b[1]));this._toggleVisibility(!1)},onMaximize:function(){},onRestore:function(){},setMap:function(a){this.inherited(arguments);m.place(this.domNode,a.root);this.highlight&&this.enableHighlight(a);this._maxHeight=t.get(this._contentPane,"maxHeight")},unsetMap:function(){this.disableHighlight(this.map);this.inherited(arguments)},setTitle:function(a){this.popupWindow&&
(r.isDefined(a)&&""!==a||(a="\x26nbsp;"),this.destroyDijits(this._title),this.place(a,this._title),this.isShowing&&(this.startupDijits(this._title),this.reposition()))},setContent:function(a){this.popupWindow&&(r.isDefined(a)&&""!==a||(a="\x26nbsp;"),this._destroyContent(),this.place(a,this._contentPane),this.isShowing&&(this._startupContent(),this.reposition()))},show:function(a,b){if(this.popupWindow)if(this._delayHide=!1,a){var c=this.map;a.spatialReference?(this.location=a,a=c.toScreen(a)):this.location=
c.toMap(a);var d=c._getFrameWidth();if(-1!==d&&(a.x%=d,0>a.x&&(a.x+=d),c.width>d))for(c=(c.width-d)/2;a.x<c;)a.x+=d;this._maximized?this.restore():this._setPosition(a);b&&b.closestFirst&&this.showClosestFirst(this.location);this.isShowing||(this._toggleVisibility(!0),this._followMap(),this.startupDijits(this._title),this._startupContent(),this.reposition(),this.showHighlight(),this.onShow())}else this._toggleVisibility(!0)},hide:function(){this.isShowing&&(this._toggleVisibility(!1),this._unfollowMap(),
this.keepHighlightOnHide||this.hideHighlight(),this.onHide())},resize:function(a,b){this.popupWindow&&(this._sizers.style({width:a+"px"}),t.set(this._contentPane,"maxHeight",b+"px"),this._maxHeight=b,this.isShowing&&this.reposition())},reposition:function(){this.popupWindow&&this.map&&this.location&&!this._maximized&&this.isShowing&&this._setPosition(this.map.toScreen(this.location))},addActions:function(a){return b.map(a,function(a){var b=m.create("a",{href:"javascript:void(0);",className:"action "+
a.className,title:a.title,innerHTML:a.title},this._actionList);g.connect(b,"onclick",a.callback);return{action:a,node:b}},this)},removeActions:function(a){b.forEach(a,function(a){m.destroy(a.node)})},getCurrentAnchor:function(){return this._anchor},maximize:function(){var b=this.map;if(b&&!this._maximized&&this.popupWindow){this._maximized=!0;var c=this._maxButton;d.remove(c,"maximize");d.add(c,"restore");a.set(c,"title",this._nls.NLS_restore);var c=this.marginLeft,e=this.marginTop,k=b.width-2*c,
b=b.height-2*e;t.set(this.domNode,{left:this._isRTL?null:c+"px",right:this._isRTL?c+"px":null,top:e+"px",bottom:null});t.set(this._positioner,{left:null,right:null,top:null,bottom:null});this._savedWidth=t.get(this._sizers[0],"width");this._savedHeight=t.get(this._contentPane,"maxHeight");this._sizers.style({width:k+"px"});t.set(this._contentPane,{maxHeight:b-65+"px",height:b-65+"px"});this._showPointer("");this._unfollowMap();d.add(this.domNode,"esriPopupMaximized");this.onMaximize()}},restore:function(){if(this.map&&
this._maximized&&this.popupWindow){this._maximized=!1;var b=this._maxButton;d.remove(b,"restore");d.add(b,"maximize");a.set(b,"title",this._nls.NLS_maximize);t.set(this._contentPane,"height",null);this.resize(this._savedWidth,this._savedHeight);this._savedWidth=this._savedHeight=null;this.show(this.location);this._followMap();d.remove(this.domNode,"esriPopupMaximized");this.onRestore()}},startup:function(){},destroy:function(){this.map&&this.unsetMap();this.cleanup();this.isShowing&&this.hide();this.destroyDijits(this._title);
this._destroyContent();b.forEach(this._eventConnections,g.disconnect);m.destroy(this.domNode);this._sizers=this._contentPane=this._actionList=this._positioner=this._pointer=this._outerPointer=this._title=this._prevFeatureButton=this._nextFeatureButton=this._spinner=this._eventConnections=this._pagerScope=this._targetLocation=this._nls=this._maxButton=null},selectNext:function(){this.select(this.selectedIndex+1)},selectPrevious:function(){this.select(this.selectedIndex-1)},setFeatures:function(a,b){this._transientAnchor=
b&&b.anchor;this.inherited(arguments);this._updateUI()},clearFeatures:function(a){a||(this._transientAnchor=null);this.inherited(arguments)},postscript:null,_highlightSetter:function(a){var b=this.highlight,c=this.map;this.highlight=a;if(c&&a!==b)if(a){if(this.enableHighlight(c),a=this.features&&this.features[this.selectedIndex])this.updateHighlight(c,a),this.showHighlight()}else this.disableHighlight(c)},_pagingControlsSetter:function(a){var b=this.pagingControls,c=this.map;this.pagingControls=a;
c&&a!==b&&this._updatePagingControls()},_pagingInfoSetter:function(a){var b=this.pagingInfo,c=this.map;this.pagingInfo=a;c&&a!==b&&this.features&&this.features.length&&this._updatePagingInfo()},_popupWindowSetter:function(a){var b=this.popupWindow,c=this.map;this.popupWindow=a;c&&a!==b&&(a?(this._updateUI(),this._updateWindow()):(this.hide(),this.showHighlight()))},_anchorSetter:function(a){var b=this.anchor;this.anchor=a;this.map&&a!==b&&this.reposition()},_startupContent:function(){var a=this._contentPane;
this.startupDijits(a);b.forEach(this._getPopupRendererDijits(a),function(a){if(!this._contentUpdateHandles[a.id]){var b=a.on("content-update",n.hitch(this,function(){this.reposition()}));this._contentUpdateHandles[a.id]=b}},this)},_destroyContent:function(){var a=this._contentPane;b.forEach(this._getPopupRendererDijits(a),function(a){var b=this._contentUpdateHandles[a.id];b&&(b.remove(),delete this._contentUpdateHandles[a.id])},this);this.destroyDijits(a)},_getPopupRendererDijits:function(a){a=this.getDijits(a);
return a=b.filter(a,function(a){return a&&a.set&&/_PopupRenderer/.test(a.declaredClass)})},_featuresCleared:function(){this.setTitle("\x26nbsp;");this.setContent("\x26nbsp;");this._setPagerCallbacks(this);this._updateUI();this.hideHighlight()},_featureSelected:function(){this._updateUI();this._updateWindow()},_updateWindow:function(){var a=this.selectedIndex;if(0<=a){var b=this.features[a].getContent();if(!this.titleInBody&&b&&n.isString(b.id)){var c=k.byId(b.id);c&&c.set&&/_PopupRenderer/.test(c.declaredClass)&&
c.set("showTitle",!1)}this.setContent(b);this.updateHighlight(this.map,this.features[a]);this.showHighlight()}},_toggleVisibility:function(a){this._setVisibility(a);this.isShowing=a},_setVisibility:function(a){d.toggle(this.domNode,"esriPopupVisible",a);d.toggle(this.domNode,"esriPopupHidden",!a)},_waitAndHide:function(a){var b=this;this._delayHide=!0;setTimeout(function(){b._delayHide&&(b._delayHide=!1,b.hide())},a)},_followMap:function(){this._unfollowMap();var a=this.map;this._handles=[g.connect(a,
"onPanStart",this,this._onPanStart),g.connect(a,"onPan",this,this._onPan),g.connect(a,"onZoomStart",this,this._onZoomStart),g.connect(a,"onExtentChange",this,this._onExtentChange)]},_unfollowMap:function(){var a=this._handles;a&&(b.forEach(a,g.disconnect),this._handles=null)},_onPanStart:function(){var a=this.domNode.style;this._panOrigin={left:a.left,top:a.top,right:a.right,bottom:a.bottom}},_onPan:function(a,b){var c=this._panOrigin;a=b.x;b=b.y;var d=c.left,e=c.top,k=c.right,c=c.bottom;d&&(d=parseFloat(d)+
a+"px");e&&(e=parseFloat(e)+b+"px");k&&(k=parseFloat(k)-a+"px");c&&(c=parseFloat(c)-b+"px");t.set(this.domNode,{left:d,top:e,right:k,bottom:c})},_onZoomStart:function(){this._setVisibility(!1)},_onExtentChange:function(a,b,c){c&&(this._setVisibility(!0),this.show(this._targetLocation||this.location));this._targetLocation=null},_toggleSize:function(){this._maximized?this.restore():this.maximize()},_getTargetAnchor:function(){return this._transientAnchor||this.anchor},_setPosition:function(a){var b=
a.x,c=a.y;a=this.offsetX||0;var d=this.offsetY||0,e=0,k=0,m=w.position(this.map.container,!0),f=m.w,g=m.h,r="Left",h="bottom",p="right",v="top",n=w.getContentBox(this._positioner),y=n.w/2,q=n.h/2,u=t.get(this._sizers[0],"height")+this._maxHeight+t.get(this._sizers[2],"height"),x=u/2,z=0,C=0,A=b,B=c,E=this._getTargetAnchor().toLowerCase();if("auto"===E){if(E=l.getBox)E=E(),z=Math.max(E.l,m.x),f=Math.min(E.l+E.w,m.x+m.w),C=Math.max(E.t,m.y),g=Math.min(E.t+E.h,m.y+m.h),A+=m.x,B+=m.y;m=B-C>=u;u=g-B>=
u;E=f-A>=n.w;n=A-z>=n.w;B-C>x&&g-B>=x&&(E?(h="",r="Left",v="",p="right"):n&&(h="",r="Right",v="",p="left"));r&&h&&A-z>y&&f-A>=y&&(m?(r="",h="bottom",p="",v="top"):u&&(r="",h="top",p="",v="bottom"));r&&h&&(E&&m?(r="Left",h="bottom",p="right",v="top"):E&&u?(r="Left",h="top",p="right",v="bottom"):n&&u?(r="Right",h="top",p="left",v="bottom"):n&&m&&(r="Right",h="bottom",p="left",v="top"));this._anchor=v&&p?v+"-"+p:v||p}else h=r="",-1!==E.indexOf("top")?h="bottom":-1!==E.indexOf("bottom")&&(h="top"),-1!==
E.indexOf("left")?r="Right":-1!==E.indexOf("right")&&(r="Left"),this._anchor=this._getTargetAnchor();p=h+r;switch(p){case "top":case "bottom":k=14;break;case "Left":case "Right":e=13;break;case "topLeft":case "topRight":case "bottomLeft":case "bottomRight":k=14,e=-16}t.set(this.domNode,{left:b+"px",top:c+"px",right:null,bottom:null});b={left:null,right:null,top:null,bottom:null};r?b[r.toLowerCase()]=e+a+"px":b.left=-y+"px";h?b[h]=k+d+"px":b.top=-q+"px";t.set(this._positioner,b);this._showPointer(p)},
_showPointer:function(a){d.remove(this._pointer,"top bottom right left topLeft topRight bottomRight bottomLeft hidden".split(" "));d.remove(this._outerPointer,["right","left","hidden"]);"Right"===a||"Left"===a?(a=a.toLowerCase(),d.add(this._outerPointer,a)):d.add(this._pointer,a)},_setPagerCallbacks:function(a,b,c){if(this.pagingControls&&(a!==this||this._pagerScope&&this._pagerScope!==this)&&a!==this._pagerScope){this._pagerScope=a;a===this&&(b=this.selectPrevious,c=this.selectNext);var d=this._eventConnections;
g.disconnect(d[1]);g.disconnect(d[2]);b&&(d[1]=g.connect(this._prevFeatureButton,"onclick",a,b));c&&(d[2]=g.connect(this._nextFeatureButton,"onclick",a,c))}},_getLocation:function(a){var c,d,e=a&&a.geometry;if(e)switch(e.type){case "point":c=e;a.isAggregate()&&(a=a.getChildGraphics(),d=a[0],a=(d=d.geometry&&d.geometry.spatialReference)&&new x({points:b.map(a,function(a){a=a.geometry;return[a.x,a.y]}),spatialReference:d.toJson()}),d=A.getDenormalizedExtent(a));break;case "multipoint":c=e.getPoint(0);
d=A.getDenormalizedExtent(e);break;case "polyline":case "polygon":c=e.getPoint(0,0),d=A.getDenormalizedExtent(e)}return[c,d]},_zoomToFeature:function(a){a.preventDefault();var b=this.features,c=this.selectedIndex;a=this.map;if(b)if(c=this._getLocation(b[c]),b=c[0],c=c[1],b||(b=this.location),c&&c.intersects(this.location)||(this.location=b),c&&c.getWidth()&&c.getHeight())a.setExtent(c,!0);else{var d=a.getNumLevels(),c=a.getLevel(),e=a.getMaxZoom(),k=this.zoomFactor||1;0<d?c!==e&&(d=c+k,d>e&&(d=e),
a.navigationManager._wheelZoom({value:d-c,mapPoint:b},!0)):a.navigationManager._wheelZoom({value:1/Math.pow(2,k)*2,mapPoint:b},!0)}},_updatePagingControls:function(){var a=this._prevFeatureButton,b=this._nextFeatureButton,c=this.selectedIndex,e=this.features?this.features.length:0;this.pagingControls&&1<e?(0===c?d.add(a,"hidden"):d.remove(a,"hidden"),c===e-1?d.add(b,"hidden"):d.remove(b,"hidden")):(d.add(a,"hidden"),d.add(b,"hidden"))},_updatePagingInfo:function(){var a=this.features?this.features.length:
0,b=this._nls,c="\x26nbsp;";this.pagingInfo&&1<a&&b.NLS_pagingInfo&&(c=r.substitute({index:this.selectedIndex+1,total:a},b.NLS_pagingInfo));a&&(b=this.getSelectedFeature(),a=b.getInfoTemplate(),b=b.getTitle(),a&&!/esri\.InfoTemplate/.test(a.declaredClass)&&this.titleInBody||!b||(c=b+("\x26nbsp;"===c?"":" "+c)));this.setTitle(c)},_updateUI:function(){if(this.popupWindow){var a=this.features,b=this.deferreds,c=a?a.length:0,e=this._spinner,k=this._actionList,m=this._nls;this._updatePagingControls();
this._updatePagingInfo();c?d.remove(k,"hidden"):d.add(k,"hidden");b&&b.length?a?d.remove(e,"hidden"):this.setContent("\x3cdiv style\x3d'text-align: center;'\x3e"+m.NLS_searching+"...\x3c/div\x3e"):d.add(e,"hidden");c||b&&b.length?this._delayHide=!1:(this.setContent("\x3cdiv style\x3d'text-align: center;'\x3e"+m.NLS_noInfo+".\x3c/div\x3e"),this.visibleWhenEmpty||this._waitAndHide(this.hideDelay))}}});p("extend-esri")&&n.setObject("dijit.Popup",q,u);return q})},"esri/geometry/normalizeUtils":function(){define("dojo/_base/array dojo/_base/lang dojo/_base/Deferred dojo/has ../kernel ../config ../deferredUtils ./Extent ./Polyline ./Polygon ./webMercatorUtils ./jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d){function m(a,b){return Math.ceil((a-b)/(2*b))}function w(a,b){var c=a.paths||a.rings,d,e,k=c.length,m;for(d=0;d<k;d++)for(m=c[d].length,e=0;e<m;e++){var f=a.getPoint(d,e);a.setPoint(d,e,f.offset(b,0))}return a}function t(a,b){if(!(a instanceof e||a instanceof c))throw console.error("_straightLineDensify: the input geometry is neither polyline nor polygon"),Error("_straightLineDensify: the input geometry is neither polyline nor polygon");var d=a instanceof e,k=[],
m;q.forEach(d?a.paths:a.rings,function(a){k.push(m=[]);m.push([a[0][0],a[0][1]]);var c,d,e,f,g,r,h,l,p,t,v,n;for(g=0;g<a.length-1;g++){c=a[g][0];d=a[g][1];e=a[g+1][0];f=a[g+1][1];h=Math.sqrt((e-c)*(e-c)+(f-d)*(f-d));l=(f-d)/h;p=(e-c)/h;t=h/b;if(1<t){for(r=1;r<=t-1;r++)n=r*b,v=p*n+c,n=l*n+d,m.push([v,n]);r=(h+Math.floor(t-1)*b)/2;v=p*r+c;n=l*r+d;m.push([v,n])}m.push([e,f])}});return d?new e({paths:k,spatialReference:a.spatialReference}):new c({rings:k,spatialReference:a.spatialReference})}function k(b,
c,d){c&&(b=t(b,1E6),b=a.webMercatorToGeographic(b,!0));d&&(b=w(b,d));return b}function u(a,b,c){var d=a.x||a[0],e;d>b?(e=m(d,b),a.x?a=a.offset(-2*e*b,0):a[0]=d+-2*e*b):d<c&&(e=m(d,c),a.x?a=a.offset(-2*e*c,0):a[0]=d+-2*e*c);return a}function r(a,b){var c=-1;q.forEach(b.cutIndexes,function(d,e){var k=b.geometries[e];q.forEach(k.rings||k.paths,function(a,b){q.some(a,function(c){if(!(180>c[0])){c=0;var d,e=a.length,f;for(d=0;d<e;d++)f=a[d][0],c=f>c?f:c;c=Number(c.toFixed(9));c=-360*m(c,180);e=a.length;
for(d=0;d<e;d++)f=k.getPoint(b,d),k.setPoint(b,d,f.offset(c,0))}return!0})});d===c?k.rings?q.forEach(k.rings,function(b){a[d]=a[d].addRing(b)}):q.forEach(k.paths,function(b){a[d]=a[d].addPath(b)}):(c=d,a[d]=k)});return a}function y(f,g,h,l){var t=new b;t.addCallbacks(h,l);g=g||p.defaults.geometryService;var v=[],n=[],y,x,z,C,A,B,F,E,H=0;q.forEach(f,function(a){if(a)if(y||(y=a.spatialReference,x=y._getInfo(),C=(z=y._isWebMercator())?2.0037508342788905E7:180,A=z?-2.0037508342788905E7:-180,B=z?102100:
4326,F=new e({paths:[[[C,A],[C,C]]],spatialReference:{wkid:B}}),E=new e({paths:[[[A,A],[A,C]]],spatialReference:{wkid:B}})),x){var b=d.fromJson(a.toJson()),f=a.getExtent();"point"===a.type?v.push(u(b,C,A)):"multipoint"===a.type?(b.points=q.map(b.points,function(a){return u(a,C,A)}),v.push(b)):"extent"===a.type?(b=f._normalize(null,null,x),v.push(b.rings?new c(b):b)):f?(a=2*m(f.xmin,A)*C,b=0===a?b:w(b,a),f=f.offset(a,0),f.intersects(F)&&f.xmax!==C?(H=f.xmax>H?f.xmax:H,b=k(b,z),n.push(b),v.push("cut")):
f.intersects(E)&&f.xmin!==A?(H=2*f.xmax*C>H?2*f.xmax*C:H,b=k(b,z,360),n.push(b),v.push("cut")):v.push(b)):v.push(b)}else v.push(a);else v.push(a)});h=new e;l=m(H,C);for(var Y=-90,oa=l;0<l;){var ea=-180+360*l;h.addPath([[ea,Y],[ea,-1*Y]]);Y*=-1;l--}0<n.length&&0<oa?g?g.cut(n,h,function(b){n=r(n,b);var c=[];q.forEach(v,function(b,d){"cut"===b&&(b=n.shift(),f[d].rings&&1<f[d].rings.length&&b.rings.length>=f[d].rings.length?(v[d]="simplify",c.push(b)):v[d]=!0===z?a.geographicToWebMercator(b):b)});0<c.length?
g.simplify(c,function(b){q.forEach(v,function(c,d){"simplify"===c&&(v[d]=!0===z?a.geographicToWebMercator(b.shift()):b.shift())});t.callback(v)},function(a){t.errback(a)}):t.callback(v)},function(a){t.errback(a)}):t.errback(Error("esri.geometry.normalizeCentralMeridian: 'geometryService' argument is missing.")):(q.forEach(v,function(b,c){"cut"===b&&(b=n.shift(),v[c]=!0===z?a.geographicToWebMercator(b):b)}),t.callback(v));return t}function v(a,b,c,d){var e=!1,k;n.isObject(a)&&a&&(n.isArray(a)?a.length&&
((k=a[0]&&a[0].declaredClass)&&-1!==k.indexOf("Graphic")?(a=q.map(a,function(a){return a.geometry}),e=a.length?!0:!1):k&&-1!==k.indexOf("esri.geometry.")&&(e=!0)):(k=a.declaredClass)&&-1!==k.indexOf("FeatureSet")?(a=q.map(a.features||[],function(a){return a.geometry}),e=a.length?!0:!1):k&&-1!==k.indexOf("esri.geometry.")&&(e=!0));e&&b.push({index:c,property:d,value:a})}function z(a,b){var c=[];q.forEach(b,function(b){var d=b.i,e=a[d];b=b.p;var k;if(n.isObject(e)&&e)if(b)if("*"===b[0])for(k in e)e.hasOwnProperty(k)&&
v(e[k],c,d,k);else q.forEach(b,function(a){v(n.getObject(a,!1,e),c,d,a)});else v(e,c,d)});return c}function x(a,b){var c=0,d={};q.forEach(b,function(b){var e=b.index,k=b.property,m=b.value,f=m.length||1,g=a.slice(c,c+f);n.isArray(m)||(g=g[0]);c+=f;delete b.value;k?(d[e]=d[e]||{},d[e][k]=g):d[e]=g});return d}function A(a){for(var b=[],c=0,d=0,e=Math.min,k=Math.max,m=0;m<a.length;m++){for(var f=a[m],g=null,r=0;r<f.length;r++)g=f[r],b.push(g),0===r?d=c=g[0]:(c=e(c,g[0]),d=k(d,g[0]));g&&b.push([(c+d)/
2,0])}return b}var B={normalizeCentralMeridian:y,_foldCutResults:r,_prepareGeometryForCut:k,_offsetMagnitude:m,_pointNormalization:u,_updatePolyGeometry:w,_straightLineDensify:t,_createWrappers:function(a){var c=n.isObject(a)?a.prototype:n.getObject(a+".prototype");q.forEach(c.__msigns,function(a){var d=c[a.n];c[a.n]=function(){var c=this,e=[],k,m=new b(l._dfdCanceller);a.f&&l._fixDfd(m);for(k=0;k<a.c;k++)e[k]=arguments[k];var f={dfd:m};e.push(f);var g,r=[],h;c.normalization&&!c._isTable&&(g=z(e,
a.a),q.forEach(g,function(a){r=r.concat(a.value)}),r.length&&(h=y(r)));h?(m._pendingDfd=h,h.addCallbacks(function(a){m.canceled||(f.assembly=x(a,g),m._pendingDfd=d.apply(c,e))},function(b){var d=c.declaredClass;d&&-1!==d.indexOf("FeatureLayer")?c._resolve([b],null,e[a.e],m,!0):c._errorHandler(b,e[a.e],m)})):m._pendingDfd=d.apply(c,e);return m}})},_disassemble:z,_addToBucket:v,_reassemble:x,getDenormalizedExtent:function(a){if(!a)return null;var b=a.getExtent();if(!b)return null;var c=a.spatialReference&&
a.spatialReference._getInfo();if(!c)return b;var d=c.valid[0],c=c.valid[1],e=2*c,k=b.getWidth(),m=b.xmax,g=b.xmin;if("extent"===a.type||0===k||k<=c||k>e||m<d||g>c)return b;var r;switch(a.type){case "polygon":if(1<a.rings.length)r=A(a.rings);else return b;break;case "polyline":if(1<a.paths.length)r=A(a.paths);else return b;break;case "multipoint":r=a.points}a=Math.min;for(var d=Math.max,e=new f(b.toJson()),h=0;h<r.length;h++){var l=r[h][0];0>l?(l+=c,g=d(l,g)):(l-=c,m=a(l,m))}e.xmin=m;e.xmax=g;return e.getWidth()<
k?(e.xmin-=c,e.xmax-=c,e):b}};g("extend-esri")&&n.mixin(n.getObject("geometry",!0,h),B);return B})},"esri/geometry/jsonUtils":function(){define("dojo/_base/lang dojo/has ../kernel ../lang ./Point ./Polyline ./Polygon ./Multipoint ./Extent".split(" "),function(q,n,b,g,h,p,l,f,e){function c(a,b,c){var d=a.rings||a.paths,e,k,m,f,g,h,l,p;e=0;for(k=d.length;e<k;e++)for(g=d[e],m=0,f=g.length;m<f;m++)h=g[m],0<m?(l+=h[0],p+=h[1]):(l=h[0],p=h[1]),h[0]=b(l),h[1]=c(p);return a}var a={esriGeometryPoint:function(a,
b,c){a.x=b(a.x);a.y=c(a.y);return a},esriGeometryPolyline:c,esriGeometryPolygon:c,esriGeometryEnvelope:function(a,b,c){a.xmin=b(a.xmin);a.ymin=c(a.ymin);a.xmax=b(a.xmax);a.ymax=c(a.ymax);return a},esriGeometryMultipoint:function(a,b,c){var d=a.points,e,k,m,f,g;e=0;for(k=d.length;e<k;e++)m=d[e],0<e?(f+=m[0],g+=m[1]):(f=m[0],g=m[1]),m[0]=b(f),m[1]=c(g);return a}},d={esriGeometryPoint:function(a,b,c){a.x=b(a.x);a.y=c(a.y);return a}},m={createInstance:function(a,b){a=new a;b&&g.mixin(a,b);return a},fromJson:function(a){if(void 0!==
a.x&&void 0!==a.y)return new h(a);if(void 0!==a.paths)return new p(a);if(void 0!==a.rings)return new l(a);if(void 0!==a.points)return new f(a);if(void 0!==a.xmin&&void 0!==a.ymin&&void 0!==a.xmax&&void 0!==a.ymax)return new e(a)},getJsonType:function(a){return a instanceof h?"esriGeometryPoint":a instanceof p?"esriGeometryPolyline":a instanceof l?"esriGeometryPolygon":a instanceof e?"esriGeometryEnvelope":a instanceof f?"esriGeometryMultipoint":null},getGeometryType:function(a){return"esriGeometryPoint"===
a?h:"esriGeometryPolyline"===a?p:"esriGeometryPolygon"===a?l:"esriGeometryEnvelope"===a?e:"esriGeometryMultipoint"===a?f:null},supportsLazyUnquantization:function(a){return"esriGeometryPoint"===a||"esriGeometryPolyline"===a||"esriGeometryPolygon"===a||"esriGeometryMultipoint"===a},unquantizeFunction:function(b,c){if(b&&c){var d=c.translate[0],e=c.translate[1],m=c.scale[0],f=c.scale[1],g=function(a){return a*m+d},h=function(a){return e-a*f},l=a[b];return function(a){return a?l(a,g,h):null}}},unquantize:function(a,
b,c){if(b=m.unquantizeFunction(b,c)){var d=a.length;for(c=0;c<d;c++)b(a[c].geometry)}},quantizeFunction:function(a,b){if(a&&"esriGeometryPoint"===a&&b){var c=b.translate[0],e=b.translate[1],m=b.scale[0],f=b.scale[1],g=function(a){return Math.round((a-c)/m)},h=function(a){return Math.round((e-a)/f)},l=d[a];return function(a){return a?l(a,g,h):null}}},quantize:function(a,b,c){if(b=m.quantizeFunction(b,c)){var d=a.length;for(c=0;c<d;c++)b(a[c].geometry)}}};n("extend-esri")&&q.mixin(q.getObject("geometry",
!0,b),m);return m})},"esri/InfoWindowBase":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/connect dojo/_base/Deferred dojo/dom-construct dojo/has dijit/registry ./kernel ./lang ./geometry/ScreenPoint".split(" "),function(q,n,b,g,h,p,l,f,e,c,a){q=q(null,{declaredClass:"esri.InfoWindowBase",constructor:function(){var a=n.hitch;this.__set_title=a(this,this.__set_title);this.__err_title=a(this,this.__err_title);this.__set_content=a(this,this.__set_content);this.__err_content=
a(this,this.__err_content)},setMap:function(a){this.map=a},unsetMap:function(a){delete this.map},setTitle:function(){},setContent:function(){},show:function(){},hide:function(){},resize:function(){},onShow:function(){},onHide:function(){},place:function(a,b){c.isDefined(a)?n.isObject(a)?p.place(a,b,"only"):b.innerHTML=a:b.innerHTML=""},startupDijits:function(a){this._processDijits(a)},destroyDijits:function(a){this._processDijits(a,!0)},getDijits:function(a){var b=[];a&&1===a.children.length&&(a=
a.children[0])&&(b=(b=f.byNode(a))?[b]:f.findWidgets(a));return b},_processDijits:function(a,c){a=this.getDijits(a);b.forEach(a,function(a){if(c){if(a._started&&!a._destroyed)try{a.destroyRecursive?a.destroyRecursive():a.destroy&&a.destroy()}catch(t){console.debug("An error occurred when destroying a widget embedded within InfoWindow: "+t.message)}}else if(!a._started)try{a.startup()}catch(t){console.debug("An error occurred when starting a widget embedded within InfoWindow: "+t.message)}})},__registerMapListeners:function(){this.__unregisterMapListeners();
var a=this.map;this.__handles=[g.connect(a,"onPan",this,this.__onMapPan),g.connect(a,"onZoomStart",this,this.__onMapZmStart),g.connect(a,"onExtentChange",this,this.__onMapExtChg)]},__unregisterMapListeners:function(){var a=this.__handles;a&&(b.forEach(a,g.disconnect,g),this.__handles=null)},__onMapPan:function(a,b){this.move(b,!0)},__onMapZmStart:function(){this.__mcoords=this.mapCoords||this.map.toMap(new a(this.coords));this.hide(null,!0)},__onMapExtChg:function(a,b,c){a=this.map;var d=this.mapCoords;
d?this.show(d,null,!0):(b=c?a.toScreen(this.__mcoords):this.coords.offset(b&&b.x||0,b&&b.y||0),this.show(b,null,!0))},__setValue:function(a,b){this[a].innerHTML="";var d="_dfd"+a,e=this[d];e&&-1===e.fired&&(e.cancel(),this[d]=null);c.isDefined(b)&&(b instanceof h?(this[d]=b,b.addCallbacks(this["__set"+a],this["__err"+a])):this.__render(a,b))},__set_title:function(a){this._dfd_title=null;this.__render("_title",a)},__err_title:function(a){this._dfd_title=null},__set_content:function(a){this._dfd_content=
null;this.__render("_content",a)},__err_content:function(a){this._dfd_content=null},__render:function(a,b){var c=this[a];this.place(b,c);this.isShowing&&(this.startupDijits(c),"_title"===a&&this._adjustContentArea&&this._adjustContentArea())}});l("extend-esri")&&(e.InfoWindowBase=q);return q})},"esri/PopupBase":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/Color dojo/_base/Deferred dojo/has ./kernel ./graphic ./geometry/Point ./geometry/jsonUtils ./geometry/mathUtils ./geometry/webMercatorUtils ./symbols/SimpleMarkerSymbol ./symbols/SimpleLineSymbol ./symbols/CartographicLineSymbol ./symbols/SimpleFillSymbol ./tasks/query ./Evented dojo/has!extend-esri?./PopupInfo".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r){function y(a){return"sizeInfo"===a.type}q=q(r,{declaredClass:"esri.PopupBase",_featureLayers:{},_updateEndHandles:[],_mapLevelChangeHandle:null,_evtMap:{"set-features":!0,"clear-features":!0,"selection-change":!0,"dfd-complete":!0},onSetFeatures:function(){},onClearFeatures:function(){},onSelectionChange:function(){},onDfdComplete:function(){},initialize:function(){this.count=0;this.selectedIndex=-1;this.on("clear-features",n.hitch(this,this._resetUpdateEndListeners));
this.on("dfd-complete",n.hitch(this,this._processFeatures));this.on("set-features",n.hitch(this,this._processFeatures));this.on("selection-change",n.hitch(this,this._checkFeatureResolution))},cleanup:function(){this.features=this.deferreds=null;this._resetUpdateEndListeners();this._untrackMapLevelChange()},setFeatures:function(a){if(a&&a.length){this.clearFeatures(!0);var c,d;a[0]instanceof h?d=a:c=a;c?this._updateFeatures(null,c):(this.deferreds=d,d=d.slice(0),b.forEach(d,function(a){a.addBoth(n.hitch(this,
this._updateFeatures,a))},this))}},clearFeatures:function(a){this.features=this.deferreds=this._marked=null;this.count=0;var b=this.selectedIndex;this.selectedIndex=-1;if(-1<b)this.onSelectionChange();this.onClearFeatures({isIntermediate:!!a})},getSelectedFeature:function(){var a=this.features;if(a)return a[this.selectedIndex]},select:function(a){0>a||a>=this.count||(this.selectedIndex=a,this.onSelectionChange())},enableHighlight:function(a){this._highlighted=a.graphics.add(new f(new e(0,0,a.spatialReference)));
this._highlighted.attr("data-popup-highlight","");this._highlighted.hide();this._trackMapLevelChange(a);this.markerSymbol||(a=this.markerSymbol=new m,a.setStyle(m.STYLE_TARGET),a._setDim(16,16,0),a.setOutline(new t(w.STYLE_SOLID,new g([0,255,255]),2,t.CAP_ROUND,t.JOIN_ROUND)),a.setColor(new g([0,0,0,0])));this.lineSymbol||(this.lineSymbol=new w(w.STYLE_SOLID,new g([0,255,255]),2));this.fillSymbol||(this.fillSymbol=new k(k.STYLE_NULL,new w(w.STYLE_SOLID,new g([0,255,255]),2),new g([0,0,0,0])));this.clusterFillSymbol||
(this.clusterFillSymbol=new k(k.STYLE_SOLID,new w(w.STYLE_SOLID,new g([0,255,255]),1.33),null))},disableHighlight:function(a){var b=this._highlighted;b&&(b.hide(),a.graphics.remove(b),delete this._highlighted);this._untrackMapLevelChange();this.markerSymbol=this.lineSymbol=this.fillSymbol=null},showHighlight:function(){var a=this.features&&this.features[this.selectedIndex];this._highlighted&&a&&a.geometry&&this._highlighted.show()},hideHighlight:function(){this._highlighted&&this._highlighted.hide()},
updateHighlight:function(a,b){var d=b.geometry,e=this._highlighted;if(d&&e){e.hide();!e._graphicsLayer&&a&&a.graphics.add(e);e.setGeometry(c.fromJson(d.toJson()));var k;switch(d.type){case "point":case "multipoint":var m=b.getLayer(),d=b.symbol||m&&m._getSymbol(b);if(m&&d){var f,g,r=0,h=0,l=0;k=b.symbol?null:m._getRenderer(b);if(m=this._getSizeInfo(k))f=g=k.getSize(b,{sizeInfo:m,shape:d.style,resolution:a&&a.getResolutionInMeters&&a.getResolutionInMeters()});else if(null!=b.size)f=g=b.size;else switch(d.type){case "simplemarkersymbol":f=
g=d.size||0;break;case "picturemarkersymbol":f=d.width||0,g=d.height||0}r=d.xoffset||0;h=d.yoffset||0;l=d.angle||0;k=this.markerSymbol;k.setOffset(0,0);k.setAngle(0);f&&g&&k._setDim(f+4,g+4,0);k.setOffset(r,h);k.setAngle(l)}break;case "polyline":k=this.lineSymbol;break;case "polygon":k=this.fillSymbol}e.setSymbol(k)}else e&&e.hide()},showClosestFirst:function(b){var c=this.features;if(c&&c.length){if(1<c.length){var e,k=Infinity,m=-1,f,g=a.getLength,r,h=b.spatialReference,l,p;b=b.normalize();for(e=
c.length-1;0<=e;e--)if(f=c[e].geometry){l=f.spatialReference;r=0;try{p="point"===f.type?f:f.getExtent().getCenter(),p=p.normalize(),h&&l&&!h.equals(l)&&h._canProject(l)&&(p=h.isWebMercator()?d.geographicToWebMercator(p):d.webMercatorToGeographic(p)),r=g(b,p)}catch(N){}0<r&&r<k&&(k=r,m=e)}0<m&&(c.splice(0,0,c.splice(m,1)[0]),this.select(0))}}else this.deferreds&&(this._marked=b)},_trackMapLevelChange:function(a){this._untrackMapLevelChange();this._mapLevelChangeHandle=a.on("extent-change",n.hitch(this,
function(a){a.levelChange&&this._checkFeatureResolution()}))},_untrackMapLevelChange:function(){this._mapLevelChangeHandle&&(this._mapLevelChangeHandle.remove(),this._mapLevelChangeHandle=null)},_unbind:function(a){a=b.indexOf(this.deferreds,a);if(-1!==a)return this.deferreds.splice(a,1),this.deferreds.length?1:(this.deferreds=null,2)},_fireComplete:function(a){var b=this._marked;b&&(this._marked=null,this.showClosestFirst(b));this.onDfdComplete(a)},_updateFeatures:function(a,c){if(a){if(this.deferreds&&
(a=this._unbind(a)))if(c&&c instanceof Error){if(this._fireComplete(c),2===a)this.onSetFeatures()}else if(c&&c.length)if(this.features){if(c=b.filter(c,function(a){return-1===b.indexOf(this.features,a)},this),this.features=this.features.concat(c),this.count=this.features.length,this._fireComplete(),2===a)this.onSetFeatures()}else{this.features=c;this.count=c.length;this.selectedIndex=0;this._fireComplete();if(2===a)this.onSetFeatures();this.select(0)}else if(this._fireComplete(),2===a)this.onSetFeatures()}else this.features=
c,this.count=c.length,this.selectedIndex=0,this.onSetFeatures(),this.select(0)},_getSizeInfo:function(a){return a?a.sizeInfo||b.filter(a.visualVariables,y)[0]:null},_resetUpdateEndListeners:function(){this._featureLayers={};b.forEach(this._updateEndHandles,function(a){a.remove()});this._updateEndHandles=[]},_processFeatures:function(){b.forEach(this.features,function(a){(a=a.getLayer())&&!this._featureLayers[a.id]&&(1===a.currentMode||0===a.currentMode&&6===a.mode)&&a.objectIdField&&a.hasXYFootprint&&
a.queryFeatures&&("esriGeometryPolygon"===a.geometryType||"esriGeometryPolyline"===a.geometryType||a.hasXYFootprint())&&(this._featureLayers[a.id]=a,a=a.on("update-end",n.hitch(this,this._fLyrUpdateEndHandler)),this._updateEndHandles.push(a))},this)},_fLyrUpdateEndHandler:function(a){if(!a.error){var c=this,d=a.target,e=d.getSelectedFeatures(),k=0===d.currentMode&&6===d.mode,m={},f=[];b.forEach(this.features,function(a){if(a.getLayer()===d){var b=a.attributes[d.objectIdField];m[b]=a;f.push(b)}});
f.length&&(a=new u,a.objectIds=f,d.queryFeatures(a,function(a){b.forEach(a.features,function(a){var c=m[a.attributes[d.objectIdField]],f=!1;c.geometry!==a.geometry||d.hasWebGLSurface()?(c.setGeometry(a.geometry),f=!0):k&&e&&-1!==b.indexOf(e,a)&&(f=!0);f&&this._highlighted&&c===this.getSelectedFeature()&&this._highlighted.setGeometry(a.geometry)},c)}))}},_checkFeatureResolution:function(){var a=this.getSelectedFeature(),b=this.map;if(a&&b){var c=a.getLayer();if(c){var d=a.getResolution();2===c.currentMode&&
("esriGeometryPolygon"===c.geometryType||"esriGeometryPolyline"===c.geometryType||c.hasXYFootprint())&&a.geometry&&d&&d>b.getResolution()&&(b=b.getResolutionForPopup(),(c=this._refetchFeature(a,b,c))&&c.then(n.hitch(this,this._updateFeatureResolution,a,b)))}}},_refetchFeature:function(a,b,c){if(a=this._createQueryForCustomResolution(a,b,c))return c.queryFeatures(a).then(function(a){return a&&a.features[0]})},_createQueryForCustomResolution:function(a,b,c){c=c.objectIdField;var d=a.attributes,d=d&&
c&&d[c];if(null==d)return null;var e=new u;e.objectIds=[d];e.maxAllowableOffset=b;e.outFields=[c];e.outSpatialReference=a.geometry.spatialReference;return e},_updateFeatureResolution:function(a,b,c){a.getResolution()!==b&&(a.setResolution(b),a.setGeometry(c.geometry),this._highlighted&&a===this.getSelectedFeature()&&this._highlighted.setGeometry(a.geometry))}});p("extend-esri")&&(l.PopupBase=q);return q})},"esri/graphic":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ./kernel ./domUtils ./lang ./InfoTemplate ./geometry/jsonUtils ./symbols/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e){function c(){}q=q(null,{declaredClass:"esri.Graphic",constructor:function(a,b,c,g){a&&!a.declaredClass?(this.geometry=a.geometry?f.fromJson(a.geometry):null,this.symbol=a.symbol?e.fromJson(a.symbol):null,this.attributes=a.attributes||null,this.infoTemplate=a.infoTemplate?new l(a.infoTemplate):null):(this.geometry=a,this.symbol=b,this.attributes=c,this.infoTemplate=g)},_geomVersion:0,_resolution:null,_shape:null,_bgShape:null,_dataAttrs:null,_layer:null,_sourceLayer:null,
_graphicsLayer:null,_suspended:!1,size:null,visible:!0,_aggregationSourceLayer:null,_aggregationInfo:null,_computedAttributes:null,_computedVersion:null,_computedGeomVersion:null,setSize:function(a){this.size=a;return this},getAggregationSourceLayer:function(){return this._aggregationSourceLayer},setAggregationSourceLayer:function(a){this._aggregationSourceLayer=a;return this},isAggregate:function(){return!!this._aggregationInfo},getAggregationInfo:function(){return this._aggregationInfo},setAggregationInfo:function(a){this._aggregationInfo=
a;return this},getChildGraphics:function(){var a=this.getAggregationSourceLayer();return a?a.getChildGraphics(this):[]},getDojoShape:function(){return this._shape},getShapes:function(){var a=[];this._shape&&a.push(this._shape);this._bgShape&&a.push(this._bgShape);return a},getNode:function(){var a=this._shape&&this._shape.getNode();return a&&a.nodeType?a:null},getNodes:function(){var a=this.getShapes(),b,c,e=a.length,f=[];for(c=0;c<e;c++)(b=a[c]&&a[c].getNode())&&b.nodeType&&f.push(b);return f},getLayer:function(){return this._layer},
getSourceLayer:function(){return this._sourceLayer||this._layer},clone:function(){var a=new this.constructor(this.toJson());a.visible=this.visible;a._layer=this._layer;a._sourceLayer=this._sourceLayer;a._aggregationSourceLayer=this._aggregationSourceLayer;a._aggregationInfo=this._aggregationInfo;a._resolution=this._resolution;return a},draw:function(){var a=this._graphicsLayer;a&&a._draw(this,!0);return this},setGeometry:function(a){this.geometry=a;this._geomVersion++;var b=this._graphicsLayer;b&&
(b._updateExtent(this),this.draw(),a&&"polyline"===a.type&&b._updateSVGMarkers());return this},setResolution:function(a){this._resolution=a;return this},getResolution:function(){return this._resolution},setSymbol:function(a,b){var c=this._graphicsLayer,d=this._shape;this.symbol=a;c&&(b&&d&&c._removeShape(this),this.draw());return this},setAttributes:function(a){this.attributes=a;this._clearCache();return this},setInfoTemplate:function(a){this.infoTemplate=a;return this},getInfoTemplate:function(){return this._getEffInfoTemplate()},
_getEffInfoTemplate:function(){var a=this.getLayer();return this.infoTemplate||a&&a.infoTemplate},getTitle:function(){var a=this.getInfoTemplate(),b=a&&a.title;if(n.isFunction(b))b=b.call(a,this);else if(n.isString(b))var c=(a=this.getLayer())&&a._getDateOpts,b=p.substitute(this.attributes,b,{first:!0,dateFormat:c&&c.call(a)});return b},getContent:function(){var a=this.getInfoTemplate(),b=a&&a.content;if(n.isFunction(b))b=b.call(a,this);else if(n.isString(b))var c=(a=this.getLayer())&&a._getDateOpts,
b=p.substitute(this.attributes,b,{dateFormat:c&&c.call(a)});return b},attr:function(a,b){null==b||this._dataAttrs||(this._dataAttrs={});this._dataAttrs&&(this._dataAttrs[a]=b,this._setDataAttr(a,b));return this},_isSuspended:function(){return this._suspended},_suspend:function(){this._suspended=!0;this.draw()},_resume:function(){this._suspended=!1;this.draw()},show:function(){this.visible=!0;this.attr("data-hidden");var a,b,c;if(this.getShapes().length)for(a=this.getNodes(),c=a.length,b=0;b<c;b++)h.show(a[b]);
else this.draw();(a=this._graphicsLayer)&&a._graphicVisibilityChanged(this);return this},hide:function(){this.visible=!1;this.attr("data-hidden","");var a=this._graphicsLayer,b,c,e;if(a){if("canvas-2d"===a.surfaceType)a._removeShape(this);else if(b=this.getNodes(),e=b.length)for(c=0;c<e;c++)h.hide(b[c]);a._graphicVisibilityChanged(this)}return this},toJson:function(){var a={};this.geometry&&(a.geometry=this.geometry.toJson());this.attributes&&(a.attributes=n.mixin({},this.attributes));this.symbol&&
(a.symbol=this.symbol.toJson());this.infoTemplate&&(a.infoTemplate=this.infoTemplate.toJson());return a},_setDataAttr:function(a,b){var c=this.getNodes(),d,e=c.length;for(d=0;d<e;d++)this._setDOMDataAttr(c[d],a,b)},_setDOMDataAttr:function(a,b,c){null==c?a.removeAttribute(b):a.setAttribute(b,c)},_applyDataAttrs:function(){var a=this._dataAttrs;if(a){var b=this.getNodes(),c,e=b.length;for(c=0;c<e;c++)for(var f in a)this._setDOMDataAttr(b[c],f,a[f])}},_getViewInfo:function(a){return(a=(a=a||this.getLayer())&&
a.getMap())&&a._getViewInfo()},_getDataValue:function(a,b,c,e,f){var d=b.id,m=this.attributes,g=a.field,h=b.isNumeric,l=null;if(d){var p=this._computedAttributes,t=this._computedVersion,n=this._computedGeomVersion;e=this._getViewInfo(e);var q=b.dependsOnView||b.isJSFunc,w=b.dependsOnGeometry,H=w&&!!f;p||(p=this._computedAttributes={});q&&!t&&(t=this._computedVersion={});w&&!n&&(n=this._computedGeomVersion={});var E=q&&t[d]!==e._version||w&&n[d]!==this._geomVersion,l=p[d];if(void 0===l||E||H)l=null,
b.hasExpr?(l=c.createExecContext(this,e),(a=l.vars.$feature)&&f&&(a._geometry=f),l=c.executeFunction(b.compiledFunc,l)):b.isJSFunc?l=g(this,a):m&&(l=m[g],h&&this._isValidNumber(l)&&(b=a.normalizationType||"field",c=l,l=null,f=a.normalizationTotal,a=m[a.normalizationField],"log"===b&&0!==c?l=Math.log(c)*Math.LOG10E:"percent-of-total"===b&&this._isValidNumber(f)&&0!==f?l=c/f*100:"field"===b&&this._isValidNumber(a)&&0!==a&&(l=c/a))),l=this._sanitizeValue(l,h),H||(p[d]=l,q&&(t[d]=e._version),w&&(n[d]=
this._geomVersion))}else m&&(l=this._sanitizeValue(m[g],h));return l},_sanitizeValue:function(a,b){b&&!this._isValidNumber(a)&&(a=null);return a},_isValidNumber:function(a){return"number"===typeof a&&!isNaN(a)&&Infinity!==a&&-Infinity!==a},_clearCache:function(){this._computedAttributes=this._computedVersion=this._computedGeomVersion=null}});q.prototype.getShape=q.prototype.getDojoShape;c.prototype=q.prototype;q.simpleConstructor=c;b("extend-esri")&&(g.Graphic=q);return q})},"esri/InfoTemplate":function(){define(["dojo/_base/declare",
"dojo/_base/lang","dojo/has","./kernel","./lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.InfoTemplate",constructor:function(b,g){b&&n.isObject(b)&&!n.isFunction(b)?n.mixin(this,b):(this.title=b||"${*}",this.content=g||"${*}")},setTitle:function(b){this.title=b;return this},setContent:function(b){this.content=b;return this},toJson:function(){return h.fixJson({title:this.title,content:this.content})}});b("extend-esri")&&(g.InfoTemplate=q);return q})},"esri/symbols/jsonUtils":function(){define("dojo/_base/lang dojo/has ../kernel ./SimpleMarkerSymbol ./PictureMarkerSymbol ./SimpleLineSymbol ./CartographicLineSymbol ./SimpleFillSymbol ./PictureFillSymbol ./TextSymbol".split(" "),
function(q,n,b,g,h,p,l,f,e,c){var a={fromJson:function(a){var b=null;switch(a.type){case "esriSMS":b=new g(a);break;case "esriPMS":b=new h(a);break;case "esriTS":b=new c(a);break;case "esriSLS":b=void 0!==a.cap?new l(a):new p(a);break;case "esriCLS":b=new l(a);break;case "esriSFS":b=new f(a);break;case "esriPFS":b=new e(a)}return b},getShapeDescriptors:function(a){return a&&a.getShapeDescriptors?a.getShapeDescriptors():{defaultShape:null,fill:null,stroke:null}}};n("extend-esri")&&q.mixin(q.getObject("symbol",
!0,b),a);return a})},"esri/symbols/PictureMarkerSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/sniff dojox/gfx/_base ../kernel ../lang ../urlUtils ./MarkerSymbol".split(" "),function(q,n,b,g,h,p,l,f){var e={url:"",width:12,height:12,angle:0,xoffset:0,yoffset:0};q=q(f,{declaredClass:"esri.symbol.PictureMarkerSymbol",type:"picturemarkersymbol",constructor:function(c,a,d){c?n.isString(c)?(this.url=c,a&&(this.width=a),d&&(this.height=d)):(this.width=g.pt2px(c.width),this.height=g.pt2px(c.height),
a=c.imageData,9>b("ie")||!a||(d=this.url,this.url="data:"+(c.contentType||"image")+";base64,"+a,this.imageData=d)):(n.mixin(this,e),this.width=g.pt2px(this.width),this.height=g.pt2px(this.height))},getStroke:function(){return null},getFill:function(){return null},setWidth:function(b){this.width=b;return this},setHeight:function(b){this.height=b;return this},setUrl:function(b){b!==this.url&&(delete this.imageData,delete this.contentType);this.url=b;return this},getShapeDescriptors:function(){return{defaultShape:{type:"image",
x:-Math.round(this.width/2),y:-Math.round(this.height/2),width:this.width,height:this.height,src:this.url||""},fill:null,stroke:null}},toJson:function(){var b=this.url,a=this.imageData;if(0===b.indexOf("data:"))var d=b,b=a,a=d.indexOf(";base64,")+8,a=d.substr(a);!n.isString(b)||0!==b.indexOf("/")&&0!==b.indexOf("//")&&0!==b.indexOf("./")&&0!==b.indexOf("../")||(b=l.getAbsoluteUrl(b));var d=g.px2pt(this.width),d=isNaN(d)?void 0:d,e=g.px2pt(this.height),e=isNaN(e)?void 0:e,b=p.fixJson(n.mixin(this.inherited("toJson",
arguments),{type:"esriPMS",url:b,imageData:a,contentType:this.contentType,width:d,height:e}));delete b.color;delete b.size;b.imageData||delete b.imageData;return b}});q.defaultProps=e;b("extend-esri")&&(n.setObject("symbol.PictureMarkerSymbol",q,h),h.symbol.defaultPictureMarkerSymbol=e);return q})},"esri/symbols/CartographicLineSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/Color dojo/has dojox/gfx/_base ../kernel ../lang ./SimpleLineSymbol".split(" "),function(q,n,b,g,h,
p,l,f){var e={STYLE_SOLID:"solid",STYLE_DASH:"dash",STYLE_DOT:"dot",STYLE_DASHDOT:"dashdot",STYLE_DASHDOTDOT:"longdashdotdot",STYLE_NULL:"none",STYLE_INSIDE_FRAME:"insideframe",STYLE_SHORTDASH:"shortdash",STYLE_SHORTDOT:"shortdot",STYLE_SHORTDASHDOT:"shortdashdot",STYLE_SHORTDASHDOTDOT:"shortdashdotdot",STYLE_LONGDASH:"longdash",STYLE_LONGDASHDOT:"longdashdot",CAP_BUTT:"butt",CAP_ROUND:"round",CAP_SQUARE:"square",JOIN_MITER:"miter",JOIN_ROUND:"round",JOIN_BEVEL:"bevel"},c={color:[0,0,0,1],style:e.STYLE_SOLID,
width:1,cap:e.CAP_BUTT,join:e.JOIN_MITER,miterLimit:10};q=q(f,{declaredClass:"esri.symbol.CartographicLineSymbol",type:"cartographiclinesymbol",_caps:{butt:"esriLCSButt",round:"esriLCSRound",square:"esriLCSSquare"},_joins:{miter:"esriLJSMiter",round:"esriLJSRound",bevel:"esriLJSBevel"},constructor:function(a,d,e,f,g,k){a?n.isString(a)?(this.style=a,d&&(this.color=d),void 0!==e&&(this.width=e),f&&(this.cap=f),g&&(this.join=g),void 0!==k&&(this.miterLimit=k)):(this.cap=l.valueOf(this._caps,a.cap),this.join=
l.valueOf(this._joins,a.join),this.width=h.pt2px(a.width),this.miterLimit=h.pt2px(a.miterLimit)):(n.mixin(this,c),this.color=new b(this.color),this.width=h.pt2px(this.width),this.miterLimit=h.pt2px(this.miterLimit))},setCap:function(a){this.cap=a;return this},setJoin:function(a){this.join=a;return this},setMiterLimit:function(a){this.miterLimit=a;return this},getStroke:function(){return n.mixin(this.inherited("getStroke",arguments),{cap:this.cap,join:this.join===e.JOIN_MITER?this.miterLimit:this.join})},
getFill:function(){return null},getShapeDescriptors:function(){return{defaultShape:{type:"path",path:"M -15,0 L 15,0 E"},fill:null,stroke:this.getStroke()}},toJson:function(){var a=h.px2pt(this.miterLimit),a=isNaN(a)?void 0:a;return l.fixJson(n.mixin(this.inherited("toJson",arguments),{type:"esriCLS",cap:this._caps[this.cap],join:this._joins[this.join],miterLimit:a}))}});n.mixin(q,e);q.defaultProps=c;g("extend-esri")&&(n.setObject("symbol.CartographicLineSymbol",q,p),p.symbol.defaultCartographicLineSymbol=
c);return q})},"esri/symbols/SimpleFillSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/Color dojo/has dojox/gfx/_base ../kernel ../lang ./FillSymbol ./SimpleLineSymbol require".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a={STYLE_SOLID:"solid",STYLE_NULL:"none",STYLE_HORIZONTAL:"horizontal",STYLE_VERTICAL:"vertical",STYLE_FORWARD_DIAGONAL:"forwarddiagonal",STYLE_BACKWARD_DIAGONAL:"backwarddiagonal",STYLE_CROSS:"cross",STYLE_DIAGONAL_CROSS:"diagonalcross",STYLE_FORWARDDIAGONAL:"forwarddiagonal",
STYLE_BACKWARDDIAGONAL:"backwarddiagonal",STYLE_DIAGONALCROSS:"diagonalcross"},d={style:a.STYLE_SOLID,color:[0,0,0,.25]};q=q(f,{declaredClass:"esri.symbol.SimpleFillSymbol",type:"simplefillsymbol",_styles:{solid:"esriSFSSolid",none:"esriSFSNull",horizontal:"esriSFSHorizontal",vertical:"esriSFSVertical",forwarddiagonal:"esriSFSForwardDiagonal",backwarddiagonal:"esriSFSBackwardDiagonal",cross:"esriSFSCross",diagonalcross:"esriSFSDiagonalCross"},constructor:function(a,c,f){a?n.isString(a)?(this.style=
a,void 0!==c&&(this.outline=c),void 0!==f&&(this.color=f)):this.style=l.valueOf(this._styles,a.style):(n.mixin(this,d),this.outline=new e(this.outline),this.color=new b(this.color))},setStyle:function(a){this.style=a;return this},getStroke:function(){return this.outline&&this.outline.getStroke()},getFill:function(){var b=this.style;return b===a.STYLE_NULL?null:b===a.STYLE_SOLID?this.color:n.mixin({},h.defaultPattern,{src:c.toUrl("../images/symbol/sfs/"+b+".png"),width:10,height:10})},getShapeDescriptors:function(){return{defaultShape:{type:"path",
path:"M -10,-10 L 10,0 L 10,10 L -10,10 L -10,-10 Z"},fill:this.getFill(),stroke:this.getStroke()}},toJson:function(){return l.fixJson(n.mixin(this.inherited("toJson",arguments),{type:"esriSFS",style:this._styles[this.style]}))}});n.mixin(q,a);q.defaultProps=d;g("extend-esri")&&(n.setObject("symbol.SimpleFillSymbol",q,p),p.symbol.defaultSimpleFillSymbol=d);return q})},"esri/symbols/FillSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ./Symbol ./SimpleLineSymbol".split(" "),
function(q,n,b,g,h,p){q=q(h,{declaredClass:"esri.symbol.FillSymbol",constructor:function(b){b&&n.isObject(b)&&b.outline&&(this.outline=new p(b.outline))},setOutline:function(b){this.outline=b;return this},toJson:function(){var b=this.inherited("toJson",arguments);this.outline&&(b.outline=this.outline.toJson());return b}});b("extend-esri")&&n.setObject("symbol.FillSymbol",q,g);return q})},"esri/symbols/PictureFillSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/sniff dojox/gfx/_base ../kernel ../lang ../urlUtils ./FillSymbol".split(" "),
function(q,n,b,g,h,p,l,f){var e={xoffset:0,yoffset:0,width:12,height:12};q=q(f,{declaredClass:"esri.symbol.PictureFillSymbol",type:"picturefillsymbol",xscale:1,yscale:1,xoffset:0,yoffset:0,constructor:function(c,a,d,f){c?n.isString(c)?(this.url=c,void 0!==a&&(this.outline=a),void 0!==d&&(this.width=d),void 0!==f&&(this.height=f)):(this.xoffset=g.pt2px(c.xoffset),this.yoffset=g.pt2px(c.yoffset),this.width=g.pt2px(c.width),this.height=g.pt2px(c.height),a=c.imageData,9>b("ie")||!a||(d=this.url,this.url=
"data:"+(c.contentType||"image")+";base64,"+a,this.imageData=d)):(n.mixin(this,e),this.width=g.pt2px(this.width),this.height=g.pt2px(this.height))},setWidth:function(b){this.width=b;return this},setHeight:function(b){this.height=b;return this},setOffset:function(b,a){this.xoffset=b;this.yoffset=a;return this},setUrl:function(b){b!==this.url&&(delete this.imageData,delete this.contentType);this.url=b;return this},setXScale:function(b){this.xscale=b;return this},setYScale:function(b){this.yscale=b;
return this},getStroke:function(){return this.outline&&this.outline.getStroke()},getFill:function(){return n.mixin({},g.defaultPattern,{src:this.url,width:this.width*this.xscale,height:this.height*this.yscale,x:this.xoffset,y:this.yoffset})},getShapeDescriptors:function(){return{defaultShape:{type:"path",path:"M -10,-10 L 10,0 L 10,10 L -10,10 L -10,-10 Z"},fill:this.getFill(),stroke:this.getStroke()}},toJson:function(){var b=this.url,a=this.imageData;if(0===b.indexOf("data:"))var d=b,b=a,a=d.indexOf(";base64,")+
8,a=d.substr(a);!n.isString(b)||0!==b.indexOf("/")&&0!==b.indexOf("//")&&0!==b.indexOf("./")&&0!==b.indexOf("../")||(b=l.getAbsoluteUrl(b));var d=g.px2pt(this.width),d=isNaN(d)?void 0:d,e=g.px2pt(this.height),e=isNaN(e)?void 0:e,f=g.px2pt(this.xoffset),f=isNaN(f)?void 0:f,h=g.px2pt(this.yoffset),h=isNaN(h)?void 0:h,b=p.fixJson(n.mixin(this.inherited("toJson",arguments),{type:"esriPFS",url:b,imageData:a,contentType:this.contentType,width:d,height:e,xoffset:f,yoffset:h,xscale:this.xscale,yscale:this.yscale}));
b.imageData||delete b.imageData;return b}});q.defaultProps=e;b("extend-esri")&&(n.setObject("symbol.PictureFillSymbol",q,h),h.symbol.defaultPictureFillSymbol=e);return q})},"esri/symbols/TextSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojox/gfx/_base ../kernel ../lang ../Color ./Symbol ./Font".split(" "),function(q,n,b,g,h,p,l,f,e){var c={type:"textsymbol",x:0,y:0,text:"",rotated:!1,kerning:!0,color:[0,0,0,1],font:g.defaultFont,angle:0,xoffset:0,yoffset:0,horizontalAlignment:"center"},
a={start:"left",middle:"center",end:"right"},d={left:"start",center:"middle",right:"end",justify:"start"},m={top:"text-before-edge",middle:"central",baseline:"alphabetic",bottom:"text-after-edge"},w=document.createElement("canvas");q=q(f,{declaredClass:"esri.symbol.TextSymbol",angle:0,xoffset:0,yoffset:0,constructor:function(a,b,d){n.mixin(this,c);this.font=new e(this.font);this.color=new l(this.color);a&&(n.isObject(a)?(n.mixin(this,a),this.color&&p.isDefined(this.color[0])&&(this.color=l.toDojoColor(this.color)),
this.type="textsymbol",this.font=new e(this.font),this.xoffset=g.pt2px(this.xoffset),this.yoffset=g.pt2px(this.yoffset),this.angle&&(this.angle*=-1),this.haloSize&&(this.haloSize=g.pt2px(this.haloSize)),this.haloColor&&(this.haloColor=l.toDojoColor(this.haloColor))):(this.text=a,b&&(this.font=b),d&&(this.color=d)));this.setAlign(this.align||this.getSVGAlign())},setFont:function(a){this.font=a;return this},setSize:function(a){this.font.size=a;return this},setAngle:function(a){this.angle=a;return this},
setOffset:function(a,b){this.xoffset=a;this.yoffset=b;return this},setHaloColor:function(a){this.haloColor=a;return this},setHaloSize:function(a){this.haloSize=a;return this},setAlign:function(b){this.align=b;this.setHorizontalAlignment(b&&a[b.toLowerCase()]||"center");return this},setHorizontalAlignment:function(a){this.horizontalAlignment=a;return this},getSVGAlign:function(){var a=this.horizontalAlignment;return a=a&&d[a.toLowerCase()]||"middle"},setVerticalAlignment:function(a){this.verticalAlignment=
a;return this},getSVGBaseline:function(){var a=this.verticalAlignment;return a&&m[a.toLowerCase()]||"alphabetic"},getSVGBaselineShift:function(){return"bottom"===this.verticalAlignment?"super":null},setDecoration:function(a){this.decoration=a;this.font||this.setFont(new e);this.font.setDecoration(a);return this},setRotated:function(a){this.rotated=a;return this},setKerning:function(a){this.kerning=a;return this},setText:function(a){this.text=a;return this},getStroke:function(){return null},getFill:function(){return this.color},
getWidth:function(){var a=w&&w.getContext&&w.getContext("2d");if(a){var b=this.font;a.font=(b.style?b.style:g.defaultFont.style)+" "+(b.weight?b.weight:g.defaultFont.weight)+" "+(b.size?b.size:g.defaultFont.size)+"px "+(b.family?b.family:g.defaultFont.family);return a.measureText(this.text).width}var a=this.getHeight(),b=0,c,d;for(c=0;c<this.text.length;c++)d=this.text.charAt(c),b=d==d.toUpperCase()?b+.7*a:b+.5*a;return b},getHeight:function(){return g.normalizedLength(this.font.size)},getShapeDescriptors:function(){var a=
this.font,b;a&&(b={},a.size&&(b.size=a.size),a.style&&(b.style=a.style),a.variant&&(b.variant=a.variant),a.decoration&&(b.decoration=a.decoration),a.weight&&(b.weight=a.weight),a.family&&(b.family=a.family));return{defaultShape:{type:"text",text:this.text,x:0,y:this.getHeight()/4,align:"middle",decoration:this.decoration||a&&a.decoration,rotated:this.rotated,kerning:this.kerning},font:b,fill:this.getFill(),stroke:this.getStroke()}},toJson:function(){var a=g.px2pt(this.xoffset),b=g.px2pt(this.yoffset),
c=g.px2pt(this.haloSize),a=isNaN(a)?void 0:a,b=isNaN(b)?void 0:b,c=isNaN(c)?void 0:c;return p.fixJson(n.mixin(this.inherited("toJson",arguments),{type:"esriTS",backgroundColor:this.backgroundColor,borderLineColor:this.borderLineColor,borderLineSize:this.borderLineSize,haloSize:c,haloColor:this.haloColor&&l.toJsonColor(this.haloColor),verticalAlignment:this.verticalAlignment,horizontalAlignment:this.horizontalAlignment,rightToLeft:this.rightToLeft,width:this.width,angle:this.angle&&-1*this.angle,xoffset:a,
yoffset:b,text:this.text,rotated:this.rotated,kerning:this.kerning,font:this.font.toJson()}))}});n.mixin(q,{ALIGN_START:"start",ALIGN_MIDDLE:"middle",ALIGN_END:"end",DECORATION_NONE:"none",DECORATION_UNDERLINE:"underline",DECORATION_OVERLINE:"overline",DECORATION_LINETHROUGH:"line-through"});q.defaultProps=c;b("extend-esri")&&(n.setObject("symbol.TextSymbol",q,h),h.symbol.defaultTextSymbol=c);return q})},"esri/symbols/Font":function(){define("dojo/_base/declare dojo/_base/lang dojo/sniff dojox/gfx/_base ../kernel ../lang".split(" "),
function(q,n,b,g,h,p){q=q(null,{declaredClass:"esri.symbol.Font",constructor:function(h,f,e,c,a){h?n.isObject(h)?n.mixin(this,h):(this.size=h,parseFloat(this.size)==this.size&&(this.size+="px"),void 0!==f&&(this.style=f),void 0!==e&&(this.variant=e),void 0!==c&&(this.weight=c),void 0!==a&&(this.family=a)):n.mixin(this,g.defaultFont);parseFloat(this.size)==this.size&&(this.size+="pt");9>b("ie")&&this.size&&n.isString(this.size)&&-1<this.size.indexOf("em")&&(this.size=g.pt2px(12*parseFloat(this.size))+
"px");this.size=this._convert2PxSize(this.size)},setSize:function(b){this.size=this._convert2PxSize(b);return this},_convert2PxSize:function(b){var f;parseFloat(b)==b?f=b:n.isString(b)&&(-1<b.indexOf("pt")?f=g.pt2px(parseFloat(b)):-1<b.indexOf("px")?f=parseFloat(b):-1<b.indexOf("em")?f=g.pt2px(12*parseFloat(b)):-1<b.indexOf("%")&&(f=g.pt2px(.12*parseFloat(b))));return f},setStyle:function(b){this.style=b;return this},setVariant:function(b){this.variant=b;return this},setWeight:function(b){this.weight=
b;return this},setFamily:function(b){this.family=b;return this},setDecoration:function(b){this.decoration=b;return this},toJson:function(){return p.fixJson({size:g.px2pt(this.size),style:this.style,decoration:this.decoration,weight:this.weight,family:this.family})}});n.mixin(q,{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"});b("extend-esri")&&
n.setObject("symbol.Font",q,h);return q})},"esri/tasks/query":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/has ../kernel ../geometry/jsonUtils ./SpatialRelationship dojo/has!extend-esri?./QueryTask dojo/has!extend-esri?./RelationshipQuery dojo/has!extend-esri?./StatisticDefinition".split(" "),function(q,n,b,g,h,p,l,f){var e=q(null,{declaredClass:"esri.tasks.Query",constructor:function(){this.spatialRelationship=e.SPATIAL_REL_INTERSECTS},text:null,where:"",
geometry:null,groupByFieldsForStatistics:null,objectIds:null,returnGeometry:!1,returnCentroid:null,returnDistinctValues:!1,returnExceededLimitFeatures:null,maxRecordCountFactor:null,orderByFields:null,outSpatialReference:null,outFields:null,outStatistics:null,timeExtent:null,relationParam:null,pixelSize:null,distance:null,units:null,resultOffset:null,resultRecordCount:null,resultType:null,sqlFormat:null,quantizationParameters:null,_units:{meters:"esriSRUnit_Meter",kilometers:"esriSRUnit_Kilometer",
feet:"esriSRUnit_Foot",miles:"esriSRUnit_StatuteMile","nautical-miles":"esriSRUnit_NauticalMile","us-nautical-miles":"esriSRUnit_USNauticalMile"},toJson:function(c){var a={text:this.text,where:this.where,returnGeometry:this.returnGeometry,spatialRel:this.spatialRelationship,maxAllowableOffset:this.maxAllowableOffset,geometryPrecision:this.geometryPrecision,sqlFormat:this.sqlFormat},d=c&&c.geometry||this.geometry,f=this.objectIds,h=this.outFields,p=this.outSpatialReference,k=this.groupByFieldsForStatistics,
n=this.orderByFields,r=this.outStatistics;c=this.distance;d&&(a.geometry=d,a.geometryType=l.getJsonType(d),a.inSR=d.spatialReference.wkid||g.toJson(d.spatialReference.toJson()));f&&(a.objectIds=f.join(","));h&&(a.outFields=h.join(","));null!=this.returnCentroid&&(a.returnCentroid=this.returnCentroid);this.returnDistinctValues&&(a.returnDistinctValues=!0);null!=this.returnExceededLimitFeatures&&(a.returnExceededLimitFeatures=this.returnExceededLimitFeatures);null!=this.maxRecordCountFactor&&(a.maxRecordCountFactor=
this.maxRecordCountFactor);k&&(a.groupByFieldsForStatistics=k.join(","));n&&(a.orderByFields=n.join(","));if(r){var y=[];b.forEach(r,function(a){y.push(a.toJson())});a.outStatistics=g.toJson(y)}p?a.outSR=p.wkid||g.toJson(p.toJson()):d&&(a.outSR=d.spatialReference.wkid||g.toJson(d.spatialReference.toJson()));d=this.timeExtent;a.time=d?d.toJson().join(","):null;(d=this.relationParam)&&this.spatialRelationship===e.SPATIAL_REL_RELATION&&(a.relationParam=d);c&&(a.distance=this.distance,this.hasOwnProperty("units")?
a.units=this._units[this.units]||this._units.meters:(console.warn("esri/tasks/query::no distance unit provided, defaulting to meters"),a.units=this._units.meters));this.hasOwnProperty("start")&&(a.resultOffset=this.start,a.resultRecordCount=10,""===a.where&&(a.where="1\x3d1"));this.hasOwnProperty("num")&&(a.resultRecordCount=this.num);a.resultType=this.resultType;a.pixelSize=this.pixelSize?g.toJson(this.pixelSize.toJson()):null;a.multipatchOption=this.multipatchOption;this.quantizationParameters&&
(a.quantizationParameters=g.toJson(this.quantizationParameters));a._ts=this._ts;return a}});n.mixin(e,f);h("extend-esri")&&n.setObject("tasks.Query",e,p);return e})},"esri/tasks/SpatialRelationship":function(){define(["dojo/_base/lang","dojo/has","../kernel"],function(q,n,b){var g={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",SPATIAL_REL_RELATION:"esriSpatialRelRelation"};n("extend-esri")&&q.setObject("tasks._SpatialRelationship",g,b);return g})},"esri/plugins/popupManager":function(){define(["../PopupManager"],function(q){return{add:function(n,b){n.popupManager||(n.popupManager=new q(b),n.popupManager.setMap(n))},remove:function(n){var b=n.popupManager;b&&(b.unsetMap(),n.popupManager=void 0)}}})},
"esri/PopupManager":function(){define("./geometry/Extent ./geometry/ScreenPoint ./kernel ./layerUtils ./tasks/query dijit/registry dojo/_base/array dojo/_base/declare dojo/_base/Deferred dojo/_base/lang dojo/has dojo/on dojo/promise/all dojo/Stateful require".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){var k;f=f(w,{declaredClass:"esri.PopupManager",enabled:!1,map:null,_mapClickHandle:null,_featureLayersCache:{},constructor:function(a){this._mapClickHandler=c.hitch(this,this._mapClickHandler)},
setMap:function(a){if(this.map)if(a!==this.map)this.unsetMap();else return;this.map=a;this._setupClickHandler()},unsetMap:function(){this.map&&(this.map=null);this._mapClickHandle&&(this._mapClickHandle.remove(),this._mapClickHandle=null)},getMapLayer:function(a){var b;if(a&&(b=a.getLayer())&&(a=b.id,this._featureLayersCache[a])){var c=a.lastIndexOf("_");-1<c&&(a=a.substring(0,c),b=this.map.getLayer(a))}return b},_enabledSetter:function(a){this.enabled=a;this._setupClickHandler()},_setupClickHandler:function(){this._mapClickHandle&&
(this._mapClickHandle.remove(),this._mapClickHandle=null);this.enabled&&this.map&&(this._mapClickHandle=this.map.on("click",this._mapClickHandler))},_mapClickHandler:function(a){var b=this.map.infoWindow,c=a.graphic;b&&this.map.loaded&&(b.clearFeatures&&b.setFeatures?this._showPopup(a):c&&c.getInfoTemplate()&&this._showInfoWindow(c,a.mapPoint))},_showPopup:function(a){var b=this.map,c=b.infoWindow,d=this,f=[],k=[b.graphics].concat(l.map(b.graphicsLayerIds,b.getLayer,b));l.forEach(k,function(a){a&&
a.loaded&&a.infoTemplate&&!a.suspended&&f.push(a)});var m=[];l.forEach(b.layerIds,function(a){(a=b.getLayer(a))&&a.loaded&&!a.suspended&&(d._isImageServiceLayer(a)&&a.infoTemplate?f.push(a):"esri.layers.WMSLayer"===a.declaredClass&&a.getFeatureInfoURL?f.push(a):"esri.layers.ArcGISDynamicMapServiceLayer"!==a.declaredClass&&"esri.layers.ArcGISTiledMapServiceLayer"!==a.declaredClass||!a.infoTemplates||m.push(a))});var g=b.getResolutionForPopup();this._getSubLayerFeatureLayers(m,g).then(function(k){f=
f.concat(k);var m=null;a.graphic&&a.graphic.getInfoTemplate()&&!d._isImageServiceLayer(a.graphic._layer)&&(m=a.graphic);if(f.length||m){var r=d._calculateClickTolerance(f),p=a.screenPoint;k=b.toMap(new n(p.x-r,p.y+r));var r=b.toMap(new n(p.x+r,p.y-r)),t=new q(k.x,k.y,r.x,r.y,b.spatialReference);if(t=t.intersects(b.extent)){var v=new h,y=!!m,u=!0;k=l.map(f,function(c){v.timeExtent=c.useMapTime?b.timeExtent:null;var f=d._isReductionEnabled(c);c=f?c.getFeatureReductionLayer():c;var k,r=d._featureLayersCache[c.id];
if(d._isImageServiceLayer(c))v.geometry=a.mapPoint,u=!1,k=c.queryVisibleRasters(v,{rasterAttributeTableFieldPrefix:"Raster.",returnDomainValues:!0}),k.addCallback(function(){var a=c.getVisibleRasters();y=y||0<a.length;return a});else if("esri.layers.WMSLayer"===c.declaredClass){k=new e;var h=c._getPopupGraphic(b,a.screenPoint);h?(k.resolve([h]),y=!0):k.resolve([])}else r||"function"===typeof c.queryFeatures&&(0===c.currentMode||1===c.currentMode)?(v.geometry=t,k=c.queryFeatures(v),k.addCallback(function(a){var b=
[];l.forEach(a.features,function(a){a.visible&&(b.push(a),r&&a.setResolution(g))});y=y||0<b.length;return b})):(k=new e,h=l.filter(c.graphics,function(a){return a&&a.visible&&t.intersects(a.geometry)}),f&&d._isParentLayer(c,m)&&(f=d._findGraphicById(h,m,"cluster_id"))&&(m=f),y=y||0<h.length,k.resolve(h));return k});m&&(r=new e,r.resolve([m]),k.unshift(r));l.some(k,function(a){return!a.isFulfilled()})||y?(c.setFeatures(k),c.show(a.mapPoint,{closestFirst:u})):(c.hide(),c.clearFeatures())}}})},_getSubLayerFeatureLayers:function(a,
b,c){b=b||null;var f=c||new e,r=[];c=a.length;var h=this.map.getScale(),p=!1,n=this,y=0;a:for(;y<c;y++){var q=a[y],u=q.dynamicLayerInfos||q.layerInfos;if(u){var w=null;q._params&&(q._params.layers||q._params.dynamicLayers)&&(w=q.visibleLayers);for(var w=g._getVisibleLayers(u,w),I=g._getLayersForScale(h,u),X=u.length,N=0;N<X;N++){var G=u[N],Q=G.id,M=q.infoTemplates[Q];if(!G.subLayerIds&&M&&M.infoTemplate&&-1<l.indexOf(w,Q)&&-1<l.indexOf(I,Q)){if(!k){p=!0;break a}var U=q.id+"_"+Q,O=this._featureLayersCache[U];
O&&O.loadError||(O||((O=M.layerUrl)||(O=G.source?this._getLayerUrl(q.url,"/dynamicLayer"):this._getLayerUrl(q.url,Q)),O=new k(O,{id:U,drawMode:!1,mode:k.MODE_SELECTION,outFields:this._getOutFields(M.infoTemplate),resourceInfo:M.resourceInfo,source:G.source}),this._featureLayersCache[U]=O),O.setDefinitionExpression(q.layerDefinitions&&q.layerDefinitions[Q]),O.setGDBVersion(q.gdbVersion),O.setInfoTemplate(M.infoTemplate),O.setMaxAllowableOffset(b),O.setUseMapTime(!!q.useMapTime),q.layerDrawingOptions&&
q.layerDrawingOptions[Q]&&q.layerDrawingOptions[Q].renderer&&O.setRenderer(q.layerDrawingOptions[Q].renderer),r.push(O))}}}}if(p){var L=new e;t(["./layers/FeatureLayer"],function(a){k=a;L.resolve()});L.then(function(){n._getSubLayerFeatureLayers(a,b,f)})}else{var ba=[];l.forEach(r,function(a){if(!a.loaded){var b=new e;d.once(a,"load, error",function(){b.resolve()});ba.push(b.promise)}});ba.length?m(ba).then(function(){r=l.filter(r,function(a){return!a.loadError&&a.isVisibleAtScale(h)});f.resolve(r)}):
(r=l.filter(r,function(a){return a.isVisibleAtScale(h)}),f.resolve(r))}return f.promise},_getLayerUrl:function(a,b){var c=a.indexOf("?");return-1===c?a+"/"+b:a.substring(0,c)+"/"+b+a.substring(c)},_getOutFields:function(a){var b;a.info&&"esri.dijit.PopupTemplate"===a.declaredClass?(b=[],l.forEach(a.info.fieldInfos,function(a){var c=a.fieldName&&a.fieldName.toLowerCase();c&&"shape"!==c&&0!==c.indexOf("relationships/")&&b.push(a.fieldName)})):b=["*"];return b},_calculateClickTolerance:function(a){var b=
6,c,d;l.forEach(a,function(a){if(c=a.renderer)"esri.renderer.SimpleRenderer"===c.declaredClass?((d=c.symbol)&&d.xoffset&&(b=Math.max(b,Math.abs(d.xoffset))),d&&d.yoffset&&(b=Math.max(b,Math.abs(d.yoffset)))):"esri.renderer.UniqueValueRenderer"!==c.declaredClass&&"esri.renderer.ClassBreaksRenderer"!==c.declaredClass||l.forEach(c.infos,function(a){(d=a.symbol)&&d.xoffset&&(b=Math.max(b,Math.abs(d.xoffset)));d&&d.yoffset&&(b=Math.max(b,Math.abs(d.yoffset)))})});return b},_showInfoWindow:function(a,b){var d=
this.map.infoWindow,e=a.geometry;b=e&&"point"===e.type?e:b;e=a.getContent();d.setTitle(a.getTitle());e&&c.isString(e.id)&&(a=p.byId(e.id))&&a.set&&/_PopupRenderer/.test(a.declaredClass)&&a.set("showTitle",!1);d.setContent(e);d.show(b)},_findGraphicById:function(a,b,c){var d,e=(b=b.attributes)&&b[c];l.some(a,function(a){var b=a.attributes;b&&b[c]===e&&(d=a);return!!d});return d},_isParentLayer:function(a,b){b=b&&b.getLayer();return a&&b===a},_isReductionEnabled:function(a){return a&&a.isFeatureReductionActive&&
a.isFeatureReductionActive()},_isImageServiceLayer:function(a){return"esri.layers.ArcGISImageServiceLayer"===a.declaredClass||"esri.layers.ArcGISImageServiceVectorLayer"===a.declaredClass}});a("extend-esri")&&(b.PopupManager=f);return f})},"esri/layerUtils":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/_base/json","dojo/has","./kernel"],function(q,n,b,g,h){var p={_serializeLayerDefinitions:function(g,f){var e=[],c=/[:;]/;if(g&&(n.forEach(g,function(a,b){a&&(e.push([b,a]),!f&&c.test(a)&&
(f=!0))}),0<e.length)){var a;f?(a={},n.forEach(e,function(b){a[b[0]]=b[1]}),a=b.toJson(a)):(a=[],n.forEach(e,function(b){a.push(b[0]+":"+b[1])}),a=a.join(";"));return a}return null},_serializeTimeOptions:function(g,f){if(g){var e=[];n.forEach(g,function(c,a){c&&(c=c.toJson(),f&&-1!==n.indexOf(f,a)&&(c.useTime=!1),e.push('"'+a+'":'+b.toJson(c)))});if(e.length)return"{"+e.join(",")+"}"}},_getVisibleLayers:function(b,f){var e=[],c,a;if(!b)return e;if(f)for(e=f.concat(),a=0;a<b.length;a++)f=b[a],c=n.indexOf(b,
f.id),f.subLayerIds&&-1<c&&(e.splice(c,1),e=e.concat(f.subLayerIds));else e=this._getDefaultVisibleLayers(b);return e},_getDefaultVisibleLayers:function(b){var f=[],e;if(!b)return f;for(e=0;e<b.length;e++)0<=b[e].parentLayerId&&-1===n.indexOf(f,b[e].parentLayerId)&&n.some(b,function(c){return c.id===b[e].parentLayerId})||b[e].defaultVisibility&&f.push(b[e].id);return f},_getLayersForScale:function(b,f){var e=[];if(0<b&&f){var c;for(c=0;c<f.length;c++)if(!(0<=f[c].parentLayerId&&-1===n.indexOf(e,f[c].parentLayerId)&&
n.some(f,function(a){return a.id===f[c].parentLayerId}))&&0<=f[c].id){var a=!0,d=f[c].maxScale,m=f[c].minScale;if(0<d||0<m)0<d&&0<m?a=d<=b&&b<=m:0<d?a=d<=b:0<m&&(a=b<=m);a&&e.push(f[c].id)}}return e}};g("extend-esri")&&q.mixin(h,p);return p})},"esri/MapNavigationManager":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/connect dojo/_base/event dojo/mouse dojo/keys dijit/focus ./kernel ./MouseEvents ./TouchEvents ./PointerEvents ./config ./sniff ./lang ./fx ./graphic ./tileUtils ./geometry/ScreenPoint ./geometry/Extent ./geometry/Rect ./geometry/mathUtils ./symbols/SimpleFillSymbol".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A){var B=g.connect,C=g.disconnect,H=w("chrome"),E=w("safari"),F=[l.NUMPAD_PLUS,61,187,l.NUMPAD_MINUS,173,189,l.UP_ARROW,l.NUMPAD_8,l.RIGHT_ARROW,l.NUMPAD_6,l.DOWN_ARROW,l.NUMPAD_2,l.LEFT_ARROW,l.NUMPAD_4,l.PAGE_UP,l.NUMPAD_9,l.PAGE_DOWN,l.NUMPAD_3,l.END,l.NUMPAD_1,l.HOME,l.NUMPAD_7];q=q(null,{declaredClass:"esri.MapNavigationManager",eventModel:"",constructor:function(b,e){this.map=b;n.mixin(this,e);e=b.__container;w("esri-pointer")?(this.pointerEvents=
new d(e,{map:b}),this.eventModel="pointer"):w("esri-touch")?(w("ios")||(this.mouseEvents=new c(e,{map:b})),this.touchEvents=new a(e,{map:b,mouseEvents:this.mouseEvents}),this.eventModel="touch"):(this.mouseEvents=new c(e,{map:b}),this.eventModel="mouse");this._zoomRect=new u(null,new A(m.defaults.map.zoomSymbol));this._keyDx=this._keyDy=0;this._adjustPinch=n.hitch(this,this._adjustPinch);this._adjustPinchEnd=n.hitch(this,this._adjustPinchEnd)},_panInit:function(a){var b=this.mouseEvents;p.isLeft(a)&&
this.map.isPan&&!a.shiftKey&&(this._dragOrigin=new y(0,0),n.mixin(this._dragOrigin,a.screenPoint),C(this._panStartHandle),C(this._panHandle),C(this._panEndHandle),this._panStartHandle=B(b,"onMouseDragStart",this,this._panStart),this._panHandle=B(b,"onMouseDrag",this,this._pan),this._panEndHandle=B(b,"onMouseUp",this,this._panEnd),H||E)&&(a.preventDefault(),f.curNode&&f.curNode.blur())},_panStart:function(a){this.map.setCursor("move");this.map.__panStart(a.screenPoint.x,a.screenPoint.y)},_pan:function(a){this.map.__pan(a.screenPoint.x-
this._dragOrigin.x,a.screenPoint.y-this._dragOrigin.y)},_panEnd:function(a){C(this._panStartHandle);C(this._panHandle);C(this._panEndHandle);this._panStartHandle=this._panHandle=this._panEndHandle=null;var b=this.map;b.__panning&&(b.__panEnd(a.screenPoint.x-this._dragOrigin.x,a.screenPoint.y-this._dragOrigin.y),b.resetMapCursor())},_zoomInit:function(a){var b=this.map,c=this.pointerEvents||this.mouseEvents;(p.isLeft(a)||a.pointerType)&&b.isRubberBandZoom&&a.shiftKey&&(b.setCursor("crosshair"),this._dragOrigin=
n.mixin({},a.screenPoint),this._zoomDir=a.ctrlKey||a.metaKey?-1:1,this.pointerEvents?(this._zoomHandle=B(c,"onSwipeMove",this,this._zoom),this._zoomEndHandle=B(c,"onSwipeEnd",this,this._zoomEnd)):(this._zoomHandle=B(c,"onMouseDrag",this,this._zoom),this._zoomEndHandle=B(c,"onMouseUp",this,this._zoomEnd)),H&&a.preventDefault())},_zoom:function(a){var b=this.map,c=this._normalizeRect(a).offset(b.__visibleRect.x,b.__visibleRect.y);a=b.graphics;var d=this._zoomRect;d.geometry||b.setCursor("crosshair");
d.geometry&&a.remove(d,!0);var e=b.toMap(new y(c.x,c.y)),c=b.toMap(new y(c.x+c.width,c.y+c.height)),c=new z(e.x,e.y,c.x-e.x,e.y-c.y,b.spatialReference);c._originOnly=!0;d.setGeometry(c);a.add(d,!0)},_zoomEnd:function(a){var b=this._zoomRect,c=this.map,d=c.extent,e=c.spatialReference;C(this._zoomHandle);C(this._zoomEndHandle);this._zoomHandle=this._zoomEndHandle=null;if(c._canZoom(this._zoomDir)&&b.getDojoShape()){c.graphics.remove(b);b.geometry=null;a=this._normalizeRect(a);a.x+=c.__visibleRect.x;
a.y+=c.__visibleRect.y;if(-1===this._zoomDir){var f=d.getWidth();a=(f*c.width/a.width-f)/2;e=new v(d.xmin-a,d.ymin-a,d.xmax+a,d.ymax+a,e)}else d=c.toMap({x:a.x,y:a.y+a.height}),a=c.toMap({x:a.x+a.width,y:a.y}),e=new v(d.x,d.y,a.x,a.y,e);c._extentUtil(null,null,e)}b.getDojoShape()&&c.graphics.remove(b,!0);this._zoomDir=0;c.resetMapCursor()},_wheelZoom:function(a,b){var c=this.map;if(!b){if(c.smartNavigation&&!a.shiftKey&&!c._isPanningOrZooming()){c.disableScrollWheelZoom();this._setScrollWheelPan(!0);
this._wheelPan(a);return}b=a.timeStamp;if(!t.isDefined(b)||0>=b)b=(new Date).getTime();if(100>(this._mwts?b-this._mwts:b))return;this._mwts=b}c._canZoom(a.value)&&c._extentUtil({numLevels:a.value,mapAnchor:a.mapPoint,screenAnchor:a.screenPoint})},_wheelPan:function(a){var b=this.map;if(a.shiftKey&&!b._isPanningOrZooming())this._setScrollWheelPan(!1),b.enableScrollWheelZoom(),this._wheelZoom(a);else{var c=0,d=0;w("ff")?a.axis===a.HORIZONTAL_AXIS?c=-a.detail:d=-a.detail:(c=a.wheelDeltaX,d=a.wheelDeltaY);
b.translate(c,d)}},_setScrollWheelPan:function(a){this.map.isScrollWheelPan=a;this.mouseEvents.enableMouseWheel(a);C(this._mwMacHandle);this._mwMacHandle=null;a&&(this._mwMacHandle=B(this.mouseEvents,"onMouseWheel",this,this._wheelPan))},_recenter:function(a){a.shiftKey&&!this.map._isPanningOrZooming()&&this.map.centerAt(a.mapPoint)},_recenterZoom:function(a){a.shiftKey&&!this.map._isPanningOrZooming()&&(a.value=a.ctrlKey||a.metaKey?-1:1,this._wheelZoom(a,!0))},_dblClickZoom:function(a){this.map._isPanningOrZooming()||
(a.value=1,this._wheelZoom(a,!0))},_twoFingerTap:function(a){this.map._isPanningOrZooming()||(a.value=-1,this._wheelZoom(a,!0))},_keyDown:function(a){var c=a.keyCode,d=this.map;if(-1!==b.indexOf(F,c)){if(c===l.NUMPAD_PLUS||61===c||187===c)d._extentUtil({numLevels:1});else if(c===l.NUMPAD_MINUS||173===c||189===c)d._extentUtil({numLevels:-1});else{d.__panning||d.__panStart(0,0);switch(c){case l.UP_ARROW:case l.NUMPAD_8:this._keyDy+=10;break;case l.RIGHT_ARROW:case l.NUMPAD_6:this._keyDx-=10;break;case l.DOWN_ARROW:case l.NUMPAD_2:this._keyDy-=
10;break;case l.LEFT_ARROW:case l.NUMPAD_4:this._keyDx+=10;break;case l.PAGE_UP:case l.NUMPAD_9:this._keyDx-=10;this._keyDy+=10;break;case l.PAGE_DOWN:case l.NUMPAD_3:this._keyDx-=10;this._keyDy-=10;break;case l.END:case l.NUMPAD_1:this._keyDx+=10;this._keyDy-=10;break;case l.HOME:case l.NUMPAD_7:this._keyDx+=10;this._keyDy+=10;break;default:return}d.__pan(this._keyDx,this._keyDy)}h.stop(a)}},_keyEnd:function(a){var b=this.map;b.__panning&&a.keyCode!==l.SHIFT&&(b.__panEnd(this._keyDx,this._keyDy),
this._keyDx=this._keyDy=0)},_swipeInit:function(a){var b=this.map,b=b._zoomAnim||b._panAnim;if(a.shiftKey)return!1;b&&b._active&&(b.stop(),b._fire("onEnd",[b.node]));this._dragOrigin=new y(0,0);n.mixin(this._dragOrigin,a.screenPoint);C(this._swipeHandle);C(this._swipeEndHandle);this._swipeHandle=B(this.touchEvents||this.pointerEvents,"onSwipeMove",this,this._swipe);this._swipeEndHandle=B(this.touchEvents||this.pointerEvents,"onSwipeEnd",this,this._swipeEnd)},_swipe:function(a){var b=this.map;b.__panning?
(this._panX=a.screenPoint.x,this._panY=a.screenPoint.y,b.__pan(a.screenPoint.x-this._dragOrigin.x,a.screenPoint.y-this._dragOrigin.y)):(b.setCursor("move"),b.__panStart(a.screenPoint.x,a.screenPoint.y))},_swipeEnd:function(a){C(this._swipeHandle);C(this._swipeEndHandle);this._swipeHandle=this._swipeEndHandle=null;var b=this.map;b.__panning&&(b.resetMapCursor(),b.__panEnd(a.screenPoint.x-this._dragOrigin.x,a.screenPoint.y-this._dragOrigin.y))},_pinchInit:function(a){var b=this.map,c=b._zoomAnim||b._panAnim;
c&&c._active?(c.stop(),c._fire("onEnd",[c.node])):b.__panning&&(a.screenPoint=new y(this._panX,this._panY),a.mapPoint=b.toMap(a.screenPoint),this._swipeEnd(a));C(this._pinchHandle);C(this._pinchEndHandle);this._pinchHandle=B(this.touchEvents||this.pointerEvents,"onPinchMove",this,this._pinch);this._pinchEndHandle=B(this.touchEvents||this.pointerEvents,"onPinchEnd",this,this._pinchEnd)},_pinch:function(a){var b=this.map;if(a.screenPoints){this.currLength=x.getLength(a.screenPoints[0],a.screenPoints[1]);
var c;b.__zooming?(c=this.currLength/this._length,this._zoomStartExtent=this.__scaleExtent(b.extent,c,this._dragOrigin),b.__zoom(this._zoomStartExtent,c,this._dragOrigin)):(this._dragOrigin=new y((a.screenPoints[0].x+a.screenPoints[1].x)/2,(a.screenPoints[0].y+a.screenPoints[1].y)/2),this._length=this.currLength,b.__zoomStart(b.extent,this._dragOrigin));this._pinchScale=c;b._fireOnScale(this.currLength/this._length,this._dragOrigin,!0)}},_pinchEnd:function(a){a=this.map;C(this._pinchHandle);C(this._pinchEndHandle);
this._pinchHandle=this._pinchEndHandle=null;this._pinchScale=0;if(a.__zooming&&null===a._zoomAnim){var b=this.currLength/this._length,c=a.extent.getWidth();this._zoomAnimAnchor=a.toMap(this._dragOrigin);this._zoomStartExtent=this.__scaleExtent(a.extent,1/b,this._zoomAnimAnchor);if(a.__tileInfo){var d=r.getCandidateTileInfo(a,a.__tileInfo,this._zoomStartExtent),e=a.__getExtentForLevel(d.lod.level,this._zoomAnimAnchor),f=a.getMinZoom(),g=a.getMaxZoom(),h=e.extent,e=e.lod,l=c/h.getWidth(),p=d.lod.level;
1>b?l>b&&p--:l<b&&p++;p<f?p=f:p>g&&(p=g);p!==d.lod.level&&(e=a.__getExtentForLevel(p,this._zoomAnimAnchor),h=e.extent,e=e.lod);this._zoomEndExtent=h;this._zoomEndLod=e;a._zoomAnim=k.animateRange({range:{start:c/this._zoomStartExtent.getWidth(),end:l},duration:m.defaults.map.zoomDuration,rate:m.defaults.map.zoomRate,onAnimate:this._adjustPinch,onEnd:this._adjustPinchEnd});a._zoomAnim.play();a._fireOnScale(a.extent.getWidth()/this._zoomEndExtent.getWidth(),this._dragOrigin)}else this._zoomEndExtent=
this._zoomStartExtent,a._fireOnScale(a.extent.getWidth()/this._zoomEndExtent.getWidth(),this._dragOrigin),this._adjustPinchEnd()}},_adjustPinch:function(a){var b=this.__scaleExtent(this.map.extent,a,this._zoomAnimAnchor);this.map.__zoom(b,a,this._dragOrigin)},_adjustPinchEnd:function(){var a=this.map,b=a.extent.getWidth()/this._zoomEndExtent.getWidth(),c=this.__scaleExtent(a.extent,1/b,this._zoomAnimAnchor),d=this._dragOrigin,e=this._zoomEndLod;this._zoomStartExtent=this._zoomEndExtent=this._zoomEndLod=
this._dragOrigin=a._zoomAnim=this._zoomAnimAnchor=null;a.__zoomEnd(c,b,d,e,!0)},__scaleExtent:function(a,b,c){c=c||a.getCenter();b=a.expand(b);var d=a.xmin-(b.getWidth()-a.getWidth())*(c.x-a.xmin)/a.getWidth();c=a.ymax-(b.getHeight()-a.getHeight())*(c.y-a.ymax)/a.getHeight();return new v(d,c-b.getHeight(),d+b.getWidth(),c,a.spatialReference)},_normalizeRect:function(a){a=a.screenPoint;var b=this._dragOrigin.x,c=this._dragOrigin.y;a=new z((a.x<b?a.x:b)-this.map.__visibleRect.x,(a.y<c?a.y:c)-this.map.__visibleRect.y,
Math.abs(a.x-b),Math.abs(a.y-c));delete a.spatialReference;0===a.width&&(a.width=1);0===a.height&&(a.height=1);return a},setImmediateClick:function(a){switch(this.eventModel){case "mouse":this.mouseEvents.setImmediateClick(a);break;case "touch":this.touchEvents.setImmediateTap(a);this.mouseEvents&&this.mouseEvents.setImmediateClick(a);break;case "pointer":this.pointerEvents.setImmediateTap(a)}},enablePan:function(){this.disablePan();switch(this.eventModel){case "mouse":this._panInitHandle=B(this.mouseEvents,
"onMouseDown",this,this._panInit);break;case "touch":this._panInitHandle=B(this.mouseEvents,"onMouseDown",this,this._panInit);this._swipeInitHandle=B(this.touchEvents,"onSwipeStart",this,this._swipeInit);break;case "pointer":this._swipeInitHandle=B(this.pointerEvents,"onSwipeStart",this,this._swipeInit)}},disablePan:function(){C(this._panInitHandle);this._panInitHandle=null;C(this._swipeInitHandle);this._swipeInitHandle=null},enableRubberBandZoom:function(){this.disableRubberBandZoom();this._zoomInitHandle=
this.pointerEvents?B(this.pointerEvents,"onSwipeStart",this,this._zoomInit):B(this.mouseEvents,"onMouseDown",this,this._zoomInit)},disableRubberBandZoom:function(){C(this._zoomInitHandle);this._zoomInitHandle=null},enablePinchZoom:function(){this.disablePinchZoom();if("touch"===this.eventModel||"pointer"===this.eventModel)this._pinchInitHandle=B(this.touchEvents||this.pointerEvents,"onPinchStart",this,this._pinchInit)},disablePinchZoom:function(){C(this._pinchInitHandle);this._pinchInitHandle=null},
enableScrollWheelZoom:function(){this.disableScrollWheelZoom();this._wheelHandle=B(this.mouseEvents||this.pointerEvents,"onMouseWheel",this,this._wheelZoom)},disableScrollWheelZoom:function(){C(this._wheelHandle);this._wheelHandle=null},enableScrollWheelPan:function(){var a=this.map;a&&a.loaded&&a.smartNavigation&&(this.disableScrollWheelPan(),this._setScrollWheelPan(!0))},disableScrollWheelPan:function(){var a=this.map;a&&a.loaded&&a.smartNavigation&&this._setScrollWheelPan(!1)},enableDoubleClickZoom:function(){this.disableDoubleClickZoom();
switch(this.eventModel){case "mouse":this._dblClickHandle=B(this.mouseEvents,"onDblClick",this,this._dblClickZoom);break;case "touch":this._dblClickHandle=B(this.mouseEvents,"onDblClick",this,this._dblClickZoom);this._dblTapHandle=B(this.touchEvents,"onDoubleTap",this,this._dblClickZoom);this._zoomOutHandle=B(this.touchEvents,"onTwoFingerTap",this,this._twoFingerTap);break;case "pointer":this._dblTapHandle=B(this.pointerEvents,"onDoubleTap",this,this._dblClickZoom),this._zoomOutHandle=B(this.pointerEvents,
"onTwoFingerTap",this,this._twoFingerTap)}},disableDoubleClickZoom:function(){C(this._dblClickHandle);C(this._zoomOutHandle);this._dblTapHandle&&C(this._dblTapHandle);this._dblClickHandle=this._zoomOutHandle=this._dblTapHandle=null},enableShiftDoubleClickZoom:function(){this.disableShiftDoubleClickZoom();this._sDblClickHandle=B(this.pointerEvents||this.mouseEvents,"onDblClick",this,this._recenterZoom)},disableShiftDoubleClickZoom:function(){C(this._sDblClickHandle);this._sDblClickHandle=null},enableClickRecenter:function(){this.disableClickRecenter();
this._recenterHandle=B(this.pointerEvents||this.mouseEvents,"onClick",this,this._recenter)},disableClickRecenter:function(){C(this._recenterHandle);this._recenterHandle=null},enableKeyboardNavigation:function(){this.disableKeyboardNavigation();this._keyHandle=B(this.pointerEvents||this.mouseEvents,"onKeyDown",this,this._keyDown);this._keyEndHandle=B(this.pointerEvents||this.mouseEvents,"onKeyUp",this,this._keyEnd)},disableKeyboardNavigation:function(){C(this._keyHandle);C(this._keyEndHandle);this._keyHandle=
this._keyEndHandle=null},enableScrollWheel:function(){var a=this.map;a&&(a.smartNavigation?this.enableScrollWheelPan():a.enableScrollWheelZoom())},disableScrollWheel:function(){var a=this.map;a&&(a.disableScrollWheelZoom(),a.smartNavigation&&this.disableScrollWheelPan())},enableNavigation:function(){var a=this.map;a&&a.loaded&&(a._evalNavigationFeature("DoubleClickZoom"),a._evalNavigationFeature("ClickRecenter"),a._evalNavigationFeature("Pan"),a._evalNavigationFeature("RubberBandZoom"),a._evalNavigationFeature("PinchZoom"),
a._evalNavigationFeature("KeyboardNavigation"),a._evalNavigationFeature("ScrollWheel"))},disableNavigation:function(){var a=this.map;a&&a.loaded&&(a._evalNavigationFeature("DoubleClickZoom"),a._evalNavigationFeature("ClickRecenter"),a._evalNavigationFeature("Pan"),a._evalNavigationFeature("RubberBandZoom"),a._evalNavigationFeature("PinchZoom"),a._evalNavigationFeature("KeyboardNavigation"),a._evalNavigationFeature("ScrollWheel"))},destroy:function(){this.touchEvents&&this.touchEvents.destroy();this.mouseEvents&&
this.mouseEvents.destroy();this.pointerEvents&&this.pointerEvents.destroy();var a,b=[this._panInitHandle,this._panStartHandle,this._panHandle,this._panEndHandle,this._zoomInitHandle,this._zoomHandle,this._zoomEndHandle,this._wheelHandle,this._mwMacHandle,this._dblClickHandle,this._zoomOutHandle,this._recenterHandle,this._sDblClickHandle,this._dblTapHandle,this._keyHandle,this._keyEndHandle,this._swipeInitHandle,this._swipeHandle,this._swipeEndHandle,this._pinchInitHandle,this._pinchHandle,this._pinchEndHandle];
for(a=0;a<b.length;a++)C(b[a]);this.map=this.touchEvents=this.mouseEvents=this.eventModel=this.pointerEvents=this._zoomRect=this._dragOrigin=this._panInitHandle=this._panStartHandle=this._panHandle=this._panEndHandle=this._zoomInitHandle=this._zoomHandle=this._zoomEndHandle=this._wheelHandle=this._mwMacHandle=this._dblClickHandle=this._zoomOutHandle=this._recenterHandle=this._sDblClickHandle=this._dblTapHandle=this._keyHandle=this._keyEndHandle=this._swipeInitHandle=this._swipeHandle=this._swipeEndHandle=
this._pinchInitHandle=this._pinchHandle=this._pinchEndHandle=null}});w("extend-esri")&&(e.MapNavigationManager=q);return q})},"esri/MouseEvents":function(){define("dojo/_base/declare dojo/_base/html dojo/_base/lang dojo/_base/sniff dojo/_base/connect dojo/_base/event ./kernel ./Evented ./geometry/Point ./geometry/ScreenPoint".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a=h.connect,d=h.disconnect;q=q([f],{declaredClass:"esri.MouseEvents",doubleClickDuration:300,minWheelValue:1,maxWheelValue:1,mozWheelDivisor:-1!==
g("mac")?1:3,wheelDivisor:2>g("chrome")?360:120,preventPageScroll:!0,map:null,constructor:function(c,d){this.node=c;b.mixin(this,d);d=function(a){p.stop(a);return!1};g("mozilla")&&n.style(c,"MozUserSelect","none");this._handles=[a(c,"onselectstart",d),a(c,"ondragstart",d),a(c,"onmouseenter",this,this._onMouseEnterHandler),a(c,"onmouseleave",this,this._onMouseLeaveHandler),a(c,"onmousedown",this,this._onMouseDownHandler),a(c,"onclick",this,this._onClickHandler),a(c,"ondblclick",this,this._onDblClickHandler)];
this._onMouseMoveHandler_connect=a(c,"onmousemove",this,this._onMouseMoveHandler);this._onMouseUpHandler_connect=a(c,"onmouseup",this,this._onMouseUpHandler);this._fireClickEvent=b.hitch(this,this._fireClickEvent);this._initialDuration=this.doubleClickDuration;this.preventPageScroll=(c=this.map)?c.isScrollWheelZoom||c.isScrollWheelPan:this.preventPageScroll;this.enableMouseWheel(!1)},_fire:function(a,b){if(!this._preventClick||"onClick"!==a&&"onDblClick"!==a){if(this[a])this[a](b);if(this.map&&this.map[a])this.map[a](b)}},
_processEvent:function(a){a=p.fix(a,a.target);var b=this.map,d=b&&b.position;d&&("DOMMouseScroll"===a.type&&3>g("ff")?a.screenPoint=new c(window.scrollX+a.screenX-d.x,window.scrollY+a.screenY-d.y):a.screenPoint=new c(a.pageX-d.x,a.pageY-d.y),a.mapPoint=b.extent?b.toMap(a.screenPoint):new e);a.numPoints=0;return a},_onMouseEnterHandler:function(b){d(this._onKeyDown_connect);d(this._onKeyUp_connect);this._onKeyDown_connect=a(document,"onkeydown",this,this._onKeyDownHandler);this._onKeyUp_connect=a(document,
"onkeyup",this,this._onKeyUpHandler);this._fire("onMouseOver",this._processEvent(b))},_onMouseLeaveHandler:function(a){d(this._onKeyDown_connect);d(this._onKeyUp_connect);this._onKeyDown_connect=this._onKeyUp_connect=null;this._fire("onMouseOut",this._processEvent(a))},_onMouseMoveHandler:function(a){this._dragEnd?this._dragEnd=!1:this._fire("onMouseMove",this._processEvent(a))},_onMouseDownHandler:function(b){d(this._onMouseMoveHandler_connect);this._onMouseMoveHandler_connect=null;this.node.setCapture&&
this.node.setCapture(!1);d(this._onMouseDragHandler_connect);this._onMouseDragHandler_connect=a(document,"onmousemove",this,this._onMouseDragHandler);this._startX=b.pageX;this._startY=b.pageY;this._fire("onMouseDown",this._processEvent(b))},_onMouseUpHandler:function(b){var c=this.node;c.releaseCapture&&c.releaseCapture();d(this._onMouseDragHandler_connect);this._onMouseDragHandler_connect=null;d(this._onMouseMoveHandler_connect);this._onMouseMoveHandler_connect=a(c,"onmousemove",this,this._onMouseMoveHandler);
this._fire("onMouseUp",this._processEvent(b))},_onMouseDragHandler:function(b){d(this._onMouseDragHandler_connect);this._onMouseDragHandler_connect=a(document,"onmousemove",this,this._onMouseDraggingHandler);d(this._onMouseUpHandler_connect);this._onMouseUpHandler_connect=a(document,"onmouseup",this,this._onDragMouseUpHandler);this._docLeaveConnect=a(document,"onmouseout",this,this._onDocMouseOut);this._fire("onMouseDragStart",this._processEvent(b))},_onMouseDraggingHandler:function(a){p.stop(a);
this._fire("onMouseDrag",this._processEvent(a))},_onDragMouseUpHandler:function(b){var c=this.node;c.releaseCapture&&c.releaseCapture();this._dragEnd=!0;d(this._docLeaveConnect);d(this._onMouseDragHandler_connect);d(this._onMouseUpHandler_connect);this._docLeaveConnect=this._onMouseDragHandler_connect=null;this._onMouseMoveHandler_connect=a(c,"onmousemove",this,this._onMouseMoveHandler);this._onMouseUpHandler_connect=a(c,"onmouseup",this,this._onMouseUpHandler);b=this._processEvent(b);this._fire("onMouseDragEnd",
b);this._fire("onMouseUp",b)},_onDocMouseOut:function(a){var b=9>g("ie")?a.toElement:a.relatedTarget,c=b&&b.nodeName.toLowerCase();(!b||(g("chrome")||g("safari"))&&"html"===c)&&this._onDragMouseUpHandler(a)},_onClickHandler:function(a){a=this._processEvent(a);if(a.pageX===this._startX&&a.pageY===this._startY){clearTimeout(this._clickTimer);var b={},c="movementX"in a,d;for(d in a)if(!c||"webkitMovementX"!==d&&"webkitMovementY"!==d)b[d]=a[d];this._clickEvent=b;this._clickTimer=setTimeout(this._fireClickEvent,
this.doubleClickDuration)}},_fireClickEvent:function(){clearTimeout(this._clickTimer);9>g("ie")&&(this._clickEvent.graphic=l._ieGraphic,delete l._ieGraphic);this._fire("onClick",this._clickEvent)},_onDblClickHandler:function(a){clearTimeout(this._clickTimer);this._fire("onDblClick",this._processEvent(a))},_onMouseWheelHandler:function(a){var b=this.map;(b?b.isScrollWheelZoom||b.isScrollWheelPan:this.preventPageScroll)&&p.stop(a);var b=g("ff")||g("mozilla")?-a.detail/this.mozWheelDivisor:a.wheelDelta/
this.wheelDivisor,c=Math.abs(b),c=c<=this.minWheelValue?this.minWheelValue:this.maxWheelValue;a.value=0>b?-c:c;this._fire("onMouseWheel",this._processEvent(a))},_onKeyDownHandler:function(a){this._fire("onKeyDown",a)},_onKeyUpHandler:function(a){this._fire("onKeyUp",a)},enableMouseWheel:function(b){d(this._scrollHandle);this._scrollHandle=a(this.node,g("ff")||g("mozilla")?b?"MozMousePixelScroll":"DOMMouseScroll":"onmousewheel",this,this._onMouseWheelHandler)},setImmediateClick:function(a){this.doubleClickDuration=
a?0:this._initialDuration},preventClickEvents:function(a){this._preventClick=a},destroy:function(){var a=this._handles.concat([this._onMouseMoveHandler_connect,this._onMouseUpHandler_connect,this._onMouseDragHandler_connect,this._scrollHandle,this._onKeyDown_connect,this._onKeyUp_connect,this._docLeaveConnect]),b;for(b=0;b<a.length;b++)d(a[b]);clearTimeout(this._clickTimer);this.node=this.map=this._handles=this._clickEvent=this._onMouseMoveHandler_connect=this._onMouseUpHandler_connect=this._onMouseDragHandler_connect=
this._scrollHandle=this._onKeyDown_connect=this._onKeyUp_connect=this._docLeaveConnect=null}});g("extend-esri")&&(l.MouseEvents=q);return q})},"esri/TouchEvents":function(){define("dojo/_base/declare dojo/_base/html dojo/_base/lang dojo/_base/sniff dojo/dom ./kernel ./Evented ./geometry/Point ./geometry/ScreenPoint".split(" "),function(q,n,b,g,h,p,l,f,e){q=q([l],{declaredClass:"esri.TouchEvents",tapRadius:8,doubleTapRadius:10,tapStartTolerance:50,doubleTapDuration:300,map:null,constructor:function(c,
a){this.node=c;b.mixin(this,a);n.setSelectable(c,!1);this._touchStart=b.hitch(this,this._touchStart);this._touchMove=b.hitch(this,this._touchMove);this._touchEnd=b.hitch(this,this._touchEnd);this._touchCancel=b.hitch(this,this._touchCancel);this._fireClickEvent=b.hitch(this,this._fireClickEvent);c.addEventListener("touchstart",this._touchStart,!1);c.addEventListener("touchmove",this._touchMove,!1);c.addEventListener("touchend",this._touchEnd,!1);c.addEventListener("touchcancel",this._touchCancel,
!1);this.map&&g("ios")&&(this._mouseOver=b.hitch(this,this._mouseOver),this._mouseOut=b.hitch(this,this._mouseOut),this._mouseDown=b.hitch(this,this._mouseDown),this._mouseUp=b.hitch(this,this._mouseUp),this._mouseClick=b.hitch(this,this._mouseClick),c.addEventListener("mouseover",this._mouseOver,!1),c.addEventListener("mouseout",this._mouseOut,!1),c.addEventListener("mousedown",this._mouseDown,!1),c.addEventListener("mouseup",this._mouseUp,!1),c.addEventListener("click",this._mouseClick,!1));this._numTouches=
0;this._nodeTouches=[];this._touches={};this._touchIds=[];this._taps=[];this._immediate=!1},_touchStart:function(b){var a=this._touches,c,e=b.changedTouches.length,f,h,k,l,r=(new Date).getTime();this._touchStartTS=r;if(!(g("android")&&g("safari")&&1===b.targetTouches.length&&b.touches.length===b.targetTouches.length&&b.targetTouches.length===b.changedTouches.length&&0===b.changedTouches[0].identifier&&a[b.changedTouches[0].identifier])){this._addTouch(b);for(c=0;c<e;c++)f=b.changedTouches[c],h=a[f.identifier]=
{},h.startX=f.pageX,h.startY=f.pageY,h.startTS=r,-1===this._touchIds.indexOf(f.identifier)&&this._touchIds.push(f.identifier);this._swipeActive&&(k=this._nodeTouches[0]);this._pinchActive&&(l=this._nodeTouches[1]);1===this._numTouches?this._swipeActive?(this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(b,k))):this._pinchActive&&(this._pinchActive=!1,this._fire("onPinchEnd",this._processTouchEvent(b,[k,l]))):2===this._numTouches?this._swipeActive&&(k&&(h=a[this._touchIds[0]],h.startX=
k.pageX,h.startY=k.pageY,h.moved=!1),this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(b,k))):this._swipeActive?(this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(b,k))):this._pinchActive&&(this._pinchActive=!1,this._fire("onPinchEnd",this._processTouchEvent(b,[k,l])))}},_touchMove:function(b){b.preventDefault();this._updateTouch(b);var a=this._touches,c,e=b.changedTouches.length,f,h,k,l;if(!(g("android")&&g("safari")&&1===b.targetTouches.length&&b.touches.length===
b.targetTouches.length&&b.targetTouches.length===b.changedTouches.length&&0===b.changedTouches[0].identifier&&a[b.changedTouches[0].identifier]&&1<this._touchIds.length)){for(c=0;c<e;c++)if(f=b.changedTouches[c],h=a[f.identifier])k=Math.abs(f.pageX-h.startX),f=Math.abs(f.pageY-h.startY),!h.moved&&(k>=this.tapRadius||f>=this.tapRadius)&&(h.moved=h.absMoved=!0),l=l?l:h.moved;1===this._numTouches?(a=b.changedTouches[0],this._swipeActive?this._fire("onSwipeMove",this._processTouchEvent(b,a)):l&&(this._swipeActive=
!0,this._fire("onSwipeStart",this._processTouchEvent(b,a)))):2===this._numTouches&&(c=this._nodeTouches[0],e=this._nodeTouches[1],this._pinchActive?this._fire("onPinchMove",this._processTouchEvent(b,[c,e])):l&&(l=a[c.identifier],h=a[e.identifier],a=Math.abs(l.startX-h.startX),l=Math.abs(l.startY-h.startY),h=Math.abs(c.pageX-e.pageX),k=Math.abs(c.pageY-e.pageY),Math.abs(Math.sqrt(h*h+k*k)-Math.sqrt(a*a+l*l))>=2*this.tapRadius&&(this._pinchActive=!0,this._fire("onPinchStart",this._processTouchEvent(b,
[c,e])))))}},_touchEnd:function(b){this._removeTouch(b);var a=this._touches,c=b.changedTouches,e,f=c.length,g,k,h=(new Date).getTime(),r=this._touchIds;for(e=0;e<f;e++)if(k=a[c[e].identifier])k.absMoved&&(g=!0),k.pageX=c[e].pageX,k.pageY=c[e].pageY,k.endTS=h;if(0===this._numTouches)if(this._touches={},this._touchIds=[],this._swipeActive)this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(b,c[0]));else if(this._pinchActive)this._pinchActive=!1,this._fire("onPinchEnd",this._processTouchEvent(b,
c));else{if(!g){f=Infinity;g=-Infinity;var h=Infinity,l=-Infinity,p=this.tapStartTolerance,n=[],q=!0;for(e=0;e<r.length;e++)k=a[r[e]],n.push(k),k.startTS<f&&(f=k.startTS),k.startTS>g&&(g=k.startTS),k.endTS<h&&(h=k.endTS),k.endTS>l&&(l=k.endTS),delete a[r[e]];1===n.length&&c[0]&&(a=Math.abs(c[0].pageY-n[0].startY),Math.abs(c[0].pageX-n[0].startX)>=this.tapRadius||a>=this.tapRadius)&&(q=!1);q&&Math.abs(g-f)<=p&&Math.abs(l-h)<=p&&this._basicTap(b,n)}}else 1===this._numTouches&&this._pinchActive&&(e=
this._nodeTouches[0],k=a[e.identifier],k.startX=e.pageX,k.startY=e.pageY,this._pinchActive=k.moved=!1,this._fire("onPinchEnd",this._processTouchEvent(b,[c[0],e])))},_touchCancel:function(b){this._numTouches&&this._touchEnd(b)},_basicTap:function(b,a){var c=(new Date).getTime(),e=this;b=this._processTouchEvent(b,a);this._taps.push({touchInfos:a,ts:c,event:b});2<this._taps.length&&this._taps.shift();this._fire("onBasicTap",b);clearTimeout(this._tapTimer);this._immediate?this._analyzeTap(!0):this._tapTimer=
setTimeout(function(){var a=e;e=null;clearTimeout(a._tapTimer);a._analyzeTap()},2===this._taps.length?this.doubleTapDuration/2:this.doubleTapDuration)},_analyzeTap:function(b){var a=this._taps,c=a[0],e=a[1],f=c.touchInfos,g=e&&e.touchInfos;a.length&&(b||(this._taps=[]),c&&e?f.length===g.length?e.ts-c.ts<=this.doubleTapDuration?(1===f.length?(b=Math.abs(f[0].startX-g[0].startX),f=Math.abs(f[0].startY-g[0].startY),f=b<=this.doubleTapRadius&&f<=this.doubleTapRadius):f=!0,f?this._processedDoubleTap(a):
this._processedTap(e)):this._processedTap(e):this._processedTap(e):this._processedTap(c||e))},_processedTap:function(b){var a=b.event;this._fire("onProcessedTap",a);1===b.touchInfos.length?this._fire("onTap",this._fixEvent(a)):2===b.touchInfos.length&&this._fire("onTwoFingerTap",a)},_processedDoubleTap:function(b){var a=1===b[1].touchInfos.length,c;a&&(c=[this._fixEvent(b[0].event),this._fixEvent(b[1].event)],c[1].relatedEvents=c);b=[b[0].event,b[1].event];b[1].relatedEvents=b;this._fire("onProcessedDoubleTap",
b[1]);a&&(this._fire("onDoubleTap",c[1]),this._fire("onDblClick",c[1]))},_addTouch:function(b){var a=b.changedTouches,c=this._nodeTouches,e,f,g;this._numTouches+=a.length;for(b=0;b<a.length;b++){f=c.length;g=!1;for(e=0;e<f&&!(g=c[e].identifier===a[b].identifier);e++);g?this._numTouches--:c.push(a[b])}for(b=c.length-1;0<=b;b--)h.isDescendant(c[b].target,document.body)||(c.splice(b,1),this._numTouches--);0>this._numTouches&&(this._numTouches=0)},_removeTouch:function(b){var a=[],c=[],e=b.changedTouches,
f=this._nodeTouches;this._numTouches-=e.length;0>this._numTouches&&(this._numTouches=0);for(b=0;b<e.length;b++)a.push(e[b].identifier);for(b=f.length-1;0<=b;b--)-1!==a.indexOf(f[b].identifier)&&c.push(f.splice(b,1)[0]);return c},_updateTouch:function(b){var a=[],c,e=b.changedTouches,f=this._nodeTouches;for(b=0;b<e.length;b++)a.push(e[b].identifier);for(b=0;b<f.length;b++)c=a.indexOf(f[b].identifier),-1!==c&&f.splice(b,1,e[c])},_mouseOver:function(b){this._fire("onMouseOver",this._processMouseEvent(b))},
_mouseOut:function(b){this._fire("onMouseOut",this._processMouseEvent(b))},_mouseDown:function(b){this._fire("onMouseDown",this._processMouseEvent(b))},_mouseUp:function(b){this._fire("onMouseUp",this._processMouseEvent(b))},_mouseClick:function(b){clearTimeout(this._clickTimer);300<(new Date).getTime()-this._touchStartTS?this._fire("onClick",this._processMouseEvent(b)):(this._clickEvent=b,this._clickTimer=setTimeout(this._fireClickEvent,this.doubleTapDuration))},_fireClickEvent:function(){clearTimeout(this._clickTimer);
this._fire("onClick",this._processMouseEvent(this._clickEvent))},_fire:function(b,a){"onDblClick"===b&&clearTimeout(this._clickTimer);if("onDblClick"===b&&this.mouseEvents){this.mouseEvents.preventClickEvents(!0);var c=this;setTimeout(function(){c.mouseEvents.preventClickEvents(!1)},350)}if(this[b])this[b](a);if(this.map&&this.map[b])this.map[b](a)},_fixEvent:function(b){var a={},c;for(c in b)a[c]=b[c];this.map&&(a.screenPoint=a.screenPoints[0],a.mapPoint=a.mapPoints[0]);return a},_processTouchEvent:function(c,
a){var d=this.map,g=d&&d.position,h=0;if(g&&a)if(b.isArray(a)){var l,k;c.screenPoints=[];c.mapPoints=[];for(l=0;l<a.length;l++)a[l]?(k=new e(a[l].pageX-g.x,a[l].pageY-g.y),c.screenPoints.push(k),c.mapPoints.push(d.extent?d.toMap(k):new f)):h++}else c.screenPoint=new e(a.pageX-g.x,a.pageY-g.y),c.mapPoint=d.extent?d.toMap(c.screenPoint):new f;c.numPoints=a?b.isArray(a)?a.length-h:1:0;return c},_processMouseEvent:function(b){var a=this.map,c=a&&a.position;c&&(b.screenPoint=new e(b.pageX-c.x,b.pageY-
c.y),b.mapPoint=a.extent?a.toMap(b.screenPoint):new f);return b},setImmediateTap:function(b){this._immediate=b},destroy:function(){var b=this.node;b.removeEventListener("touchstart",this._touchStart,!1);b.removeEventListener("touchmove",this._touchMove,!1);b.removeEventListener("touchend",this._touchEnd,!1);b.removeEventListener("touchcancel",this._touchCancel,!1);this.map&&(b.removeEventListener("mouseover",this._mouseOver,!1),b.removeEventListener("mouseout",this._mouseOut,!1),b.removeEventListener("mousedown",
this._mouseDown,!1),b.removeEventListener("mouseup",this._mouseUp,!1),b.removeEventListener("click",this._mouseClick,!1));n.setSelectable(b,!0);clearTimeout(this._tapTimer);clearTimeout(this._clickTimer);this.node=this.map=this._numTouches=this._nodeTouches=this._touches=this._touchIds=this._taps=null}});g("extend-esri")&&(p.TouchEvents=q);return q})},"esri/PointerEvents":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ./kernel ./Evented ./geometry/Point ./geometry/ScreenPoint".split(" "),
function(q,n,b,g,h,p,l,f){q=q([p],{declaredClass:"esri.PointerEvents",tapRadius:8,clickRadius:2,doubleTapRadius:10,tapStartTolerance:50,doubleTapDuration:300,minWheelValue:1,maxWheelValue:1,mozWheelDivisor:-1!==g("mac")?1:3,wheelDivisor:120,preventPageScroll:!0,_dragging:!1,constructor:function(b,c){this.node=b;n.mixin(this,c);void 0!==b.style.msTouchAction?b.style.msTouchAction="none":void 0!==b.style.touchAction&&(b.style.touchAction="none");c=navigator.msPointerEnabled;var a=function(a){a.preventDefault()};
b.addEventListener("selectstart",a,!1);b.addEventListener("dragstart",a,!1);this._pointerDown=n.hitch(this,this._pointerDown);this._pointerMove=n.hitch(this,this._pointerMove);this._pointerUp=n.hitch(this,this._pointerUp);this._pointerCancel=n.hitch(this,this._pointerCancel);b.addEventListener(c?"MSPointerDown":"pointerdown",this._pointerDown,!1);b.addEventListener(c?"MSPointerMove":"pointermove",this._pointerMove,!1);b.addEventListener(c?"MSPointerUp":"pointerup",this._pointerUp,!1);b.addEventListener(c?
"MSPointerCancel":"pointercancel",this._pointerCancel,!1);this.map&&(this._mouseOver=n.hitch(this,this._mouseOver),this._mouseOut=n.hitch(this,this._mouseOut),this._mouseLeave=n.hitch(this,this._mouseLeave),this._mouseDown=n.hitch(this,this._mouseDown),this._mouseUp=n.hitch(this,this._mouseUp),this._mouseClick=n.hitch(this,this._mouseClick),this._mouseWheel=n.hitch(this,this._mouseWheel),this._mouseMove=n.hitch(this,this._mouseMove),this._mouseEnter=n.hitch(this,this._mouseEnter),this._onKeyDown=
n.hitch(this,this._onKeyDown),this._onKeyUp=n.hitch(this,this._onKeyUp),b.addEventListener("mouseover",this._mouseOver,!1),b.addEventListener("mouseout",this._mouseOut,!1),b.addEventListener("mouseleave",this._mouseLeave,!1),b.addEventListener("mousedown",this._mouseDown,!1),b.addEventListener("mouseup",this._mouseUp,!1),b.addEventListener("click",this._mouseClick,!1),b.addEventListener("mousewheel",this._mouseWheel,!1),b.addEventListener("mousemove",this._mouseMove,!1),b.addEventListener("mouseenter",
this._mouseEnter,!1));this._numTouches=0;this._touches={};this._touchIds=[];this._taps=[];this._immediate=!1},_pointerDown:function(e){if(-1<b.indexOf(this._touchIds,e.pointerId))this._pointerUp(e);else{var c=this._touches,a=e.target,d=e.pointerId,f=this._touchIds,g,h=(new Date).getTime();g=c[d]={};g.pointerId=d;g.startX=g.pageX=e.pageX;g.startY=g.pageY=e.pageY;g.startTS=h;f.push(d);this._numTouches++;a.setPointerCapture?a.setPointerCapture(d):a.msSetPointerCapture&&a.msSetPointerCapture(d);a=c[f[0]];
c=c[f[1]];1!==this._numTouches&&(2===this._numTouches?this._swipeActive&&(a&&(a.startX=a.pageX,a.startY=a.pageY,a.moved=!1),this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(e,a))):this._swipeActive?(this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(e,a))):this._pinchActive&&(this._pinchActive=!1,this._fire("onPinchEnd",this._processTouchEvent(e,[a,c]))))}},_pointerMove:function(b){var c=this._touches,a=this._touchIds,d,e,f;if((d=c[b.pointerId])&&(d.pageX!==b.pageX||
d.pageY!==b.pageY))if(d.pageX=b.pageX,d.pageY=b.pageY,e=Math.abs(d.pageX-d.startX),f=Math.abs(d.pageY-d.startY),!d.moved&&(e>=this.tapRadius||f>=this.tapRadius)&&(d.moved=d.absMoved=!0),1===this._numTouches)this._swipeActive?this._fire("onSwipeMove",this._processTouchEvent(b,b)):d.moved&&(this._swipeActive=!0,this._fire("onSwipeStart",this._processTouchEvent(b,b)));else if(2===this._numTouches)if(d=c[a[0]],c=c[a[1]],this._pinchActive)this._fire("onPinchMove",this._processTouchEvent(b,[d,c]));else if(d.moved||
c.moved){a=Math.abs(d.startX-c.startX);e=Math.abs(d.startY-c.startY);f=Math.abs(d.pageX-c.pageX);var g=Math.abs(d.pageY-c.pageY);Math.abs(Math.sqrt(f*f+g*g)-Math.sqrt(a*a+e*e))>=2*this.tapRadius&&(this._pinchActive=!0,this._fire("onPinchStart",this._processTouchEvent(b,[d,c])))}},_pointerUp:function(e){var c=this._touches,a,d=this.node,f=e.target,g=e.pointerId,h=this._touchIds,k=h.slice(0),l=b.map(k,function(a){return c[a]}),r=(new Date).getTime();if(a=c[g])if(a.pageX=e.pageX,a.pageY=e.pageY,a.endTS=
r,this._numTouches--,f.releasePointerCapture?f.releasePointerCapture(g):f.msReleasePointerCapture&&f.msReleasePointerCapture(g),0===this._numTouches)if(this._touches={},this._touchIds=[],this._swipeActive)this._swipeActive=!1,this._fire("onSwipeEnd",this._processTouchEvent(e,e));else if(this._pinchActive)this._pinchActive=!1,this._fire("onPinchEnd",this._processTouchEvent(e,e));else{if(!a.absMoved){var f=Infinity,g=-Infinity,h=Infinity,r=-Infinity,p=this.tapStartTolerance,n;for(n=0;n<k.length;n++)a=
l[n],a.startTS<f&&(f=a.startTS),a.startTS>g&&(g=a.startTS),a.endTS<h&&(h=a.endTS),a.endTS>r&&(r=a.endTS);Math.abs(g-f)<=p&&Math.abs(r-h)<=p&&this._basicTap(e,l)}}else 1===this._numTouches&&this._pinchActive&&(h.splice(b.indexOf(h,e.pointerId),1),delete c[e.pointerId],a=c[h[0]],a.startX=a.pageX,a.startY=a.pageY,a.moved=!1,document.msElementsFromPoint&&(k=document.msElementsFromPoint(a.pageX,a.pageY),b.some(k,function(a){return a===d})||(this._touches={},this._touchIds=[],this._numTouches=0)),this._pinchActive=
!1,this._fire("onPinchEnd",this._processTouchEvent(e,[e,a])))},_pointerCancel:function(b){this._numTouches&&this._pointerUp(b)},_basicTap:function(b,c){var a=(new Date).getTime(),d=this,e=this._immediate;b=this._processTouchEvent(b,c);this._taps.push({touchInfos:c,ts:a,event:b});2<this._taps.length&&this._taps.shift();this._fire("onBasicTap",b);clearTimeout(this._tapTimer);b=2===this._taps.length?this.doubleTapDuration/2:this.doubleTapDuration;this._tapTimer=setTimeout(function(){var a=d;d=null;clearTimeout(a._tapTimer);
a._analyzeTap(e)},e?0:b)},_analyzeTap:function(b){var c=this._taps,a=c[0],d=c[1],e=a.touchInfos,f=d&&d.touchInfos;c.length&&(b||(this._taps=[]),a&&d?e.length===f.length?d.ts-a.ts<=this.doubleTapDuration?(1===e.length?(b=Math.abs(e[0].startX-f[0].startX),e=Math.abs(e[0].startY-f[0].startY),e=b<=this.doubleTapRadius&&e<=this.doubleTapRadius):e=!0,e?this._processedDoubleTap(c):this._processedTap(d)):this._processedTap(d):this._processedTap(d):this._processedTap(a||d))},_processedTap:function(b){var c=
b.event;this._fire("onProcessedTap",c);1===b.touchInfos.length?this._fire("onTap",this._fixEvent(c)):2===b.touchInfos.length&&this._fire("onTwoFingerTap",c)},_processedDoubleTap:function(b){var c=1===b[1].touchInfos.length,a;c&&(a=[this._fixEvent(b[0].event),this._fixEvent(b[1].event)],a[1].relatedEvents=a);b=[b[0].event,b[1].event];b[1].relatedEvents=b;this._fire("onProcessedDoubleTap",b[1]);c&&(this._fire("onDoubleTap",a[1]),this._fire("onDblClick",a[1]))},_mouseOver:function(b){this._fire("onMouseOver",
this._processMouseEvent(b))},_mouseMove:function(b){this._dragging?this._fire("onMouseDrag",this._processMouseEvent(b)):this._fire("onMouseMove",this._processMouseEvent(b))},_mouseOut:function(b){this._fire("onMouseOut",this._processMouseEvent(b))},_mouseLeave:function(b){document.removeEventListener("keydown",this._onKeyDown,!1);document.removeEventListener("keyup",this._onKeyUp,!1);this._fire("onMouseOut",this._processMouseEvent(b))},_mouseDown:function(b){this._downX=b.pageX;this._downY=b.pageY;
this._fire("onMouseDown",this._processMouseEvent(b));0===b.button&&(this._dragging=!0,this._fire("onMouseDragStart",this._processMouseEvent(b)))},_mouseUp:function(b){this._dragging&&(this._dragging=!1,this._fire("onMouseDragEnd",this._processMouseEvent(b)));this._fire("onMouseUp",this._processMouseEvent(b))},_mouseClick:function(b){Math.abs(b.pageX-this._downX)<=this.clickRadius&&Math.abs(b.pageY-this._downY)<=this.clickRadius&&this._fire("onClick",this._processMouseEvent(b))},_mouseWheel:function(b){var c=
this.map;(c?c.isScrollWheelZoom||c.isScrollWheelPan:this.preventPageScroll)&&b.preventDefault();var c=b.wheelDelta?b.wheelDelta/this.wheelDivisor:-b.detail/this.mozWheelDivisor,a=Math.abs(c),a=a<=this.minWheelValue?this.minWheelValue:this.maxWheelValue;b.value=0>c?-a:a;this._fire("onMouseWheel",this._processMouseEvent(b))},_mouseEnter:function(b){document.removeEventListener("keydown",this._onKeyDown,!1);document.removeEventListener("keyup",this._onKeyUp,!1);document.addEventListener("keydown",this._onKeyDown,
!1);document.addEventListener("keyup",this._onKeyUp,!1);this._fire("onMouseEnter",this._processMouseEvent(b))},_onKeyDown:function(b){this._fire("onKeyDown",b)},_onKeyUp:function(b){this._fire("onKeyUp",b)},_fire:function(b,c){if(this[b])this[b](c);if(this.map&&this.map[b])this.map[b](c)},_fixEvent:function(b){var c={},a;for(a in b)c[a]=b[a];c.preventDefault=function(){b.preventDefault()};c.stopPropagation=function(){b.stopPropagation()};this.map&&(c.screenPoint=c.screenPoints[0],c.mapPoint=c.mapPoints[0]);
return c},_processTouchEvent:function(b,c){var a=this.map,d=a&&a.position,e=0;if(d&&c)if(n.isArray(c)){var g,h;b.screenPoints=[];b.mapPoints=[];for(g=0;g<c.length;g++)c[g]?(h=new f(c[g].pageX-d.x,c[g].pageY-d.y),b.screenPoints.push(h),b.mapPoints.push(a.extent?a.toMap(h):new l)):e++}else b.screenPoint=new f(c.pageX-d.x,c.pageY-d.y),b.mapPoint=a.extent?a.toMap(b.screenPoint):new l;b.numPoints=c?n.isArray(c)?c.length-e:1:0;return b},_processMouseEvent:function(b){var c=this.map,a=c&&c.position;a&&(b.screenPoint=
new f(b.pageX-a.x,b.pageY-a.y),b.mapPoint=c.extent?c.toMap(b.screenPoint):new l);return b},setImmediateTap:function(b){this._immediate=b},destroy:function(){var b=this.node;b.removeEventListener("MSPointerDown",this._pointerDown,!1);b.removeEventListener("MSPointerMove",this._pointerMove,!1);b.removeEventListener("MSPointerUp",this._pointerUp,!1);b.removeEventListener("MSPointerCancel",this._pointerCancel,!1);this.map&&(b.removeEventListener("mouseover",this._mouseOver,!1),b.removeEventListener("mousemove",
this._mouseMove,!1),b.removeEventListener("mouseout",this._mouseOut,!1),b.removeEventListener("mouseleave",this._mouseLeave,!1),b.removeEventListener("mousedown",this._mouseDown,!1),b.removeEventListener("mouseup",this._mouseUp,!1),b.removeEventListener("click",this._mouseClick,!1),b.removeEventListener("mouseenter",this._mouseEnter,!1));clearTimeout(this._tapTimer);this.node=this.map=this._numTouches=this._touches=this._touchIds=this._taps=null}});g("extend-esri")&&(h.PointerEvents=q);return q})},
"esri/geometry":function(){define("./units ./SpatialReference ./geometry/Geometry ./geometry/Point ./geometry/ScreenPoint ./geometry/Multipoint ./geometry/Polyline ./geometry/Polygon ./geometry/Extent ./geometry/Rect ./geometry/geodesicUtils ./geometry/jsonUtils ./geometry/mathUtils ./geometry/normalizeUtils ./geometry/scaleUtils ./geometry/screenUtils ./geometry/webMercatorUtils".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u){return{units:q,SpatialReference:n,Geometry:b,Point:g,ScreenPoint:h,
Multipoint:p,Polyline:l,Polygon:f,Extent:e,Rect:c,geodesicUtils:a,jsonUtils:d,mathUtils:m,normalizeUtils:w,scaleUtils:t,screenUtils:k,webMercatorUtils:u}})},"esri/units":function(){define(["dojo/has","./kernel"],function(q,n){var b={CENTIMETERS:"esriCentimeters",DECIMAL_DEGREES:"esriDecimalDegrees",DEGREE_MINUTE_SECONDS:"esriDegreeMinuteSeconds",DECIMETERS:"esriDecimeters",FEET:"esriFeet",FEET_US:"esriFeetUS",INCHES:"esriInches",KILOMETERS:"esriKilometers",METERS:"esriMeters",MILES:"esriMiles",MILES_US:"esriMilesUS",
MILLIMETERS:"esriMillimeters",NAUTICAL_MILES:"esriNauticalMiles",POINTS:"esriPoints",UNKNOWN:"esriUnknownUnits",YARDS:"esriYards",YARDS_US:"esriYardsUS",ACRES:"esriAcres",ACRES_US:"esriAcresUS",ARES:"esriAres",SQUARE_KILOMETERS:"esriSquareKilometers",SQUARE_MILES:"esriSquareMiles",SQUARE_MILES_US:"esriSquareMilesUS",SQUARE_FEET:"esriSquareFeet",SQUARE_FEET_US:"esriSquareFeetUS",SQUARE_METERS:"esriSquareMeters",HECTARES:"esriHectares",SQUARE_YARDS:"esriSquareYards",SQUARE_YARDS_US:"esriSquareYardsUS",
SQUARE_INCHES:"esriSquareInches",SQUARE_MILLIMETERS:"esriSquareMillimeters",SQUARE_CENTIMETERS:"esriSquareCentimeters",SQUARE_DECIMETERS:"esriSquareDecimeters",SQUARE_NAUTICAL_MILES:"esriSquareNauticalMiles",METERS_PER_SECOND:"esriMetersPerSecond",KILOMETERS_PER_HOUR:"esriKilometersPerHour",KNOTS:"esriKnots",FEET_PER_SECOND:"esriFeetPerSecond",MILES_PER_HOUR:"esriMilesPerHour",RADIANS:"esriDURadians"};q("extend-esri")&&(n.Units=b);return b})},"esri/geometry/geodesicUtils":function(){define("dojo/_base/array dojo/_base/lang dojo/has ../kernel ../SpatialReference ./Point ./Polyline ./Polygon".split(" "),
function(q,n,b,g,h,p,l,f){function e(a){return!!(a&&a.wkid&&u[a.wkid])}function c(a){return e(a)?u[a.wkid]:u[4326]}function a(a){var b=a.spatialReference,d=c(b),e=d.a,d=d.eSq,f=Math.sqrt(d),g=Math.sin(a.y*k);return new p(e*a.x*k,0<d?e*(1-d)*(g/(1-d*g*g)-1/(2*f)*Math.log((1-f*g)/(1+f*g)))*.5:e*g,b)}function d(a,b,d,e,f){var g=c(f),m=g.a,h=g.b,g=g.f,r=Math.sin(d);d=Math.cos(d);var l=(1-g)*Math.tan(a);a=1/Math.sqrt(1+l*l);for(var n=l*a,t=Math.atan2(l,d),l=a*r,y=l*l,v=1-y,m=v*(m*m-h*h)/(h*h),q=1+m/16384*
(4096+m*(-768+m*(320-175*m))),u=m/1024*(256+m*(-128+m*(74-47*m))),m=e/(h*q),x=2*Math.PI,z,w,L,ba;1E-12<Math.abs(m-x);)L=Math.cos(2*t+m),z=Math.sin(m),w=Math.cos(m),ba=u*z*(L+u/4*(w*(-1+2*L*L)-u/6*L*(-3+4*z*z)*(-3+4*L*L))),x=m,m=e/(h*q)+ba;e=n*z-a*w*d;h=g/16*v*(4+g*(4-3*v));return new p((b+(Math.atan2(z*r,a*w-n*z*d)-(1-h)*g*l*(m+h*z*(L+h*w*(-1+2*L*L)))))/k,Math.atan2(n*w+a*z*d,(1-g)*Math.sqrt(y+e*e))/k,f)}function m(a,b,d,e,f){var k=c(f),g=k.a;f=k.b;var m=k.f,h=e-b,r=Math.atan((1-m)*Math.tan(a)),l=
Math.atan((1-m)*Math.tan(d)),p=Math.sin(r),r=Math.cos(r),n=Math.sin(l),l=Math.cos(l),t=h,y,q=1E3,v,u,x,z,w,P,V;do{x=Math.sin(t);z=Math.cos(t);u=Math.sqrt(l*x*l*x+(r*n-p*l*z)*(r*n-p*l*z));if(0===u)return 0;z=p*n+r*l*z;w=Math.atan2(u,z);P=r*l*x/u;v=1-P*P;x=z-2*p*n/v;isNaN(x)&&(x=0);V=m/16*v*(4+m*(4-3*v));y=t;t=h+(1-V)*m*P*(w+V*u*(x+V*z*(-1+2*x*x)))}while(1E-12<Math.abs(t-y)&&0<--q);if(0===q)return f=e-b,{azimuth:Math.atan2(Math.sin(f)*Math.cos(d),Math.cos(a)*Math.sin(d)-Math.sin(a)*Math.cos(d)*Math.cos(f)),
geodesicDistance:Math.acos(Math.sin(a)*Math.sin(d)+Math.cos(a)*Math.cos(d)*Math.cos(e-b))*k.radius};a=v*(g*g-f*f)/(f*f);b=a/1024*(256+a*(-128+a*(74-47*a)));return{azimuth:Math.atan2(l*Math.sin(t),r*n-p*l*Math.cos(t)),geodesicDistance:f*(1+a/16384*(4096+a*(-768+a*(320-175*a))))*(w-b*u*(x+b/4*(z*(-1+2*x*x)-b/6*x*(-3+4*u*u)*(-3+4*x*x)))),reverseAzimuth:Math.atan2(r*Math.sin(t),r*n*Math.cos(t)-p*l)}}function w(a,b){if(!(a instanceof l||a instanceof f))throw console.error("_geodesicDensify: the input geometry is neither polyline nor polygon"),
Error("_geodesicDensify: the input geometry is neither polyline nor polygon");var e=a.spatialReference,g=c(e).radius/1E4;b<g&&(b=g);var g=a instanceof l,h=[],r;q.forEach(g?a.paths:a.rings,function(a){h.push(r=[]);r.push([a[0][0],a[0][1]]);var c,f,g,l,p,n;c=a[0][0]*k;f=a[0][1]*k;for(p=0;p<a.length-1;p++)if(g=a[p+1][0]*k,l=a[p+1][1]*k,c!==g||f!==l){l=m(f,c,l,g,e);g=l.azimuth;l=l.geodesicDistance;var t=l/b;if(1<t){for(n=1;n<=t-1;n++){var q=d(f,c,g,n*b,e);r.push([q.x,q.y])}n=d(f,c,g,(l+Math.floor(t-1)*
b)/2,e);r.push([n.x,n.y])}f=d(f,c,g,l,e);r.push([f.x,f.y]);c=f.x*k;f=f.y*k}});return g?new l({paths:h,spatialReference:e}):new f({rings:h,spatialReference:e})}var t={esriMeters:1,esriKilometers:1E3,esriYards:.9144,esriFeet:.3048,esriMiles:1609.344,esriNauticalMiles:1852,esriInches:.0254,esriDecimeters:.1,esriCentimeters:.01,esriMillimeters:.001,esriSquareMeters:1,esriSquareKilometers:1E6,esriSquareYards:.83612736,esriSquareFeet:.09290304,esriSquareMiles:2589988.110336,esriAcres:4046.8564224,esriHectares:1E4,
esriAres:100,esriSquareInches:6.4516E-4,esriSquareMillimeters:1E-6,esriSquareCentimeters:1E-4,esriSquareDecimeters:.01},k=Math.PI/180,u={4326:{a:6378137,b:6356752.31424518,f:1/298.257223563,eSq:.006694379990197414,radius:6371008.771415059},104900:{a:2439700,b:2439700,f:0,eSq:0,radius:2439700},104901:{a:6051E3,b:6051E3,f:0,eSq:0,radius:6051E3},104902:{a:6051800,b:6051800,f:0,eSq:0,radius:6051800},104903:{a:1737400,b:1737400,f:0,eSq:0,radius:1737400},104904:{a:3393400,b:3375730,f:1/192.04301075,eSq:.01038722,
radius:3387510},104905:{a:3396190,b:3376200,f:1/169.89444722,eSq:.01173737,radius:3389526.6666666665},104906:{a:6200,b:6200,f:0,eSq:0,radius:6200},104907:{a:11100,b:11100,f:0,eSq:0,radius:11100},104912:{a:2409300,b:2409300,f:0,eSq:0,radius:2409300},104915:{a:1562090,b:1562090,f:0,eSq:0,radius:1562090},104916:{a:2632345,b:2632345,f:0,eSq:0,radius:2632345},104918:{a:1821460,b:1821460,f:0,eSq:0,radius:1821460},104929:{a:249400,b:249400,f:0,eSq:0,radius:249400},104943:{a:2575E3,b:2575E3,f:0,eSq:0,radius:2575E3},
104971:{a:3396190,b:3396190,f:0,eSq:0,radius:3396190},104972:{a:47E4,b:47E4,f:0,eSq:0,radius:47E4},104973:{a:255E3,b:255E3,f:0,eSq:0,radius:255E3},104974:{a:2439400,b:2439400,f:0,eSq:0,radius:2439400}};h={isSupported:e,getSpheroidInfo:c,geodesicDensify:w,geodesicLengths:function(a,b){var c=[];q.forEach(a,function(a,d){var e=0,f=a.spatialReference;q.forEach(a.paths,function(a,b){b=0;var c,d,g,h,r;for(c=1;c<a.length;c++)if(d=a[c-1][0]*k,g=a[c][0]*k,h=a[c-1][1]*k,r=a[c][1]*k,h!==r||d!==g)d=m(h,d,r,g,
f),b+=d.geodesicDistance;e+=b});e/=t[b];c.push(e)});return c},geodesicAreas:function(b,d){var e=[],f=[];q.forEach(b,function(a,b){b=.0015696101447650193*c(a.spatialReference).radius;e.push(w(a,b))});q.forEach(e,function(b,c){var e=0,k=b.spatialReference;q.forEach(b.rings,function(b,c){c=a(new p(b[0][0],b[0][1],k));var d=a(new p(b[b.length-1][0],b[b.length-1][1],k)),f=d.x*c.y-c.x*d.y,g;for(g=0;g<b.length-1;g++)c=a(new p(b[g+1][0],b[g+1][1],k)),d=a(new p(b[g][0],b[g][1],k)),f+=d.x*c.y-c.x*d.y;e+=f});
e/=t[d];f.push(e/-2)});return f},_unitsDictionary:t,_toEqualAreaPoint:a,_directGeodeticSolver:d,_inverseGeodeticSolver:m};b("extend-esri")&&n.mixin(n.getObject("geometry",!0,g),h);return h})},"esri/symbol":function(){define("./symbols/Symbol ./symbols/MarkerSymbol ./symbols/SimpleMarkerSymbol ./symbols/PictureMarkerSymbol ./symbols/LineSymbol ./symbols/SimpleLineSymbol ./symbols/CartographicLineSymbol ./symbols/FillSymbol ./symbols/SimpleFillSymbol ./symbols/PictureFillSymbol ./symbols/Font ./symbols/TextSymbol ./symbols/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){return{Symbol:q,MarkerSymbol:n,SimpleMarkerSymbol:b,PictureMarkerSymbol:g,LineSymbol:h,SimpleLineSymbol:p,CartographicLineSymbol:l,FillSymbol:f,SimpleFillSymbol:e,PictureFillSymbol:c,Font:a,TextSymbol:d,jsonUtils:m}})},"esri/renderer":function(){define("./renderers/Renderer ./renderers/SimpleRenderer ./renderers/UniqueValueRenderer ./renderers/ClassBreaksRenderer ./renderers/TemporalRenderer ./renderers/SymbolAger ./renderers/TimeClassBreaksAger ./renderers/TimeRampAger ./renderers/StretchRenderer ./renderers/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c){return{Renderer:q,SimpleRenderer:n,UniqueValueRenderer:b,ClassBreaksRenderer:g,TemporalRenderer:h,SymbolAger:p,TimeClassBreaksAger:l,TimeRampAger:f,StretchRenderer:e,jsonUtils:c}})},"esri/renderers/Renderer":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has dojox/gfx/_base ../kernel ../Color ../layers/support/attributeUtils ../support/expressionUtils".split(" "),function(q,n,b,g,h,p,l,f,e){var c=Math.PI;q=q(null,{declaredClass:"esri.renderer.Renderer",
constructor:function(a){this._cache={};if(a&&!a.declaredClass){this.rotationInfo=a.rotationInfo;if(!this.rotationInfo){var b=a.rotationType,c=a.rotationExpression;if(b||c)this.rotationInfo={type:b,expression:c}}this.setRotationInfo(this.rotationInfo);this.setSizeInfo(this._readSizeInfo(a.sizeInfo));this.setColorInfo(this._readColorInfo(a.colorInfo));this.setOpacityInfo(this._readOpacityInfo(a.transparencyInfo));this.setVisualVariables(this._readVariables(a.visualVariables));this.setAuthoringInfo(a.authoringInfo)}this.getSymbol=
n.hitch(this,this.getSymbol)},getSymbol:function(a){},_readSizeInfo:function(a){if(a){var c=a.minSize,e=a.maxSize;c&&(a.minSize="number"===typeof c?h.pt2px(c):this._readSizeInfo(c));e&&(a.maxSize="number"===typeof e?h.pt2px(e):this._readSizeInfo(e));a.stops&&b.forEach(a.stops,function(a){a.size&&"number"===typeof a.size&&(a.size=h.pt2px(a.size))})}return a},_readColorInfo:function(a){a&&(b.forEach(a.colors,function(b,c){n.isArray(b)&&(a.colors[c]=l.toDojoColor(b))}),b.forEach(a.stops,function(b,c){b.color&&
n.isArray(b.color)&&(a.stops[c].color=l.toDojoColor(b.color))}));return a},_readOpacityInfo:function(a){var c;a&&(c=n.mixin({},a),c.transparencyValues&&(c.opacityValues=b.map(c.transparencyValues,function(a){return 1-a/100}),delete c.transparencyValues),c.stops&&(c.stops=b.map(c.stops,function(a){a=n.mixin({},a);a.opacity=1-a.transparency/100;delete a.transparency;return a})));return c},_readVariables:function(a){a&&(a=b.map(a,function(a){"sizeInfo"===a.type?a=this._readSizeInfo(a):"colorInfo"===
a.type?a=this._readColorInfo(a):"transparencyInfo"===a.type&&(a=this._readOpacityInfo(a),a.type="opacityInfo");return a},this));return a},setAuthoringInfo:function(a){this.authoringInfo=a},setRotationInfo:function(a){if(a=this.rotationInfo="string"===typeof a?{field:a}:a){if(a.expression&&!n.isFunction(a.expression)&&!a.field){var b=a.expression.match(this.rotationRE);b&&b[1]&&(a.field=b[1])}a.rotationType=a.type}this._cache.rotationInfo=this._processRotationInfo(a);return this},rotationRE:/^\[([^\]]+)\]$/i,
_processRotationInfo:function(a){return this._createCache(a)},getRotationAngle:function(a,b){var c=this._getVarInfo(b&&b.rotationInfo,"rotationInfo");b=c.variable;var c=this._cache[c.cacheKey],d="arithmetic"===this._getRotationType(b),e=c&&c.hasExpr,f=null;if(b.field||e)f=this._getDataValue(a,b,null,c),null!=f&&(f=(f+(d?-90:0))*(d?-1:1));return f},_getRotationType:function(a){return a&&("rotationInfo"===a.type?a.rotationType:a.type)},_getDataValue:function(a,b,c,f,g){f||(f=this._getVarInfo(b,c),b=
f.variable,f=this._cache[f.cacheKey],"sizeInfo"===c&&(f=f.root));return a._getDataValue(b,f,e,g)},setVisualVariables:function(a){var c=this._cache;b.forEach(this.visualVariables,function(a,b){c.hasOwnProperty(b)&&(c[b]=null)},this);this.visualVariables=a;b.some(a,function(a){return!!a.target})&&a.sort(function(a,b){return a.target===b.target?0:a.target?1:-1});b.forEach(a,function(a,b){"colorInfo"===a.type?c[b]=this._processColorInfo(a):"opacityInfo"===a.type?c[b]=this._processOpacityInfo(a):"sizeInfo"===
a.type?c[b]=this._processSizeInfo(a):"rotationInfo"===a.type&&(c[b]=this._processRotationInfo(a))},this);return this},getVisualVariableValues:function(a){var c=this.visualVariables,e;c&&(e=b.map(c,function(b){var c;switch(b.type){case "sizeInfo":c=this.getSize(a,{sizeInfo:b});break;case "colorInfo":c=this.getColor(a,{colorInfo:b});break;case "opacityInfo":c=this.getOpacity(a,{opacityInfo:b});break;case "rotationInfo":c=this.getRotationAngle(a,{rotationInfo:b})}return{variable:b,value:c}},this));return e},
getFieldsUsedInExpressions:function(){var a=[];b.forEach(this._getCacheObjects(),function(b){b.syntaxTree&&(a=a.concat(e.extractFieldNames(b.syntaxTree)))});a.sort();return b.filter(a,function(b,c){return 0===c||a[c-1]!==b})},hasGeometryOperations:function(){return b.some(this._getCacheObjects(),function(a){return a.syntaxTree?e.hasGeometryOperations(a.syntaxTree):!1})},hasVisualVariables:function(a,b){return a?!!this.getVisualVariablesForType(a,b):!!(this.getVisualVariablesForType("sizeInfo",b)||
this.getVisualVariablesForType("colorInfo",b)||this.getVisualVariablesForType("opacityInfo",b)||this.getVisualVariablesForType("rotationInfo",b))},getVisualVariablesForType:function(a,c){var d=this.visualVariables,e;!c&&this[a]?("rotationInfo"===a&&(this[a].rotationType=this[a].type),e=[this[a]]):d&&(e=b.filter(d,function(b){return b.type===a&&("string"===typeof c?b.target===c:!1===c?!b.target:!0)}))&&0===e.length&&(e=void 0);return e},setSizeInfo:function(a){this.sizeInfo=this.proportionalSymbolInfo=
a;this._cache.sizeInfo=this._processSizeInfo(a);return this},_processSizeInfo:function(a){return a&&{root:this._createCache(a),minSize:this._createCache(a.minSize),maxSize:this._createCache(a.maxSize)}},_convertExpressionToArcade:function(a){a&&a.expression&&(a.valueExpression="$view.scale")},_getVarInfo:function(a,c){var d;a&&a.type===c?(d=b.indexOf(this.visualVariables,a),a=this.visualVariables[d]):(d=c,a=this[c]);return{variable:a,cacheKey:d}},setProportionalSymbolInfo:function(a){this.setSizeInfo(a);
return this},getSize:function(a,b){var c=this._getVarInfo(b&&b.sizeInfo,"sizeInfo"),d=c.variable,c=this._cache[c.cacheKey],e=null;if(d)var f=d.minSize,e=d.maxSize,f="object"===typeof f&&f?this._getSize(a,f,c&&c.minSize,b):f,e="object"===typeof e&&e?this._getSize(a,e,c&&c.maxSize,b):e,e=this._getSize(a,d,c&&c.root,b,[f,e]);return e},_getSize:function(a,b,e,f,g){var d=b.stops,m=0,h=e&&e.hasExpr,l=e&&e.ipData,p=e&&e.isScaleDriven,n="object"===typeof a&&!!a,q="number"===typeof a?a:null;if(b.field||p||
h){var t=f&&f.scale,h=g?g[0]:b.minSize;g=g?g[1]:b.maxSize;var w=b.minDataValue,C=b.maxDataValue,H=b.valueUnit||"unknown",E=b.valueRepresentation,F=b.scaleBy,I=f&&f.shape;p?q=t:"number"!==typeof q&&n&&(q=this._getDataValue(a,b,null,e));if(!this._isValidNumber(q))return null;if(d)h=this._lookupData(q,l),q=h[0],g=h[1],q===g?m=d[q].size:(q=d[q].size,d=d[g].size,m=q+(d-q)*h[2]);else if(null!=h&&null!=g&&null!=w&&null!=C)q<=w?m=h:q>=C?m=g:(d=(q-w)/(C-w),"area"===F&&I?(h=(q="circle"===I)?c*Math.pow(h/2,
2):h*h,d=h+d*((q?c*Math.pow(g/2,2):g*g)-h),m=q?2*Math.sqrt(d/c):Math.sqrt(d)):m=h+d*(g-h));else if("unknown"===H)null!=h&&null!=w&&(h&&w?(d=q/w,m="circle"===I?2*Math.sqrt(d*Math.pow(h/2,2)):"square"===I||"diamond"===I||"image"===I?Math.sqrt(d*Math.pow(h,2)):d*h):m=q+(h||w),m=m<h?h:m,null!=g&&m>g&&(m=g));else{d=(f&&f.resolution?f.resolution:1)*this._meterIn[H];if("area"===E)m=Math.sqrt(q/c)/d,m*=2;else if(m=q/d,"radius"===E||"distance"===E)m*=2;null!=h&&m<h&&(m=h);null!=g&&m>g&&(m=g)}}else m=d&&d[0]&&
d[0].size,null==m&&(m=b.minSize);return m=isNaN(m)?0:m},getSizeRangeAtScale:function(a,b){var c;a=this._getVarInfo(a,"sizeInfo");var d=this._cache[a.cacheKey],e={scale:b};if((a=a.variable)&&b){var f=a.minSize;b=a.maxSize;var g=a.stops;g&&g.length?(a=g[0].size,d=g[g.length-1].size):(a="object"===typeof f&&f?this._getSize({},f,d&&d.minSize,e):f,d="object"===typeof b&&b?this._getSize({},b,d&&d.maxSize,e):b);if(null!=a||null!=d)a>d&&(c=d,d=a,a=c),c={minSize:a,maxSize:d}}return c},setColorInfo:function(a){this.colorInfo=
a;this._cache.colorInfo=this._processColorInfo(a);return this},_createCache:function(a,b){if(b=f.createAttributeCache(a,b))b.ipData=this._interpolateData(a);return b},_getCacheObjects:function(a){var b;a=a||this._cache;var c=[];for(b in a){var e=a[b];a.hasOwnProperty(b)&&e&&"object"===typeof e&&(e.hasOwnProperty("idSource")?c.push(e):c=c.concat(this._getCacheObjects(e)))}return c},_processColorInfo:function(a){a&&(b.forEach(a.colors,function(b,c){n.isArray(b)&&(a.colors[c]=new l(b))}),b.forEach(a.stops,
function(b,c){b.color&&n.isArray(b.color)&&(a.stops[c].color=new l(b.color))}));return this._createCache(a)},getColor:function(a,b){b=this._getVarInfo(b&&b.colorInfo,"colorInfo");return this._getColorComponent(a,b.variable,this._cache[b.cacheKey])},setOpacityInfo:function(a){this.opacityInfo=a;this._cache.opacityInfo=this._processOpacityInfo(a);return this},_processOpacityInfo:function(a){return this._createCache(a)},getOpacity:function(a,b){b=this._getVarInfo(b&&b.opacityInfo,"opacityInfo");return this._getColorComponent(a,
b.variable,this._cache[b.cacheKey],!0)},_getColorComponent:function(a,b,c,e,f){var d="number"===typeof a?a:null,g=c&&c.hasExpr,h=c&&c.ipData,m;b&&b.field||g?("number"!==typeof d&&"object"===typeof a&&a&&(d=this._getDataValue(a,b,null,c)),this._isValidNumber(d)||(d=null),null!=d&&(m=e?this._getOpacity(d,b,h):this._getColor(d,b,h))):b&&(a=b.stops,e?(m=a&&a[0]&&a[0].opacity,null==m&&(m=b.opacityValues&&b.opacityValues[0])):m=a&&a[0]&&a[0].color||b.colors&&b.colors[0]);f&&(f.data=d,f.value=m);return f||
m},_isValidNumber:function(a){return"number"===typeof a&&!isNaN(a)&&Infinity!==a&&-Infinity!==a},_interpolateData:function(a){var c;if(a)if(a.colors||a.opacityValues){var e=(a.colors||a.opacityValues).length,f=a.minDataValue,g=(a.maxDataValue-f)/(e-1);c=[];for(a=0;a<e;a++)c[a]=f+a*g}else a.stops&&(c=b.map(a.stops,function(a){return a.value}));return c},_getOpacity:function(a,b,c){a=this._lookupData(a,c);var d;b=b||this.opacityInfo;a&&(c=a[0],d=a[1],c===d?d=this._getOpacValue(b,c):(c=this._getOpacValue(b,
c),b=this._getOpacValue(b,d),d=c+(b-c)*a[2]));return d},_getOpacValue:function(a,b){return a.opacityValues?a.opacityValues[b]:a.stops[b].opacity},_getColor:function(a,b,c){a=this._lookupData(a,c);var d;b=b||this.colorInfo;a&&(d=a[0],c=a[1],d=d===c?this._getColorObj(b,d):l.blendColors(this._getColorObj(b,d),this._getColorObj(b,c),a[2]));return d},_getColorObj:function(a,b){return a.colors?a.colors[b]:a.stops[b].color},_lookupData:function(a,c){var d;if(c){var e=0,f=c.length-1;b.some(c,function(b,c){if(a<
b)return f=c,!0;e=c;return!1});d=[e,f,(a-c[e])/(c[f]-c[e])]}return d},_meterIn:{inches:1/.0254,feet:1/.3048,yards:1/.9144,miles:1/1609.344,"nautical-miles":1/1852,millimeters:1E3,centimeters:100,decimeters:10,meters:1,kilometers:.001,"decimal-degrees":180/20015077},_writeSizeInfo:function(a){if(a){a=n.mixin({},a);this._convertExpressionToArcade(a);var c=a.minSize,e=a.maxSize;c&&(a.minSize="number"===typeof c?h.px2pt(c):this._writeSizeInfo(c));e&&(a.maxSize="number"===typeof e?h.px2pt(e):this._writeSizeInfo(e));
if(c=a.legendOptions)if(a.legendOptions=n.mixin({},c),c=c.customValues)a.legendOptions.customValues=c.slice(0);a.stops&&(a.stops=b.map(a.stops,function(a){a=n.mixin({},a);a.size&&"number"===typeof a.size&&(a.size=h.px2pt(a.size));return a}))}return a},_writeColorInfo:function(a){a&&(a=n.mixin({},a),a.colors&&(a.colors=b.map(a.colors,function(a){return l.toJsonColor(a)})),a.stops&&(a.stops=b.map(a.stops,function(a){a=n.mixin({},a);a.color&&(a.color=l.toJsonColor(a.color));return a})),a.legendOptions&&
(a.legendOptions=n.mixin({},a.legendOptions)));return a},_writeOpacityInfo:function(a){var c;a&&(c=n.mixin({},a),c.opacityValues&&(c.transparencyValues=b.map(c.opacityValues,function(a){return 100*(1-a)}),delete c.opacityValues),c.stops&&(c.stops=b.map(c.stops,function(a){a=n.mixin({},a);a.transparency=100*(1-a.opacity);delete a.opacity;return a})),c.legendOptions&&(c.legendOptions=n.mixin({},c.legendOptions)));return c},toJson:function(a){var c=this.visualVariables,e=n.clone(this.authoringInfo),
f=a&&a.useLegacyRotationProperties,g=(a=(a=this.getVisualVariablesForType("rotationInfo",!1))&&a[0])&&a.field,k;a&&(a===this.rotationInfo||f)&&(k=a.expression||g&&(n.isFunction(g)?g:"["+g+"]"));c&&(c=b.map(c,function(a){"sizeInfo"===a.type?a=this._writeSizeInfo(a):"colorInfo"===a.type?a=this._writeColorInfo(a):"opacityInfo"===a.type?(a=this._writeOpacityInfo(a),a.type="transparencyInfo"):"rotationInfo"===a.type&&(a=f?null:n.mixin({},a));return a},this),c=b.filter(c,function(a){return null!=a}));e&&
b.forEach(e.visualVariables,function(a){"opacityInfo"===a.type&&(a.type="transparencyInfo")});return{rotationType:k&&(this._getRotationType(a)||"geographic"),rotationExpression:k,colorInfo:this._writeColorInfo(this.colorInfo),transparencyInfo:this._writeOpacityInfo(this.opacityInfo),sizeInfo:this._writeSizeInfo(this.sizeInfo),visualVariables:c,authoringInfo:e}}});g("extend-esri")&&n.setObject("renderer.Renderer",q,p);return q})},"esri/layers/support/attributeUtils":function(){define("dojo/_base/lang dojo/has dojox/encoding/digests/_base dojox/encoding/digests/MD5 ../../kernel ../../support/expressionUtils".split(" "),
function(q,n,b,g,h,p){var l={viewScaleRE:/^\s*(return\s+)?\$view\.scale\s*(;)?\s*$/i,getAttributeId:function(f){return"string"===typeof f?g(f,b.outputTypes.Hex):null},getAttributeIdSource:function(b){if(!b)return null;var e=b.field,c=b.valueExpression,a=null;if(c)a=c;else if(q.isFunction(e))a=e.toString();else if(e){var d=(c=b.normalizationField)?"field":b.normalizationType;b=parseFloat(b.normalizationTotal);if(d)if(d=d.toLowerCase(),a=e.toLowerCase()+",norm:"+d,c)a+=","+c.toLowerCase();else if("percent-of-total"===
d){e=b;if("number"!==typeof e||isNaN(e)||Infinity===e||-Infinity===e||0===b)b=null;a+=","+b}}return a},createAttributeCache:function(b,e){if(!b)return null;var c=b.valueExpression,a=p.createSyntaxTree(c),d=l.getAttributeIdSource(b);return{attributeInfo:b,isNumeric:!e,idSource:d,id:l.getAttributeId(d),hasExpr:!!c,compiledFunc:p.createFunction(a),syntaxTree:a,isScaleDriven:!!b.expression||l.viewScaleRE.test(c),dependsOnView:a?p.dependsOnView(a):!1,dependsOnGeometry:a?p.hasGeometryOperations(a):!1,isJSFunc:q.isFunction(b.field)}}};
n("extend-esri")&&q.setObject("layers.support.attributeUtils",l,h);return l})},"dojox/encoding/digests/_base":function(){define(["dojo/_base/lang"],function(q){q=q.getObject("dojox.encoding.digests",!0);q.outputTypes={Base64:0,Hex:1,String:2,Raw:3};q.addWords=function(n,b){var g=(n&65535)+(b&65535);return(n>>16)+(b>>16)+(g>>16)<<16|g&65535};q.stringToWord=function(n){for(var b=[],g=0,h=8*n.length;g<h;g+=8)b[g>>5]|=(n.charCodeAt(g/8)&255)<<g%32;return b};q.wordToString=function(n){for(var b=[],g=0,
h=32*n.length;g<h;g+=8)b.push(String.fromCharCode(n[g>>5]>>>g%32&255));return b.join("")};q.wordToHex=function(n){for(var b=[],g=0,h=4*n.length;g<h;g++)b.push("0123456789abcdef".charAt(n[g>>2]>>g%4*8+4&15)+"0123456789abcdef".charAt(n[g>>2]>>g%4*8&15));return b.join("")};q.wordToBase64=function(n){for(var b=[],g=0,h=4*n.length;g<h;g+=3)for(var p=(n[g>>2]>>g%4*8&255)<<16|(n[g+1>>2]>>(g+1)%4*8&255)<<8|n[g+2>>2]>>(g+2)%4*8&255,l=0;4>l;l++)8*g+6*l>32*n.length?b.push("\x3d"):b.push("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(p>>
6*(3-l)&63));return b.join("")};q.stringToUtf8=function(n){for(var b="",g=-1,h,p;++g<n.length;)h=n.charCodeAt(g),p=g+1<n.length?n.charCodeAt(g+1):0,55296<=h&&56319>=h&&56320<=p&&57343>=p&&(h=65536+((h&1023)<<10)+(p&1023),g++),127>=h?b+=String.fromCharCode(h):2047>=h?b+=String.fromCharCode(192|h>>>6&31,128|h&63):65535>=h?b+=String.fromCharCode(224|h>>>12&15,128|h>>>6&63,128|h&63):2097151>=h&&(b+=String.fromCharCode(240|h>>>18&7,128|h>>>12&63,128|h>>>6&63,128|h&63));return b};return q})},"dojox/encoding/digests/MD5":function(){define(["./_base"],
function(q){function n(b,e){return b<<e|b>>>32-e}function b(b,e,c,a,d,g){return q.addWords(n(q.addWords(q.addWords(e,b),q.addWords(a,g)),d),c)}function g(f,e,c,a,d,g,h){return b(e&c|~e&a,f,e,d,g,h)}function h(f,e,c,a,d,g,h){return b(e&a|c&~a,f,e,d,g,h)}function p(f,e,c,a,d,g,h){return b(c^(e|~a),f,e,d,g,h)}function l(f,e){f[e>>5]|=128<<e%32;f[(e+64>>>9<<4)+14]=e;e=1732584193;for(var c=-271733879,a=-1732584194,d=271733878,m=0;m<f.length;m+=16){var l=e,n=c,k=a,u=d;e=g(e,c,a,d,f[m+0],7,-680876936);d=
g(d,e,c,a,f[m+1],12,-389564586);a=g(a,d,e,c,f[m+2],17,606105819);c=g(c,a,d,e,f[m+3],22,-1044525330);e=g(e,c,a,d,f[m+4],7,-176418897);d=g(d,e,c,a,f[m+5],12,1200080426);a=g(a,d,e,c,f[m+6],17,-1473231341);c=g(c,a,d,e,f[m+7],22,-45705983);e=g(e,c,a,d,f[m+8],7,1770035416);d=g(d,e,c,a,f[m+9],12,-1958414417);a=g(a,d,e,c,f[m+10],17,-42063);c=g(c,a,d,e,f[m+11],22,-1990404162);e=g(e,c,a,d,f[m+12],7,1804603682);d=g(d,e,c,a,f[m+13],12,-40341101);a=g(a,d,e,c,f[m+14],17,-1502002290);c=g(c,a,d,e,f[m+15],22,1236535329);
e=h(e,c,a,d,f[m+1],5,-165796510);d=h(d,e,c,a,f[m+6],9,-1069501632);a=h(a,d,e,c,f[m+11],14,643717713);c=h(c,a,d,e,f[m+0],20,-373897302);e=h(e,c,a,d,f[m+5],5,-701558691);d=h(d,e,c,a,f[m+10],9,38016083);a=h(a,d,e,c,f[m+15],14,-660478335);c=h(c,a,d,e,f[m+4],20,-405537848);e=h(e,c,a,d,f[m+9],5,568446438);d=h(d,e,c,a,f[m+14],9,-1019803690);a=h(a,d,e,c,f[m+3],14,-187363961);c=h(c,a,d,e,f[m+8],20,1163531501);e=h(e,c,a,d,f[m+13],5,-1444681467);d=h(d,e,c,a,f[m+2],9,-51403784);a=h(a,d,e,c,f[m+7],14,1735328473);
c=h(c,a,d,e,f[m+12],20,-1926607734);e=b(c^a^d,e,c,f[m+5],4,-378558);d=b(e^c^a,d,e,f[m+8],11,-2022574463);a=b(d^e^c,a,d,f[m+11],16,1839030562);c=b(a^d^e,c,a,f[m+14],23,-35309556);e=b(c^a^d,e,c,f[m+1],4,-1530992060);d=b(e^c^a,d,e,f[m+4],11,1272893353);a=b(d^e^c,a,d,f[m+7],16,-155497632);c=b(a^d^e,c,a,f[m+10],23,-1094730640);e=b(c^a^d,e,c,f[m+13],4,681279174);d=b(e^c^a,d,e,f[m+0],11,-358537222);a=b(d^e^c,a,d,f[m+3],16,-722521979);c=b(a^d^e,c,a,f[m+6],23,76029189);e=b(c^a^d,e,c,f[m+9],4,-640364487);d=
b(e^c^a,d,e,f[m+12],11,-421815835);a=b(d^e^c,a,d,f[m+15],16,530742520);c=b(a^d^e,c,a,f[m+2],23,-995338651);e=p(e,c,a,d,f[m+0],6,-198630844);d=p(d,e,c,a,f[m+7],10,1126891415);a=p(a,d,e,c,f[m+14],15,-1416354905);c=p(c,a,d,e,f[m+5],21,-57434055);e=p(e,c,a,d,f[m+12],6,1700485571);d=p(d,e,c,a,f[m+3],10,-1894986606);a=p(a,d,e,c,f[m+10],15,-1051523);c=p(c,a,d,e,f[m+1],21,-2054922799);e=p(e,c,a,d,f[m+8],6,1873313359);d=p(d,e,c,a,f[m+15],10,-30611744);a=p(a,d,e,c,f[m+6],15,-1560198380);c=p(c,a,d,e,f[m+13],
21,1309151649);e=p(e,c,a,d,f[m+4],6,-145523070);d=p(d,e,c,a,f[m+11],10,-1120210379);a=p(a,d,e,c,f[m+2],15,718787259);c=p(c,a,d,e,f[m+9],21,-343485551);e=q.addWords(e,l);c=q.addWords(c,n);a=q.addWords(a,k);d=q.addWords(d,u)}return[e,c,a,d]}q.MD5=function(b,e){e=e||q.outputTypes.Base64;b=l(q.stringToWord(b),8*b.length);switch(e){case q.outputTypes.Raw:return b;case q.outputTypes.Hex:return q.wordToHex(b);case q.outputTypes.String:return q.wordToString(b);default:return q.wordToBase64(b)}};q.MD5._hmac=
function(b,e,c){c=c||q.outputTypes.Base64;var a=q.stringToWord(e);16<a.length&&(a=l(a,8*e.length));var d=[];e=[];for(var f=0;16>f;f++)d[f]=a[f]^909522486,e[f]=a[f]^1549556828;b=l(d.concat(q.stringToWord(b)),512+8*b.length);b=l(e.concat(b),640);switch(c){case q.outputTypes.Raw:return b;case q.outputTypes.Hex:return q.wordToHex(b);case q.outputTypes.String:return q.wordToString(b);default:return q.wordToBase64(b)}};return q.MD5})},"esri/support/expressionUtils":function(){define("dojo/_base/lang dojo/_base/array dojo/has ../kernel ../arcade/arcade ../arcade/Feature".split(" "),
function(q,n,b,g,h,p){var l={vars:{$feature:"any",$view:"any"}},f=/^\$feature\./i,e={_getSyntaxTree:function(b,a){return"string"===typeof b?e.createSyntaxTree(b,a):b},createSyntaxTree:function(b,a){a=a||q.clone(l);var c;try{c=b?h.parseScript(b,a):null}catch(m){c=null}return c},createFunction:function(b,a){a=a||q.clone(l);b=e._getSyntaxTree(b,a);var c;try{c=b?h.compileScript(b,a):null}catch(m){c=null}return c},createExecContext:function(b,a){return{vars:{$feature:b?p.createFromGraphic(b):new p,$view:a&&
a.view},spatialReference:a&&a.sr}},evalSyntaxTree:function(b,a){var c;try{c=h.executeScript(b,a,a.spatialReference)}catch(m){c=null}return c},executeFunction:function(b,a){var c;try{c=b?b(a,a.spatialReference):null}catch(m){c=null}return c},extractFieldNames:function(b,a){b=e._getSyntaxTree(b,a);b=h.extractFieldLiterals(b);var c=[];n.forEach(b,function(a){f.test(a)&&(a=a.replace(f,""),c.push(a))});c.sort();return n.filter(c,function(a,b){return 0===b||c[b-1]!==a})},dependsOnView:function(b){return h.referencesMember(b,
"$view")},hasGeometryOperations:function(b){return(b=e._getSyntaxTree(b))?h.scriptUsesGeometryEngine(b):!1},enableGeometryOperations:function(){return h.enableGeometrySupport()}};b("extend-esri")&&q.setObject("renderer.expressionUtils",e,g);return e})},"esri/arcade/arcade":function(){define("require exports dojo/Deferred dojo/has ./arcadeCompiler ./arcadeRuntime ./parser".split(" "),function(q,n,b,g,h,p,l){Object.defineProperty(n,"__esModule",{value:!0});var f="disjoint intersects touches crosses within contains overlaps equals relate intersection union difference symmetricdifference clip cut area areageodetic length lengthgeodetic distance densify densifygeodetic generalize buffer buffergeodetic offset rotate issimple simplify multiparttosinglepart".split(" ");
n.compileScript=function(b,c){return g("csp-restrictions")?function(a,c){return p.executeScript(b,a,c)}:h.compileScript(b,c)};n.extend=function(b){p.extend(b);h.extend(b)};n.parseScript=function(b){return l.parseScript(b)};n.validateScript=function(b,c){return l.validateScript(b,c,"simple")};n.scriptCheck=function(b,c,a){return l.scriptCheck(b,c,a,"full")};n.parseAndExecuteScript=function(b,c,a){return p.executeScript(l.parseScript(b),c,a)};n.executeScript=function(b,c,a){return p.executeScript(b,
c,a)};n.referencesMember=function(b,c){return p.referencesMember(b,c)};n.referencesFunction=function(b,c){return p.referencesFunction(b,c)};n.extractFieldLiterals=function(b,c){void 0===c&&(c=!1);return l.extractFieldLiterals(b,c)};n.scriptUsesGeometryEngine=function(b){b=p.findFunctionCalls(b);for(var c=0;c<b.length;c++)if(-1<f.indexOf(b[c]))return!0;return!1};n.enableGeometrySupport=function(){var e=new b;q(["esri/geometry/geometryEngine","./functions/geomsync"],function(b,a){a.setGeometryEngine(b);
e.resolve(!0)},function(b){e.reject(b)});return e.promise}})},"esri/arcade/arcadeCompiler":function(){define("require exports ./Dictionary ./Feature ./ImmutablePathArray ./ImmutablePointArray ./languageUtils ./treeAnalysis ./functions/date ./functions/geometry ./functions/geomsync ./functions/maths ./functions/stats ./functions/string ../geometry/Extent ../geometry/Geometry ../geometry/Multipoint ../geometry/Point ../geometry/Polygon ../geometry/Polyline ../SpatialReference".split(" "),function(q,
n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z){function x(a,b,c){try{return c(a,null,b)}catch(pa){throw pa;}}function A(a,b){try{switch(b.type){case "EmptyStatement":return"lc.voidOperation";case "VariableDeclarator":return F(a,b);case "VariableDeclaration":for(var c=[],d=0;d<b.declarations.length;d++)c.push(A(a,b.declarations[d]));return c.join("\n")+" \n lastStatement\x3d  lc.voidOperation; \n";case "BlockStatement":return E(a,b);case "FunctionDeclaration":var d=b.id.name.toLowerCase(),e={applicationCache:void 0===
a.applicationCache?null:a.applicationCache,spatialReference:a.spatialReference,console:a.console,symbols:a.symbols,localScope:{_SymbolsMap:{}},depthCounter:a.depthCounter+1,globalScope:a.globalScope};if(64<e.depthCounter)throw Error("Exceeded maximum function depth");for(var g="new lc.SizzleFunction( lang.functionDepthchecker(function() { var lastStatement \x3d lc.voidOperation; var lscope \x3d [];\n ",k=0;k<b.params.length;k++){var h=b.params[k].name.toLowerCase(),m=U(h,a);e.localScope._SymbolsMap[h]=
m;g+="lscope['"+m+"']\x3darguments["+k.toString()+"];\n"}g+=E(e,b.body)+"\n return lastStatement; }, runtimeCtx))";g+="\n lastStatement \x3d lc.voidOperation; \n";void 0!==a.globalScope[d]?c="gscope['"+d+"']\x3d"+g:void 0!==a.globalScope._SymbolsMap[d]?c="gscope['"+a.globalScope._SymbolsMap[d]+"']\x3d"+g:(m=U(d,a),a.globalScope._SymbolsMap[d]=m,c="gscope['"+m+"']\x3d"+g);return c;case "ReturnStatement":var r;r=null===b.argument?"return lc.voidOperation;":"return "+A(a,b.argument)+";";return r;case "IfStatement":if("AssignmentExpression"===
b.test.type||"UpdateExpression"===b.test.type)throw Error(f.nodeErrorMessage(b.test,"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));var l=A(a,b.test),p=O(a),n="var "+p+" \x3d "+l+";\n if ("+p+" \x3d\x3d\x3d true) {\n"+H(a,b.consequent)+"\n }\n",n=null!==b.alternate?n+("else if ("+p+"\x3d\x3d\x3dfalse)   { \n"+H(a,b.alternate)+"}\n"):n+("else if ("+p+"\x3d\x3d\x3dfalse) { \n lastStatement \x3d lc.voidOperation;\n }\n");return n+="else { lang.error({type: '"+b.type+"'},'RUNTIME','CANNOT_USE_NONBOOLEAN_IN_CONDITION'); \n}\n";
case "ExpressionStatement":var q;q="AssignmentExpression"===b.expression.type?"lastStatement \x3d lc.voidOperation; "+A(a,b.expression)+" \n ":"lastStatement \x3d "+A(a,b.expression)+";";return q;case "AssignmentExpression":return C(a,b);case "UpdateExpression":return B(a,b);case "BreakStatement":return"break;";case "ContinueStatement":return"continue;";case "ForStatement":c="lastStatement \x3d lc.voidOperation; \n";null!==b.init&&(c+=A(a,b.init));var y=O(a),v=O(a),c=c+("var "+y+" \x3d true;")+"\n do { ";
null!==b.update&&(c+=" if ("+y+"\x3d\x3d\x3dfalse) {\n "+A(a,b.update)+"  \n}\n "+y+"\x3dfalse; \n");null!==b.test&&(c+="var "+v+" \x3d "+A(a,b.test)+";",c+="if ("+v+"\x3d\x3d\x3dfalse) { break; } else if ("+v+"!\x3d\x3dtrue) { lang.error({type: '"+b.type+"'},'RUNTIME','CANNOT_USE_NONBOOLEAN_IN_CONDITION');   }\n");c+=A(a,b.body);null!==b.update&&(c+="\n "+A(a,b.update));return c+("\n"+y+" \x3d true; \n} while(true);  lastStatement \x3d lc.voidOperation;");case "ForInStatement":var t=O(a),u=O(a),
x=O(a),z="var "+t+" \x3d "+A(a,b.right)+";\n";"VariableDeclaration"===b.left.type&&(z+=A(a,b.left));var w="VariableDeclaration"===b.left.type?b.left.declarations[0].id.name:b.left.name,w=w.toLowerCase(),c="";null!==a.localScope&&(void 0!==a.localScope[w]?c="lscope['"+w+"']":void 0!==a.localScope._SymbolsMap[w]&&(c="lscope['"+a.localScope._SymbolsMap[w]+"']"));""===c&&(void 0!==a.globalScope[w]?c="gscope['"+w+"']":void 0!==a.globalScope._SymbolsMap[w]&&(c="gscope['"+a.globalScope._SymbolsMap[w]+"']"));
z=z+("if ("+t+"\x3d\x3d\x3dnull) {  lastStatement \x3d lc.voidOperation; }\n ")+("else if (lc.isArray("+t+") || lc.isString("+t+")) {")+("var "+u+"\x3d"+t+".length; \n")+("for(var "+x+"\x3d0; "+x+"\x3c"+u+"; "+x+"++) {\n");z+=c+"\x3d"+x+";\n";z+=A(a,b.body);z+="\n}\n";z+=" lastStatement \x3d lc.voidOperation; \n";z+=" \n}\n";z+="else if (lc.isImmutableArray("+t+")) {";z=z+("var "+u+"\x3d"+t+".length(); \n")+("for(var "+x+"\x3d0; "+x+"\x3c"+u+"; "+x+"++) {\n");z+=c+"\x3d"+x+";\n";z+=A(a,b.body);z+=
"\n}\n";z+=" lastStatement \x3d lc.voidOperation; \n";z+=" \n}\n";z+="else if (( "+t+" instanceof lang.Dictionary) || ( "+t+" instanceof lang.Feature)) {";z=z+("var "+u+"\x3d"+t+".keys(); \n")+("for(var "+x+"\x3d0; "+x+"\x3c"+u+".length; "+x+"++) {\n");z+=c+"\x3d"+u+"["+x+"];\n";z+=A(a,b.body);z+="\n}\n";z+=" lastStatement \x3d lc.voidOperation; \n";z+=" \n}\n";return z+"else { lastStatement \x3d lc.voidOperation; } \n";case "Identifier":return X(a,b);case "MemberExpression":var I;try{c=void 0,c=
!0===b.computed?A(a,b.property):"'"+b.property.name+"'",I="lang.member("+A(a,b.object)+","+c+")"}catch(ua){throw ua;}return I;case "Literal":return null===b.value||void 0===b.value?"null":JSON.stringify(b.value);case "ThisExpression":throw Error(f.nodeErrorMessage(b,"RUNTIME","NOTSUPPORTED"));case "CallExpression":try{if("Identifier"!==b.callee.type)throw Error(f.nodeErrorMessage(b,"RUNTIME","ONLYNODESSUPPORTED"));var N=b.callee.name.toLowerCase(),c="";null!==a.localScope&&(void 0!==a.localScope[N]?
c="lscope['"+N+"']":void 0!==a.localScope._SymbolsMap[N]&&(c="lscope['"+a.localScope._SymbolsMap[N]+"']"));""===c&&(void 0!==a.globalScope[N]?c="gscope['"+N+"']":void 0!==a.globalScope._SymbolsMap[N]&&(c="gscope['"+a.globalScope._SymbolsMap[N]+"']"));if(""!==c)for(d="[",e=0;e<b.arguments.length;e++)0<e&&(d+=", "),d+=A(a,b.arguments[e]);else throw Error(f.nodeErrorMessage(b,"RUNTIME","NOTFOUND"));}catch(ua){throw ua;}return"lang.callfunc("+c+","+(d+"]")+",runtimeCtx)";case "UnaryExpression":var ca;
try{ca="lang.unary("+A(a,b.argument)+",'"+b.operator+"')"}catch(ua){throw ua;}return ca;case "BinaryExpression":var G;try{G="lang.binary("+A(a,b.left)+","+A(a,b.right)+",'"+b.operator+"')"}catch(ua){throw ua;}return G;case "LogicalExpression":var ga;try{if("AssignmentExpression"===b.left.type||"UpdateExpression"===b.left.type)throw Error(f.nodeErrorMessage(b.left,"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));if("AssignmentExpression"===b.right.type||"UpdateExpression"===b.right.type)throw Error(f.nodeErrorMessage(b.right,
"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));if("\x26\x26"===b.operator||"||"===b.operator)ga="(lang.logicalCheck("+A(a,b.left)+") "+b.operator+" lang.logicalCheck("+A(a,b.right)+"))";else throw Error(f.nodeErrorMessage("LogicalExpression","RUNTIME","ONLYORORAND"));}catch(ua){throw ua;}return ga;case "ConditionalExpression":throw Error(f.nodeErrorMessage(b,"RUNTIME","NOTSUPPORTED"));case "ArrayExpression":try{c=[];for(d=0;d<b.elements.length;d++)"Literal"===b.elements[d].type?c.push(A(a,b.elements[d])):
c.push("lang.aCheck("+A(a,b.elements[d])+",'ArrayExpression')");g="["+c.join(",")+"]"}catch(ua){throw ua;}return g;case "ObjectExpression":c="lang.dictionary([";for(d=0;d<b.properties.length;d++){var k=b.properties[d],L="Identifier"===k.key.type?"'"+k.key.name+"'":A(a,k.key),Q=A(a,k.value);0<d&&(c+=",");c+="lang.strCheck("+L+",'ObjectExpression'),lang.aCheck("+Q+", 'ObjectExpression')"}return c+"])";case "Property":throw Error("Should not get here");case "Array":throw Error(f.nodeErrorMessage(b,"RUNTIME",
"NOTSUPPORTED"));default:throw Error(f.nodeErrorMessage(b,"RUNTIME","UNREOGNISED"));}}catch(ua){throw ua;}}function B(a,b){var c=null,d="";if("MemberExpression"===b.argument.type)return c=A(a,b.argument.object),d=!0===b.argument.computed?A(a,b.argument.property):"'"+b.argument.property.name+"'","lang.memberupdate("+c+","+d+",'"+b.operator+"',"+b.prefix+")";c=b.argument.name.toLowerCase();if(null!==a.localScope){if(void 0!==a.localScope[c])return"lang.update(lscope, '"+c+"','"+b.operator+"',"+b.prefix+
")";if(void 0!==a.localScope._SymbolsMap[c])return"lang.update(lscope, '"+a.localScope._SymbolsMap[c]+"','"+b.operator+"',"+b.prefix+")"}if(void 0!==a.globalScope[c])return"lang.update(gscope, '"+c+"','"+b.operator+"',"+b.prefix+")";if(void 0!==a.globalScope._SymbolsMap[c])return"lang.update(gscope, '"+a.globalScope._SymbolsMap[c]+"','"+b.operator+"',"+b.prefix+")";throw Error("Variable not recognised");}function C(a,b){var c=A(a,b.right),d=null,e="";if("MemberExpression"===b.left.type)return d=A(a,
b.left.object),e=!0===b.left.computed?A(a,b.left.property):"'"+b.left.property.name+"'","lang.assignmember("+d+","+e+",'"+b.operator+"',"+c+");";d=b.left.name.toLowerCase();if(null!==a.localScope){if(void 0!==a.localScope[d])return"lscope['"+d+"']\x3dlang.assign("+c+",'"+b.operator+"', lscope['"+d+"']); ";if(void 0!==a.localScope._SymbolsMap[d])return"lscope['"+a.localScope._SymbolsMap[d]+"']\x3dlang.assign("+c+",'"+b.operator+"', lscope['"+a.localScope._SymbolsMap[d]+"']); "}if(void 0!==a.globalScope[d])return"gscope['"+
d+"']\x3dlang.assign("+c+",'"+b.operator+"', gscope['"+d+"']); ";if(void 0!==a.globalScope._SymbolsMap[d])return"gscope['"+a.globalScope._SymbolsMap[d]+"']\x3dlang.assign("+c+",'"+b.operator+"', gscope['"+a.globalScope._SymbolsMap[d]+"']); ";throw Error("Variable not recognised");}function H(a,b){return"BlockStatement"===b.type?A(a,b):"ReturnStatement"===b.type?A(a,b):"BreakStatement"===b.type?A(a,b):"ContinueStatement"===b.type?A(a,b):"UpdateExpression"===b.type?"lastStatement \x3d "+A(a,b)+";":
"ExpressionStatement"===b.type?A(a,b):"ObjectExpression"===b.type?"lastStatement \x3d "+A(a,b)+";":A(a,b)}function E(a,b){for(var c="",d=0;d<b.body.length;d++)c="ReturnStatement"===b.body[d].type?c+(A(a,b.body[d])+" \n"):"BreakStatement"===b.body[d].type?c+(A(a,b.body[d])+" \n"):"ContinueStatement"===b.body[d].type?c+(A(a,b.body[d])+" \n"):"UpdateExpression"===b.body[d].type?c+("lastStatement \x3d "+A(a,b.body[d])+"; \n"):"ObjectExpression"===b.body[d].type?c+("lastStatement \x3d "+A(a,b.body[d])+
"; \n"):c+(A(a,b.body[d])+" \n");return c}function F(a,b){var c=null===b.init?null:A(a,b.init);c===l.voidOperation&&(c=null);b=b.id.name.toLowerCase();if(null!==a.localScope){if(void 0!==a.localScope[b])return"lscope['"+b+"']\x3d"+c+";";if(void 0!==a.localScope._SymbolsMap[b])return"lscope['"+a.localScope._SymbolsMap[b]+"']\x3d"+c+";";var d=U(b,a);a.localScope._SymbolsMap[b]=d;return"lscope['"+d+"']\x3d"+c+";"}if(void 0!==a.globalScope[b])return"gscope['"+b+"']\x3d"+c+";";if(void 0!==a.globalScope._SymbolsMap[b])return"gscope['"+
a.globalScope._SymbolsMap[b]+"']\x3d"+c+";";d=U(b,a);a.globalScope._SymbolsMap[b]=d;return"gscope['"+d+"']\x3d"+c+";"}function I(a,c,d){c=c.toLowerCase();switch(c){case "hasz":return a=a.hasZ,void 0===a?!1:a;case "hasm":return a=a.hasM,void 0===a?!1:a;case "spatialreference":return c=a.spatialReference._arcadeCacheId,void 0===c&&(d=!0,Object.freeze&&Object.isFrozen(a.spatialReference)&&(d=!1),d&&(P++,c=a.spatialReference._arcadeCacheId=P)),a=new b({wkt:a.spatialReference.wkt,wkid:a.spatialReference.wkid}),
void 0!==c&&(a._arcadeCacheId="SPREF"+c.toString()),a}switch(a.type){case "extent":switch(c){case "xmin":case "xmax":case "ymin":case "ymax":case "zmin":case "zmax":case "mmin":case "mmax":return a=a[c],void 0!==a?a:null;case "type":return"Extent"}break;case "polygon":switch(c){case "rings":return c=l.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===c&&(P++,c=P,l.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",c)),a=new h(a.rings,a.spatialReference,
!0===a.hasZ,!0===a.hasM,c);case "type":return"Polygon"}break;case "point":switch(c){case "x":case "y":case "z":case "m":return void 0!==a[c]?a[c]:null;case "type":return"Point"}break;case "polyline":switch(c){case "paths":return c=l.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===c&&(P++,c=P,l.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",c)),a=new h(a.paths,a.spatialReference,!0===a.hasZ,!0===a.hasM,c);case "type":return"Polyline"}break;case "multipoint":switch(c){case "points":return c=
l.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===c&&(P++,c=P,l.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",c)),a=new p(a.points,a.spatialReference,!0===a.hasZ,!0===a.hasM,c,1);case "type":return"Multipoint"}}throw Error(f.nodeErrorMessage(d,"RUNTIME","PROPERTYNOTFOUND"));}function X(a,b){try{var c=b.name.toLowerCase();if(null!==a.localScope){if(void 0!==a.localScope[c])return"lscope['"+c+"']";if(void 0!==a.localScope._SymbolsMap[c])return"lscope['"+
a.localScope._SymbolsMap[c]+"']"}if(void 0!==a.globalScope[c])return"gscope['"+c+"']";if(void 0!==a.globalScope._SymbolsMap[c])return"gscope['"+a.globalScope._SymbolsMap[c]+"']";throw Error(f.nodeErrorMessage(b,"RUNTIME","VARIABLENOTFOUND"));}catch(pa){throw pa;}}function N(a){return null===a?"":l.isArray(a)||l.isImmutableArray(a)?"Array":l.isDate(a)?"Date":l.isString(a)?"String":l.isBoolean(a)?"Boolean":l.isNumber(a)?"Number":a instanceof b?"Dictionary":a instanceof g?"Feature":a instanceof r?"Point":
a instanceof y?"Polygon":a instanceof v?"Polyline":a instanceof u?"Multipoint":a instanceof t?"Extent":l.isFunctionParameter(a)?"Function":a===l.voidOperation?"":"number"===typeof a&&isNaN(a)?"Number":"Unrecognised Type"}function G(a,b,c,d){try{if(l.equalityTest(b[c],d))return b[c+1];var e=b.length-c;return 1===e?b[c]:2===e?null:3===e?b[c+2]:G(a,b,c+2,d)}catch(ya){throw ya;}}function Q(a,b,c,d){try{if(!0===d)return b[c+1];if(3===b.length-c)return b[c+2];var e=b[c+2];if(!1===l.isBoolean(e))throw Error("WHEN needs boolean test conditions");
return Q(a,b,c+2,e)}catch(ya){throw ya;}}function M(a,b){var c=a.length,d=Math.floor(c/2);if(0===c)return[];if(1===c)return[a[0]];var e=M(a.slice(0,d),b);a=M(a.slice(d,c),b);for(c=[];0<e.length||0<a.length;)0<e.length&&0<a.length?(d=b(e[0],a[0]),isNaN(d)&&(d=0),0>=d?(c.push(e[0]),e=e.slice(1)):(c.push(a[0]),a=a.slice(1))):0<e.length?(c.push(e[0]),e=e.slice(1)):0<a.length&&(c.push(a[0]),a=a.slice(1));return c}function U(a,b){b.symbols.symbolCounter++;return"_T"+b.symbols.symbolCounter.toString()}function O(a){a.symbols.symbolCounter++;
return"_Tvar"+a.symbols.symbolCounter.toString()}function L(a,b,c){var d={};a||(a={});c||(c={});d._SymbolsMap={};d.textformatting=1;d.infinity=1;d.pi=1;for(var e in b)d[e]=1;for(e in c)d[e]=1;for(e in a)d[e]=1;return d}function ba(a){console.log(a)}Object.defineProperty(n,"__esModule",{value:!0});var P=0,V={};e.registerFunctions(V,x);w.registerFunctions(V,x);d.registerFunctions(V,x);c.registerFunctions(V,x);m.registerFunctions(V,x);a.registerFunctions(V,x);V["typeof"]=function(a,b){return x(a,b,function(a,
b,c){l.pcCheck(c,1,1);a=N(c[0]);if("Unrecognised Type"===a)throw Error("Unrecognised Type");return a})};V.iif=function(a,b){try{return x(a,b,function(a,b,c){l.pcCheck(c,3,3);if(!1===l.isBoolean(c[0]))throw Error("IF Function must have a boolean test condition");return c[0]?c[1]:c[2]})}catch(ha){throw ha;}};V.decode=function(a,b){try{return x(a,b,function(b,c,d){if(2>d.length)throw Error("Missing Parameters");if(2===d.length)return d[1];if(0===(d.length-1)%2)throw Error("Must have a default value result.");
return G(a,d,1,d[0])})}catch(ha){throw ha;}};V.when=function(a,b){try{return x(a,b,function(b,c,d){if(3>d.length)throw Error("Missing Parameters");if(0===d.length%2)throw Error("Must have a default value result.");b=d[0];if(!1===l.isBoolean(b))throw Error("WHEN needs boolean test conditions");return Q(a,d,0,b)})}catch(ha){throw ha;}};V.top=function(a,b){return x(a,b,function(a,b,c){l.pcCheck(c,2,2);if(l.isArray(c[0]))return l.toNumber(c[1])>=c[0].length?c[0].slice(0):c[0].slice(0,l.toNumber(c[1]));
if(l.isImmutableArray(c[0]))return l.toNumber(c[1])>=c[0].length()?c[0].slice(0):c[0].slice(0,l.toNumber(c[1]));throw Error("Top cannot accept this parameter type");})};V.first=function(a,b){return x(a,b,function(a,b,c){l.pcCheck(c,1,1);return l.isArray(c[0])?0===c[0].length?null:c[0][0]:l.isImmutableArray(c[0])?0===c[0].length()?null:c[0].get(0):null})};V.sort=function(a,b){return x(a,b,function(a,b,c){l.pcCheck(c,1,2);b=c[0];l.isImmutableArray(b)&&(b=b.toArray());if(!1===l.isArray(b))throw Error("Illegal Argument");
if(1<c.length){if(!1===l.isFunctionParameter(c[1]))throw Error("Illegal Argument");b=M(b,function(b,d){return ea.callfunc(c[1],[b,d],a)})}else{if(0===b.length)return[];for(var d={},e=0;e<b.length;e++){var f=N(b[e]);""!==f&&(d[f]=!0)}if(!0===d.Array||!0===d.Dictionary||!0===d.Feature||!0===d.Point||!0===d.Polygon||!0===d.Polyline||!0===d.Multipoint||!0===d.Extent||!0===d.Function)return b.slice(0);var e=0,f="",g;for(g in d)e++,f=g;b=1<e||"String"===f?M(b,function(a,b){if(null===a||void 0===a||a===
l.voidOperation)return null===b||void 0===b||b===l.voidOperation?0:1;if(null===b||void 0===b||b===l.voidOperation)return-1;a=l.toString(a);b=l.toString(b);return a<b?-1:a===b?0:1}):"Number"===f?M(b,function(a,b){return a-b}):"Boolean"===f?M(b,function(a,b){return a===b?0:b?-1:1}):"Date"===f?M(b,function(a,b){return b-a}):b.slice(0)}return b})};for(var Y in V)V[Y]=new l.NativeFunction(V[Y]);var oa=function(){};oa.prototype=V;n.functionHelper={fixSpatialReference:l.fixSpatialReference,parseArguments:function(a,
b){for(var c=[],d=0;d<b.arguments.length;d++)c.push(A(a,b.arguments[d]));return c},standardFunction:x};n.extend=function(a){for(var b={mode:"sync",compiled:!0,functions:{},signatures:[],standardFunction:x},c=0;c<a.length;c++)a[c].registerFunctions(b);for(var d in b.functions)V[d]=new l.NativeFunction(b.functions[d]),oa.prototype[d]=V[d];for(c=0;c<b.signatures.length;c++)f.addFunctionDeclaration(b.signatures[c],"f")};n.executeScript=function(a,b,c){return a(b,c)};n.extractFieldLiterals=function(a,
b){void 0===b&&(b=!1);return f.findFieldLiterals(a,b)};n.validateScript=function(a,b){return f.validateScript(a,b,"simple")};n.referencesMember=function(a,b){return f.referencesMember(a,b)};n.referencesFunction=function(a,b){return f.referencesFunction(a,b)};var ea={error:function(a,b,c){throw Error(f.nodeErrorMessage(a,b,c));},functionDepthchecker:function(a,b){return function(){b.depthCounte++;if(64<b.depthCounter)throw Error("Exceeded maximum function depth");var c=a.apply(this,arguments);b.depthCounte--;
return c}},aCheck:function(a,b){if(l.isFunctionParameter(a))throw Error(f.nodeErrorMessage({type:b},"RUNTIME","FUNCTIONCONTEXTILLEGAL"));return a===l.voidOperation?null:a},Dictionary:b,Feature:g,dictionary:function(a){for(var c={},d=0;d<a.length;d+=2){if(l.isFunctionParameter(a[d+1]))throw Error("Illegal Argument");if(!1===l.isString(a[d]))throw Error("Illegal Argument");c[a[d].toString()]=a[d+1]===l.voidOperation?null:a[d+1]}a=new b(c);a.immutable=!1;return a},strCheck:function(a,b){if(!1===l.isString(a))throw Error("Illegal Argument");
return a},unary:function(a,b){if(l.isBoolean(a)){if("!"===b)return!a;if("-"===b)return-1*l.toNumber(a);if("+"===b)return 1*l.toNumber(a);throw Error(f.nodeErrorMessage({type:"UnaryExpression"},"RUNTIME","NOTSUPPORTEDUNARYOPERATOR"));}if("-"===b)return-1*l.toNumber(a);if("+"===b)return 1*l.toNumber(a);throw Error(f.nodeErrorMessage({type:"UnaryExpression"},"RUNTIME","NOTSUPPORTEDUNARYOPERATOR"));},logicalCheck:function(a){if(!1===l.isBoolean(a))throw Error(f.nodeErrorMessage("LogicalExpression","RUNTIME",
"ONLYORORAND"));return a},logical:function(a,b,c){if(l.isBoolean(a)&&l.isBoolean(b))switch(c){case "||":return a||b;case "\x26\x26":return a&&b;default:throw Error(f.nodeErrorMessage("LogicalExpression","RUNTIME","ONLYORORAND"));}else throw Error(f.nodeErrorMessage("LogicalExpression","RUNTIME","ONLYORORAND"));},binary:function(a,b,c){switch(c){case "\x3d\x3d":return l.equalityTest(a,b);case "\x3d":return l.equalityTest(a,b);case "!\x3d":return!l.equalityTest(a,b);case "\x3c":return l.greaterThanLessThan(a,
b,c);case "\x3e":return l.greaterThanLessThan(a,b,c);case "\x3c\x3d":return l.greaterThanLessThan(a,b,c);case "\x3e\x3d":return l.greaterThanLessThan(a,b,c);case "+":return l.isString(a)||l.isString(b)?l.toString(a)+l.toString(b):l.toNumber(a)+l.toNumber(b);case "-":return l.toNumber(a)-l.toNumber(b);case "*":return l.toNumber(a)*l.toNumber(b);case "/":return l.toNumber(a)/l.toNumber(b);case "%":return l.toNumber(a)%l.toNumber(b);default:throw Error(f.nodeErrorMessage({type:"BinaryExpression"},"RUNTIME",
"OPERATORNOTRECOGNISED"));}},assign:function(a,b,c){switch(b){case "\x3d":return a===l.voidOperation?null:a;case "/\x3d":return l.toNumber(c)/l.toNumber(a);case "*\x3d":return l.toNumber(c)*l.toNumber(a);case "-\x3d":return l.toNumber(c)-l.toNumber(a);case "+\x3d":return l.isString(c)||l.isString(a)?l.toString(c)+l.toString(a):l.toNumber(c)+l.toNumber(a);case "%\x3d":return l.toNumber(c)%l.toNumber(a);default:throw Error(f.nodeErrorMessage("AssignmentExpression","RUNTIME","OPERATORNOTRECOGNISED"));
}},update:function(a,b,c,d){var e=l.toNumber(a[b]);a[b]="++"===c?e+1:e-1;return!1===d?e:"++"===c?e+1:e-1},memberupdate:function(a,c,d,e){var f;if(l.isArray(a))if(l.isNumber(c)){0>c&&(c=a.length+c);if(0>c||c>=a.length)throw Error("Assignment outside of array bounds");f=l.toNumber(a[c]);a[c]="++"===d?f+1:f-1}else throw Error("Invalid Parameter");else if(a instanceof b){if(!1===l.isString(c))throw Error("Dictionary accessor must be a string");if(!0===a.hasField(c))f=l.toNumber(a.field(c)),a.setField(c,
"++"===d?f+1:f-1);else throw Error("Invalid Parameter");}else if(a instanceof g){if(!1===l.isString(c))throw Error("Feature accessor must be a string");if(!0===a.hasField(c))f=l.toNumber(a.field(c)),a.setField(c,"++"===d?f+1:f-1);else throw Error("Invalid Parameter");}else{if(l.isImmutableArray(a))throw Error("Array is Immutable");throw Error("Invalid Parameter");}return!1===e?f:"++"===d?f+1:f-1},assignmember:function(a,c,d,e){if(l.isArray(a))if(l.isNumber(c)){0>c&&(c=a.length+c);if(0>c||c>a.length)throw Error("Assignment outside of array bounds");
if(c===a.length&&"\x3d"!==d)throw Error("Invalid Parameter");a[c]=this.assign(e,d,a[c])}else throw Error("Invalid Parameter");else if(a instanceof b){if(!1===l.isString(c))throw Error("Dictionary accessor must be a string");if(!0===a.hasField(c))a.setField(c,this.assign(e,d,a.field(c)));else{if("\x3d"!==d)throw Error("Invalid Parameter");a.setField(c,this.assign(e,d,null))}}else if(a instanceof g){if(!1===l.isString(c))throw Error("Feature accessor must be a string");if(!0===a.hasField(c))a.setField(c,
this.assign(e,d,a.field(c)));else{if("\x3d"!==d)throw Error("Invalid Parameter");a.setField(c,this.assign(e,d,null))}}else{if(l.isImmutableArray(a))throw Error("Array is Immutable");throw Error("Invalid Parameter");}},member:function(a,c){if(null===a)throw Error(f.nodeErrorMessage("MemberExpression","RUNTIME","NOTFOUND"));if(a instanceof b||a instanceof g){if(l.isString(c))return a.field(c)}else if(a instanceof k){if(l.isString(c))return I(a,c,"MemberExpression")}else if(l.isArray(a)){if(l.isNumber(c)&&
isFinite(c)&&Math.floor(c)===c){0>c&&(c=a.length+c);if(c>=a.length||0>c)throw Error(f.nodeErrorMessage("MemberExpression","RUNTIME","OUTOFBOUNDS"));return a[c]}}else if(l.isString(a)){if(l.isNumber(c)&&isFinite(c)&&Math.floor(c)===c){0>c&&(c=a.length+c);if(c>=a.length||0>c)throw Error(f.nodeErrorMessage("MemberExpression","RUNTIME","OUTOFBOUNDS"));return a[c]}}else if(l.isImmutableArray(a)&&l.isNumber(c)&&isFinite(c)&&Math.floor(c)===c){0>c&&(c=a.length()+c);if(c>=a.length()||0>c)throw Error(f.nodeErrorMessage("MemberExpression",
"RUNTIME","OUTOFBOUNDS"));return a.get(c)}throw Error(f.nodeErrorMessage("MemberExpression","RUNTIME","INVALIDTYPE"));},callfunc:function(a,b,c){return a instanceof l.NativeFunction?a.fn(c,b):a instanceof l.SizzleFunction?a.fn.apply(this,b):a.apply(this,b)}};n.compileScript=function(a,c){void 0===c&&(c=null);null===c&&(c={vars:{},customfunctions:{}});c={globalScope:L(c.vars,V,c.customfunctions),localScope:null,console:ba,symbols:{symbolCounter:0}};a=A(c,a.body[0].body);""===a&&(a="lc.voidOperation;");
c={lc:l,lang:ea,postProcess:function(a){a instanceof l.ReturnResult&&(a=a.value);a instanceof l.ImplicitResult&&(a=a.value);a===l.voidOperation&&(a=null);if(a===l.breakResult)throw Error("Cannot return BREAK");if(a===l.continueResult)throw Error("Cannot return CONTINUE");if(l.isFunctionParameter(a))throw Error("Cannot return FUNCTION");return a},prepare:function(a,c){c||(c=new z({wkid:102100}));var d=a.vars,e=a.customfunctions,f=new oa;d||(d={});e||(e={});var k=new b({newline:"\n",tab:"\t",singlequote:"'",
doublequote:'"',forwardslash:"/",backwardslash:"\\"});k.immutable=!1;f._SymbolsMap={textformatting:1,infinity:1,pi:1};f.textformatting=k;f.infinity=Number.POSITIVE_INFINITY;f.pi=Math.PI;for(var h in e)f[h]=e[h],f._SymbolsMap[h]=1;for(h in d)f._SymbolsMap[h]=1,f[h]=d[h]&&"esri.Graphic"===d[h].declaredClass?g.createFromGraphic(d[h]):d[h];return{spatialReference:c,globalScope:f,localScope:null,console:a.console?a.console:ba,symbols:{symbolCounter:0},depthCounter:1,applicationCache:void 0===a.applicationCache?
null:a.applicationCache}}};return(new Function("context","spatialReference","var runtimeCtx\x3dthis.prepare(context, spatialReference);\n var lc \x3d this.lc;  var lang \x3d this.lang; var gscope\x3druntimeCtx.globalScope; \n function mainBody() {\n var lastStatement\x3dlc.voidOperation;\n "+a+"\n return lastStatement; } \n return this.postProcess(mainBody());")).bind(c)}})},"esri/arcade/Feature":function(){define("require exports ../core/tsSupport/assignHelper ./Dictionary ./ImmutableArray ./languageUtils ../geometry/Geometry ../geometry/Point ../geometry/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e){return function(){function c(){this.declaredClass="esri.arcade.Feature";this._layer=this.attributes=this._geometry=null;this.immutable=this.immutable=this._datesfixed=!0}c.createFromGraphic=function(a){var b=new c;b._geometry=a.geometry;b.attributes=void 0===a.attributes?{}:null===a.attributes?{}:a.attributes;a._sourceLayer?(b._layer=a._sourceLayer,b._datesfixed=!1):a._layer?(b._layer=a._layer,b._datesfixed=!1):a.layer&&(b._layer=a.layer,b._datesfixed=!1);return b};c.createFromArcadeFeature=
function(a){var b=new c;b._datesfixed=a._datesfixed;b.attributes=a.attributes;b._geometry=a._geometry;a._layer&&(b._layer=a._layer);return b};c.createFromArcadeDictionary=function(a){var b=new c;b.attributes=a.field("attributes");null!==b.attributes?b.attributes instanceof g?(b.attributes=b.attributes.attributes,null===b.attributes&&(b.attributes={})):b.attributes={}:b.attributes={};b._geometry=a.field("geometry");null!==b._geometry&&(b._geometry instanceof g?b._geometry=c.parseGeometryFromDictionary(b._geometry):
b._geometry instanceof l||(b._geometry=null));return b};c.createFromGraphicLikeObject=function(a,b,e){void 0===e&&(e=null);var d=new c;null===b&&(b={});d.attributes=b;d._geometry=a;d._layer=e;d._layer&&(d._datesfixed=!1);return d};c.prototype.repurposeFromGraphicLikeObject=function(a,b,c){void 0===c&&(c=null);null===b&&(b={});this.attributes=b;this._geometry=a;this._datesfixed=(this._layer=c)?!1:!0};c.prototype.castToText=function(){var a="",b;for(b in this.attributes){""!==a&&(a+=",");var c=this.attributes[b];
null==c?a+=JSON.stringify(b)+":null":p.isBoolean(c)||p.isNumber(c)||p.isString(c)?a+=JSON.stringify(b)+":"+JSON.stringify(c):c instanceof l?a+=JSON.stringify(b)+":"+p.toStringExplicit(c):c instanceof h?a+=JSON.stringify(b)+":"+p.toStringExplicit(c):c instanceof Array?a+=JSON.stringify(b)+":"+p.toStringExplicit(c):c instanceof Date?a+=JSON.stringify(b)+":"+JSON.stringify(c):null!==c&&"object"===typeof c&&void 0!==c.castToText&&(a+=JSON.stringify(b)+":"+c.castToText())}return'{"geometry":'+(null===
this.geometry()?"null":p.toStringExplicit(this.geometry()))+',"attributes":{'+a+"}}"};c.prototype._fixDates=function(){for(var a=[],b=0;b<this._layer.fields.length;b++){var c=this._layer.fields[b];"date"!==c.type&&"esriFieldTypeDate"!==c.type||a.push(c.name)}0<a.length&&this._fixDateFields(a);this._datesfixed=!0};c.prototype._fixDateFields=function(a){this.attributes=b({},this.attributes);for(var c=0;c<a.length;c++){var e=this.attributes[a[c]];if(null!==e)if(void 0===e)for(var f in this.attributes){if(f.toLowerCase()===
a[c]){e=this.attributes[f];null===e||e instanceof Date||(this.attributes[f]=new Date(e));break}}else e instanceof Date||(this.attributes[a[c]]=new Date(e))}};c.prototype.geometry=function(){return null===this._geometry||this._geometry instanceof l?this._geometry:this._geometry=e.fromJson(this._geometry)};c.prototype.field=function(a){!1===this._datesfixed&&this._fixDates();var b=a.toLowerCase();a=this.attributes[a];if(void 0!==a)return a;for(var c in this.attributes)if(c.toLowerCase()===b)return this.attributes[c];
if(this._hasFieldDefinition(b))return null;throw Error("Field not Found");};c.prototype._hasFieldDefinition=function(a){if(null===this._layer)return!1;for(var b=0;b<this._layer.fields.length;b++)if(this._layer.fields[b].name.toLowerCase()===a)return!0;return!1};c.prototype._field=function(a){!1===this._datesfixed&&this._fixDates();var b=a.toLowerCase();a=this.attributes[a];if(void 0!==a)return a;for(var c in this.attributes)if(c.toLowerCase()===b)return this.attributes[c];return null};c.prototype.setField=
function(a,b){if(this.immutable)throw Error("Feature is Immutable");if(!1===p.isSimpleType(b))throw Error("Illegal Value Assignment to Feature");var c=a.toLowerCase();if(void 0===this.attributes[a])for(var d in this.attributes)if(d.toLowerCase()===c){this.attributes[d]=b;return}this.attributes[a]=b};c.prototype.hasField=function(a){var b=a.toLowerCase();if(void 0!==this.attributes[a])return!0;for(var c in this.attributes)if(c.toLowerCase()===b)return!0;return this._hasFieldDefinition(b)?!0:!1};c.prototype.keys=
function(){var a=[],b={},c;for(c in this.attributes)a.push(c),b[c.toLowerCase()]=1;if(null!==this._layer)for(c=0;c<this._layer.fields.length;c++){var e=this._layer.fields[c];1!==b[e.name.toLowerCase()]&&a.push(e.name)}return a=a.sort()};c.parseGeometryFromDictionary=function(a){a=c.convertDictionaryToJson(a,!0);void 0!==a.spatialreference&&(a.spatialReference=a.spatialreference,delete a.spatialreference);void 0!==a.rings&&(a.rings=this.fixPathArrays(a.rings,!0===a.hasZ,!0===a.hasM));void 0!==a.paths&&
(a.paths=this.fixPathArrays(a.paths,!0===a.hasZ,!0===a.hasM));void 0!==a.points&&(a.points=this.fixPointArrays(a.points,!0===a.hasZ,!0===a.hasM));return e.fromJson(a)};c.fixPathArrays=function(a,b,c){var d=[];if(a instanceof Array)for(var e=0;e<a.length;e++)d.push(this.fixPointArrays(a[e],b,c));else if(a instanceof h)for(e=0;e<a.length();e++)d.push(this.fixPointArrays(a.get(e),b,c));return d};c.fixPointArrays=function(a,b,c){var d=[];if(a instanceof Array)for(var e=0;e<a.length;e++){var g=a[e];g instanceof
f?b&&c?d.push([g.x,g.y,g.z,g.m]):b?d.push([g.x,g.y,g.z]):c?d.push([g.x,g.y,g.m]):d.push([g.x,g.y]):d.push(g)}else if(a instanceof h)for(e=0;e<a.length();e++)g=a.get(e),g instanceof f?b&&c?d.push([g.x,g.y,g.z,g.m]):b?d.push([g.x,g.y,g.z]):c?d.push([g.x,g.y,g.m]):d.push([g.x,g.y]):d.push(g);return d};c.convertDictionaryToJson=function(a,b){void 0===b&&(b=!1);var d={},e;for(e in a.attributes){var f=a.attributes[e];f instanceof g&&(f=c.convertDictionaryToJson(f));b?d[e.toLowerCase()]=f:d[e]=f}return d};
c.parseAttributesFromDictionary=function(a){var b={},c;for(c in a.attributes){var e=a.attributes[c];if(p.isSimpleType(e))b[c]=e;else throw Error("Illegal Argument");}return b};c.fromJson=function(a){var b=null;null!==a.geometry&&void 0!==a.geometry&&(b=e.fromJson(a.geometry));var f={};if(null!==a.attributes&&void 0!==a.attributes)for(var g in a.attributes){var h=a.attributes[g];if(p.isString(h)||p.isNumber(h)||p.isBoolean(h)||p.isDate(h))f[g]=h;else throw Error("Illegal Argument");}return c.createFromGraphicLikeObject(b,
f,null)};c.prototype.domainValueLookup=function(a,b,c){if(null===this._layer||!this._layer.fields)return null;c=p.getDomain(a,this._layer,this,c);if(void 0===b)try{b=this.field(a)}catch(w){return null}return p.getDomainValue(c,b)};c.prototype.domainCodeLookup=function(a,b,c){if(null===this._layer||!this._layer.fields)return null;a=p.getDomain(a,this._layer,this,c);return p.getDomainCode(a,b)};return c}()})},"esri/core/tsSupport/assignHelper":function(){define([],function(){return Object.assign||function(q){for(var n,
b=1,g=arguments.length;b<g;b++){n=arguments[b];for(var h in n)Object.prototype.hasOwnProperty.call(n,h)&&(q[h]=n[h])}return q}})},"esri/arcade/treeAnalysis":function(){define(["require","exports"],function(q,n){function b(a,b,c,d){return"0"!==a.min&&c.length<Number(a.min)||"*"!==a.max&&c.length>Number(a.max)?-2:1}function g(a,c,d){if(null!==d.localScope&&void 0!==d.localScope[a.toLowerCase()]){var e=d.localScope[a.toLowerCase()];if("FormulaFunction"===e.type||"any"===e.type)return void 0===e.signature&&
(e.signature={min:"0",max:"*"}),b(e.signature,a,c,d)}return void 0!==d.globalScope[a.toLowerCase()]&&(e=d.globalScope[a.toLowerCase()],"FormulaFunction"===e.type||"any"===e.type)?(void 0===e.signature&&(e.signature={min:"0",max:"*"}),b(e.signature,a,c,d)):-1}function h(a,b){void 0===b&&(b=!0);var c=m(a,"SYNTAX","UNREOGNISED");try{switch(a.type){case "VariableDeclarator":return null!==a.init&&"FunctionExpression"===a.init.type?m(a,"SYNTAX","FUNCTIONVARIABLEDECLARATOR"):"Identifier"!==a.id.type?m(a,
"SYNTAX","VARIABLEMUSTHAVEIDENTIFIER"):null!==a.init?h(a.init,!1):"";case "VariableDeclaration":for(var d=0;d<a.declarations.length;d++)if(c=h(a.declarations[d],b),""!==c)return c;return"";case "ForInStatement":c=h(a.left,b);if(""!==c)break;if("VariableDeclaration"===a.left.type){if(1<a.left.declarations.length)return m(a,"SYNTAX","ONLY1VAR");if(null!==a.left.declarations[0].init)return m(a,"SYNTAX","CANNOTDECLAREVAL")}else if("Identifier"!==a.left.type)return m(a,"SYNTAX","LEFTNOTVAR");c=h(a.right,
b);if(""!==c)break;c=h(a.body,b);if(""!==c)break;return"";case "ForStatement":if(null!==a.test&&(c=h(a.test,b),""!==c))break;if(null!==a.init&&(c=h(a.init,b),""!==c))break;if(null!==a.update&&(c=h(a.update,b),""!==c))break;if(null!==a.body&&(c=h(a.body,b),""!==c))break;return"";case "ContinueStatement":return"";case "EmptyStatement":return"";case "BreakStatement":return"";case "IfStatement":c=h(a.test,b);if(""!==c)break;if(null!==a.consequent&&(c=h(a.consequent,!1),""!==c))break;if(null!==a.alternate&&
(c=h(a.alternate,!1),""!==c))break;return"";case "BlockStatement":for(var e=[],d=0;d<a.body.length;d++)"EmptyStatement"!==a.body[d].type&&e.push(a.body[d]);a.body=e;for(d=0;d<a.body.length;d++)if(c=h(a.body[d],b),""!==c)return c;return"";case "FunctionDeclaration":return!1===b?m(a,"SYNTAX","GLOBALFUNCTIONSONLY"):"Identifier"!==a.id.type?m(a,"SYNTAX","FUNCTIONMUSTHAVEIDENTIFIER"):h(a.body,!1);case "ReturnStatement":return null!==a.argument?h(a.argument,b):"";case "UpdateExpression":return"Identifier"!==
a.argument.type&&"MemberExpression"!==a.argument.type?m(a,"SYNTAX","ASSIGNMENTTOVARSONLY"):h(a.argument,b);case "AssignmentExpression":if("Identifier"!==a.left.type&&"MemberExpression"!==a.left.type)return m(a,"SYNTAX","ASSIGNMENTTOVARSONLY");c=h(a.left,b);if(""!==c)break;switch(a.operator){case "\x3d":case "/\x3d":case "*\x3d":case "%\x3d":case "+\x3d":case "-\x3d":break;default:return m(a,"SYNTAX","OPERATORNOTRECOGNISED")}return h(a.right,!1);case "ExpressionStatement":return h(a.expression,!1);
case "Identifier":c="";break;case "MemberExpression":c=h(a.object,b);if(""!==c)break;return!0===a.computed?h(a.property,b):"";case "Literal":return"";case "ThisExpression":return m(a,"SYNTAX","NOTSUPPORTED");case "CallExpression":if("Identifier"!==a.callee.type)return m(a,"SYNTAX","ONLYNODESSUPPORTED");c="";for(d=0;d<a.arguments.length;d++)if(c=h(a.arguments[d],b),""!==c)return c;return"";case "UnaryExpression":c=h(a.argument,b);break;case "BinaryExpression":c=h(a.left,b);if(""!==c)break;c=h(a.right,
b);if(""!==c)break;switch(a.operator){case "\x3d\x3d":case "!\x3d":case "\x3c":case "\x3c\x3d":case "\x3e":case "\x3e\x3d":case "+":case "-":case "*":case "/":case "%":break;default:return m(a,"SYNTAX","OPERATORNOTRECOGNISED")}return"";case "LogicalExpression":c=h(a.left,b);if(""!==c)break;c=h(a.right);if(""!==c)break;switch(a.operator){case "\x26\x26":case "||":break;default:return m(a,"SYNTAX","OPERATORNOTRECOGNISED")}return"";case "ConditionalExpression":return m(a,"SYNTAX","NOTSUPPORTED");case "ArrayExpression":c=
"";for(d=0;d<a.elements.length&&(c=h(a.elements[d],b),""===c);d++);break;case "Array":return m(a,"SYNTAX","NOTSUPPORTED");case "ObjectExpression":c="";for(d=0;d<a.properties.length&&(c="",null!==a.properties[d].key&&("Literal"!==a.properties[d].key.type&&"Identifier"!==a.properties[d].key.type&&(c=m(a,"SYNTAX","OBJECTPROPERTYMUSTBESTRING")),"Literal"===a.properties[d].key.type&&(e=a.properties[d].key.value,"string"===typeof e||e instanceof String||(c=m(a,"SYNTAX","OBJECTPROPERTYMUSTBESTRING")))),
""===c&&(c=h(a.properties[d],b)),""===c);d++);break;case "Property":if("Literal"!==a.key.type&&"Identifier"!==a.key.type)return m(a,"SYNTAX","ONLYLITERAL");if("Identifier"!==a.key.type&&(c=h(a.key,b),""!==c))break;c=h(a.value,b)}return c}catch(A){throw A;}}function p(b,d){var e=m(b,"SYNTAX","UNREOGNISED"),f=null,k="";try{switch(b.type){case "VariableDeclarator":if(null!==b.init&&"FunctionExpression"===b.init.type)return m(b,"SYNTAX","FUNCTIONVARIABLEDECLARATOR");b.id.name.toLowerCase();var h=null===
b.init?"":p(b.init,d);if(""!==h)return h;null===d.localScope?d.globalScope[b.id.name.toLowerCase()]={type:"any"}:d.localScope[b.id.name.toLowerCase()]={type:"any"};return"";case "FunctionDeclaration":f=c(b.id.name.toLowerCase(),b,d);k=a(b,d);if(""!==k)return k;if(null!==d.localScope)return m(b,"SYNTAX","GLOBALFUNCTIONSONLY");f.isnative=!1;d.globalScope[b.id.name.toLowerCase()]={type:"FormulaFunction",signature:[f]};return"";case "VariableDeclaration":for(var e="",l=0;l<b.declarations.length&&(e=p(b.declarations[l],
d),""===e);l++);break;case "IfStatement":e=p(b.test,d);if(""!==e)break;if("AssignmentExpression"===b.test.type||"UpdateExpression"===b.test.type)return m(b.test,"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION");if(null!==b.consequent&&(e=p(b.consequent,d),""!==e))break;if(null!==b.alternate&&(e=p(b.alternate,d),""!==e))break;return"";case "EmptyStatement":return"";case "BlockStatement":for(l=0;l<b.body.length;l++)if(e=p(b.body[l],d),""!==e)return e;return"";case "ReturnStatement":return null!==b.argument?
p(b.argument,d):"";case "ForInStatement":if("VariableDeclaration"===b.left.type){if(1<b.left.declarations.length)return m(b,"SYNTAX","ONLY1VAR");if(null!==b.left.declarations[0].init)return m(b,"SYNTAX","CANNOTDECLAREVAL")}else if("Identifier"!==b.left.type)return m(b,"SYNTAX","LEFTNOTVAR");e=p(b.left,d);if(""!==e)break;e=p(b.right,d);if(""!==e)break;e=p(b.body,d);if(""!==e)break;return"";case "ForStatement":if(null!==b.init&&(e=p(b.init,d),""!==e))break;if(null!==b.test&&(e=p(b.test,d),""!==e))break;
if(null!==b.body&&(e=p(b.body,d),""!==e))break;if(null!==b.update&&(e=p(b.update,d),""!==e))break;return"";case "BreakStatement":return"";case "ContinueStatement":return"";case "UpdateExpression":if("Identifier"!==b.argument.type&&"MemberExpression"!==b.argument.type)return m(b,"SYNTAX","ASSIGNMENTTOVARSONLY");var r=!1;if("MemberExpression"===b.argument.type)return p(b.argument,d);null!==d.localScope&&void 0!==d.localScope[b.argument.name.toLowerCase()]&&(r=!0);void 0!==d.globalScope[b.argument.name.toLowerCase()]&&
(r=!0);return!1===r?"Identifier "+b.argument.name+" has not been declared.":"";case "AssignmentExpression":if("Identifier"!==b.left.type&&"MemberExpression"!==b.left.type)return m(b,"SYNTAX","ASSIGNMENTTOVARSONLY");var n=p(b.right,d);if(""!==n)return n;r=!1;if("MemberExpression"===b.left.type)return n=p(b.left,d),""!==n?n:"";null!==d.localScope&&void 0!==d.localScope[b.left.name.toLowerCase()]&&(r=!0);void 0!==d.globalScope[b.left.name.toLowerCase()]&&(r=!0);return!1===r?"Identifier "+b.left.name+
" has not been declared.":"";case "ExpressionStatement":return p(b.expression,d);case "Identifier":var q=b.name.toLowerCase();if(null!==d.localScope&&void 0!==d.localScope[q])return"";e=void 0!==d.globalScope[q]?"":m(b,"SYNTAX","VARIABLENOTFOUND");break;case "MemberExpression":e=p(b.object,d);if(""!==e)break;return!0===b.computed?p(b.property,d):"";case "Literal":return"";case "ThisExpression":e=m(b,"SYNTAX","NOTSUPPORTED");break;case "CallExpression":if("Identifier"!==b.callee.type)return m(b,"SYNTAX",
"ONLYNODESSUPPORTED");e="";for(l=0;l<b.arguments.length;l++)if(e=p(b.arguments[l],d),""!==e)return e;var t=g(b.callee.name,b.arguments,d);-1===t&&(e=m(b,"SYNTAX","NOTFOUND"));-2===t&&(e=m(b,"SYNTAX","WRONGSIGNATURE"));break;case "UnaryExpression":e=p(b.argument,d);break;case "BinaryExpression":e=p(b.left,d);if(""!==e)break;e=p(b.right,d);if(""!==e)break;return"";case "LogicalExpression":e=p(b.left,d);if(""!==e)break;if("AssignmentExpression"===b.left.type||"UpdateExpression"===b.left.type)return m(b.left,
"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION");e=p(b.right,d);if(""!==e)break;return"AssignmentExpression"===b.right.type||"UpdateExpression"===b.right.type?m(b.right,"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION"):"";case "ConditionalExpression":return m(b,"SYNTAX","NOTSUPPORTED");case "ArrayExpression":e="";for(l=0;l<b.elements.length&&(e=p(b.elements[l],d),""===e);l++);break;case "ObjectExpression":e="";for(l=0;l<b.properties.length;l++){e="";if(null!==b.properties[l].key&&("Literal"!==b.properties[l].key.type&&
"Identifier"!==b.properties[l].key.type&&(e=m(b,"SYNTAX","OBJECTPROPERTYMUSTBESTRING")),"Literal"===b.properties[l].key.type)){var y=b.properties[l].key.value;"string"===typeof y||y instanceof String||(e=m(b,"SYNTAX","OBJECTPROPERTYMUSTBESTRING"))}""===e&&(e=p(b.properties[l],d));if(""!==e)break}break;case "Property":if("Literal"!==b.key.type&&"Identifier"!==b.key.type)return m(b,"SYNTAX","ONLYLITERAL");if("Identifier"!==b.key.type&&(e=p(b.key,d),""!==e))break;e=p(b.value,d);break;case "Array":return m(b,
"SYNTAX","NOTSUPPORTED")}return e}catch(X){throw X;}}function l(a,b){var c=!1;try{switch(a.type){case "VariableDeclarator":return null!==a.init?l(a.init,b):c;case "FunctionDeclaration":return l(a.body,b);case "VariableDeclaration":for(var d=0;d<a.declarations.length;d++)if(l(a.declarations[d],b))return!0;return c;case "IfStatement":return l(a.test,b)||null!==a.consequent&&l(a.consequent,b)||null!==a.alternate&&l(a.alternate,b)?!0:c;case "EmptyStatement":return c;case "BlockStatement":for(d=0;d<a.body.length;d++)if(l(a.body[d],
b))return!0;return c;case "ReturnStatement":return null!==a.argument?l(a.argument,b):c;case "UpdateExpression":return l(a.argument,b);case "AssignmentExpression":return(c=l(a.right,b))?c:l(a.left,b);case "ExpressionStatement":return l(a.expression,b);case "ForInStatement":return(c=l(a.left,b))||(c=l(a.right,b))?c:c=l(a.body,b);case "ForStatement":if(null!==a.init&&(c=l(a.init,b))||null!==a.test&&(c=l(a.test,b))||null!==a.body&&(c=l(a.body,b)))return c;null!==a.update&&(c=l(a.update,b));return c;case "BreakStatement":return c;
case "ContinueStatement":return c;case "Compound":return c;case "Identifier":return b.toLowerCase()===a.name.toLowerCase();case "MemberExpression":if(c=l(a.object,b))return c;!0===a.computed&&(c=l(a.property,b));return c;case "Literal":return c;case "ThisExpression":return c;case "CallExpression":for(d=0;d<a.arguments.length;d++)l(a.arguments[d],b)&&(c=!0);return c;case "ArrayExpression":for(d=0;d<a.elements.length;d++)l(a.elements[d],b)&&(c=!0);return c;case "UnaryExpression":return l(a.argument,
b);case "BinaryExpression":return(c=l(a.left,b))?c:c=l(a.right,b);case "LogicalExpression":return(c=l(a.left,b))?c:c=l(a.right,b);case "ObjectExpression":for(d=0;d<a.properties.length;d++)l(a.properties[d],b)&&(c=!0);return c;case "Property":return c=l(a.value,b);case "ConditionalExpression":return c;case "Array":return c;default:return c}}catch(x){throw x;}}function f(a,b){var c=!1;try{switch(a.type){case "VariableDeclarator":return null!==a.init?f(a.init,b):c;case "FunctionDeclaration":return f(a.body,
b);case "VariableDeclaration":for(var d=0;d<a.declarations.length;d++)if(f(a.declarations[d],b))return!0;return c;case "IfStatement":return f(a.test,b)||null!==a.consequent&&f(a.consequent,b)||null!==a.alternate&&f(a.alternate,b)?!0:c;case "EmptyStatement":return c;case "BlockStatement":for(d=0;d<a.body.length;d++)if(f(a.body[d],b))return!0;return c;case "ReturnStatement":return null!==a.argument?f(a.argument,b):c;case "UpdateExpression":return f(a.argument,b);case "AssignmentExpression":return f(a.left,
b)?!0:f(a.right,b);case "ExpressionStatement":return f(a.expression,b);case "ForInStatement":return(c=f(a.left,b))||(c=f(a.right,b))?c:c=f(a.body,b);case "ForStatement":if(null!==a.init&&(c=f(a.init,b))||null!==a.test&&(c=f(a.test,b))||null!==a.body&&(c=f(a.body,b)))return c;null!==a.update&&(c=f(a.update,b));return c;case "BreakStatement":return c;case "ContinueStatement":return c;case "Compound":return c;case "Identifier":return c;case "MemberExpression":if(c=f(a.object,b))return c;!0===a.computed&&
(c=f(a.property,b));return c;case "Literal":return c;case "ThisExpression":return c;case "CallExpression":if(a.callee.name.toLowerCase()===b.toLowerCase())return!0;for(d=0;d<a.arguments.length;d++)f(a.arguments[d],b)&&(c=!0);return c;case "ArrayExpression":for(d=0;d<a.elements.length;d++)f(a.elements[d],b)&&(c=!0);return c;case "UnaryExpression":return f(a.argument,b);case "BinaryExpression":return(c=f(a.left,b))?c:c=f(a.right,b);case "LogicalExpression":return(c=f(a.left,b))?c:c=f(a.right,b);case "ConditionalExpression":return c;
case "ObjectExpression":for(d=0;d<a.properties.length;d++)f(a.properties[d],b)&&(c=!0);return c;case "Property":return c=f(a.value,b);case "Array":return c;default:return c}}catch(x){throw x;}}function e(a,b){var c=[],d;try{switch(a.type){case "VariableDeclarator":return null!==a.init?e(a.init,b):c;case "FunctionDeclaration":return e(a.body,b);case "VariableDeclaration":for(var f=0;f<a.declarations.length;f++)d=e(a.declarations[f],b),c=c.concat(d);return c;case "ForInStatement":return d=e(a.left,
b),c=c.concat(d),d=e(a.right,b),c=c.concat(d),d=e(a.body,b),c=c.concat(d);case "ForStatement":return null!==a.init&&(d=e(a.init,b),c=c.concat(d)),null!==a.test&&(d=e(a.test,b),c=c.concat(d)),null!==a.body&&(d=e(a.body,b),c=c.concat(d)),null!==a.update&&(d=e(a.update,b),c=c.concat(d)),c;case "IfStatement":return d=e(a.test,b),c=c.concat(d),null!==a.consequent&&(d=e(a.consequent,b),c=c.concat(d)),null!==a.alternate&&(d=e(a.alternate,b),c=c.concat(d)),c;case "EmptyStatement":return c;case "BlockStatement":for(f=
0;f<a.body.length;f++)d=e(a.body[f],b),c=c.concat(d);return c;case "ReturnStatement":return null!==a.argument?e(a.argument,b):c;case "UpdateExpression":return e(a.argument,b);case "AssignmentExpression":return c=e(a.left,b),c=c.concat(e(a.right,b));case "ExpressionStatement":return e(a.expression,b);case "BreakStatement":return c;case "ContinueStatement":return c;case "Compound":return c;case "Identifier":return c;case "MemberExpression":if("Identifier"!==a.object.type)return c;if(!1===a.computed)c.push(a.object.name.toLowerCase()+
"."+a.property.name.toLowerCase());else try{"Literal"===a.property.type&&"string"===typeof a.property.value&&c.push(a.object.name.toLowerCase()+"."+a.property.value.toString().toLowerCase())}catch(A){}return c;case "Literal":return c;case "ThisExpression":return c;case "CallExpression":for(f=0;f<a.arguments.length;f++)d=e(a.arguments[f],b),c=c.concat(d);return c;case "ArrayExpression":for(f=0;f<a.elements.length;f++)d=e(a.elements[f],b),c=c.concat(d);return c;case "UnaryExpression":return e(a.argument,
b);case "ObjectExpression":for(f=0;f<a.properties.length;f++)d=e(a.properties[f],b),c=c.concat(d);return c;case "Property":return e(a.value,b);case "BinaryExpression":return d=e(a.left,b),c=c.concat(d),d=e(a.right,b),c=c.concat(d);case "LogicalExpression":return d=e(a.left,b),c=c.concat(d),d=e(a.right,b),c=c.concat(d);case "ConditionalExpression":return c;case "Array":return c;default:return c}}catch(A){throw A;}}function c(a,b,c){c=[];if(void 0!==b.params&&null!==b.params)for(var d=0;d<b.params.length;d++)c.push("any");
return{name:a,return:"any",params:c}}function a(a,b){b={globalScope:b.globalScope,localScope:{}};for(var c=0;c<a.params.length;c++)b.localScope[a.params[c].name.toLowerCase()]={type:"any"};return p(a.body,b)}function d(a,b,c,d){var e={};if(void 0===a||null===a)a={};if(void 0===c||null===c)c={};e.infinity={type:"any"};e.textformatting={type:"any"};e.pi={type:"any"};for(var f in b)if("simple"!==d||"simple"===d&&"a"===b[f].av)e[f]={type:"FormulaFunction",signature:{min:b[f].min,max:b[f].max}},"simple"!==
d&&(void 0!==b[f].fmin&&(e[f].signature.min=b[f].fmin),void 0!==b[f].fmax&&(e[f].signature.max=b[f].fmax));for(b=0;b<c.length;b++)f=c[b],e[f.name]={type:"FormulaFunction",signature:f};for(f in a)e[f]=a[f],e[f].type="any";return e}function m(a,b,c){var d="";switch(b){case "SYNTAX":d="Syntax Error: ";break;case "RUNTIME":d="Runtime Error: ";break;default:d="Syntax Error: "}try{switch(a.type){case "IfStatement":switch(c){case "CANNOT_USE_ASSIGNMENT_IN_CONDITION":d+=" Assignments not be made in logical tests";
break;case "CANNOT_USE_NONBOOLEAN_IN_CONDITION":d+=" Non Boolean used as Condition"}break;case "UpdateExpression":case "AssignmentExpression":switch(c){case "CANNOT_USE_ASSIGNMENT_IN_CONDITION":d+=" Assignments not be made in logical tests";break;case "ASSIGNMENTTOVARSONLY":d+=" Assignments can only be made to identifiers"}break;case "ExpressionStatement":d+=" Assignments can only be made to identifiers";break;case "FunctionDeclaration":switch(c){case "GLOBALFUNCTIONSONLY":d+=" Functions cannot be declared as variables";
break;case "FUNCTIONMUSTHAVEIDENTIFIER":d+=" Function Definition must have an identifier"}break;case "VariableDeclaration":d+=" Only 1 variable can be declared at a time";break;case "VariableDeclarator":switch(c){case "FUNCTIONVARIABLEDECLARATOR":d+=" Functions cannot be declared as variables";break;case "VARIABLEMUSTHAVEIDENTIFIER":d+=" Variable Definition must have an identifier"}break;case "Identifier":d+=" Identifier Not Found. ";d+=a.name;break;case "ObjectExpression":switch(c){case "OBJECTPROPERTYMUSTBESTRING":d+=
" Property name must be a string"}break;case "ForStatement":switch(c){case "CANNOT_USE_NONBOOLEAN_IN_CONDITION":d+=" Non Boolean used as Condition"}break;case "ForInStatement":switch(c){case "ONLY1VAR":d+=" Can only declare 1 var for use with IN";break;case "CANNOTDECLAREVAL":d+=" Can only declare value for use with IN";break;case "LEFTNOVAR":d+="Must provide a variable to iterate with.";break;case "VARIABLENOTDECLARED":d+="Variable must be declared before it is used..";break;case "CANNOTITERATETHISTYPE":d+=
"This type cannot be used in an IN loop"}break;case "MemberExpression":switch(c){case "PROPERTYNOTFOUND":d+="Cannot find member property. ";d+=!1===a.computed?a.property.name:"";break;case "OUTOFBOUNDS":d+="Out of Bounds. ";d+=!1===a.computed?a.property.name:"";break;case "NOTFOUND":d+="Cannot call member method on null. ";d+=!1===a.computed?a.property.name:"";break;case "INVALIDTYPE":d+="Cannot call member property on object of this type. ",d+=!1===a.computed?a.property.name:""}break;case "Property":switch(c){case "ONLYLITERAL":d+=
"Property names must be literals or identifiers"}break;case "Literal":break;case "ThisExpression":d+="THIS construct is not supported.";case "CallExpression":switch(c){case "WRONGSIGNATURE":d+="Function signature does not match: ";d+=a.callee.name;break;case "ONLYNODESUPPORTED":d+="Functions must be declared.";d+=a.callee.name;break;case "NOTAFUNCTION":d+="Not a Function: ";d+=a.callee.name;break;case "NOTFOUND":d+="Function Not Found: "+a.callee.name}break;case "UnaryExpression":switch(c){case "NOTSUPPORTEDUNARYOPERATOR":d+=
"Operator "+a.operator+" not allowed in this context. Only ! can be used with boolean, and - with a number";break;case "NOTSUPPORTEDTYPE":d+="Unary operator "+a.operator+" cannot be used with this argument."}case "BinaryExpression":switch(c){case "OPERATORNOTRECOGNISED":d+="Binary Operator not recognised "+a.operator}break;case "LogicalExpression":switch(c){case "ONLYBOOLEAN":d+="Operator "+a.operator+" cannot be used. Only || or \x26\x26 are allowed values";break;case "ONLYORORAND":d+="Logical Expression "+
a.operator+" being applied to parameters that are not boolean."}break;case "ConditionalExpression":d+="Conditional statements not supported.";break;case "ArrayExpression":switch(c){case "FUNCTIONCONTEXTILLEGAL":d+=" Cannot Put Function inside Array."}break;case "Array":d+="Expression contains unrecognised array structure.";break;default:d+="Expression contains unrecognised code structures."}}catch(x){throw x;}return d}function w(a,b,c){return{line:a.loc.start.line,character:a.loc.start.column,reason:m(a,
b,c)}}function t(a,b,c,d,e){void 0===e&&(e=!0);b={globalScope:b.globalScope,localScope:{}};for(e=0;e<a.params.length;e++)b.localScope[a.params[e].name.toLowerCase()]={type:"any"};k(a.body,b,c,d,!1)}function k(a,b,d,e,f){void 0===f&&(f=!0);if(null===a)throw Error("Unnexpexted Expression Syntax");var h=null;try{switch(a.type){case "VariableDeclarator":if(null!==a.init&&"FunctionExpression"===a.init.type){e.push(w(a,"SYNTAX","FUNCTIONVARIABLEDECLARATOR"));break}"Identifier"!==a.id.type?e.push(w(a,"SYNTAX",
"VARIABLEMUSTHAVEIDENTIFIER")):(a.id.name.toLowerCase(),null===b.localScope?b.globalScope[a.id.name.toLowerCase()]={type:"any"}:b.localScope[a.id.name.toLowerCase()]={type:"any"});null===a.init?"":k(a.init,b,d,e,f);break;case "FunctionDeclaration":!1===f&&e.push(w(a,"SYNTAX","GLOBALFUNCTIONSONLY"));"Identifier"!==a.id.type&&e.push(w(a,"SYNTAX","FUNCTIONMUSTHAVEIDENTIFIER"));h=c("",a,b);t(a,b,d,e,f);null!==b.localScope&&e.push(w(a,"SYNTAX","GLOBALFUNCTIONSONLY"));h.isnative=!1;"Identifier"===a.id.type&&
(b.globalScope[a.id.name.toLowerCase()]={type:"FormulaFunction",signature:[h]});break;case "VariableDeclaration":for(var m=0;m<a.declarations.length;m++)k(a.declarations[m],b,d,e,f);break;case "IfStatement":null!==a.test&&(k(a.test,b,d,e,f),"AssignmentExpression"!==a.test.type&&"UpdateExpression"!==a.test.type||e.push(w(a.test,"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION")));null!==a.consequent&&k(a.consequent,b,d,e,f);null!==a.alternate&&k(a.alternate,b,d,e,f);break;case "EmptyStatement":break;case "BlockStatement":if(null!==
a.body)for(m=0;m<a.body.length;m++)k(a.body[m],b,d,e,f);break;case "ReturnStatement":null!==a.argument&&k(a.argument,b,d,e,f);break;case "ForInStatement":"VariableDeclaration"===a.left.type?(1<a.left.declarations.length&&e.push(w(a,"SYNTAX","ONLY1VAR")),null!==a.left.declarations[0].init&&e.push(w(a,"SYNTAX","CANNOTDECLAREVAL"))):"Identifier"!==a.left.type&&e.push(w(a,"SYNTAX","LEFTNOTVAR"));k(a.left,b,d,e,f);k(a.right,b,d,e,f);k(a.body,b,d,e,f);break;case "ForStatement":null!==a.init&&k(a.init,b,
d,e,f);null!==a.test&&k(a.test,b,d,e,f);null!==a.body&&k(a.body,b,d,e,f);null!==a.update&&k(a.update,b,d,e,f);break;case "BreakStatement":break;case "ContinueStatement":break;case "UpdateExpression":"Identifier"!==a.argument.type&&"MemberExpression"!==a.argument.type?e.push(w(a,"SYNTAX","ASSIGNMENTTOVARSONLY")):("Identifier"===a.argument.type&&(h=!1,!1===d&&(null!==b.localScope&&void 0!==b.localScope[a.argument.name.toLowerCase()]&&(h=!0),void 0!==b.globalScope[a.argument.name.toLowerCase()]&&(h=
!0),!1===h&&e.push({line:null===a?0:a.loc.start.line,character:null===a?0:a.loc.start.column,reason:"Identifier "+a.argument.name+" has not been declared."}))),"MemberExpression"===a.argument.type&&k(a.argument,b,d,e,f));break;case "AssignmentExpression":"Identifier"!==a.left.type&&"MemberExpression"!==a.left.type&&e.push(w(a,"SYNTAX","ASSIGNMENTTOVARSONLY"));switch(a.operator){case "\x3d":case "/\x3d":case "*\x3d":case "%\x3d":case "+\x3d":case "-\x3d":break;default:e.push(w(a,"SYNTAX","OPERATORNOTRECOGNISED"))}k(a.right,
b,d,e,f);h=!1;"Identifier"===a.left.type&&(null!==b.localScope&&void 0!==b.localScope[a.left.name.toLowerCase()]&&(h=!0),void 0!==b.globalScope[a.left.name.toLowerCase()]&&(h=!0),!1===d&&!1===h&&e.push({line:null===a?0:a.loc.start.line,character:null===a?0:a.loc.start.column,reason:"Identifier "+a.argument.name+" has not been declared."}));"MemberExpression"===a.left.type&&k(a.left,b,d,e,f);break;case "ExpressionStatement":k(a.expression,b,d,e,f);break;case "Identifier":var l=a.name.toLowerCase();
if(null!==b.localScope&&void 0!==b.localScope[l])break;void 0===b.globalScope[l]&&!1===d&&e.push(w(a,"SYNTAX","VARIABLENOTFOUND"));break;case "MemberExpression":k(a.object,b,d,e,f);!0===a.computed&&k(a.property,b,d,e,f);break;case "Literal":return"";case "ThisExpression":e.push(w(a,"SYNTAX","NOTSUPPORTED"));break;case "CallExpression":"Identifier"!==a.callee.type&&e.push(w(a,"SYNTAX","ONLYNODESSUPPORTED"));for(m=0;m<a.arguments.length;m++)k(a.arguments[m],b,d,e,f);var p=g(a.callee.name,a.arguments,
b);!1===d&&-1===p&&e.push(w(a,"SYNTAX","NOTFOUND"));-2===p&&e.push(w(a,"SYNTAX","WRONGSIGNATURE"));break;case "UnaryExpression":k(a.argument,b,d,e,f);break;case "BinaryExpression":k(a.left,b,d,e,f);k(a.right,b,d,e,f);switch(a.operator){case "\x3d\x3d":case "!\x3d":case "\x3c":case "\x3c\x3d":case "\x3e":case "\x3e\x3d":case "+":case "-":case "*":case "/":case "%":break;default:e.push(w(a,"SYNTAX","OPERATORNOTRECOGNISED"))}break;case "LogicalExpression":switch(a.operator){case "\x26\x26":case "||":break;
default:e.push(w(a,"SYNTAX","OPERATORNOTRECOGNISED"))}k(a.left,b,d,e,f);"AssignmentExpression"!==a.left.type&&"UpdateExpression"!==a.left.type||e.push(w(a,"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));k(a.right,b,d,e,f);"AssignmentExpression"!==a.right.type&&"UpdateExpression"!==a.right.type||e.push(w(a,"SYNTAX","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));break;case "ConditionalExpression":e.push(w(a,"SYNTAX","NOTSUPPORTED"));break;case "ArrayExpression":for(m=0;m<a.elements.length;m++)k(a.elements[m],
b,d,e,f);break;case "Array":e.push(w(a,"SYNTAX","NOTSUPPORTED"));case "ObjectExpression":for(m=0;m<a.properties.length;m++)k(a.properties[m],b,d,e,f);break;case "Property":"Literal"!==a.key.type&&"Identifier"!==a.key.type&&e.push(w(a,"SYNTAX","ONLYLITERAL"));"Literal"===a.key.type&&k(a.key,b,d,e,f);k(a.value,b,d,e,f);break;default:e.push(w(a,"SYNTAX","UNRECOGNISED"))}}catch(E){e.push({line:null===a?0:a.loc.start.line,character:null===a?0:a.loc.start.column,reason:"Unnexpected Syntax"})}}function u(a,
b){var c=[],d;try{switch(a.type){case "VariableDeclarator":return null!==a.init?u(a.init,b):c;case "FunctionDeclaration":return u(a.body,b);case "VariableDeclaration":for(var e=0;e<a.declarations.length;e++)d=u(a.declarations[e],b),c=c.concat(d);return c;case "ForInStatement":return d=u(a.left,b),c=c.concat(d),d=u(a.right,b),c=c.concat(d),d=u(a.body,b),c=c.concat(d);case "ForStatement":return null!==a.init&&(d=u(a.init,b),c=c.concat(d)),null!==a.test&&(d=u(a.test,b),c=c.concat(d)),null!==a.body&&
(d=u(a.body,b),c=c.concat(d)),null!==a.update&&(d=u(a.update,b),c=c.concat(d)),c;case "IfStatement":return d=u(a.test,b),c=c.concat(d),null!==a.consequent&&(d=u(a.consequent,b),c=c.concat(d)),null!==a.alternate&&(d=u(a.alternate,b),c=c.concat(d)),c;case "EmptyStatement":return c;case "BlockStatement":for(e=0;e<a.body.length;e++)d=u(a.body[e],b),c=c.concat(d);return c;case "ReturnStatement":return null!==a.argument?u(a.argument,b):c;case "UpdateExpression":return u(a.argument,b);case "AssignmentExpression":return c=
u(a.left,b),c=c.concat(u(a.right,b));case "ExpressionStatement":return u(a.expression,b);case "BreakStatement":return c;case "ContinueStatement":return c;case "Compound":return c;case "Identifier":return c;case "MemberExpression":return c;case "Literal":return c;case "ThisExpression":return c;case "CallExpression":for(e=0;e<a.arguments.length;e++)d=u(a.arguments[e],b),c=c.concat(d);c.push(a.callee.name.toLowerCase());return c;case "ArrayExpression":for(e=0;e<a.elements.length;e++)d=u(a.elements[e],
b),c=c.concat(d);return c;case "UnaryExpression":return u(a.argument,b);case "ObjectExpression":for(e=0;e<a.properties.length;e++)d=u(a.properties[e],b),c=c.concat(d);return c;case "Property":return u(a.value,b);case "BinaryExpression":return d=u(a.left,b),c=c.concat(d),d=u(a.right,b),c=c.concat(d);case "LogicalExpression":return d=u(a.left,b),c=c.concat(d),d=u(a.right,b),c=c.concat(d);case "ConditionalExpression":return c;case "Array":return c;default:return c}}catch(A){throw A;}}Object.defineProperty(n,
"__esModule",{value:!0});n.functionDecls={concatenate:{min:"0",max:"*",av:"a"},split:{min:"2",max:"4",av:"a"},guid:{min:"0",max:"1",av:"a"},today:{min:"0",max:"0",av:"a"},now:{min:"0",max:"0",av:"a"},timestamp:{min:"0",max:"0",av:"a"},day:{min:"1",max:"1",av:"a"},month:{min:"1",max:"1",av:"a"},year:{min:"1",max:"1",av:"a"},hour:{min:"1",max:"1",av:"a"},second:{min:"1",max:"1",av:"a"},millisecond:{min:"1",max:"1",av:"a"},minute:{min:"1",max:"1",av:"a"},weekday:{min:"1",max:"1",av:"a"},toutc:{min:"1",
max:"1",av:"a"},tolocal:{min:"1",max:"1",av:"a"},date:{min:"0",max:"7",av:"a"},datediff:{min:"2",max:"3",av:"a"},dateadd:{min:"2",max:"3",av:"a"},trim:{min:"1",max:"1",av:"a"},text:{min:"1",max:"2",av:"a"},left:{min:"2",max:"2",av:"a"},right:{min:"2",max:"2",av:"a"},mid:{min:"2",max:"3",av:"a"},upper:{min:"1",max:"1",av:"a"},proper:{min:"1",max:"2",av:"a"},lower:{min:"1",max:"1",av:"a"},find:{min:"2",max:"3",av:"a"},iif:{min:"3",max:"3",av:"a"},decode:{min:"2",max:"*",av:"a"},when:{min:"2",max:"*",
av:"a"},defaultvalue:{min:"2",max:"2",av:"a"},isempty:{min:"1",max:"1",av:"a"},domaincode:{min:"3",max:"4",av:"a"},domainname:{min:"2",max:"4",av:"a"},polygon:{min:"1",max:"1",av:"a"},point:{min:"1",max:"1",av:"a"},polyline:{min:"1",max:"1",av:"a"},extent:{min:"1",max:"1",av:"a"},multipoint:{min:"1",max:"1",av:"a"},geometry:{min:"1",max:"1",av:"a"},count:{min:"0",max:"*",av:"a"},number:{min:"1",max:"2",av:"a"},acos:{min:"1",max:"1",av:"a"},asin:{min:"1",max:"1",av:"a"},atan:{min:"1",max:"1",av:"a"},
atan2:{min:"2",max:"2",av:"a"},ceil:{min:"1",max:"2",av:"a"},floor:{min:"1",max:"2",av:"a"},round:{min:"1",max:"2",av:"a"},cos:{min:"1",max:"1",av:"a"},exp:{min:"1",max:"1",av:"a"},log:{min:"1",max:"1",av:"a"},min:{min:"0",max:"*",av:"a"},constrain:{min:"3",max:"3",av:"a"},console:{min:"0",max:"*",av:"a"},max:{min:"0",max:"*",av:"a"},pow:{min:"2",max:"2",av:"a"},random:{min:"0",max:"0",av:"a"},sqrt:{min:"1",max:"1",av:"a"},sin:{min:"1",max:"1",av:"a"},tan:{min:"1",max:"1",av:"a"},abs:{min:"1",max:"1",
av:"a"},isnan:{min:"1",max:"1",av:"a"},stdev:{min:"0",max:"*",av:"a"},average:{min:"0",max:"*",av:"a"},mean:{min:"0",max:"*",av:"a"},sum:{min:"0",max:"*",av:"a"},variance:{min:"0",max:"*",av:"a"},distinct:{min:"0",max:"*",av:"a"},first:{min:"1",max:"1",av:"a"},top:{min:"2",max:"2",av:"a"},boolean:{min:"1",max:"1",av:"a"},dictionary:{min:"0",max:"*",av:"a"},typeof:{min:"1",max:"1",av:"a"},reverse:{min:"1",max:"1",av:"a"},replace:{min:"3",max:"4",av:"a"},sort:{min:"1",max:"2",av:"a"},feature:{min:"1",
max:"*",av:"a"},haskey:{min:"2",max:"2",av:"a"},indexof:{min:"2",max:"2",av:"a"},disjoint:{min:"2",max:"2",av:"a"},intersects:{min:"2",max:"2",av:"a"},touches:{min:"2",max:"2",av:"a"},crosses:{min:"2",max:"2",av:"a"},within:{min:"2",max:"2",av:"a"},contains:{min:"2",max:"2",av:"a"},overlaps:{min:"2",max:"2",av:"a"},equals:{min:"2",max:"2",av:"a"},relate:{min:"3",max:"3",av:"a"},intersection:{min:"2",max:"2",av:"a"},union:{min:"1",max:"2",av:"a"},difference:{min:"2",max:"2",av:"a"},symmetricdifference:{min:"2",
max:"2",av:"a"},clip:{min:"2",max:"2",av:"a"},cut:{min:"2",max:"2",av:"a"},area:{min:"1",max:"2",av:"a"},areageodetic:{min:"1",max:"2",av:"a"},length:{min:"1",max:"2",av:"a"},lengthgeodetic:{min:"1",max:"2",av:"a"},distance:{min:"2",max:"3",av:"a"},densify:{min:"2",max:"3",av:"a"},densifygeodetic:{min:"2",max:"3",av:"a"},generalize:{min:"2",max:"4",av:"a"},buffer:{min:"2",max:"3",av:"a"},buffergeodetic:{min:"2",max:"3",av:"a"},offset:{min:"2",max:"6",av:"a"},rotate:{min:"2",max:"3",av:"a"},issimple:{min:"1",
max:"1",av:"a"},simplify:{min:"1",max:"1",av:"a"},centroid:{min:"1",max:"1",av:"a"},multiparttosinglepart:{min:"1",max:"1",av:"a"},setgeometry:{min:"2",max:"2",av:"a"}};n.addFunctionDeclaration=function(a,b){var c=n.functionDecls[a.name.toLowerCase()];void 0===c?n.functionDecls[a.name.toLowerCase()]={min:a.min,max:a.max,av:b}:"a"===c.av&&"f"===b?(void 0!==c.fmin&&delete c.fmin,void 0!==c.fmax&&delete c.fmax,c.fmin=a.min,c.fmax=a.max):"f"===c.av&&"a"===b?(void 0===c.fmin&&(c.fmin=c.min),void 0===c.fmax&&
(c.fmax=c.max),c.min=a.min,c.max=a.max,c.av="a"):"f"===b?(c.fmin=a.min,c.fmax=a.max):"a"===b&&(c.min=a.min,c.max=a.max)};n.checkFunctionSignature=b;n.findFunction=g;n.validateLanguageNode=h;n.testValidityOfExpression=p;n.referencesMemberImpl=l;n.referencesMember=function(a,b){return!0===l(a.body[0].body,b.toLowerCase())?!0:!1};n.referencesFunctionImpl=f;n.referencesFunction=function(a,b){return!0===f(a.body[0].body,b)?!0:!1};n.findFieldLiteralsImpl=e;n.findFieldLiterals=function(a,b){return e(a.body[0].body,
b)};n.extractFunctionDeclaration=c;n.validateFunction=a;n.constructGlobalScope=d;n.validateScript=function(a,b,c){void 0===c&&(c="full");b={globalScope:d(b.vars,n.functionDecls,b.customFunctions,c),localScope:null};return p(a.body[0].body,b)};n.validateLanguage=function(a){return"BlockStatement"!==a.body[0].body.type?"Invalid formula content.":h(a.body[0].body)};n.nodeErrorMessage=m;n.makeError=w;n.extractAllIssuesInFunction=t;n.extractAllIssues=k;n.checkScript=function(a,b,c,e){void 0===e&&(e="full");
var f=[];if("BlockStatement"!==a.body[0].body.type)return[{line:0,character:0,reason:"Invalid Body"}];if(null===b||void 0===b)b={vars:{},customFunctions:[]};b={globalScope:d(b.vars,n.functionDecls,b.customFunctions,e),localScope:null};try{k(a.body[0].body,b,c,f)}catch(A){}return f};n.findFunctionCallsImpl=u;n.findFunctionCalls=function(a,b){return u(a.body[0].body,b)}})},"esri/arcade/functions/date":function(){define(["require","exports","../../moment","../languageUtils"],function(q,n,b,g){function h(b){return null===
b?b:isNaN(b.getTime())?null:b}Object.defineProperty(n,"__esModule",{value:!0});n.registerFunctions=function(p,l){p.today=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,0,0);b=new Date;b.setHours(0,0,0,0);return b})};p.now=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,0,0);return new Date})};p.timestamp=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,0,0);b=new Date;return b=new Date(b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate(),b.getUTCHours(),b.getUTCMinutes(),b.getUTCSeconds(),
b.getUTCMilliseconds())})};p.toutc=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?null:new Date(b.getUTCFullYear(),b.getUTCMonth(),b.getUTCDate(),b.getUTCHours(),b.getUTCMinutes(),b.getUTCSeconds(),b.getUTCMilliseconds())})};p.tolocal=function(f,e){return l(f,e,function(c,a,d){g.pcCheck(d,1,1);c=g.toDate(d[0]);return null===c?null:b.utc([c.getFullYear(),c.getMonth(),c.getDate(),c.getHours(),c.getMinutes(),c.getSeconds(),c.getMilliseconds()]).toDate()})};
p.day=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getDate()})};p.month=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getMonth()})};p.year=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getFullYear()})};p.hour=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getHours()})};p.second=function(b,
e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getSeconds()})};p.millisecond=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getMilliseconds()})};p.minute=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getMinutes()})};p.weekday=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,1,1);b=g.toDate(d[0]);return null===b?NaN:b.getDay()})};p.date=function(f,
e){return l(f,e,function(c,a,d){g.pcCheck(d,0,7);if(3===d.length)return h(new Date(g.toNumber(d[0]),g.toNumber(d[1]),g.toNumber(d[2]),0,0,0,0));if(4===d.length)return h(new Date(g.toNumber(d[0]),g.toNumber(d[1]),g.toNumber(d[2]),g.toNumber(d[3]),0,0,0));if(5===d.length)return h(new Date(g.toNumber(d[0]),g.toNumber(d[1]),g.toNumber(d[2]),g.toNumber(d[3]),g.toNumber(d[4]),0,0));if(6===d.length)return h(new Date(g.toNumber(d[0]),g.toNumber(d[1]),g.toNumber(d[2]),g.toNumber(d[3]),g.toNumber(d[4]),g.toNumber(d[5]),
0));if(7===d.length)return h(new Date(g.toNumber(d[0]),g.toNumber(d[1]),g.toNumber(d[2]),g.toNumber(d[3]),g.toNumber(d[4]),g.toNumber(d[5]),g.toNumber(d[6])));if(2===d.length){c=g.toString(d[1]);if(""===c)return null;c=g.standardiseDateFormat(c);d=b(g.toString(d[0]),c,!0);return!0===d.isValid()?d.toDate():null}if(1===d.length){if(g.isString(d[0])&&""===d[0].replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,""))return null;c=g.toNumber(d[0]);return!1===isNaN(c)?h(new Date(c)):g.toDate(d[0])}if(0===d.length)return new Date})};
p.datediff=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,2,3);b=g.toDateM(d[0]);a=g.toDateM(d[1]);if(null===b||null===a)return NaN;switch(g.toString(d[2]).toLowerCase()){case "days":case "day":case "d":return b.diff(a,"days",!0);case "months":case "month":return b.diff(a,"months",!0);case "minutes":case "minute":case "m":return"M"===d[2]?b.diff(a,"months",!0):b.diff(a,"minutes",!0);case "seconds":case "second":case "s":return b.diff(a,"seconds",!0);case "milliseconds":case "millisecond":case "ms":return b.diff(a);
case "hours":case "hour":case "h":return b.diff(a,"hours",!0);case "years":case "year":case "y":return b.diff(a,"years",!0);default:return b.diff(a)}})};p.dateadd=function(b,e){return l(b,e,function(b,a,d){g.pcCheck(d,2,3);b=g.toDateM(d[0]);if(null===b)return null;a="milliseconds";switch(g.toString(d[2]).toLowerCase()){case "days":case "day":case "d":a="days";break;case "months":case "month":a="months";break;case "minutes":case "minute":case "m":a="M"===d[2]?"months":"minutes";break;case "seconds":case "second":case "s":a=
"seconds";break;case "milliseconds":case "millisecond":case "ms":a="milliseconds";break;case "hours":case "hour":case "h":a="hours";break;case "years":case "year":case "y":a="years"}b.add(g.toNumber(d[1]),a);return b.toDate()})}}})},"esri/arcade/functions/geometry":function(){define("require exports ../Dictionary ../Feature ../languageUtils ../../geometry/Extent ../../geometry/Geometry ../../geometry/Multipoint ../../geometry/Point ../../geometry/Polygon ../../geometry/Polyline ../../geometry/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d){Object.defineProperty(n,"__esModule",{value:!0});n.registerFunctions=function(m,n){m.polygon=function(a,e){return n(a,e,function(e,f,k){h.pcCheck(k,1,1);e=null;if(k[0]instanceof b){if(e=h.fixSpatialReference(g.parseGeometryFromDictionary(k[0]),a.spatialReference),!1===e instanceof c)throw Error("Illegal Parameter");}else e=k[0]instanceof c?d.fromJson(k[0].toJson()):h.fixSpatialReference(new c(JSON.parse(k[0])),a.spatialReference);if(null!==e&&!1===e.spatialReference.equals(a.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");
return h.fixNullGeometry(e)})};m.polyline=function(c,e){return n(c,e,function(e,f,k){h.pcCheck(k,1,1);e=null;if(k[0]instanceof b){if(e=h.fixSpatialReference(g.parseGeometryFromDictionary(k[0]),c.spatialReference),!1===e instanceof a)throw Error("Illegal Parameter");}else e=k[0]instanceof a?d.fromJson(k[0].toJson()):h.fixSpatialReference(new a(JSON.parse(k[0])),c.spatialReference);if(null!==e&&!1===e.spatialReference.equals(c.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");
return h.fixNullGeometry(e)})};m.point=function(a,c){return n(a,c,function(c,f,k){h.pcCheck(k,1,1);c=null;if(k[0]instanceof b){if(c=h.fixSpatialReference(g.parseGeometryFromDictionary(k[0]),a.spatialReference),!1===c instanceof e)throw Error("Illegal Parameter");}else c=k[0]instanceof e?d.fromJson(k[0].toJson()):h.fixSpatialReference(new e(JSON.parse(k[0])),a.spatialReference);if(null!==c&&!1===c.spatialReference.equals(a.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");
return h.fixNullGeometry(c)})};m.multipoint=function(a,c){return n(a,c,function(c,e,k){h.pcCheck(k,1,1);c=null;if(k[0]instanceof b){if(c=h.fixSpatialReference(g.parseGeometryFromDictionary(k[0]),a.spatialReference),!1===c instanceof f)throw Error("Illegal Parameter");}else c=k[0]instanceof f?d.fromJson(k[0].toJson()):h.fixSpatialReference(new f(JSON.parse(k[0])),a.spatialReference);if(null!==c&&!1===c.spatialReference.equals(a.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");
return h.fixNullGeometry(c)})};m.extent=function(m,k){return n(m,k,function(k,l,n){n=h.autoCastFeatureToGeometry(n);h.pcCheck(n,1,1);k=null;n[0]instanceof b?k=h.fixSpatialReference(g.parseGeometryFromDictionary(n[0]),m.spatialReference):n[0]instanceof e?(k={xmin:n[0].x,ymin:n[0].y,xmax:n[0].x,ymax:n[0].y,spatialReference:n[0].spatialReference.toJson()},n[0].hasZ?(k.zmin=n[0].z,k.zmax=n[0].z):n[0].hasM&&(k.mmin=n[0].m,k.mmax=n[0].m),k=d.fromJson(k)):k=n[0]instanceof c?d.fromJson(n[0].getExtent().toJson()):
n[0]instanceof a?d.fromJson(n[0].getExtent().toJson()):n[0]instanceof f?d.fromJson(n[0].getExtent().toJson()):n[0]instanceof p?d.fromJson(n[0].toJson()):h.fixSpatialReference(new p(JSON.parse(n[0])),m.spatialReference);if(null!==k&&!1===k.spatialReference.equals(m.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");return h.fixNullGeometry(k)})};m.geometry=function(a,c){return n(a,c,function(c,e,f){h.pcCheck(f,1,1);c=null;
c=f[0]instanceof g?h.fixSpatialReference(f[0].geometry(),a.spatialReference):f[0]instanceof b?h.fixSpatialReference(g.parseGeometryFromDictionary(f[0]),a.spatialReference):h.fixSpatialReference(d.fromJson(JSON.parse(f[0])),a.spatialReference);if(null!==c&&!1===c.spatialReference.equals(a.spatialReference))throw Error("Cannot create Geometry in this SpatialReference. Engine is using a different spatial reference.");return h.fixNullGeometry(c)})};m.setgeometry=function(a,b){return n(a,b,function(a,
b,c){h.pcCheck(c,2,2);if(c[0]instanceof g){if(!0===c[0].immutable)throw Error("Feature is Immutable");if(c[1]instanceof l||null===c[1])c[0]._geometry=c[1];else throw Error("Illegal Argument");}else throw Error("Illegal Argument");return h.voidOperation})};m.feature=function(a,c){return n(a,c,function(c,d,e){if(0===e.length)throw Error("Missing Parameters");c=null;if(1===e.length)if(h.isString(e[0]))c=g.fromJson(JSON.parse(e[0]));else if(e[0]instanceof g)c=g.createFromArcadeFeature(e[0]);else if(e[0]instanceof
l)c=g.createFromGraphicLikeObject(e[0],null,null);else if(e[0]instanceof b)c=e[0].hasField("geometry")?e[0].field("geometry"):null,d=e[0].hasField("attributes")?e[0].field("attributes"):null,null!==c&&c instanceof b&&(c=g.parseGeometryFromDictionary(c)),null!==d&&(d=g.parseAttributesFromDictionary(d)),c=g.createFromGraphicLikeObject(c,d,null);else throw Error("Illegal Argument");else{if(2===e.length){d=c=null;if(null!==e[0])if(e[0]instanceof l)c=e[0];else if(c instanceof b)c=g.parseGeometryFromDictionary(e[0]);
else throw Error("Illegal Argument");if(null!==e[1])if(e[1]instanceof b)d=g.parseAttributesFromDictionary(e[1]);else throw Error("Illegal Argument");}else{c=null;d={};if(null!==e[0])if(e[0]instanceof l)c=e[0];else if(c instanceof b)c=g.parseGeometryFromDictionary(e[0]);else throw Error("Illegal Argument");for(var f=1;f<e.length;f+=2){var k=h.toString(e[f]),m=e[f+1];if(null===m||void 0===m||h.isString(m)||isNaN(m)||h.isDate(m)||h.isNumber(m)||h.isBoolean(m)){if(h.isFunctionParameter(m)||!1===h.isSimpleType(m))throw Error("Illegal Argument");
d[k]=m===h.voidOperation?null:m}else throw Error("Illegal Argument");}}c=g.createFromGraphicLikeObject(c,d,null)}c._geometry=h.fixSpatialReference(c.geometry(),a.spatialReference);c.immutable=!1;return c})};m.dictionary=function(a,c){return n(a,c,function(a,c,d){if(0===d.length)throw Error("Missing Parameters");if(0!==d.length%2)throw Error("Missing Parameters");a={};for(c=0;c<d.length;c+=2){var e=h.toString(d[c]),f=d[c+1];if(null===f||void 0===f||h.isString(f)||isNaN(f)||h.isDate(f)||h.isNumber(f)||
h.isBoolean(f)||h.isArray(f)||h.isImmutableArray(f)){if(h.isFunctionParameter(f))throw Error("Illegal Argument");a[e]=f===h.voidOperation?null:f}else throw Error("Illegal Argument");}d=new b(a);d.immutable=!1;return d})};m.haskey=function(a,c){return n(a,c,function(a,c,d){h.pcCheck(d,2,2);a=h.toString(d[1]);if(d[0]instanceof g||d[0]instanceof b)return d[0].hasField(a);throw Error("Illegal Argument");})};m.indexof=function(a,b){return n(a,b,function(a,b,c){h.pcCheck(c,2,2);a=c[1];if(h.isArray(c[0])){for(b=
0;b<c[0].length;b++)if(h.equalityTest(a,c[0][b]))return b;return-1}if(h.isImmutableArray(c[0])){var d=c[0].length();for(b=0;b<d;b++)if(h.equalityTest(a,c[0].get(b)))return b;return-1}throw Error("Illegal Argument");})}}})},"esri/arcade/functions/geomsync":function(){define("require exports ../../kernel ../kernel ../languageUtils ./centroid ../../geometry/Extent ../../geometry/Geometry ../../geometry/Multipoint ../../geometry/Point ../../geometry/Polygon ../../geometry/Polyline ../../geometry/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){function w(a){return u?a.clone():m.fromJson(a.toJson())}function t(c){return 0===b.version.indexOf("4.")?a.fromExtent(c):new a({spatialReference:c.spatialReference,rings:[[[c.xmin,c.ymin],[c.xmin,c.ymax],[c.xmax,c.ymax],[c.xmax,c.ymin],[c.xmin,c.ymin]]]})}Object.defineProperty(n,"__esModule",{value:!0});var k=null,u=0===b.version.indexOf("4.");n.setGeometryEngine=function(a){k=a};n.registerFunctions=function(b,n){function r(a){h.pcCheck(a,2,2);if(!(a[0]instanceof
f&&a[1]instanceof f||a[0]instanceof f&&null===a[1]||a[1]instanceof f&&null===a[0]||null===a[0]&&null===a[1]))throw Error("Illegal Argument");}b.disjoint=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!0:k.disjoint(c[0],c[1])})};b.intersects=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!1:k.intersects(c[0],c[1])})};b.touches=function(a,b){return n(a,b,function(a,b,c){c=
h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!1:k.touches(c[0],c[1])})};b.crosses=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!1:k.crosses(c[0],c[1])})};b.within=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!1:k.within(c[0],c[1])})};b.contains=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||
null===c[1]?!1:k.contains(c[0],c[1])})};b.overlaps=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?!1:k.overlaps(c[0],c[1])})};b.equals=function(a,b){return n(a,b,function(a,b,c){h.pcCheck(c,2,2);return c[0]===c[1]?!0:c[0]instanceof f&&c[1]instanceof f?k.equals(c[0],c[1]):h.isDate(c[0])&&h.isDate(c[1])?c[0].getTime()===c[1].getTime():!1})};b.relate=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,
3,3);if(c[0]instanceof f&&c[1]instanceof f)return k.relate(c[0],c[1],h.toString(c[2]));if(c[0]instanceof f&&null===c[1]||c[1]instanceof f&&null===c[0]||null===c[0]&&null===c[1])return!1;throw Error("Illegal Argument");})};b.intersection=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]||null===c[1]?null:k.intersect(c[0],c[1])})};b.union=function(a,b){return n(a,b,function(b,c,d){d=h.autoCastFeatureToGeometry(d);b=[];if(0===d.length)throw Error("Function called with wrong number of Parameters");
if(1===d.length)if(h.isArray(d[0]))for(d=h.autoCastFeatureToGeometry(d[0]),c=0;c<d.length;c++){if(null!==d[c])if(d[c]instanceof f)b.push(d[c]);else throw Error("Illegal Argument");}else if(h.isImmutableArray(d[0]))for(d=h.autoCastFeatureToGeometry(d[0].toArray()),c=0;c<d.length;c++){if(null!==d[c])if(d[c]instanceof f)b.push(d[c]);else throw Error("Illegal Argument");}else{if(d[0]instanceof f)return h.fixSpatialReference(w(d[0]),a.spatialReference);if(null===d[0])return null;throw Error("Illegal Argument");
}else for(c=0;c<d.length;c++)if(null!==d[c])if(d[c]instanceof f)b.push(d[c]);else throw Error("Illegal Argument");return 0===b.length?null:k.union(b)})};b.difference=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null!==c[0]&&null===c[1]?w(c[0]):null===c[0]?null:k.difference(c[0],c[1])})};b.symmetricdifference=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);r(c);return null===c[0]&&null===c[1]?null:null===c[0]?w(c[1]):null===c[1]?
w(c[0]):k.symmetricDifference(c[0],c[1])})};b.clip=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,2);if(!(c[1]instanceof l)&&null!==c[1])throw Error("Illegal Argument");if(null===c[0])return null;if(!(c[0]instanceof f))throw Error("Illegal Argument");return null===c[1]?null:k.clip(c[0],c[1])})};b.cut=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,2);if(!(c[1]instanceof d)&&null!==c[1])throw Error("Illegal Argument");
if(null===c[0])return[];if(!(c[0]instanceof f))throw Error("Illegal Argument");return null===c[1]?[w(c[0])]:k.cut(c[0],c[1])})};b.area=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,1,2);if(null===c[0])return 0;if(!(c[0]instanceof f))throw Error("Illegal Argument");return k.planarArea(c[0],g.convertSquareUnitsToCode(h.defaultUndefined(c[1],-1)))})};b.areageodetic=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,1,2);if(null===
c[0])return 0;if(!(c[0]instanceof f))throw Error("Illegal Argument");return k.geodesicArea(c[0],g.convertSquareUnitsToCode(h.defaultUndefined(c[1],-1)))})};b.length=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,1,2);if(null===c[0])return 0;if(!(c[0]instanceof f))throw Error("Illegal Argument");return k.planarLength(c[0],g.convertLinearUnitsToCode(h.defaultUndefined(c[1],-1)))})};b.lengthgeodetic=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);
h.pcCheck(c,1,2);if(null===c[0])return 0;if(!(c[0]instanceof f))throw Error("Illegal Argument");return k.geodesicLength(c[0],g.convertLinearUnitsToCode(h.defaultUndefined(c[1],-1)))})};b.distance=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,3);if(!(c[0]instanceof f))throw Error("Illegal Argument");if(!(c[1]instanceof f))throw Error("Illegal Argument");return k.distance(c[0],c[1],g.convertLinearUnitsToCode(h.defaultUndefined(c[2],-1)))})};b.densify=function(b,
c){return n(b,c,function(b,c,e){e=h.autoCastFeatureToGeometry(e);h.pcCheck(e,2,3);if(null===e[0])return null;if(!(e[0]instanceof f))throw Error("Illegal Argument");b=h.toNumber(e[1]);if(isNaN(b))throw Error("Illegal Argument");if(0>=b)throw Error("Illegal Argument");return e[0]instanceof a||e[0]instanceof d?k.densify(e[0],b,g.convertLinearUnitsToCode(h.defaultUndefined(e[2],-1))):e[0]instanceof l?k.densify(t(e[0]),b,g.convertLinearUnitsToCode(h.defaultUndefined(e[2],-1))):e[0]})};b.densifygeodetic=
function(b,c){return n(b,c,function(b,c,e){e=h.autoCastFeatureToGeometry(e);h.pcCheck(e,2,3);if(null===e[0])return null;if(!(e[0]instanceof f))throw Error("Illegal Argument");b=h.toNumber(e[1]);if(isNaN(b))throw Error("Illegal Argument");if(0>=b)throw Error("Illegal Argument");return e[0]instanceof a||e[0]instanceof d?k.geodesicDensify(e[0],b,g.convertLinearUnitsToCode(h.defaultUndefined(e[2],-1))):e[0]instanceof l?k.geodesicDensify(t(e[0]),b,g.convertLinearUnitsToCode(h.defaultUndefined(e[2],-1))):
e[0]})};b.generalize=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,4);if(null===c[0])return null;if(!(c[0]instanceof f))throw Error("Illegal Argument");a=h.toNumber(c[1]);if(isNaN(a))throw Error("Illegal Argument");return k.generalize(c[0],a,h.toBoolean(h.defaultUndefined(c[2],!0)),g.convertLinearUnitsToCode(h.defaultUndefined(c[3],-1)))})};b.buffer=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,3);if(null===c[0])return null;
if(!(c[0]instanceof f))throw Error("Illegal Argument");a=h.toNumber(c[1]);if(isNaN(a))throw Error("Illegal Argument");return 0===a?w(c[0]):k.buffer(c[0],a,g.convertLinearUnitsToCode(h.defaultUndefined(c[2],-1)))})};b.buffergeodetic=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,2,3);if(null===c[0])return null;if(!(c[0]instanceof f))throw Error("Illegal Argument");a=h.toNumber(c[1]);if(isNaN(a))throw Error("Illegal Argument");return 0===a?w(c[0]):k.geodesicBuffer(c[0],
a,g.convertLinearUnitsToCode(h.defaultUndefined(c[2],-1)))})};b.offset=function(b,c){return n(b,c,function(b,c,e){e=h.autoCastFeatureToGeometry(e);h.pcCheck(e,2,6);if(null===e[0])return null;if(!(e[0]instanceof a||e[0]instanceof d))throw Error("Illegal Argument");b=h.toNumber(e[1]);if(isNaN(b))throw Error("Illegal Argument");c=h.toNumber(h.defaultUndefined(e[4],10));if(isNaN(c))throw Error("Illegal Argument");var f=h.toNumber(h.defaultUndefined(e[5],0));if(isNaN(f))throw Error("Illegal Argument");
return k.offset(e[0],b,g.convertLinearUnitsToCode(h.defaultUndefined(e[2],-1)),h.toString(h.defaultUndefined(e[3],"round")).toLowerCase(),c,f)})};b.rotate=function(b,d){return n(b,d,function(b,d,e){e=h.autoCastFeatureToGeometry(e);h.pcCheck(e,2,3);b=e[0];if(null===b)return null;if(!(b instanceof f))throw Error("Illegal Argument");b instanceof l&&(b=a.fromExtent(b));d=h.toNumber(e[1]);if(isNaN(d))throw Error("Illegal Argument");e=h.defaultUndefined(e[2],null);if(null===e)return k.rotate(b,d);if(e instanceof
c)return k.rotate(b,d,e);throw Error("Illegal Argument");})};b.centroid=function(b,g){return n(b,g,function(g,k,m){m=h.autoCastFeatureToGeometry(m);h.pcCheck(m,1,1);if(null===m[0])return null;if(!(m[0]instanceof f))throw Error("Illegal Argument");return m[0]instanceof c?h.fixSpatialReference(w(m[0]),b.spatialReference):m[0]instanceof a?u?m[0].centroid:m[0].getCentroid():m[0]instanceof d?p.centroidPolyline(m[0]):m[0]instanceof e?p.centroidMultiPoint(m[0]):m[0]instanceof l?u?m[0].center:m[0].getExtent().getCenter():
null})};b.multiparttosinglepart=function(b,g){return n(b,g,function(g,p,n){n=h.autoCastFeatureToGeometry(n);h.pcCheck(n,1,1);p=[];if(null===n[0])return null;if(!(n[0]instanceof f))throw Error("Illegal Argument");if(n[0]instanceof c||n[0]instanceof l)return[h.fixSpatialReference(w(n[0]),b.spatialReference)];g=k.simplify(n[0]);if(g instanceof a){p=[];var r=[];for(n=0;n<g.rings.length;n++)if(g.isClockwise(g.rings[n])){var q=m.fromJson({rings:[g.rings[n]],hasZ:u?g.hasZ:!1,hasM:u?g.hasM:!1,spatialReference:g.spatialReference.toJson()});
p.push(q)}else r.push({ring:g.rings[n],pt:g.getPoint(n,0)});for(g=0;g<r.length;g++)for(n=0;n<p.length;n++)if(p[n].contains(r[g].pt)){p[n].addRing(r[g].ring);break}return p}if(g instanceof d){p=[];for(n=0;n<g.paths.length;n++)r=m.fromJson({paths:[g.paths[n]],hasZ:u?g.hasZ:!1,hasM:u?g.hasM:!1,spatialReference:g.spatialReference.toJson()}),p.push(r);return p}if(n[0]instanceof e){g=h.fixSpatialReference(w(n[0]),b.spatialReference);for(n=0;n<g.points.length;n++)p.push(g.getPoint(n));return p}return null})};
b.issimple=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,1,1);if(null===c[0])return!0;if(c[0]instanceof f)return k.isSimple(c[0]);throw Error("Illegal Argument");})};b.simplify=function(a,b){return n(a,b,function(a,b,c){c=h.autoCastFeatureToGeometry(c);h.pcCheck(c,1,1);if(null===c[0])return null;if(c[0]instanceof f)return k.simplify(c[0]);throw Error("Illegal Argument");})}}})},"esri/arcade/kernel":function(){define(["require","exports","../geometry/Extent"],
function(q,n,b){Object.defineProperty(n,"__esModule",{value:!0});n.errback=function(b){return function(g){b.reject(g)}};n.callback=function(b,h){return function(){try{b.apply(null,arguments)}catch(p){h.reject(p)}}};n.convertSquareUnitsToCode=function(b){if(void 0===b)return null;if("number"===typeof b)return b;switch(b.toLowerCase()){case "meters":case "meter":case "m":case "squaremeters":case "squaremeter":case "square-meter":case "square_meters":return 109404;case "miles":case "mile":case "squaremile":case "squaremiles":case "square-miles":case "square-mile":return 109413;
case "kilometers":case "kilometer":case "squarekilometers":case "squarekilometer":case "square-kilometers":case "square-kilometer":case "km":return 109414;case "acres":case "acre":case "ac":return 109402;case "hectares":case "hectare":case "ha":return 109401;case "yard":case "yd":case "yards":case "square-yards":case "square-yard":case "squareyards":case "squareyard":return 109442;case "feet":case "ft":case "foot":case "square-feet":case "square-foot":case "squarefeet":case "squarefoot":return 109405}return null};
n.shapeExtent=function(g){if(null===g)return null;switch(g.type){case "polygon":case "multipoint":case "polyline":return g.extent;case "point":return new b({xmin:g.x,ymin:g.y,xmax:g.x,ymax:g.y,spatialReference:g.spatialReference});case "extent":return g}return null};n.convertLinearUnitsToCode=function(b){if(void 0===b)return null;if("number"===typeof b||"number"===typeof b)return b;switch(b.toLowerCase()){case "meters":case "meter":case "m":case "squaremeters":case "squaremeter":case "square-meter":case "square-meters":return 9001;
case "miles":case "mile":case "squaremile":case "squaremiles":case "square-miles":case "square-mile":return 9035;case "kilometers":case "kilometer":case "squarekilometers":case "squarekilometer":case "square-kilometers":case "square-kilometer":case "km":return 9036;case "yard":case "yd":case "yards":case "square-yards":case "square-yard":case "squareyards":case "squareyard":return 9096;case "feet":case "ft":case "foot":case "square-feet":case "square-foot":case "squarefeet":case "squarefoot":return 9002}return null};
n.sameGeomType=function(b,h){return b===h||"point"===b&&"esriGeometryPoint"===h||"polyline"===b&&"esriGeometryPolyline"===h||"polygon"===b&&"esriGeometryPolygon"===h||"extent"===b&&"esriGeometryEnvelope"===h||"multipoint"===b&&"esriGeometryMultipoint"===h||"point"===h&&"esriGeometryPoint"===b||"polyline"===h&&"esriGeometryPolyline"===b||"polygon"===h&&"esriGeometryPolygon"===b||"extent"===h&&"esriGeometryEnvelope"===b||"multipoint"===h&&"esriGeometryMultipoint"===b?!0:!1}})},"esri/arcade/functions/centroid":function(){define(["require",
"exports","../../kernel","../../geometry/Point"],function(q,n,b,g){function h(b,f,e){var c={x:0,y:0};f&&(c.z=0);e&&(c.m=0);for(var a=0,d=b[0],g=0;g<b.length;g++){var h=b[g],l;a:if(h.length!==d.length)l=!1;else{for(l=0;l<h.length;l++)if(h[l]!==d[l]){l=!1;break a}l=!0}if(!1===l){l=p(d,h,f);var k=h,n=f,r=e,q={x:(d[0]+k[0])/2,y:(d[1]+k[1])/2};n&&(q.z=(d[2]+k[2])/2);n&&r?q.m=(d[3]+k[3])/2:r&&(q.m=(d[2]+k[2])/2);d=q;d.x*=l;d.y*=l;c.x+=d.x;c.y+=d.y;f&&(d.z*=l,c.z+=d.z);e&&(d.m*=l,c.m+=d.m);a+=l;d=h}}0<a?
(c.x/=a,c.y/=a,f&&(c.z/=a),e&&(c.m/=a)):(c.x=b[0][0],c.y=b[0][1],f&&(c.z=b[0][2]),e&&f?c.m=b[0][3]:e&&(c.m=b[0][2]));return c}function p(b,f,e){var c=f[0]-b[0];b=f[1]-b[1];return e?(f=f[2]-f[2],Math.sqrt(c*c+b*b+f*f)):Math.sqrt(c*c+b*b)}Object.defineProperty(n,"__esModule",{value:!0});b.version.indexOf("4.");n.centroidPolyline=function(b){for(var f={x:0,y:0,spatialReference:b.spatialReference.toJson()},e={x:0,y:0,spatialReference:b.spatialReference.toJson()},c=0,a=0,d=0;d<b.paths.length;d++)if(0!==
b.paths[d].length){var m;m=b.paths[d];var l=!0===b.hasZ;if(1>=m.length)m=0;else{for(var n=0,k=1;k<m.length;k++)n+=p(m[k-1],m[k],l);m=n}0===m?(l=h(b.paths[d],!0===b.hasZ,!0===b.hasM),f.x+=l.x,f.y+=l.y,!0===b.hasZ&&(f.z+=l.z),!0===b.hasM&&(f.m+=l.m),++c):(l=h(b.paths[d],!0===b.hasZ,!0===b.hasM),e.x+=l.x*m,e.y+=l.y*m,!0===b.hasZ&&(e.z+=l.z*m),!0===b.hasM&&(e.m+=l.m*m),a+=m)}return 0<a?(e.x/=a,e.y/=a,!0===b.hasZ&&(e.z/=a),!0===b.hasM&&(e.m/=a),new g(e)):0<c?(f.x/=c,f.y/=c,!0===b.hasZ&&(e.z/=c),!0===b.hasM&&
(f.m/=c),new g(f)):null};n.centroidMultiPoint=function(b){if(0===b.points.length)return null;for(var f=0,e=0,c=0,a=0,d=0;d<b.points.length;d++){var h=b.getPoint(d);!0===h.hasZ&&(c+=h.z);!0===h.hasM&&(a+=h.m);f+=h.x;e+=h.y;a+=h.m}f={x:f/b.points.length,y:e/b.points.length,spatialReference:null};f.spatialReference=b.spatialReference.toJson();!0===b.hasZ&&(f.z=c/b.points.length);!0===b.hasM&&(f.m=a/b.points.length);return new g(f)}})},"esri/arcade/functions/maths":function(){define(["require","exports",
"dojo/number","../languageUtils"],function(q,n,b,g){function h(b,g,f){if("undefined"===typeof f||0===+f)return Math[b](g);g=+g;f=+f;if(isNaN(g)||"number"!==typeof f||0!==f%1)return NaN;g=g.toString().split("e");g=Math[b](+(g[0]+"e"+(g[1]?+g[1]-f:-f)));g=g.toString().split("e");return+(g[0]+"e"+(g[1]?+g[1]+f:f))}Object.defineProperty(n,"__esModule",{value:!0});n.registerFunctions=function(p,l){function f(b,c,a){b=g.toNumber(b);return isNaN(b)?b:isNaN(c)||isNaN(a)||c>a?NaN:b<c?c:b>a?a:b}p.number=function(e,
c){return l(e,c,function(a,c,e){g.pcCheck(e,1,2);a=e[0];return g.isNumber(a)?a:null===a?0:g.isDate(a)||g.isBoolean(a)?Number(a):g.isArray(a)?NaN:""===a||void 0===a?Number(a):g.isString(a)?void 0!==e[1]?(e=g.multiReplace(e[1],"\u2030",""),e=g.multiReplace(e,"\u00a4",""),b.parse(a,{pattern:e})):Number(a.trim()):Number(a)})};p.abs=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.abs(g.toNumber(c[0]))})};p.acos=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.acos(g.toNumber(c[0]))})};
p.asin=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.asin(g.toNumber(c[0]))})};p.atan=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.atan(g.toNumber(c[0]))})};p.atan2=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,2,2);return Math.atan2(g.toNumber(c[0]),g.toNumber(c[1]))})};p.ceil=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,2);return 2===c.length?(a=g.toNumber(c[1]),isNaN(a)&&(a=0),h("ceil",g.toNumber(c[0]),-1*a)):Math.ceil(g.toNumber(c[0]))})};
p.round=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,2);return 2===c.length?(a=g.toNumber(c[1]),isNaN(a)&&(a=0),h("round",g.toNumber(c[0]),-1*a)):Math.round(g.toNumber(c[0]))})};p.floor=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,2);return 2===c.length?(a=g.toNumber(c[1]),isNaN(a)&&(a=0),h("floor",g.toNumber(c[0]),-1*a)):Math.floor(g.toNumber(c[0]))})};p.cos=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.cos(g.toNumber(c[0]))})};p.isnan=function(b,
c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return"number"===typeof c[0]&&isNaN(c[0])})};p.exp=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.exp(g.toNumber(c[0]))})};p.log=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.log(g.toNumber(c[0]))})};p.pow=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,2,2);return Math.pow(g.toNumber(c[0]),g.toNumber(c[1]))})};p.random=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,0,0);return Math.random()})};
p.sin=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.sin(g.toNumber(c[0]))})};p.sqrt=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.sqrt(g.toNumber(c[0]))})};p.tan=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return Math.tan(g.toNumber(c[0]))})};p.defaultvalue=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,2,2);return null===c[0]||""===c[0]||void 0===c[0]?c[1]:c[0]})};p.isempty=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,
1,1);return null===c[0]||""===c[0]||void 0===c[0]?!0:!1})};p["boolean"]=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,1,1);return g.toBoolean(c[0])})};p.constrain=function(b,c){return l(b,c,function(a,b,c){g.pcCheck(c,3,3);a=g.toNumber(c[1]);b=g.toNumber(c[2]);if(g.isArray(c[0])){var d=[],e=0;for(c=c[0];e<c.length;e++)d.push(f(c[e],a,b));return d}if(g.isImmutableArray(c[0])){d=[];for(e=0;e<c[0].length();e++)d.push(f(c[0].get(e),a,b));return d}return f(c[0],a,b)})}}})},"esri/arcade/functions/stats":function(){define(["require",
"exports","../languageUtils","./fieldStats"],function(q,n,b,g){function h(h,l,f,e){if(1===e.length){if(b.isArray(e[0]))return g.calculateStat(h,e[0],-1);if(b.isImmutableArray(e[0]))return g.calculateStat(h,e[0].toArray(),-1)}return g.calculateStat(h,e,-1)}Object.defineProperty(n,"__esModule",{value:!0});n.registerFunctions=function(g,l){g.stdev=function(b,e){return l(b,e,function(b,a,d){return h("stdev",b,a,d)})};g.variance=function(b,e){return l(b,e,function(b,a,d){return h("variance",b,a,d)})};
g.average=function(b,e){return l(b,e,function(b,a,d){return h("mean",b,a,d)})};g.mean=function(b,e){return l(b,e,function(b,a,d){return h("mean",b,a,d)})};g.sum=function(b,e){return l(b,e,function(b,a,d){return h("sum",b,a,d)})};g.min=function(b,e){return l(b,e,function(b,a,d){return h("min",b,a,d)})};g.max=function(b,e){return l(b,e,function(b,a,d){return h("max",b,a,d)})};g.distinct=function(b,e){return l(b,e,function(b,a,d){return h("distinct",b,a,d)})};g.count=function(f,e){return l(f,e,function(c,
a,d){b.pcCheck(d,1,1);if(b.isArray(d[0])||b.isString(d[0]))return d[0].length;if(b.isImmutableArray(d[0]))return d[0].length();throw Error("Invalid Parameters for Count");})}}})},"esri/arcade/functions/fieldStats":function(){define(["require","exports","../languageUtils"],function(q,n,b){function g(b){for(var g=0,f=0;f<b.length;f++)g+=b[f];return g/b.length}function h(b){for(var h=g(b),f=0,e=0;e<b.length;e++)f+=Math.pow(h-b[e],2);return f/b.length}Object.defineProperty(n,"__esModule",{value:!0});
n.decodeStatType=function(b){switch(b.toLowerCase()){case "distinct":return"distinct";case "avg":case "mean":return"avg";case "min":return"min";case "sum":return"sum";case "max":return"max";case "stdev":case "stddev":return"stddev";case "var":case "variance":return"var";case "count":return"count"}return""};n.calculateStat=function(p,l,f){void 0===f&&(f=1E3);switch(p.toLowerCase()){case "distinct":a:{p=f;f=[];for(var e={},c=[],a=0;a<l.length;a++){if(void 0!==l[a]&&null!==l[a]&&l[a]!==b.voidOperation){var d=
l[a];if(b.isNumber(d)||b.isString(d))void 0===e[d]&&(f.push(d),e[d]=1);else{for(var m=!1,n=0;n<c.length;n++)!0===b.equalityTest(c[n],d)&&(m=!0);!1===m&&(c.push(d),f.push(d))}}if(f.length>=p&&-1!==p){l=f;break a}}l=f}return l;case "avg":case "mean":return g(b.toNumberArray(l));case "min":return Math.min.apply(Math,b.toNumberArray(l));case "sum":l=b.toNumberArray(l);for(f=p=0;f<l.length;f++)p+=l[f];return p;case "max":return Math.max.apply(Math,b.toNumberArray(l));case "stdev":case "stddev":return Math.sqrt(h(b.toNumberArray(l)));
case "var":case "variance":return h(b.toNumberArray(l));case "count":return l.length}return 0}})},"esri/arcade/functions/string":function(){define(["require","exports","../Feature","../languageUtils"],function(q,n,b,g){Object.defineProperty(n,"__esModule",{value:!0});n.registerFunctions=function(h,p){h.trim=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,1);return g.toString(a[0]).trim()})};h.upper=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,1);return g.toString(a[0]).toUpperCase()})};
h.proper=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,2);b=1;2===a.length&&"firstword"===g.toString(a[1]).toLowerCase()&&(b=2);c=/\s/;a=g.toString(a[0]);for(var d="",e=!0,f=0;f<a.length;f++){var h=a[f];c.test(h)?1===b&&(e=!0):h.toUpperCase()!==h.toLowerCase()&&(e?(h=h.toUpperCase(),e=!1):h=h.toLowerCase());d+=h}return d})};h.lower=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,1);return g.toString(a[0]).toLowerCase()})};h.guid=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,
0,1);if(0<a.length)switch(g.toString(a[0]).toLowerCase()){case "digits":return g.generateUUID().replace("-","").replace("-","").replace("-","").replace("-","");case "digits-hyphen":return g.generateUUID();case "digits-hyphen-parentheses":return"("+g.generateUUID()+")"}return"{"+g.generateUUID()+"}"})};h.console=function(b,f){return p(b,f,function(e,c,a){0!==a.length&&(1===a.length?b.console(g.toString(a[0])):b.console(g.toString(a)));return g.voidOperation})};h.mid=function(b,f){return p(b,f,function(b,
c,a){g.pcCheck(a,2,3);b=g.toNumber(a[1]);if(isNaN(b))return"";0>b&&(b=0);if(2===a.length)return g.toString(a[0]).substr(b);c=g.toNumber(a[2]);if(isNaN(c))return"";0>c&&(c=0);return g.toString(a[0]).substr(b,c)})};h.find=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,2,3);b=0;if(2<a.length){b=g.toNumber(g.defaultUndefined(a[2],0));if(isNaN(b))return-1;0>b&&(b=0)}return g.toString(a[1]).indexOf(g.toString(a[0]),b)})};h.left=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,2,2);b=g.toNumber(a[1]);
if(isNaN(b))return"";0>b&&(b=0);return g.toString(a[0]).substr(0,b)})};h.right=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,2,2);b=g.toNumber(a[1]);if(isNaN(b))return"";0>b&&(b=0);return g.toString(a[0]).substr(-1*b,b)})};h.split=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,2,4);b=g.toNumber(g.defaultUndefined(a[2],-1));c=g.toBoolean(g.defaultUndefined(a[3],!1));-1===b||null===b||!0===c?a=g.toString(a[0]).split(g.toString(a[1])):(isNaN(b)&&(b=-1),-1>b&&(b=-1),a=g.toString(a[0]).split(g.toString(a[1]),
b));if(!1===c)return a;c=[];for(var d=0;d<a.length&&!(-1!==b&&c.length>=b);d++)""!==a[d]&&void 0!==a[d]&&c.push(a[d]);return c})};h.text=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,2);return g.toStringExplicit(a[0],a[1])})};h.concatenate=function(b,f){return p(b,f,function(b,c,a){b=[];if(1>a.length)return"";if(g.isArray(a[0])){c=g.defaultUndefined(a[2],"");for(var d=0;d<a[0].length;d++)b[d]=g.toStringExplicit(a[0][d],c);return 1<a.length?b.join(a[1]):b.join("")}if(g.isImmutableArray(a[0])){c=
g.defaultUndefined(a[2],"");for(d=0;d<a[0].length();d++)b[d]=g.toStringExplicit(a[0].get(d),c);return 1<a.length?b.join(a[1]):b.join("")}for(d=0;d<a.length;d++)b[d]=g.toStringExplicit(a[d]);return b.join("")})};h.reverse=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,1,1);if(g.isArray(a[0]))return b=a[0].slice(0),b.reverse(),b;if(g.isImmutableArray(a[0]))return b=a[0].toArray().slice(0),b.reverse(),b;throw Error("Invalid Parameter");})};h.replace=function(b,f){return p(b,f,function(b,c,a){g.pcCheck(a,
3,4);b=g.toString(a[0]);c=g.toString(a[1]);var d=g.toString(a[2]);return(4===a.length?g.toBoolean(a[3]):1)?g.multiReplace(b,c,d):b.replace(c,d)})};h.domainname=function(h,f){return p(h,f,function(e,c,a){g.pcCheck(a,2,4);if(a[0]instanceof b)return a[0].domainValueLookup(g.toString(a[1]),a[2],void 0===a[3]?void 0:g.toNumber(a[3]));throw Error("Invalid Parameter");})};h.domaincode=function(h,f){return p(h,f,function(e,c,a){g.pcCheck(a,3,4);if(a[0]instanceof b)return a[0].domainCodeLookup(g.toString(a[1]),
a[2],void 0===a[3]?void 0:g.toNumber(a[3]));throw Error("Invalid Parameter");})}}})},"esri/arcade/arcadeRuntime":function(){define("require exports ./Dictionary ./Feature ./FunctionWrapper ./ImmutablePathArray ./ImmutablePointArray ./languageUtils ./treeAnalysis ./functions/date ./functions/geometry ./functions/geomsync ./functions/maths ./functions/stats ./functions/string ../geometry/Extent ../geometry/Geometry ../geometry/Multipoint ../geometry/Point ../geometry/Polygon ../geometry/Polyline ../SpatialReference".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x){function A(a,b){for(var c=[],d=0;d<b.arguments.length;d++)c.push(C(a,b.arguments[d]));return c}function B(a,b,c){try{return c(a,b,A(a,b))}catch(sa){throw sa;}}function C(a,c){try{switch(c.type){case "EmptyStatement":return f.voidOperation;case "VariableDeclarator":var d=null===c.init?null:C(a,c.init);d===f.voidOperation&&(d=null);var k=c.id.name.toLowerCase();null!==a.localScope?a.localScope[k]={value:d,valueset:!0,node:c.init}:a.globalScope[k]=
{value:d,valueset:!0,node:c.init};return f.voidOperation;case "VariableDeclaration":for(var m=0;m<c.declarations.length;m++)C(a,c.declarations[m]);return f.voidOperation;case "BlockStatement":var l;a:{for(var p=f.voidOperation,m=0;m<c.body.length;m++)if(p=C(a,c.body[m]),p instanceof f.ReturnResult||p===f.breakResult||p===f.continueResult){l=p;break a}l=p}return l;case "FunctionDeclaration":var n=c.id.name.toLowerCase();a.globalScope[n]={valueset:!0,node:null,value:new h(c,a)};return f.voidOperation;
case "ReturnStatement":var r;if(null===c.argument)r=new f.ReturnResult(f.voidOperation);else{var q=C(a,c.argument);r=new f.ReturnResult(q)}return r;case "IfStatement":var t;if("AssignmentExpression"===c.test.type||"UpdateExpression"===c.test.type)throw Error(e.nodeErrorMessage(c.test,"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));var u=C(a,c.test);if(!0===u)t=C(a,c.consequent);else if(!1===u)t=null!==c.alternate?C(a,c.alternate):f.voidOperation;else throw Error(e.nodeErrorMessage(c,"RUNTIME","CANNOT_USE_NONBOOLEAN_IN_CONDITION"));
return t;case "ExpressionStatement":var x;if("AssignmentExpression"===c.expression.type||"UpdateExpression"===c.expression.type)x=C(a,c.expression);else{var y=C(a,c.expression);x=y===f.voidOperation?f.voidOperation:new f.ImplicitResult(y)}return x;case "AssignmentExpression":var v;var w=C(a,c.right),m=null,B="";if("MemberExpression"===c.left.type){m=C(a,c.left.object);B=!0===c.left.computed?C(a,c.left.property):c.left.property.name;if(f.isArray(m))if(f.isNumber(B)){0>B&&(B=m.length+B);if(0>B||B>m.length)throw Error("Assignment outside of array bounds");
if(B===m.length&&"\x3d"!==c.operator)throw Error("Invalid Parameter");m[B]=E(w,c.operator,m[B],c)}else throw Error("Invalid Parameter");else if(m instanceof b){if(!1===f.isString(B))throw Error("Dictionary accessor must be a string");if(!0===m.hasField(B))m.setField(B,E(w,c.operator,m.field(B),c));else{if("\x3d"!==c.operator)throw Error("Invalid Parameter");m.setField(B,E(w,c.operator,null,c))}}else if(m instanceof g){if(!1===f.isString(B))throw Error("Feature accessor must be a string");if(!0===
m.hasField(B))m.setField(B,E(w,c.operator,m.field(B),c));else{if("\x3d"!==c.operator)throw Error("Invalid Parameter");m.setField(B,E(w,c.operator,null,c))}}else{if(f.isImmutableArray(m))throw Error("Array is Immutable");throw Error("Invalid Parameter");}v=f.voidOperation}else if(m=c.left.name.toLowerCase(),null!==a.localScope&&void 0!==a.localScope[m])a.localScope[m]={value:E(w,c.operator,a.localScope[m].value,c),valueset:!0,node:c.right},v=f.voidOperation;else if(void 0!==a.globalScope[m])a.globalScope[m]=
{value:E(w,c.operator,a.globalScope[m].value,c),valueset:!0,node:c.right},v=f.voidOperation;else throw Error("Variable not recognised");return v;case "UpdateExpression":var A;var z,m=null,B="";if("MemberExpression"===c.argument.type){m=C(a,c.argument.object);B=!0===c.argument.computed?C(a,c.argument.property):c.argument.property.name;if(f.isArray(m))if(f.isNumber(B)){0>B&&(B=m.length+B);if(0>B||B>=m.length)throw Error("Assignment outside of array bounds");z=f.toNumber(m[B]);m[B]="++"===c.operator?
z+1:z-1}else throw Error("Invalid Parameter");else if(m instanceof b){if(!1===f.isString(B))throw Error("Dictionary accessor must be a string");if(!0===m.hasField(B))z=f.toNumber(m.field(B)),m.setField(B,"++"===c.operator?z+1:z-1);else throw Error("Invalid Parameter");}else if(m instanceof g){if(!1===f.isString(B))throw Error("Feature accessor must be a string");if(!0===m.hasField(B))z=f.toNumber(m.field(B)),m.setField(B,"++"===c.operator?z+1:z-1);else throw Error("Invalid Parameter");}else{if(f.isImmutableArray(m))throw Error("Array is Immutable");
throw Error("Invalid Parameter");}A=!1===c.prefix?z:"++"===c.operator?z+1:z-1}else if(m=c.argument.name.toLowerCase(),null!==a.localScope&&void 0!==a.localScope[m])z=f.toNumber(a.localScope[m].value),a.localScope[m]={value:"++"===c.operator?z+1:z-1,valueset:!0,node:c},A=!1===c.prefix?z:"++"===c.operator?z+1:z-1;else if(void 0!==a.globalScope[m])z=f.toNumber(a.globalScope[m].value),a.globalScope[m]={value:"++"===c.operator?z+1:z-1,valueset:!0,node:c},A=!1===c.prefix?z:"++"===c.operator?z+1:z-1;else throw Error("Variable not recognised");
return A;case "BreakStatement":return f.breakResult;case "ContinueStatement":return f.continueResult;case "ForStatement":null!==c.init&&C(a,c.init);B={testResult:!0,lastAction:f.voidOperation};do b:{v=a;w=c;A=B;if(null!==w.test){A.testResult=C(v,w.test);if(!1===A.testResult)break b;if(!0!==A.testResult)throw Error(e.nodeErrorMessage(w,"RUNTIME","CANNOT_USE_NONBOOLEAN_IN_CONDITION"));}A.lastAction=C(v,w.body);A.lastAction===f.breakResult?A.testResult=!1:A.lastAction instanceof f.ReturnResult?A.testResult=
!1:null!==w.update&&C(v,w.update)}while(!0===B.testResult);m=B.lastAction instanceof f.ReturnResult?B.lastAction:f.voidOperation;return m;case "ForInStatement":return H(a,c);case "Identifier":return Q(a,c);case "MemberExpression":return I(a,c);case "Literal":return c.value;case "ThisExpression":throw Error(e.nodeErrorMessage(c,"RUNTIME","NOTSUPPORTED"));case "CallExpression":return M(a,c);case "UnaryExpression":return X(a,c);case "BinaryExpression":return N(a,c);case "LogicalExpression":return G(a,
c);case "ConditionalExpression":throw Error(e.nodeErrorMessage(c,"RUNTIME","NOTSUPPORTED"));case "ArrayExpression":try{for(m=[],B=0;B<c.elements.length;B++){var F=C(a,c.elements[B]);if(f.isFunctionParameter(F))throw Error(e.nodeErrorMessage(c,"RUNTIME","FUNCTIONCONTEXTILLEGAL"));F===f.voidOperation?m.push(null):m.push(F)}}catch(Oa){throw Oa;}return m;case "ObjectExpression":m={};for(B=0;B<c.properties.length;B++){var L=C(a,c.properties[B]);if(f.isFunctionParameter(L.value))throw Error("Illegal Argument");
if(!1===f.isString(L.key))throw Error("Illegal Argument");m[L.key.toString()]=L.value===f.voidOperation?null:L.value}var pa=new b(m);pa.immutable=!1;return pa;case "Property":return{key:"Identifier"===c.key.type?c.key.name:C(a,c.key),value:C(a,c.value)};case "Array":throw Error(e.nodeErrorMessage(c,"RUNTIME","NOTSUPPORTED"));default:throw Error(e.nodeErrorMessage(c,"RUNTIME","UNREOGNISED"));}}catch(Oa){throw Oa;}}function H(a,c){var d=C(a,c.right);"VariableDeclaration"===c.left.type&&C(a,c.left);
var k=null,h="VariableDeclaration"===c.left.type?c.left.declarations[0].id.name:c.left.name;null!==a.localScope&&void 0!==a.localScope[h]&&(k=a.localScope[h]);null===k&&void 0!==a.globalScope[h]&&(k=a.globalScope[h]);if(null===k)throw Error(e.nodeErrorMessage(c,"RUNTIME","VARIABLENOTDECLARED"));if(f.isArray(d)||f.isString(d)){for(var d=d.length,m=0;m<d&&(k.value=m,h=C(a,c.body),h!==f.breakResult);m++)if(h instanceof f.ReturnResult)return h;return f.voidOperation}if(f.isImmutableArray(d)){for(m=0;m<
d.length()&&(k.value=m,h=C(a,c.body),h!==f.breakResult);m++)if(h instanceof f.ReturnResult)return h;return f.voidOperation}if(d instanceof b||d instanceof g)for(d=d.keys(),m=0;m<d.length&&(k.value=d[m],h=C(a,c.body),h!==f.breakResult);m++){if(h instanceof f.ReturnResult)return h}else return f.voidOperation}function E(a,b,c,d){switch(b){case "\x3d":return a===f.voidOperation?null:a;case "/\x3d":return f.toNumber(c)/f.toNumber(a);case "*\x3d":return f.toNumber(c)*f.toNumber(a);case "-\x3d":return f.toNumber(c)-
f.toNumber(a);case "+\x3d":return f.isString(c)||f.isString(a)?f.toString(c)+f.toString(a):f.toNumber(c)+f.toNumber(a);case "%\x3d":return f.toNumber(c)%f.toNumber(a);default:throw Error(e.nodeErrorMessage(d,"RUNTIME","OPERATORNOTRECOGNISED"));}}function F(a,c,d,g){c=c.toLowerCase();switch(c){case "hasz":return a=a.hasZ,void 0===a?!1:a;case "hasm":return a=a.hasM,void 0===a?!1:a;case "spatialreference":return c=a.spatialReference._arcadeCacheId,void 0===c&&(d=!0,Object.freeze&&Object.isFrozen(a.spatialReference)&&
(d=!1),d&&(ea++,c=a.spatialReference._arcadeCacheId=ea)),a=new b({wkt:a.spatialReference.wkt,wkid:a.spatialReference.wkid}),void 0!==c&&(a._arcadeCacheId="SPREF"+c.toString()),a}switch(a.type){case "extent":switch(c){case "xmin":case "xmax":case "ymin":case "ymax":case "zmin":case "zmax":case "mmin":case "mmax":return a=a[c],void 0!==a?a:null;case "type":return"Extent"}break;case "polygon":switch(c){case "rings":return c=f.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===
c&&(ea++,c=ea,f.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",c)),a=new p(a.rings,a.spatialReference,!0===a.hasZ,!0===a.hasM,c);case "type":return"Polygon"}break;case "point":switch(c){case "x":case "y":case "z":case "m":return void 0!==a[c]?a[c]:null;case "type":return"Point"}break;case "polyline":switch(c){case "paths":return c=f.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===c&&(ea++,c=ea,f.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",
c)),a=new p(a.paths,a.spatialReference,!0===a.hasZ,!0===a.hasM,c);case "type":return"Polyline"}break;case "multipoint":switch(c){case "points":return c=f.isVersion4?a.cache._arcadeCacheId:a.getCacheValue("_arcadeCacheId"),void 0===c&&(ea++,c=ea,f.isVersion4?a.cache._arcadeCacheId=c:a.setCacheValue("_arcadeCacheId",c)),a=new l(a.points,a.spatialReference,!0===a.hasZ,!0===a.hasM,c,1);case "type":return"Multipoint"}}throw Error(e.nodeErrorMessage(g,"RUNTIME","PROPERTYNOTFOUND"));}function I(a,c){try{var d=
C(a,c.object);if(null===d)throw Error(e.nodeErrorMessage(c,"RUNTIME","NOTFOUND"));if(!1===c.computed){if(d instanceof b||d instanceof g)return d.field(c.property.name);if(d instanceof u)return F(d,c.property.name,a,c);throw Error(e.nodeErrorMessage(c,"RUNTIME","INVALIDTYPE"));}var k=C(a,c.property);if(d instanceof b||d instanceof g){if(f.isString(k))return d.field(k)}else if(d instanceof u){if(f.isString(k))return F(d,k,a,c)}else if(f.isArray(d)){if(f.isNumber(k)&&isFinite(k)&&Math.floor(k)===k){0>
k&&(k=d.length+k);if(k>=d.length||0>k)throw Error(e.nodeErrorMessage(c,"RUNTIME","OUTOFBOUNDS"));return d[k]}}else if(f.isString(d)){if(f.isNumber(k)&&isFinite(k)&&Math.floor(k)===k){0>k&&(k=d.length+k);if(k>=d.length||0>k)throw Error(e.nodeErrorMessage(c,"RUNTIME","OUTOFBOUNDS"));return d[k]}}else if(f.isImmutableArray(d)&&f.isNumber(k)&&isFinite(k)&&Math.floor(k)===k){0>k&&(k=d.length()+k);if(k>=d.length()||0>k)throw Error(e.nodeErrorMessage(c,"RUNTIME","OUTOFBOUNDS"));return d.get(k)}throw Error(e.nodeErrorMessage(c,
"RUNTIME","INVALIDTYPE"));}catch(wa){throw wa;}}function X(a,b){try{var c=C(a,b.argument);if(f.isBoolean(c)){if("!"===b.operator)return!c;if("-"===b.operator)return-1*f.toNumber(c);if("+"===b.operator)return 1*f.toNumber(c);throw Error(e.nodeErrorMessage(b,"RUNTIME","NOTSUPPORTEDUNARYOPERATOR"));}if("-"===b.operator)return-1*f.toNumber(c);if("+"===b.operator)return 1*f.toNumber(c);throw Error(e.nodeErrorMessage(b,"RUNTIME","NOTSUPPORTEDUNARYOPERATOR"));}catch(sa){throw sa;}}function N(a,b){try{var c=
[C(a,b.left),C(a,b.right)],d=c[0],g=c[1];switch(b.operator){case "\x3d\x3d":return f.equalityTest(d,g);case "\x3d":return f.equalityTest(d,g);case "!\x3d":return!f.equalityTest(d,g);case "\x3c":return f.greaterThanLessThan(d,g,b.operator);case "\x3e":return f.greaterThanLessThan(d,g,b.operator);case "\x3c\x3d":return f.greaterThanLessThan(d,g,b.operator);case "\x3e\x3d":return f.greaterThanLessThan(d,g,b.operator);case "+":return f.isString(d)||f.isString(g)?f.toString(d)+f.toString(g):f.toNumber(d)+
f.toNumber(g);case "-":return f.toNumber(d)-f.toNumber(g);case "*":return f.toNumber(d)*f.toNumber(g);case "/":return f.toNumber(d)/f.toNumber(g);case "%":return f.toNumber(d)%f.toNumber(g);default:throw Error(e.nodeErrorMessage(b,"RUNTIME","OPERATORNOTRECOGNISED"));}}catch(Ba){throw Ba;}}function G(a,b){try{if("AssignmentExpression"===b.left.type||"UpdateExpression"===b.left.type)throw Error(e.nodeErrorMessage(b.left,"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));if("AssignmentExpression"===b.right.type||
"UpdateExpression"===b.right.type)throw Error(e.nodeErrorMessage(b.right,"RUNTIME","CANNOT_USE_ASSIGNMENT_IN_CONDITION"));var c=C(a,b.left);if(f.isBoolean(c))switch(b.operator){case "||":if(!0===c)return c;var d=C(a,b.right);if(f.isBoolean(d))return d;throw Error(e.nodeErrorMessage(b,"RUNTIME","ONLYORORAND"));case "\x26\x26":if(!1===c)return c;d=C(a,b.right);if(f.isBoolean(d))return d;throw Error(e.nodeErrorMessage(b,"RUNTIME","ONLYORORAND"));default:throw Error(e.nodeErrorMessage(b,"RUNTIME","ONLYORORAND"));
}else throw Error(e.nodeErrorMessage(b,"RUNTIME","ONLYBOOLEAN"));}catch(wa){throw wa;}}function Q(a,b){var c;try{var d=b.name.toLowerCase();if(null!==a.localScope&&void 0!==a.localScope[d])return c=a.localScope[d],!0!==c.valueset&&(c.value=C(a,c.node),c.valueset=!0),c.value;if(void 0!==a.globalScope[d])return c=a.globalScope[d],!0!==c.valueset&&(c.value=C(a,c.node),c.valueset=!0),c.value;throw Error(e.nodeErrorMessage(b,"RUNTIME","VARIABLENOTFOUND"));}catch(wa){throw wa;}}function M(a,b){try{if("Identifier"!==
b.callee.type)throw Error(e.nodeErrorMessage(b,"RUNTIME","ONLYNODESSUPPORTED"));if(null!==a.localScope&&void 0!==a.localScope[b.callee.name.toLowerCase()]){var c=a.localScope[b.callee.name.toLowerCase()];if(c.value instanceof f.NativeFunction)return c.value.fn(a,b);if(c.value instanceof h)return V(a,b,c.value.definition);throw Error(e.nodeErrorMessage(b,"RUNTIME","NOTAFUNCTION"));}if(void 0!==a.globalScope[b.callee.name.toLowerCase()]){c=a.globalScope[b.callee.name.toLowerCase()];if(c.value instanceof
f.NativeFunction)return c.value.fn(a,b);if(c.value instanceof h)return V(a,b,c.value.definition);throw Error(e.nodeErrorMessage(b,"RUNTIME","NOTAFUNCTION"));}throw Error(e.nodeErrorMessage(b,"RUNTIME","NOTFOUND"));}catch(sa){throw sa;}}function U(a){return null==a?"":f.isArray(a)||f.isImmutableArray(a)?"Array":f.isDate(a)?"Date":f.isString(a)?"String":f.isBoolean(a)?"Boolean":f.isNumber(a)?"Number":a instanceof b?"Dictionary":a instanceof g?"Feature":a instanceof y?"Point":a instanceof v?"Polygon":
a instanceof z?"Polyline":a instanceof r?"Multipoint":a instanceof k?"Extent":f.isFunctionParameter(a)?"Function":a===f.voidOperation?"":"number"===typeof a&&isNaN(a)?"Number":"Unrecognised Type"}function O(a,b,c,d){try{var e=C(a,b.arguments[c]);if(f.equalityTest(e,d))return C(a,b.arguments[c+1]);var g=b.arguments.length-c;return 1===g?C(a,b.arguments[c]):2===g?null:3===g?C(a,b.arguments[c+2]):O(a,b,c+2,d)}catch(Ca){throw Ca;}}function L(a,b,c,d){try{if(!0===d)return C(a,b.arguments[c+1]);if(3===
b.arguments.length-c)return C(a,b.arguments[c+2]);var e=C(a,b.arguments[c+2]);if(!1===f.isBoolean(e))throw Error("WHEN needs boolean test conditions");return L(a,b,c+2,e)}catch(Ba){throw Ba;}}function ba(a,b){var c=a.length,d=Math.floor(c/2);if(0===c)return[];if(1===c)return[a[0]];var e=ba(a.slice(0,d),b);a=ba(a.slice(d,c),b);for(c=[];0<e.length||0<a.length;)0<e.length&&0<a.length?(d=b(e[0],a[0]),isNaN(d)&&(d=0),0>=d?(c.push(e[0]),e=e.slice(1)):(c.push(a[0]),a=a.slice(1))):0<e.length?(c.push(e[0]),
e=e.slice(1)):0<a.length&&(c.push(a[0]),a=a.slice(1));return c}function P(a,b,c){try{var d=a.body;if(c.length!==a.params.length)throw Error("Invalid Parameter calls to function.");for(var e=0;e<c.length;e++)b.localScope[a.params[e].name.toLowerCase()]={value:c[e],valueset:!0,node:null};var g=C(b,d);if(g instanceof f.ReturnResult)return g.value;if(g===f.breakResult)throw Error("Cannot Break from a Function");if(g===f.continueResult)throw Error("Cannot Continue from a Function");return g instanceof
f.ImplicitResult?g.value:g}catch(Ca){throw Ca;}}function V(a,b,c){return B(a,b,function(b,d,e){b={spatialReference:a.spatialReference,applicationCache:void 0===a.applicationCache?null:a.applicationCache,globalScope:a.globalScope,depthCounter:a.depthCounter+1,console:a.console,localScope:{}};if(64<b.depthCounter)throw Error("Exceeded maximum function depth");return P(c,b,e)})}function Y(a){return function(){var b={applicationCache:void 0===a.context.applicationCache?null:a.context.applicationCache,
spatialReference:a.context.spatialReference,console:a.context.console,localScope:{},depthCounter:a.context.depthCounter+1,globalScope:a.context.globalScope};if(64<b.depthCounter)throw Error("Exceeded maximum function depth");return P(a.definition,b,arguments)}}function oa(a){console.log(a)}Object.defineProperty(n,"__esModule",{value:!0});var ea=0,ca={};c.registerFunctions(ca,B);t.registerFunctions(ca,B);m.registerFunctions(ca,B);a.registerFunctions(ca,B);w.registerFunctions(ca,B);d.registerFunctions(ca,
B);ca["typeof"]=function(a,b){return B(a,b,function(a,b,c){f.pcCheck(c,1,1);a=U(c[0]);if("Unrecognised Type"===a)throw Error("Unrecognised Type");return a})};ca.iif=function(a,b){try{f.pcCheck(null===b.arguments?[]:b.arguments,3,3);var c=C(a,b.arguments[0]);if(!1===f.isBoolean(c))throw Error("IF Function must have a boolean test condition");return!0===c?C(a,b.arguments[1]):C(a,b.arguments[2])}catch(sa){throw sa;}};ca.decode=function(a,b){try{if(2>b.arguments.length)throw Error("Missing Parameters");
if(2===b.arguments.length)return C(a,b.arguments[1]);if(0===(b.arguments.length-1)%2)throw Error("Must have a default value result.");var c=C(a,b.arguments[0]);return O(a,b,1,c)}catch(sa){throw sa;}};ca.when=function(a,b){try{if(3>b.arguments.length)throw Error("Missing Parameters");if(0===b.arguments.length%2)throw Error("Must have a default value result.");var c=C(a,b.arguments[0]);if(!1===f.isBoolean(c))throw Error("WHEN needs boolean test conditions");return L(a,b,0,c)}catch(sa){throw sa;}};ca.top=
function(a,b){return B(a,b,function(a,b,c){f.pcCheck(c,2,2);if(f.isArray(c[0]))return f.toNumber(c[1])>=c[0].length?c[0].slice(0):c[0].slice(0,f.toNumber(c[1]));if(f.isImmutableArray(c[0]))return f.toNumber(c[1])>=c[0].length()?c[0].slice(0):c[0].slice(0,f.toNumber(c[1]));throw Error("Top cannot accept this parameter type");})};ca.first=function(a,b){return B(a,b,function(a,b,c){f.pcCheck(c,1,1);return f.isArray(c[0])?0===c[0].length?null:c[0][0]:f.isImmutableArray(c[0])?0===c[0].length()?null:c[0].get(0):
null})};ca.sort=function(a,b){return B(a,b,function(a,b,c){f.pcCheck(c,1,2);a=c[0];f.isImmutableArray(a)&&(a=a.toArray());if(!1===f.isArray(a))throw Error("Illegal Argument");if(1<c.length){if(!1===f.isFunctionParameter(c[1]))throw Error("Illegal Argument");var d=Y(c[1]);a=ba(a,function(a,b){return d(a,b)})}else{if(0===a.length)return[];c={};for(b=0;b<a.length;b++){var e=U(a[b]);""!==e&&(c[e]=!0)}if(!0===c.Array||!0===c.Dictionary||!0===c.Feature||!0===c.Point||!0===c.Polygon||!0===c.Polyline||!0===
c.Multipoint||!0===c.Extent||!0===c.Function)return a.slice(0);b=0;var e="",g;for(g in c)b++,e=g;a=1<b||"String"===e?ba(a,function(a,b){if(null===a||void 0===a||a===f.voidOperation)return null===b||void 0===b||b===f.voidOperation?0:1;if(null===b||void 0===b||b===f.voidOperation)return-1;a=f.toString(a);b=f.toString(b);return a<b?-1:a===b?0:1}):"Number"===e?ba(a,function(a,b){return a-b}):"Boolean"===e?ba(a,function(a,b){return a===b?0:b?-1:1}):"Date"===e?ba(a,function(a,b){return b-a}):a.slice(0)}return a})};
for(var ga in ca)ca[ga]={value:new f.NativeFunction(ca[ga]),valueset:!0,node:null};var ha=function(){};ha.prototype=ca;ha.prototype.infinity={value:Number.POSITIVE_INFINITY,valueset:!0,node:null};ha.prototype.pi={value:Math.PI,valueset:!0,node:null};n.functionHelper={fixSpatialReference:f.fixSpatialReference,parseArguments:A,standardFunction:B};n.extend=function(a){for(var b={mode:"sync",compiled:!1,functions:{},signatures:[],standardFunction:B,evaluateIdentifier:Q,arcadeCustomFunctionHandler:Y},
c=0;c<a.length;c++)a[c].registerFunctions(b);for(var d in b.functions)ca[d]={value:new f.NativeFunction(b.functions[d]),valueset:!0,node:null},ha.prototype[d]=ca[d];for(c=0;c<b.signatures.length;c++)e.addFunctionDeclaration(b.signatures[c],"f")};n.executeScript=function(a,c,d){d||(d=new x(102100));var e=c.vars,k=c.customfunctions,m=new ha;e||(e={});k||(k={});var l=new b({newline:"\n",tab:"\t",singlequote:"'",doublequote:'"',forwardslash:"/",backwardslash:"\\"});l.immutable=!1;m.textformatting={value:l,
valueset:!0,node:null};for(var p in k)m[p]={value:new f.NativeFunction(k[p]),native:!0,valueset:!0,node:null};for(p in e)m[p]=e[p]&&"esri.Graphic"===e[p].declaredClass?{value:g.createFromGraphic(e[p]),valueset:!0,node:null}:{value:e[p],valueset:!0,node:null};a=C({spatialReference:d,globalScope:m,localScope:null,console:c.console?c.console:oa,depthCounter:1,applicationCache:void 0===c.applicationCache?null:c.applicationCache},a.body[0].body);a instanceof f.ReturnResult&&(a=a.value);a instanceof f.ImplicitResult&&
(a=a.value);a===f.voidOperation&&(a=null);if(a===f.breakResult)throw Error("Cannot return BREAK");if(a===f.continueResult)throw Error("Cannot return CONTINUE");if(a instanceof h)throw Error("Cannot return FUNCTION");if(a instanceof f.NativeFunction)throw Error("Cannot return FUNCTION");return a};n.extractFieldLiterals=function(a,b){void 0===b&&(b=!1);return e.findFieldLiterals(a,b)};n.validateScript=function(a,b){return e.validateScript(a,b,"simple")};n.referencesMember=function(a,b){return e.referencesMember(a,
b)};n.referencesFunction=function(a,b){return e.referencesFunction(a,b)};n.findFunctionCalls=function(a){return e.findFunctionCalls(a,!1)}})},"esri/arcade/parser":function(){define(["require","exports","./treeAnalysis","./lib/esprima"],function(q,n,b,g){Object.defineProperty(n,"__esModule",{value:!0});n.parseScript=function(h){h=g.parse("function _() { "+h+"\n}");if(null===h.body||void 0===h.body)throw Error("No formula provided.");if(0===h.body.length)throw Error("No formula provided.");if(0===h.body.length)throw Error("No formula provided.");
if("BlockStatement"!==h.body[0].body.type)throw Error("Invalid formula content.");var p=b.validateLanguage(h);if(""!==p)throw Error(p);return h};n.scriptCheck=function(h,p,l,f){var e=[];try{var c=g.parse("function _() { "+h+"\n}",{tolerant:!0,loc:!0}),a=c.errors;if(0<a.length)for(var d=0;d<a.length;d++)e.push({line:a[d].lineNumber,character:a[d].column,reason:a[d].description});var m=b.checkScript(c,p,l,f);for(p=0;p<m.length;p++)e.push(m[p])}catch(w){try{"Unexpected token }"===w.description?(w.index=
("function _() { "+h+"\n}").length-1,e.push({line:w.lineNumber,character:w.column,reason:"Unexpected end of script"})):e.push({line:w.lineNumber,character:w.column,reason:w.description})}catch(t){}}return e};n.extractFieldLiterals=function(g,p){void 0===p&&(p=!1);return b.findFieldLiterals(g,p)};n.validateScript=function(g,p,l){void 0===l&&(l="full");return b.validateScript(g,p,l)};n.referencesMember=function(g,p){return b.referencesMember(g,p)};n.referencesFunction=function(g,p){return b.referencesFunction(g,
p)}})},"esri/arcade/lib/esprima":function(){(function(q,n){"function"===typeof define&&define.amd?define(["exports"],n):"undefined"!==typeof exports?n(exports):n(q.esprima={})})(this,function(q){function n(a,b){if(!a)throw Error("ASSERT: "+b);}function b(a){return 48<=a&&57>=a}function g(a){return 0<="0123456789abcdefABCDEF".indexOf(a)}function h(a){return 0<="01234567".indexOf(a)}function p(a){return 10===a||13===a||8232===a||8233===a}function l(a){return 36===a||95===a||65<=a&&90>=a||97<=a&&122>=
a||92===a||128<=a&&hb.NonAsciiIdentifierStart.test(String.fromCharCode(a))}function f(a){return 36===a||95===a||65<=a&&90>=a||97<=a&&122>=a||48<=a&&57>=a||92===a||128<=a&&hb.NonAsciiIdentifierPart.test(String.fromCharCode(a))}function e(a){a=a.toLowerCase();switch(a.length){case 2:return"if"===a||"in"===a;case 3:return"var"===a||"for"===a;case 4:return"else"===a;case 5:return"break"===a;case 6:return"return"===a;case 8:return"function"===a.toLowerCase()||"continue"===a;default:return!1}}function c(a,
b,c,d,e){n("number"===typeof c,"Comment must have valid position");Z.lastCommentStart>=c||(Z.lastCommentStart=c,a={type:a,value:b},K.range&&(a.range=[c,d]),K.loc&&(a.loc=e),K.comments.push(a),K.attachComment&&(K.leadingComments.push(a),K.trailingComments.push(a)))}function a(a){var b,d,e;b=D-a;for(d={start:{line:da,column:D-fa-a}};D<la;)if(e=J.charCodeAt(D),++D,p(e)){K.comments&&(a=J.slice(b+a,D-1),d.end={line:da,column:D-fa-1},c("Line",a,b,D-1,d));13===e&&10===J.charCodeAt(D)&&++D;++da;fa=D;return}K.comments&&
(a=J.slice(b+a,D),d.end={line:da,column:D-fa},c("Line",a,b,D,d))}function d(){var b,d;for(d=0===D;D<la;)if(b=J.charCodeAt(D),32===b||9===b||11===b||12===b||160===b||5760<=b&&0<=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].indexOf(b))++D;else if(p(b))++D,13===b&&10===J.charCodeAt(D)&&++D,++da,fa=D,d=!0;else if(47===b)if(b=J.charCodeAt(D+1),47===b)++D,++D,a(2),d=!0;else if(42===b){++D;++D;a:{var e=b=void 0,f=void 0,f=void 0;K.comments&&(b=D-2,e={start:{line:da,
column:D-fa-2}});for(;D<la;)if(f=J.charCodeAt(D),p(f))13===f&&10===J.charCodeAt(D+1)&&++D,++da,++D,fa=D,D>=la&&M();else{if(42===f&&47===J.charCodeAt(D+1)){++D;++D;K.comments&&(f=J.slice(b+2,D-2),e.end={line:da,column:D-fa},c("Block",f,b,D,e));break a}++D}M()}}else break;else if(d&&45===b)if(45===J.charCodeAt(D+1)&&62===J.charCodeAt(D+2))D+=3,a(3);else break;else if(60===b)if("!--"===J.slice(D+1,D+4))++D,++D,++D,++D,a(4);else break;else break}function m(a){var b,c,d=0;b="u"===a?4:2;for(a=0;a<b;++a)if(D<
la&&g(J[D]))c=J[D++],d=16*d+"0123456789abcdef".indexOf(c.toLowerCase());else return"";return String.fromCharCode(d)}function w(){var a,b;a=J.charCodeAt(D++);b=String.fromCharCode(a);92===a&&(117!==J.charCodeAt(D)&&M(),++D,(a=m("u"))&&"\\"!==a&&l(a.charCodeAt(0))||M(),b=a);for(;D<la;){a=J.charCodeAt(D);if(!f(a))break;++D;b+=String.fromCharCode(a);92===a&&(b=b.substr(0,b.length-1),117!==J.charCodeAt(D)&&M(),++D,(a=m("u"))&&"\\"!==a&&f(a.charCodeAt(0))||M(),b+=a)}return b}function t(){var a=D,b=J.charCodeAt(D),
c,d=J[D];switch(b){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++D,K.tokenize&&(40===b?K.openParenToken=K.tokens.length:123===b&&(K.openCurlyToken=K.tokens.length)),{type:R.Punctuator,value:String.fromCharCode(b),lineNumber:da,lineStart:fa,start:a,end:D};default:if(c=J.charCodeAt(D+1),61===c)switch(b){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return D+=2,{type:R.Punctuator,value:String.fromCharCode(b)+
String.fromCharCode(c),lineNumber:da,lineStart:fa,start:a,end:D};case 33:case 61:return D+=2,61===J.charCodeAt(D)&&++D,{type:R.Punctuator,value:J.slice(a,D),lineNumber:da,lineStart:fa,start:a,end:D}}}b=J.substr(D,4);if("\x3e\x3e\x3e\x3d"===b)return D+=4,{type:R.Punctuator,value:b,lineNumber:da,lineStart:fa,start:a,end:D};b=b.substr(0,3);if("\x3e\x3e\x3e"===b||"\x3c\x3c\x3d"===b||"\x3e\x3e\x3d"===b)return D+=3,{type:R.Punctuator,value:b,lineNumber:da,lineStart:fa,start:a,end:D};b=b.substr(0,2);if(d===
b[1]&&0<="+-\x3c\x3e\x26|".indexOf(d)||"\x3d\x3e"===b)return D+=2,{type:R.Punctuator,value:b,lineNumber:da,lineStart:fa,start:a,end:D};if(0<="\x3c\x3e\x3d!+-*%\x26|^/".indexOf(d))return++D,{type:R.Punctuator,value:d,lineNumber:da,lineStart:fa,start:a,end:D};M()}function k(){var a,c,d;d=J[D];n(b(d.charCodeAt(0))||"."===d,"Numeric literal must start with a decimal digit or a decimal point");c=D;a="";if("."!==d){a=J[D++];d=J[D];if("0"===a){if("x"===d||"X"===d){++D;for(a="";D<la&&g(J[D]);)a+=J[D++];0===
a.length&&M();l(J.charCodeAt(D))&&M();return{type:R.NumericLiteral,value:parseInt("0x"+a,16),lineNumber:da,lineStart:fa,start:c,end:D}}if("b"===d||"B"===d){++D;for(d="";D<la;){a=J[D];if("0"!==a&&"1"!==a)break;d+=J[D++]}0===d.length&&M();D<la&&(a=J.charCodeAt(D),(l(a)||b(a))&&M());return{type:R.NumericLiteral,value:parseInt(d,2),lineNumber:da,lineStart:fa,start:c,end:D}}if("o"===d||"O"===d){h(d)?(d=!0,a="0"+J[D++]):(d=!1,++D,a="");for(;D<la&&h(J[D]);)a+=J[D++];d||0!==a.length||M();(l(J.charCodeAt(D))||
b(J.charCodeAt(D)))&&M();return{type:R.NumericLiteral,value:parseInt(a,8),octal:d,lineNumber:da,lineStart:fa,start:c,end:D}}}for(;b(J.charCodeAt(D));)a+=J[D++];d=J[D]}if("."===d){for(a+=J[D++];b(J.charCodeAt(D));)a+=J[D++];d=J[D]}if("e"===d||"E"===d){a+=J[D++];d=J[D];if("+"===d||"-"===d)a+=J[D++];if(b(J.charCodeAt(D)))for(;b(J.charCodeAt(D));)a+=J[D++];else M()}l(J.charCodeAt(D))&&M();return{type:R.NumericLiteral,value:parseFloat(a),lineNumber:da,lineStart:fa,start:c,end:D}}function u(){W=null;d();
N("Regular Expression language structures not supported")}function r(){d();u()}function y(){var a;a=K.tokens[K.tokens.length-1];if(!a)return r();if("Punctuator"===a.type){if("]"===a.value)return t();if(")"===a.value)return a=K.tokens[K.openParenToken-1],!a||"Keyword"!==a.type||"if"!==a.value.toLowerCase()&&"while"!==a.value.toLowerCase()&&"for"!==a.value.toLowerCase()&&"with"!==a.value.toLowerCase()?t():r();if("}"===a.value){if(K.tokens[K.openCurlyToken-3]&&"Keyword"===K.tokens[K.openCurlyToken-3].type){if(a=
K.tokens[K.openCurlyToken-4],!a)return t()}else if(K.tokens[K.openCurlyToken-4]&&"Keyword"===K.tokens[K.openCurlyToken-4].type){if(a=K.tokens[K.openCurlyToken-5],!a)return r()}else return t();if(0<=ua.indexOf(a.value))return t()}return r()}return"Keyword"===a.type&&"this"!==a.value?r():t()}function v(){var a;d();if(D>=la)return{type:R.EOF,lineNumber:da,lineStart:fa,start:D,end:D};a=J.charCodeAt(D);if(l(a)){var c;a=D;if(92===J.charCodeAt(D))c=w();else a:{var r;for(c=D++;D<la;){r=J.charCodeAt(D);if(92===
r){D=c;c=w();break a}if(f(r))++D;else break}c=J.slice(c,D)}return{type:1===c.length?R.Identifier:e(c)?R.Keyword:"null"===c.toLowerCase()?R.NullLiteral:"true"===c.toLowerCase()||"false"===c.toLowerCase()?R.BooleanLiteral:R.Identifier,value:c,lineNumber:da,lineStart:fa,start:a,end:D}}if(40===a||41===a||59===a)return t();if(39===a||34===a){var q="",u,x,v;r=!1;var B,A;B=da;A=fa;a=J[D];n("'"===a||'"'===a,"String literal must starts with a quote");c=D;for(++D;D<la;)if(u=J[D++],u===a){a="";break}else if("\\"===
u)if((u=J[D++])&&p(u.charCodeAt(0)))++da,"\r"===u&&"\n"===J[D]&&++D,fa=D;else switch(u){case "u":case "x":if("{"===J[D]){++D;x=u=void 0;u=J[D];x=0;for("}"===u&&M();D<la;){u=J[D++];if(!g(u))break;x=16*x+"0123456789abcdef".indexOf(u.toLowerCase())}(1114111<x||"}"!==u)&&M();u=65535>=x?String.fromCharCode(x):String.fromCharCode((x-65536>>10)+55296,(x-65536&1023)+56320);q+=u}else v=D,(x=m(u))?q+=x:(D=v,q+=u);break;case "n":q+="\n";break;case "r":q+="\r";break;case "t":q+="\t";break;case "b":q+="\b";break;
case "f":q+="\f";break;case "v":q+="\x0B";break;default:h(u)?(x="01234567".indexOf(u),0!==x&&(r=!0),D<la&&h(J[D])&&(r=!0,x=8*x+"01234567".indexOf(J[D++]),0<="0123".indexOf(u)&&D<la&&h(J[D])&&(x=8*x+"01234567".indexOf(J[D++]))),q+=String.fromCharCode(x)):q+=u}else if(p(u.charCodeAt(0)))break;else q+=u;""!==a&&M();return{type:R.StringLiteral,value:q,octal:r,startLineNumber:B,startLineStart:A,lineNumber:da,lineStart:fa,start:c,end:D}}return 46===a?b(J.charCodeAt(D+1))?k():t():b(a)?k():K.tokenize&&47===
a?y():t()}function z(){var a,b,c;d();a={start:{line:da,column:D-fa}};b=v();a.end={line:da,column:D-fa};b.type!==R.EOF&&(c=J.slice(b.start,b.end),a={type:Ia[b.type],value:c,range:[b.start,b.end],loc:a},b.regex&&(a.regex={pattern:b.regex.pattern,flags:b.regex.flags}),K.tokens.push(a));return b}function x(){var a;a=W;D=a.end;da=a.lineNumber;fa=a.lineStart;W="undefined"!==typeof K.tokens?z():v();D=a.end;da=a.lineNumber;fa=a.lineStart;return a}function A(){var a,b,c;a=D;b=da;c=fa;W="undefined"!==typeof K.tokens?
z():v();D=a;da=b;fa=c}function B(){this.line=da;this.column=D-fa}function C(){this.start=new B;this.end=null}function H(a){this.start=a.type===R.StringLiteral?{line:a.startLineNumber,column:a.start-a.startLineStart}:{line:a.lineNumber,column:a.start-a.lineStart};this.end=null}function E(){D=W.start;W.type===R.StringLiteral?(da=W.startLineNumber,fa=W.startLineStart):(da=W.lineNumber,fa=W.lineStart);K.range&&(this.range=[D,0]);K.loc&&(this.loc=new C)}function F(a){K.range&&(this.range=[a.start,0]);
K.loc&&(this.loc=new H(a))}function I(){var a,b,c,e;a=D;b=da;c=fa;d();e=da!==b;D=a;da=b;fa=c;return e}function X(a,b,c){var d=Error("Line "+a+": "+c);d.index=b;d.lineNumber=a;d.column=b-fa+1;d.description=c;return d}function N(a){var b,c;b=Array.prototype.slice.call(arguments,1);c=a.replace(/%(\d)/g,function(a,c){n(c<b.length,"Message reference must be in range");return b[c]});throw X(da,D,c);}function G(a){var b,c;b=Array.prototype.slice.call(arguments,1);c=a.replace(/%(\d)/g,function(a,c){n(c<b.length,
"Message reference must be in range");return b[c]});c=X(da,D,c);if(K.errors)K.errors.push(c);else throw c;}function Q(a,b){var c=ia.UnexpectedToken;a&&(c=b?b:a.type===R.EOF?ia.UnexpectedEOS:a.type===R.Identifier?ia.UnexpectedIdentifier:a.type===R.NumericLiteral?ia.UnexpectedNumber:a.type===R.StringLiteral?ia.UnexpectedString:ia.UnexpectedToken);c=c.replace("%0",a?a.value:"ILLEGAL");return a&&"number"===typeof a.lineNumber?X(a.lineNumber,a.start,c):X(da,D,c)}function M(a,b){throw Q(a,b);}function U(a,
b){a=Q(a,b);if(K.errors)K.errors.push(a);else throw a;}function O(a){var b=x();b.type===R.Punctuator&&b.value===a||M(b)}function L(){var a;K.errors?(a=W,a.type===R.Punctuator&&","===a.value?x():a.type===R.Punctuator&&";"===a.value?(x(),U(a)):U(a,ia.UnexpectedToken)):O(",")}function ba(a){var b=x();b.type===R.Keyword&&b.value.toLowerCase()===a.toLowerCase()||M(b)}function P(a){return W.type===R.Punctuator&&W.value===a}function V(a){return W.type===R.Keyword&&W.value.toLowerCase()===a.toLowerCase()}
function Y(){var a;59===J.charCodeAt(D)||P(";")?x():(a=da,d(),da===a&&(W.type===R.EOF||P("}")||M(W)))}function oa(a){return a.type===aa.Identifier||a.type===aa.MemberExpression}function ea(a,b){var c,d=new E;b=ma;c=Da();ma=b;return d.finishFunctionExpression(null,a,[],c)}function ca(){var a,b;a=ma;ma=!0;b=Ea();b=ea(b.params);ma=a;return b}function ga(){var a,b=new E;a=x();return a.type===R.StringLiteral||a.type===R.NumericLiteral?(ma&&a.octal&&U(a,ia.StrictOctalLiteral),b.finishLiteral(a)):b.finishIdentifier(a.value)}
function ha(){var a,b,c,d=new E;a=W;if(a.type===R.Identifier)return b=ga(),"get"!==a.value||P(":")||P("(")?"set"!==a.value||P(":")||P("(")?P(":")?(x(),a=qa(),d.finishProperty("init",b,a,!1,!1)):P("(")?(a=ca(),d.finishProperty("init",b,a,!0,!1)):d.finishProperty("init",b,b,!1,!0):(b=ga(),O("("),a=W,a.type!==R.Identifier?(O(")"),U(a),a=ea([])):(c=[ka()],O(")"),a=ea(c,a)),d.finishProperty("set",b,a,!1,!1)):(b=ga(),O("("),O(")"),a=ea([]),d.finishProperty("get",b,a,!1,!1));if(a.type===R.EOF||a.type===
R.Punctuator)M(a);else{b=ga();if(P(":"))return x(),a=qa(),d.finishProperty("init",b,a,!1,!1);if(P("("))return a=ca(),d.finishProperty("init",b,a,!0,!1);M(x())}}function pa(a){var b=[],c,d,e={},f=String,g=new E;for(!0!==a&&O("{");!P("}");)a=ha(),c=a.key.type===aa.Identifier?a.key.name:f(a.key.value),d="init"===a.kind?Ta.Data:"get"===a.kind?Ta.Get:Ta.Set,c="$"+c,Object.prototype.hasOwnProperty.call(e,c)?(e[c]===Ta.Data?ma&&d===Ta.Data?G(ia.StrictDuplicateProperty):d!==Ta.Data&&G(ia.AccessorDataProperty):
d===Ta.Data?G(ia.AccessorDataProperty):e[c]&d&&G(ia.AccessorGetSet),e[c]|=d):e[c]=d,b.push(a),P("}")||L();O("}");return g.finishObjectExpression(b)}function ja(){var a,b,c,d;if(P("("))return O("("),P(")")?(x(),b=Sa.ArrowParameterPlaceHolder):(++Z.parenthesisCount,b=S(),O(")")),b;if(P("[")){b=[];var e=new E;for(O("[");!P("]");)P(",")?(x(),b.push(null)):(b.push(qa()),P("]")||O(","));x();return e.finishArrayExpression(b)}if(P("{"))return pa();a=W.type;d=new E;if(a===R.Identifier)c=d.finishIdentifier(x().value);
else if(a===R.StringLiteral||a===R.NumericLiteral)ma&&W.octal&&U(W,ia.StrictOctalLiteral),c=d.finishLiteral(x());else if(a===R.Keyword){if(V("function")){d=null;var f;c=[];var g=[],k,h=new E;ba("function");P("(")||(d=ka());f=Ea(b);c=f.params;g=f.defaults;a=f.stricted;b=f.firstRestricted;f.message&&(e=f.message);k=ma;f=Da();ma&&b&&M(b,e);ma&&a&&U(a,e);ma=k;return h.finishFunctionExpression(d,c,g,f)}V("this")?(x(),c=d.finishThisExpression()):M(x())}else a===R.BooleanLiteral?(b=x(),b.value="true"===
b.value.toLowerCase(),c=d.finishLiteral(b)):a===R.NullLiteral?(b=x(),b.value=null,c=d.finishLiteral(b)):P("/")||P("/\x3d")?(c="undefined"!==typeof K.tokens?d.finishLiteral(r()):d.finishLiteral(u()),A()):M(x());return c}function ya(){var a=[];O("(");if(!P(")"))for(;D<la;){a.push(qa());if(P(")"))break;L()}O(")");return a}function sa(){O(".");var a,b=new E;a=x();a.type===R.Identifier||a.type===R.Keyword||a.type===R.BooleanLiteral||a.type===R.NullLiteral||M(a);return b.finishIdentifier(a.value)}function wa(){var a;
O("[");a=S();O("]");return a}function Ba(){var a,b,c=new E;ba("new");var d;n(Z.allowIn,"callee of new expression always allow in keyword.");d=W;for(a=V("new")?Ba():ja();;)if(P("["))b=wa(),a=(new F(d)).finishMemberExpression("[",a,b);else if(P("."))b=sa(),a=(new F(d)).finishMemberExpression(".",a,b);else break;b=P("(")?ya():[];return c.finishNewExpression(a,b)}function Ca(){var a,b,c=W,d,e=Z.allowIn;b=W;Z.allowIn=!0;for(a=V("new")?Ba():ja();;)if(P("."))d=sa(),a=(new F(b)).finishMemberExpression(".",
a,d);else if(P("("))d=ya(),a=(new F(b)).finishCallExpression(a,d);else if(P("["))d=wa(),a=(new F(b)).finishMemberExpression("[",a,d);else break;Z.allowIn=e;W.type!==R.Punctuator||!P("++")&&!P("--")||I()||(oa(a)||G(ia.InvalidLHSInAssignment),b=x(),a=(new F(c)).finishPostfixExpression(b.value,a));return a}function ta(){var a,b,c;W.type!==R.Punctuator&&W.type!==R.Keyword?b=Ca():P("++")||P("--")?(c=W,a=x(),b=ta(),oa(b)||G(ia.InvalidLHSInAssignment),b=(new F(c)).finishUnaryExpression(a.value,b)):P("+")||
P("-")||P("~")||P("!")?(c=W,a=x(),b=ta(),b=(new F(c)).finishUnaryExpression(a.value,b)):V("delete")||V("void")||V("typeof")?(c=W,a=x(),b=ta(),b=(new F(c)).finishUnaryExpression(a.value,b),ma&&"delete"===b.operator&&b.argument.type===aa.Identifier&&G(ia.StrictDelete)):b=Ca();return b}function ra(a,b){var c=0;if(a.type!==R.Punctuator&&a.type!==R.Keyword)return 0;switch(a.value){case "||":c=1;break;case "\x26\x26":c=2;break;case "|":c=3;break;case "^":c=4;break;case "\x26":c=5;break;case "\x3d\x3d":case "!\x3d":case "\x3d\x3d\x3d":case "!\x3d\x3d":c=
6;break;case "\x3c":case "\x3e":case "\x3c\x3d":case "\x3e\x3d":case "instanceof":c=7;break;case "in":c=b?7:0;break;case "\x3c\x3c":case "\x3e\x3e":case "\x3e\x3e\x3e":c=8;break;case "+":case "-":c=9;break;case "*":case "/":case "%":c=11}return c}function va(){var a,b,c,d,e,f;a=W;b=ta();if(b===Sa.ArrowParameterPlaceHolder)return b;c=W;d=ra(c,Z.allowIn);if(0===d)return b;c.prec=d;x();a=[a,W];f=ta();for(e=[b,c,f];0<(d=ra(W,Z.allowIn));){for(;2<e.length&&d<=e[e.length-2].prec;)f=e.pop(),c=e.pop().value,
b=e.pop(),a.pop(),b=(new F(a[a.length-1])).finishBinaryExpression(c,b,f),e.push(b);c=x();c.prec=d;e.push(c);a.push(W);b=ta();e.push(b)}d=e.length-1;b=e[d];for(a.pop();1<d;)b=(new F(a.pop())).finishBinaryExpression(e[d-1].value,e[d-2],b),d-=2;return b}function Aa(a){var b,c,d,e,f,g,k;e=[];f=[];g=0;k={paramSet:{}};b=0;for(c=a.length;b<c;b+=1)if(d=a[b],d.type===aa.Identifier)e.push(d),f.push(null),Fa(k,d,d.name);else if(d.type===aa.AssignmentExpression)e.push(d.left),f.push(d.right),++g,Fa(k,d.left,
d.left.name);else return null;k.message===ia.StrictParamDupe&&(a=ma?k.stricted:k.firstRestricted,M(a,k.message));0===g&&(f=[]);return{params:e,defaults:f,rest:null,stricted:k.stricted,firstRestricted:k.firstRestricted,message:k.message}}function qa(){var a,b,c,d,e;a=Z.parenthesisCount;b=e=W;var f,g;g=W;c=va();c!==Sa.ArrowParameterPlaceHolder&&P("?")&&(x(),f=Z.allowIn,Z.allowIn=!0,b=qa(),Z.allowIn=f,O(":"),f=qa(),c=(new F(g)).finishConditionalExpression(c,b,f));if(c===Sa.ArrowParameterPlaceHolder||
P("\x3d\x3e"))if(Z.parenthesisCount===a||Z.parenthesisCount===a+1)if(c.type===aa.Identifier?d=Aa([c]):c.type===aa.AssignmentExpression?d=Aa([c]):c.type===aa.SequenceExpression?d=Aa(c.expressions):c===Sa.ArrowParameterPlaceHolder&&(d=Aa([])),d)return a=d,e=new F(e),O("\x3d\x3e"),d=ma,c=P("{")?Da():qa(),ma&&a.firstRestricted&&M(a.firstRestricted,a.message),ma&&a.stricted&&U(a.stricted,a.message),ma=d,e.finishArrowFunctionExpression(a.params,a.defaults,c,c.type!==aa.BlockStatement);W.type!==R.Punctuator?
a=!1:(a=W.value,a="\x3d"===a||"*\x3d"===a||"/\x3d"===a||"%\x3d"===a||"+\x3d"===a||"-\x3d"===a||"\x3c\x3c\x3d"===a||"\x3e\x3e\x3d"===a||"\x3e\x3e\x3e\x3d"===a||"\x26\x3d"===a||"^\x3d"===a||"|\x3d"===a);a&&(oa(c)||G(ia.InvalidLHSInAssignment),b=x(),a=qa(),c=(new F(e)).finishAssignmentExpression(b.value,c,a));return c}function S(){var a,b=W;a=qa();if(P(",")){for(a=[a];D<la&&P(",");)x(),a.push(qa());a=(new F(b)).finishSequenceExpression(a)}return a}function ka(){var a,b=new E;a=x();a.type!==R.Identifier&&
M(a);return b.finishIdentifier(a.value)}function Pa(a){var b=null,c,d=new E;c=ka();"const"===a?(O("\x3d"),b=qa()):P("\x3d")&&(x(),b=qa());return d.finishVariableDeclarator(c,b)}function Ma(a){var b=[];do{b.push(Pa(a));if(!P(","))break;x()}while(D<la);return b}function Na(a){var b=W.type,c,d;b===R.EOF&&M(W);if(b===R.Punctuator&&"{"===W.value){if(a){O("{");var e=W;a=D;c=da;d=fa;x();b=P(":");W=e;D=a;da=c;fa=d;if((W.type===R.Identifier||W.type===R.StringLiteral)&&b)return pa(!0);a=new E;for(c=[];D<la&&
!P("}");){d=Ha();if("undefined"===typeof d)break;c.push(d)}O("}");return a.finishBlockStatement(c)}return pa()}a=new E;if(b===R.Punctuator)switch(W.value){case ";":return a=new E,O(";"),a.finishEmptyStatement();case "(":return c=S(),Y(),a.finishExpressionStatement(c)}else if(b===R.Keyword)switch(W.value.toLowerCase()){case "break":return c=null,ba("break"),59===J.charCodeAt(D)?(x(),Z.inIteration||Z.inSwitch||N(ia.IllegalBreak),a=a.finishBreakStatement(null)):I()?(Z.inIteration||Z.inSwitch||N(ia.IllegalBreak),
a=a.finishBreakStatement(null)):(W.type===R.Identifier&&(c=ka(),d="$"+c.name,Object.prototype.hasOwnProperty.call(Z.labelSet,d)||N(ia.UnknownLabel,c.name)),Y(),null!==c||Z.inIteration||Z.inSwitch||N(ia.IllegalBreak),a=a.finishBreakStatement(c)),a;case "continue":return c=null,ba("continue"),59===J.charCodeAt(D)?(x(),Z.inIteration||N(ia.IllegalContinue),a=a.finishContinueStatement(null)):I()?(Z.inIteration||N(ia.IllegalContinue),a=a.finishContinueStatement(null)):(W.type===R.Identifier&&(c=ka(),d=
"$"+c.name,Object.prototype.hasOwnProperty.call(Z.labelSet,d)||N(ia.UnknownLabel,c.name)),Y(),null!==c||Z.inIteration||N(ia.IllegalContinue),a=a.finishContinueStatement(c)),a;case "for":var f,g,k;g=Z.allowIn;f=b=e=null;ba("for");O("(");if(P(";"))x();else{if(V("var")){Z.allowIn=!1;var h=new E;f=x();k=Ma();f=h.finishVariableDeclaration(k,f.value);Z.allowIn=g;1===f.declarations.length&&V("in")&&(x(),c=f,d=S(),f=null)}else Z.allowIn=!1,f=S(),Z.allowIn=g,V("in")&&(oa(f)||G(ia.InvalidLHSInForIn),x(),c=
f,d=S(),f=null);"undefined"===typeof c&&O(";")}"undefined"===typeof c&&(P(";")||(b=S()),O(";"),P(")")||(e=S()));O(")");k=Z.inIteration;Z.inIteration=!0;g=Na(!0);Z.inIteration=k;return"undefined"===typeof c?a.finishForStatement(f,b,e,g):a.finishForInStatement(c,d,g);case "function":return Qa(a);case "if":return ba("if"),O("("),c=S(),O(")"),d=Na(!0),V("else")?(x(),b=Na(!0)):b=null,a.finishIfStatement(c,d,b);case "return":return c=null,ba("return"),Z.inFunctionBody||G(ia.IllegalReturn),32===J.charCodeAt(D)&&
l(J.charCodeAt(D+1))?(c=S(),Y(),a=a.finishReturnStatement(c)):I()?a=a.finishReturnStatement(null):(P(";")||P("}")||W.type===R.EOF||(c=S()),Y(),a=a.finishReturnStatement(c)),a;case "var":return ba("var"),c=Ma(),Y(),a.finishVariableDeclaration(c,"var")}c=S();if(c.type===aa.Identifier&&P(":"))return x(),b="$"+c.name,Object.prototype.hasOwnProperty.call(Z.labelSet,b)&&N(ia.Redeclaration,"Label",c.name),Z.labelSet[b]=!0,d=Na(!1),delete Z.labelSet[b],a.finishLabeledStatement(c,d);Y();return a.finishExpressionStatement(c)}
function Da(){var a,b=[],c,d,e,f,g,k=new E;for(O("{");D<la&&W.type===R.StringLiteral;){c=W;a=Ha();b.push(a);if(a.expression.type!==aa.Literal)break;a=J.slice(c.start+1,c.end-1);"use strict"===a?(ma=!0,d&&U(d,ia.StrictOctalLiteral)):!d&&c.octal&&(d=c)}c=Z.labelSet;d=Z.inIteration;e=Z.inSwitch;f=Z.inFunctionBody;g=Z.parenthesizedCount;Z.labelSet={};Z.inIteration=!1;Z.inSwitch=!1;Z.inFunctionBody=!0;for(Z.parenthesizedCount=0;D<la&&!P("}");){a=Ha();if("undefined"===typeof a)break;b.push(a)}O("}");Z.labelSet=
c;Z.inIteration=d;Z.inSwitch=e;Z.inFunctionBody=f;Z.parenthesizedCount=g;return k.finishBlockStatement(b)}function Fa(a,b,c){c="$"+c;ma?Object.prototype.hasOwnProperty.call(a.paramSet,c)&&(a.stricted=b,a.message=ia.StrictParamDupe):!a.firstRestricted&&Object.prototype.hasOwnProperty.call(a.paramSet,c)&&(a.firstRestricted=b,a.message=ia.StrictParamDupe);a.paramSet[c]=!0}function Ea(a){a={params:[],defaultCount:0,defaults:[],firstRestricted:a};O("(");if(!P(")"))for(a.paramSet={};D<la;){var b=a,c=void 0,
d=void 0,e=void 0,c=W,d=ka();Fa(b,c,c.value);P("\x3d")&&(x(),e=qa(),++b.defaultCount);b.params.push(d);b.defaults.push(e);if(P(")"))break;O(",")}O(")");0===a.defaultCount&&(a.defaults=[]);return{params:a.params,defaults:a.defaults,stricted:a.stricted,firstRestricted:a.firstRestricted,message:a.message}}function Qa(){var a,b=[],c=[],d,e,f,g,k,h=new E;ba("function");a=ka();d=Ea(f);b=d.params;c=d.defaults;e=d.stricted;f=d.firstRestricted;d.message&&(g=d.message);k=ma;d=Da();ma&&f&&M(f,g);ma&&e&&U(e,
g);ma=k;return h.finishFunctionDeclaration(a,b,c,d)}function Ha(){if(W.type===R.Keyword)return"function"===W.value.toLowerCase()?Qa():Na(!1);if(W.type!==R.EOF)return Na(!1)}function Oa(){var a,b,c,d=[];for(a=0;a<K.tokens.length;++a)b=K.tokens[a],c={type:b.type,value:b.value},b.regex&&(c.regex={pattern:b.regex.pattern,flags:b.regex.flags}),K.range&&(c.range=b.range),K.loc&&(c.loc=b.loc),d.push(c);K.tokens=d}var R,Ia,ua,aa,Sa,Ta,ia,hb,J,ma,D,da,fa,la,W,Z,K;R={BooleanLiteral:1,EOF:2,Identifier:3,Keyword:4,
NullLiteral:5,NumericLiteral:6,Punctuator:7,StringLiteral:8,RegularExpression:9};Ia={};Ia[R.BooleanLiteral]="Boolean";Ia[R.EOF]="\x3cend\x3e";Ia[R.Identifier]="Identifier";Ia[R.Keyword]="Keyword";Ia[R.NullLiteral]="Null";Ia[R.NumericLiteral]="Numeric";Ia[R.Punctuator]="Punctuator";Ia[R.StringLiteral]="String";Ia[R.RegularExpression]="RegularExpression";ua="( { [ in typeof instanceof new return case delete throw void \x3d +\x3d -\x3d *\x3d /\x3d %\x3d \x3c\x3c\x3d \x3e\x3e\x3d \x3e\x3e\x3e\x3d \x26\x3d |\x3d ^\x3d , + - * / % ++ -- \x3c\x3c \x3e\x3e \x3e\x3e\x3e \x26 | ^ ! ~ \x26\x26 || ? : \x3d\x3d\x3d \x3d\x3d \x3e\x3d \x3c\x3d \x3c \x3e !\x3d !\x3d\x3d".split(" ");
aa={AssignmentExpression:"AssignmentExpression",ArrayExpression:"ArrayExpression",BlockStatement:"BlockStatement",BinaryExpression:"BinaryExpression",BreakStatement:"BreakStatement",CallExpression:"CallExpression",ConditionalExpression:"ConditionalExpression",ContinueStatement:"ContinueStatement",DoWhileStatement:"DoWhileStatement",EmptyStatement:"EmptyStatement",ExpressionStatement:"ExpressionStatement",ForStatement:"ForStatement",ForInStatement:"ForInStatement",FunctionDeclaration:"FunctionDeclaration",
FunctionExpression:"FunctionExpression",Identifier:"Identifier",IfStatement:"IfStatement",Literal:"Literal",LogicalExpression:"LogicalExpression",MemberExpression:"MemberExpression",ObjectExpression:"ObjectExpression",Program:"Program",Property:"Property",ReturnStatement:"ReturnStatement",UnaryExpression:"UnaryExpression",UpdateExpression:"UpdateExpression",VariableDeclaration:"VariableDeclaration",VariableDeclarator:"VariableDeclarator"};Sa={ArrowParameterPlaceHolder:{type:"ArrowParameterPlaceHolder"}};
Ta={Data:1,Get:2,Set:4};ia={UnexpectedToken:"Unexpected token %0",UnexpectedNumber:"Unexpected number",UnexpectedString:"Unexpected string",UnexpectedIdentifier:"Unexpected identifier",UnexpectedReserved:"Unexpected reserved word",UnexpectedEOS:"Unexpected end of input",NewlineAfterThrow:"Illegal newline after throw",InvalidRegExp:"Invalid regular expression",UnterminatedRegExp:"Invalid regular expression: missing /",InvalidLHSInAssignment:"Invalid left-hand side in assignment",InvalidLHSInForIn:"Invalid left-hand side in for-in",
MultipleDefaultsInSwitch:"More than one default clause in switch statement",NoCatchOrFinally:"Missing catch or finally after try",UnknownLabel:"Undefined label '%0'",Redeclaration:"%0 '%1' has already been declared",IllegalContinue:"Illegal continue statement",IllegalBreak:"Illegal break statement",IllegalReturn:"Illegal return statement",StrictModeWith:"Strict mode code may not include a with statement",StrictCatchVariable:"Catch variable may not be eval or arguments in strict mode",StrictVarName:"Variable name may not be eval or arguments in strict mode",
StrictParamName:"Parameter name eval or arguments is not allowed in strict mode",StrictParamDupe:"Strict mode function may not have duplicate parameter names",StrictFunctionName:"Function name may not be eval or arguments in strict mode",StrictOctalLiteral:"Octal literals are not allowed in strict mode.",StrictDelete:"Delete of an unqualified identifier in strict mode.",StrictDuplicateProperty:"Duplicate data property in object literal not allowed in strict mode",AccessorDataProperty:"Object literal may not have data and accessor property with the same name",
AccessorGetSet:"Object literal may not have multiple get/set accessors with the same name",StrictLHSAssignment:"Assignment to eval or arguments is not allowed in strict mode",StrictLHSPostfix:"Postfix increment/decrement may not have eval or arguments operand in strict mode",StrictLHSPrefix:"Prefix increment/decrement may not have eval or arguments operand in strict mode",StrictReservedWord:"Use of future reserved word in strict mode"};hb={NonAsciiIdentifierStart:/[\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0370-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u048a-\u052f\u0531-\u0556\u0559\u0561-\u0587\u05d0-\u05ea\u05f0-\u05f2\u0620-\u064a\u066e\u066f\u0671-\u06d3\u06d5\u06e5\u06e6\u06ee\u06ef\u06fa-\u06fc\u06ff\u0710\u0712-\u072f\u074d-\u07a5\u07b1\u07ca-\u07ea\u07f4\u07f5\u07fa\u0800-\u0815\u081a\u0824\u0828\u0840-\u0858\u08a0-\u08b2\u0904-\u0939\u093d\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bd\u09ce\u09dc\u09dd\u09df-\u09e1\u09f0\u09f1\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a59-\u0a5c\u0a5e\u0a72-\u0a74\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abd\u0ad0\u0ae0\u0ae1\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3d\u0b5c\u0b5d\u0b5f-\u0b61\u0b71\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bd0\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d\u0c58\u0c59\u0c60\u0c61\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbd\u0cde\u0ce0\u0ce1\u0cf1\u0cf2\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d\u0d4e\u0d60\u0d61\u0d7a-\u0d7f\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0e01-\u0e30\u0e32\u0e33\u0e40-\u0e46\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb0\u0eb2\u0eb3\u0ebd\u0ec0-\u0ec4\u0ec6\u0edc-\u0edf\u0f00\u0f40-\u0f47\u0f49-\u0f6c\u0f88-\u0f8c\u1000-\u102a\u103f\u1050-\u1055\u105a-\u105d\u1061\u1065\u1066\u106e-\u1070\u1075-\u1081\u108e\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176c\u176e-\u1770\u1780-\u17b3\u17d7\u17dc\u1820-\u1877\u1880-\u18a8\u18aa\u18b0-\u18f5\u1900-\u191e\u1950-\u196d\u1970-\u1974\u1980-\u19ab\u19c1-\u19c7\u1a00-\u1a16\u1a20-\u1a54\u1aa7\u1b05-\u1b33\u1b45-\u1b4b\u1b83-\u1ba0\u1bae\u1baf\u1bba-\u1be5\u1c00-\u1c23\u1c4d-\u1c4f\u1c5a-\u1c7d\u1ce9-\u1cec\u1cee-\u1cf1\u1cf5\u1cf6\u1d00-\u1dbf\u1e00-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u2071\u207f\u2090-\u209c\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cee\u2cf2\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d80-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2e2f\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303c\u3041-\u3096\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua61f\ua62a\ua62b\ua640-\ua66e\ua67f-\ua69d\ua6a0-\ua6ef\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua7ad\ua7b0\ua7b1\ua7f7-\ua801\ua803-\ua805\ua807-\ua80a\ua80c-\ua822\ua840-\ua873\ua882-\ua8b3\ua8f2-\ua8f7\ua8fb\ua90a-\ua925\ua930-\ua946\ua960-\ua97c\ua984-\ua9b2\ua9cf\ua9e0-\ua9e4\ua9e6-\ua9ef\ua9fa-\ua9fe\uaa00-\uaa28\uaa40-\uaa42\uaa44-\uaa4b\uaa60-\uaa76\uaa7a\uaa7e-\uaaaf\uaab1\uaab5\uaab6\uaab9-\uaabd\uaac0\uaac2\uaadb-\uaadd\uaae0-\uaaea\uaaf2-\uaaf4\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab5f\uab64\uab65\uabc0-\uabe2\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d\ufb1f-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe70-\ufe74\ufe76-\ufefc\uff21-\uff3a\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]/,
NonAsciiIdentifierPart:/[\u00aa\u00b5\u00ba\u00c0-\u00d6\u00d8-\u00f6\u00f8-\u02c1\u02c6-\u02d1\u02e0-\u02e4\u02ec\u02ee\u0300-\u0374\u0376\u0377\u037a-\u037d\u037f\u0386\u0388-\u038a\u038c\u038e-\u03a1\u03a3-\u03f5\u03f7-\u0481\u0483-\u0487\u048a-\u052f\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05bd\u05bf\u05c1\u05c2\u05c4\u05c5\u05c7\u05d0-\u05ea\u05f0-\u05f2\u0610-\u061a\u0620-\u0669\u066e-\u06d3\u06d5-\u06dc\u06df-\u06e8\u06ea-\u06fc\u06ff\u0710-\u074a\u074d-\u07b1\u07c0-\u07f5\u07fa\u0800-\u082d\u0840-\u085b\u08a0-\u08b2\u08e4-\u0963\u0966-\u096f\u0971-\u0983\u0985-\u098c\u098f\u0990\u0993-\u09a8\u09aa-\u09b0\u09b2\u09b6-\u09b9\u09bc-\u09c4\u09c7\u09c8\u09cb-\u09ce\u09d7\u09dc\u09dd\u09df-\u09e3\u09e6-\u09f1\u0a01-\u0a03\u0a05-\u0a0a\u0a0f\u0a10\u0a13-\u0a28\u0a2a-\u0a30\u0a32\u0a33\u0a35\u0a36\u0a38\u0a39\u0a3c\u0a3e-\u0a42\u0a47\u0a48\u0a4b-\u0a4d\u0a51\u0a59-\u0a5c\u0a5e\u0a66-\u0a75\u0a81-\u0a83\u0a85-\u0a8d\u0a8f-\u0a91\u0a93-\u0aa8\u0aaa-\u0ab0\u0ab2\u0ab3\u0ab5-\u0ab9\u0abc-\u0ac5\u0ac7-\u0ac9\u0acb-\u0acd\u0ad0\u0ae0-\u0ae3\u0ae6-\u0aef\u0b01-\u0b03\u0b05-\u0b0c\u0b0f\u0b10\u0b13-\u0b28\u0b2a-\u0b30\u0b32\u0b33\u0b35-\u0b39\u0b3c-\u0b44\u0b47\u0b48\u0b4b-\u0b4d\u0b56\u0b57\u0b5c\u0b5d\u0b5f-\u0b63\u0b66-\u0b6f\u0b71\u0b82\u0b83\u0b85-\u0b8a\u0b8e-\u0b90\u0b92-\u0b95\u0b99\u0b9a\u0b9c\u0b9e\u0b9f\u0ba3\u0ba4\u0ba8-\u0baa\u0bae-\u0bb9\u0bbe-\u0bc2\u0bc6-\u0bc8\u0bca-\u0bcd\u0bd0\u0bd7\u0be6-\u0bef\u0c00-\u0c03\u0c05-\u0c0c\u0c0e-\u0c10\u0c12-\u0c28\u0c2a-\u0c39\u0c3d-\u0c44\u0c46-\u0c48\u0c4a-\u0c4d\u0c55\u0c56\u0c58\u0c59\u0c60-\u0c63\u0c66-\u0c6f\u0c81-\u0c83\u0c85-\u0c8c\u0c8e-\u0c90\u0c92-\u0ca8\u0caa-\u0cb3\u0cb5-\u0cb9\u0cbc-\u0cc4\u0cc6-\u0cc8\u0cca-\u0ccd\u0cd5\u0cd6\u0cde\u0ce0-\u0ce3\u0ce6-\u0cef\u0cf1\u0cf2\u0d01-\u0d03\u0d05-\u0d0c\u0d0e-\u0d10\u0d12-\u0d3a\u0d3d-\u0d44\u0d46-\u0d48\u0d4a-\u0d4e\u0d57\u0d60-\u0d63\u0d66-\u0d6f\u0d7a-\u0d7f\u0d82\u0d83\u0d85-\u0d96\u0d9a-\u0db1\u0db3-\u0dbb\u0dbd\u0dc0-\u0dc6\u0dca\u0dcf-\u0dd4\u0dd6\u0dd8-\u0ddf\u0de6-\u0def\u0df2\u0df3\u0e01-\u0e3a\u0e40-\u0e4e\u0e50-\u0e59\u0e81\u0e82\u0e84\u0e87\u0e88\u0e8a\u0e8d\u0e94-\u0e97\u0e99-\u0e9f\u0ea1-\u0ea3\u0ea5\u0ea7\u0eaa\u0eab\u0ead-\u0eb9\u0ebb-\u0ebd\u0ec0-\u0ec4\u0ec6\u0ec8-\u0ecd\u0ed0-\u0ed9\u0edc-\u0edf\u0f00\u0f18\u0f19\u0f20-\u0f29\u0f35\u0f37\u0f39\u0f3e-\u0f47\u0f49-\u0f6c\u0f71-\u0f84\u0f86-\u0f97\u0f99-\u0fbc\u0fc6\u1000-\u1049\u1050-\u109d\u10a0-\u10c5\u10c7\u10cd\u10d0-\u10fa\u10fc-\u1248\u124a-\u124d\u1250-\u1256\u1258\u125a-\u125d\u1260-\u1288\u128a-\u128d\u1290-\u12b0\u12b2-\u12b5\u12b8-\u12be\u12c0\u12c2-\u12c5\u12c8-\u12d6\u12d8-\u1310\u1312-\u1315\u1318-\u135a\u135d-\u135f\u1380-\u138f\u13a0-\u13f4\u1401-\u166c\u166f-\u167f\u1681-\u169a\u16a0-\u16ea\u16ee-\u16f8\u1700-\u170c\u170e-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176c\u176e-\u1770\u1772\u1773\u1780-\u17d3\u17d7\u17dc\u17dd\u17e0-\u17e9\u180b-\u180d\u1810-\u1819\u1820-\u1877\u1880-\u18aa\u18b0-\u18f5\u1900-\u191e\u1920-\u192b\u1930-\u193b\u1946-\u196d\u1970-\u1974\u1980-\u19ab\u19b0-\u19c9\u19d0-\u19d9\u1a00-\u1a1b\u1a20-\u1a5e\u1a60-\u1a7c\u1a7f-\u1a89\u1a90-\u1a99\u1aa7\u1ab0-\u1abd\u1b00-\u1b4b\u1b50-\u1b59\u1b6b-\u1b73\u1b80-\u1bf3\u1c00-\u1c37\u1c40-\u1c49\u1c4d-\u1c7d\u1cd0-\u1cd2\u1cd4-\u1cf6\u1cf8\u1cf9\u1d00-\u1df5\u1dfc-\u1f15\u1f18-\u1f1d\u1f20-\u1f45\u1f48-\u1f4d\u1f50-\u1f57\u1f59\u1f5b\u1f5d\u1f5f-\u1f7d\u1f80-\u1fb4\u1fb6-\u1fbc\u1fbe\u1fc2-\u1fc4\u1fc6-\u1fcc\u1fd0-\u1fd3\u1fd6-\u1fdb\u1fe0-\u1fec\u1ff2-\u1ff4\u1ff6-\u1ffc\u200c\u200d\u203f\u2040\u2054\u2071\u207f\u2090-\u209c\u20d0-\u20dc\u20e1\u20e5-\u20f0\u2102\u2107\u210a-\u2113\u2115\u2119-\u211d\u2124\u2126\u2128\u212a-\u212d\u212f-\u2139\u213c-\u213f\u2145-\u2149\u214e\u2160-\u2188\u2c00-\u2c2e\u2c30-\u2c5e\u2c60-\u2ce4\u2ceb-\u2cf3\u2d00-\u2d25\u2d27\u2d2d\u2d30-\u2d67\u2d6f\u2d7f-\u2d96\u2da0-\u2da6\u2da8-\u2dae\u2db0-\u2db6\u2db8-\u2dbe\u2dc0-\u2dc6\u2dc8-\u2dce\u2dd0-\u2dd6\u2dd8-\u2dde\u2de0-\u2dff\u2e2f\u3005-\u3007\u3021-\u302f\u3031-\u3035\u3038-\u303c\u3041-\u3096\u3099\u309a\u309d-\u309f\u30a1-\u30fa\u30fc-\u30ff\u3105-\u312d\u3131-\u318e\u31a0-\u31ba\u31f0-\u31ff\u3400-\u4db5\u4e00-\u9fcc\ua000-\ua48c\ua4d0-\ua4fd\ua500-\ua60c\ua610-\ua62b\ua640-\ua66f\ua674-\ua67d\ua67f-\ua69d\ua69f-\ua6f1\ua717-\ua71f\ua722-\ua788\ua78b-\ua78e\ua790-\ua7ad\ua7b0\ua7b1\ua7f7-\ua827\ua840-\ua873\ua880-\ua8c4\ua8d0-\ua8d9\ua8e0-\ua8f7\ua8fb\ua900-\ua92d\ua930-\ua953\ua960-\ua97c\ua980-\ua9c0\ua9cf-\ua9d9\ua9e0-\ua9fe\uaa00-\uaa36\uaa40-\uaa4d\uaa50-\uaa59\uaa60-\uaa76\uaa7a-\uaac2\uaadb-\uaadd\uaae0-\uaaef\uaaf2-\uaaf6\uab01-\uab06\uab09-\uab0e\uab11-\uab16\uab20-\uab26\uab28-\uab2e\uab30-\uab5a\uab5c-\uab5f\uab64\uab65\uabc0-\uabea\uabec\uabed\uabf0-\uabf9\uac00-\ud7a3\ud7b0-\ud7c6\ud7cb-\ud7fb\uf900-\ufa6d\ufa70-\ufad9\ufb00-\ufb06\ufb13-\ufb17\ufb1d-\ufb28\ufb2a-\ufb36\ufb38-\ufb3c\ufb3e\ufb40\ufb41\ufb43\ufb44\ufb46-\ufbb1\ufbd3-\ufd3d\ufd50-\ufd8f\ufd92-\ufdc7\ufdf0-\ufdfb\ufe00-\ufe0f\ufe20-\ufe2d\ufe33\ufe34\ufe4d-\ufe4f\ufe70-\ufe74\ufe76-\ufefc\uff10-\uff19\uff21-\uff3a\uff3f\uff41-\uff5a\uff66-\uffbe\uffc2-\uffc7\uffca-\uffcf\uffd2-\uffd7\uffda-\uffdc]/};
F.prototype=E.prototype={processComment:function(){var a,b,c,d=K.bottomRightStack,e,f,g=d[d.length-1];if(!(this.type===aa.Program&&0<this.body.length)){if(0<K.trailingComments.length){c=[];for(e=K.trailingComments.length-1;0<=e;--e)f=K.trailingComments[e],f.range[0]>=this.range[1]&&(c.unshift(f),K.trailingComments.splice(e,1));K.trailingComments=[]}else g&&g.trailingComments&&g.trailingComments[0].range[0]>=this.range[1]&&(c=g.trailingComments,delete g.trailingComments);if(g)for(;g&&g.range[0]>=this.range[0];)a=
g,g=d.pop();if(a)a.leadingComments&&a.leadingComments[a.leadingComments.length-1].range[1]<=this.range[0]&&(this.leadingComments=a.leadingComments,a.leadingComments=void 0);else if(0<K.leadingComments.length)for(b=[],e=K.leadingComments.length-1;0<=e;--e)f=K.leadingComments[e],f.range[1]<=this.range[0]&&(b.unshift(f),K.leadingComments.splice(e,1));b&&0<b.length&&(this.leadingComments=b);c&&0<c.length&&(this.trailingComments=c);d.push(this)}},finish:function(){K.range&&(this.range[1]=D);K.loc&&(this.loc.end=
new B,K.source&&(this.loc.source=K.source));K.attachComment&&this.processComment()},finishArrayExpression:function(a){this.type=aa.ArrayExpression;this.elements=a;this.finish();return this},finishAssignmentExpression:function(a,b,c){this.type=aa.AssignmentExpression;this.operator=a;this.left=b;this.right=c;this.finish();return this},finishBinaryExpression:function(a,b,c){this.type="||"===a||"\x26\x26"===a?aa.LogicalExpression:aa.BinaryExpression;this.operator=a;this.left=b;this.right=c;this.finish();
return this},finishBlockStatement:function(a){this.type=aa.BlockStatement;this.body=a;this.finish();return this},finishBreakStatement:function(a){this.type=aa.BreakStatement;this.label=a;this.finish();return this},finishCallExpression:function(a,b){this.type=aa.CallExpression;this.callee=a;this.arguments=b;this.finish();return this},finishConditionalExpression:function(a,b,c){this.type=aa.ConditionalExpression;this.test=a;this.consequent=b;this.alternate=c;this.finish();return this},finishContinueStatement:function(a){this.type=
aa.ContinueStatement;this.label=a;this.finish();return this},finishEmptyStatement:function(){this.type=aa.EmptyStatement;this.finish();return this},finishExpressionStatement:function(a){this.type=aa.ExpressionStatement;this.expression=a;this.finish();return this},finishForStatement:function(a,b,c,d){this.type=aa.ForStatement;this.init=a;this.test=b;this.update=c;this.body=d;this.finish();return this},finishForInStatement:function(a,b,c){this.type=aa.ForInStatement;this.left=a;this.right=b;this.body=
c;this.each=!1;this.finish();return this},finishFunctionDeclaration:function(a,b,c,d){this.type=aa.FunctionDeclaration;this.id=a;this.params=b;this.defaults=c;this.body=d;this.rest=null;this.expression=this.generator=!1;this.finish();return this},finishFunctionExpression:function(a,b,c,d){this.type=aa.FunctionExpression;this.id=a;this.params=b;this.defaults=c;this.body=d;this.rest=null;this.expression=this.generator=!1;this.finish();return this},finishIdentifier:function(a){this.type=aa.Identifier;
this.name=a;this.finish();return this},finishIfStatement:function(a,b,c){this.type=aa.IfStatement;this.test=a;this.consequent=b;this.alternate=c;this.finish();return this},finishLiteral:function(a){this.type=aa.Literal;this.value=a.value;this.raw=J.slice(a.start,a.end);a.regex&&(this.regex=a.regex);this.finish();return this},finishMemberExpression:function(a,b,c){this.type=aa.MemberExpression;this.computed="["===a;this.object=b;this.property=c;this.finish();return this},finishObjectExpression:function(a){this.type=
aa.ObjectExpression;this.properties=a;this.finish();return this},finishPostfixExpression:function(a,b){this.type=aa.UpdateExpression;this.operator=a;this.argument=b;this.prefix=!1;this.finish();return this},finishProgram:function(a){this.type=aa.Program;this.body=a;this.finish();return this},finishProperty:function(a,b,c,d,e){this.type=aa.Property;this.key=b;this.value=c;this.kind=a;this.method=d;this.shorthand=e;this.finish();return this},finishReturnStatement:function(a){this.type=aa.ReturnStatement;
this.argument=a;this.finish();return this},finishUnaryExpression:function(a,b){this.type="++"===a||"--"===a?aa.UpdateExpression:aa.UnaryExpression;this.operator=a;this.argument=b;this.prefix=!0;this.finish();return this},finishVariableDeclaration:function(a,b){this.type=aa.VariableDeclaration;this.declarations=a;this.kind=b;this.finish();return this},finishVariableDeclarator:function(a,b){this.type=aa.VariableDeclarator;this.id=a;this.init=b;this.finish();return this}};q.version="2.0.0-dev";q.tokenize=
function(a,b){var c,d;c=String;"string"===typeof a||a instanceof String||(a=c(a));J=a;D=0;da=0<J.length?1:0;fa=0;la=J.length;W=null;Z={allowIn:!0,labelSet:{},inFunctionBody:!1,inIteration:!1,inSwitch:!1,lastCommentStart:-1};K={};b=b||{};b.tokens=!0;K.tokens=[];K.tokenize=!0;K.openParenToken=-1;K.openCurlyToken=-1;K.range="boolean"===typeof b.range&&b.range;K.loc="boolean"===typeof b.loc&&b.loc;"boolean"===typeof b.comment&&b.comment&&(K.comments=[]);"boolean"===typeof b.tolerant&&b.tolerant&&(K.errors=
[]);try{A();if(W.type===R.EOF)return K.tokens;for(x();W.type!==R.EOF;)try{x()}catch(Za){if(K.errors){K.errors.push(Za);break}else throw Za;}Oa();d=K.tokens;"undefined"!==typeof K.comments&&(d.comments=K.comments);"undefined"!==typeof K.errors&&(d.errors=K.errors)}catch(Za){throw Za;}finally{K={}}return d};q.parse=function(a,b){var c,e;e=String;"string"===typeof a||a instanceof String||(a=e(a));J=a;D=0;da=0<J.length?1:0;fa=0;la=J.length;W=null;Z={allowIn:!0,labelSet:{},parenthesisCount:0,inFunctionBody:!1,
inIteration:!1,inSwitch:!1,lastCommentStart:-1};K={};"undefined"!==typeof b&&(K.range="boolean"===typeof b.range&&b.range,K.loc="boolean"===typeof b.loc&&b.loc,K.attachComment="boolean"===typeof b.attachComment&&b.attachComment,K.loc&&null!==b.source&&void 0!==b.source&&(K.source=e(b.source)),"boolean"===typeof b.tokens&&b.tokens&&(K.tokens=[]),"boolean"===typeof b.comment&&b.comment&&(K.comments=[]),"boolean"===typeof b.tolerant&&b.tolerant&&(K.errors=[]),K.attachComment&&(K.range=!0,K.comments=
[],K.bottomRightStack=[],K.trailingComments=[],K.leadingComments=[]));try{var f;d();A();f=new E;ma=!1;var g;a=[];for(var k,h,m;D<la;){k=W;if(k.type!==R.StringLiteral)break;g=Ha();a.push(g);if(g.expression.type!==aa.Literal)break;h=J.slice(k.start+1,k.end-1);"use strict"===h?(ma=!0,m&&U(m,ia.StrictOctalLiteral)):!m&&k.octal&&(m=k)}for(;D<la;){g=Ha();if("undefined"===typeof g)break;a.push(g)}c=f.finishProgram(a);"undefined"!==typeof K.comments&&(c.comments=K.comments);"undefined"!==typeof K.tokens&&
(Oa(),c.tokens=K.tokens);"undefined"!==typeof K.errors&&(c.errors=K.errors)}catch(cb){throw cb;}finally{K={}}return c};q.Syntax=function(){var a,b={};"function"===typeof Object.create&&(b=Object.create(null));for(a in aa)aa.hasOwnProperty(a)&&(b[a]=aa[a]);"function"===typeof Object.freeze&&Object.freeze(b);return b}()})},"esri/renderers/SimpleRenderer":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ../symbols/jsonUtils ./Renderer".split(" "),function(q,n,b,g,h,p,
l){q=q(l,{declaredClass:"esri.renderer.SimpleRenderer",constructor:function(b){if(b&&!b.declaredClass){var e=b;this.symbol=(b=e.symbol)&&(b.declaredClass?b:p.fromJson(b));this.label=e.label;this.description=e.description}else this.symbol=b},getSymbol:function(b){return this.symbol},toJson:function(){var b=n.mixin(this.inherited(arguments),{type:"simple",label:this.label,description:this.description,symbol:this.symbol&&this.symbol.toJson()});return h.fixJson(b)}});b("extend-esri")&&n.setObject("renderer.SimpleRenderer",
q,g);return q})},"esri/renderers/UniqueValueRenderer":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../symbols/jsonUtils ./Renderer ../support/expressionUtils".split(" "),function(q,n,b,g,h,p,l,f,e){q=q(f,{declaredClass:"esri.renderer.UniqueValueRenderer",constructor:function(b,a,d,e,f){this.values=[];this._symbols={};this.infos=[];b&&!b.declaredClass?(a=b,this.defaultSymbol=(b=a.defaultSymbol)&&(b.declaredClass?b:l.fromJson(b)),this.attributeField=
a.field1,this.attributeField2=a.field2,this.attributeField3=a.field3,this.fieldDelimiter=a.fieldDelimiter,this.defaultLabel=a.defaultLabel,this.setValueExpression(a.valueExpression),this.valueExpressionTitle=a.valueExpressionTitle,this.legendOptions=a.legendOptions,a.backgroundFillSymbol&&(this.backgroundFillSymbol=l.fromJson(a.backgroundFillSymbol)),n.forEach(a.uniqueValueInfos,this._addValueInfo,this)):(this.defaultSymbol=b,this.attributeField=a,this.attributeField2=d,this.attributeField3=e,this.fieldDelimiter=
f);this._multiple=!!this.attributeField2},addValue:function(c,a){c=b.isObject(c)?c:{value:c,symbol:a};this._addValueInfo(c)},removeValue:function(b){var a=n.indexOf(this.values,b);-1!==a&&(this.values.splice(a,1),this._hasNullKeyword=this._evalNullKeyword(this.values),delete this._symbols[b],this.infos.splice(a,1))},getUniqueValueInfo:function(c){var a=this.attributeField,d=c.attributes;if(this.valueExpression)a=this._getDataValue(c,this._uvInfo,null,this._cache.uvInfo),a=this._normalizeNullValue(a);
else if(this._multiple){c=this.attributeField2;var e=this.attributeField3,f=[];a&&f.push(this._normalizeNullValue(d[a]));c&&f.push(this._normalizeNullValue(d[c]));e&&f.push(this._normalizeNullValue(d[e]));a=f.join(this.fieldDelimiter||"")}else a=b.isFunction(a)?a(c):d[a],a=this._normalizeNullValue(a);return this._symbols[a]},setValueExpression:function(b){this.valueExpression=b;this._uvInfo={valueExpression:b};this._cache.uvInfo=this._createCache(this._uvInfo,!0)},getFieldsUsedInExpressions:function(){var b=
this.inherited(arguments);this.valueExpression&&(b=b.concat(e.extractFieldNames(this.valueExpression)));b.sort();return n.filter(b,function(a,c){return 0===c||b[c-1]!==a})},getSymbol:function(b){return(b=this.getUniqueValueInfo(b))&&b.symbol||this.defaultSymbol},_addValueInfo:function(b){var a=b.value;this.values.push(a);this._hasNullKeyword=this._evalNullKeyword(this.values);this.infos.push(b);var c=b.symbol;c&&!c.declaredClass&&(b.symbol=l.fromJson(c));this._symbols[a]=b},_nullCode:"\x3cNull\x3e",
_normalizeNullValue:function(b){return this._hasNullKeyword&&null==b?this._nullCode:b},_evalNullKeyword:function(b){var a=this.fieldDelimiter||"",c=new RegExp("(^|"+a+")("+this._nullCode+")("+a+"|$)");return n.some(b,function(a){return c.test(a)})},toJson:function(){var c=p.fixJson,a;a={type:"uniqueValue",field1:this.attributeField,field2:this.attributeField2,field3:this.attributeField3,fieldDelimiter:this.fieldDelimiter,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,
legendOptions:b.clone(this.legendOptions),defaultSymbol:this.defaultSymbol&&this.defaultSymbol.toJson(),defaultLabel:this.defaultLabel,uniqueValueInfos:n.map(this.infos||[],function(a){a=b.mixin({},a);a.symbol=a.symbol&&a.symbol.toJson();a.value+="";return c(a)})};this.backgroundFillSymbol&&(a.backgroundFillSymbol=this.backgroundFillSymbol.toJson());a=b.mixin(this.inherited(arguments),a);return c(a)}});g("extend-esri")&&b.setObject("renderer.UniqueValueRenderer",q,h);return q})},"esri/renderers/ClassBreaksRenderer":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../symbols/jsonUtils ./Renderer ../support/expressionUtils".split(" "),
function(q,n,b,g,h,p,l,f,e){q=q(f,{declaredClass:"esri.renderer.ClassBreaksRenderer",constructor:function(b,a){this.breaks=[];this._symbols={};this.infos=[];this.isMaxInclusive=!0;if(b&&!b.declaredClass){a=b;this.attributeField=a.field;this.setValueExpression(a.valueExpression);this.valueExpressionTitle=a.valueExpressionTitle;this.legendOptions=a.legendOptions;this.defaultSymbol=(b=a.defaultSymbol)&&(b.declaredClass?b:l.fromJson(b));this.backgroundFillSymbol=(b=a.backgroundFillSymbol)&&(b.declaredClass?
b:l.fromJson(b));this._copy(["defaultLabel","classificationMethod:rest","normalizationType:rest","normalizationField","normalizationTotal"],a,this);var c=a.minValue;(b=a.classBreakInfos)&&b[0]&&p.isDefined(b[0].classMaxValue)&&n.forEach(b,function(a){var b=a.classMaxValue;a.minValue=c;c=a.maxValue=b},this);n.forEach(b,this._addBreakInfo,this)}else this.defaultSymbol=b,this.attributeField=a},addBreak:function(c,a,d){c=b.isObject(c)?c:{minValue:c,maxValue:a,symbol:d};this._addBreakInfo(c)},removeBreak:function(b,
a){var c,e=this.breaks,f,g=e.length,k=this._symbols;for(f=0;f<g;f++)if(c=e[f],c[0]==b&&c[1]==a){e.splice(f,1);delete k[b+"-"+a];this.infos.splice(f,1);break}},clearBreaks:function(){this.breaks=[];this._symbols={};this.infos=[]},getBreakIndex:function(c){var a=this.attributeField,d=c.attributes,e=this.breaks,f=e.length,g=this.isMaxInclusive;if(this.valueExpression)c=this._getDataValue(c,this._cbInfo,null,this._cache.cbInfo);else if(b.isFunction(a))c=a(c);else{c=parseFloat(d[a]);var a=this.normalizationType,
k;if(a)if(k=parseFloat(this.normalizationTotal),d=parseFloat(d[this.normalizationField]),"log"===a)c=Math.log(c)*Math.LOG10E;else if("percent-of-total"===a&&!isNaN(k))c=c/k*100;else if("field"===a){if(isNaN(c)||isNaN(d))return-1;c/=d}}if(null!=c&&!isNaN(c)&&"number"===typeof c)for(d=0;d<f;d++)if(a=e[d],a[0]<=c&&(g?c<=a[1]:c<a[1]))return d;return-1},getBreakInfo:function(b){b=this.getBreakIndex(b);return-1!==b?this.infos[b]:null},getSymbol:function(b){return(b=this.breaks[this.getBreakIndex(b)])?this._symbols[b[0]+
"-"+b[1]]:this.defaultSymbol},setMaxInclusive:function(b){this.isMaxInclusive=b},setValueExpression:function(b){this.valueExpression=b;this._cbInfo={valueExpression:b};this._cache.cbInfo=this._createCache(this._cbInfo)},getFieldsUsedInExpressions:function(){var b=this.inherited(arguments);this.valueExpression&&(b=b.concat(e.extractFieldNames(this.valueExpression)));b.sort();return n.filter(b,function(a,c){return 0===c||b[c-1]!==a})},isContinuousRenderer:function(){var b=!1;if(this.infos&&1===this.infos.length)var a=
this.attributeField,d=this.normalizationField,e=this.valueExpression,b=this.getVisualVariablesForType("colorInfo",!1)||[],f=this.getVisualVariablesForType("sizeInfo",!1)||[],g=this.getVisualVariablesForType("opacityInfo",!1)||[],b=b.concat(f).concat(g),b=n.some(b,function(b){return(b.field===a||b.valueExpression===e)&&b.normalizationField==d});return b},_normalizationTypeEnums:[["field","esriNormalizeByField"],["log","esriNormalizeByLog"],["percent-of-total","esriNormalizeByPercentOfTotal"]],_classificationMethodEnums:[["natural-breaks",
"esriClassifyNaturalBreaks"],["equal-interval","esriClassifyEqualInterval"],["quantile","esriClassifyQuantile"],["standard-deviation","esriClassifyStandardDeviation"],["geometrical-interval","esriClassifyGeometricalInterval"],["defined-interval","esriClassifyDefinedInterval"]],_copy:function(b,a,d){n.forEach(b,function(b){var c=b.split(":"),e,f,g;1<c.length&&(b=c[0],e=this["_"+b+"Enums"],"rest"===c[1]?(f="1",g="0"):"sdk"===c[1]&&(f="0",g="1"));c=a[b];if(void 0!==c&&(d[b]=c,e&&f)){var h,m=e.length;
for(h=0;h<m;h++)if(e[h][f]===c){d[b]=e[h][g];break}}},this)},_addBreakInfo:function(b){var a=b.minValue,c=b.maxValue;this.breaks.push([a,c]);this.infos.push(b);var e=b.symbol;e&&!e.declaredClass&&(b.symbol=l.fromJson(e));this._symbols[a+"-"+c]=b.symbol},toJson:function(){var c=this.infos||[],a=p.fixJson,d=c[0]&&c[0].minValue,e=this.backgroundFillSymbol,c=b.mixin(this.inherited(arguments),{type:"classBreaks",field:this.attributeField,valueExpression:this.valueExpression,valueExpressionTitle:this.valueExpressionTitle,
legendOptions:b.clone(this.legendOptions),defaultSymbol:this.defaultSymbol&&this.defaultSymbol.toJson(),backgroundFillSymbol:e&&e.toJson(),minValue:-Infinity===d?-Number.MAX_VALUE:d,classBreakInfos:n.map(c,function(c){c=b.mixin({},c);c.symbol=c.symbol&&c.symbol.toJson();c.classMaxValue=Infinity===c.maxValue?Number.MAX_VALUE:c.maxValue;delete c.minValue;delete c.maxValue;return a(c)})});this._copy(["defaultLabel","classificationMethod:sdk","normalizationType:sdk","normalizationField","normalizationTotal"],
this,c);c.hasOwnProperty("normalizationType")&&!c.normalizationType&&delete c.normalizationType;c.hasOwnProperty("classificationMethod")&&!c.classificationMethod&&delete c.classificationMethod;return a(c)}});g("extend-esri")&&b.setObject("renderer.ClassBreaksRenderer",q,h);return q})},"esri/renderers/TemporalRenderer":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","./Renderer"],function(q,n,b,g,h){q=q(h,{declaredClass:"esri.renderer.TemporalRenderer",constructor:function(b,
g,f,e){this.observationRenderer=b;this.latestObservationRenderer=g;this.trackRenderer=f;this.observationAger=e},getSymbol:function(b){var g=b.getLayer(),f=this.getObservationRenderer(b),e=f&&f.getSymbol(b),c=this.observationAger;g.timeInfo&&g._map.timeExtent&&f===this.observationRenderer&&c&&e&&(e=c.getAgedSymbol(e,b));return e},getObservationRenderer:function(b){return 0===b.getLayer()._getKind(b)?this.observationRenderer:this.latestObservationRenderer||this.observationRenderer},toJson:function(){var b=
{type:"temporal"};b.observationRenderer=this.observationRenderer.toJson();this.latestObservationRenderer&&(b.latestObservationRenderer=this.latestObservationRenderer.toJson());this.trackRenderer&&(b.trackRenderer=this.trackRenderer.toJson());this.observationAger&&(b.observationAger=this.observationAger.toJson());return b}});b("extend-esri")&&n.setObject("renderer.TemporalRenderer",q,g);return q})},"esri/renderers/SymbolAger":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],
function(q,n,b,g){q=q(null,{declaredClass:"esri.renderer.SymbolAger",getAgedSymbol:function(b,g){},_setSymbolSize:function(b,g){switch(b.type){case "simplemarkersymbol":b.setSize(g);break;case "picturemarkersymbol":b.setWidth(g);b.setHeight(g);break;case "simplelinesymbol":case "cartographiclinesymbol":b.setWidth(g);break;case "simplefillsymbol":case "picturefillsymbol":b.outline&&b.outline.setWidth(g)}}});b("extend-esri")&&n.setObject("renderer.SymbolAger",q,g);return q})},"esri/renderers/TimeClassBreaksAger":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has dojo/date ../kernel ../lang ../symbols/jsonUtils ../Color ./SymbolAger".split(" "),
function(q,n,b,g,h,p,l,f,e,c){var a=q(c,{declaredClass:"esri.renderer.TimeClassBreaksAger",constructor:function(a,b){this.infos=a;this.timeUnits=b||"day";a.sort(function(a,b){return a.minAge<b.minAge?-1:a.minAge>b.minAge?1:0})},getAgedSymbol:function(a,b){var c=b.getLayer();b=b.attributes;var d=l.isDefined;a=f.fromJson(a.toJson());var e=c._map.timeExtent.endTime;if(!e)return a;var g=h.difference(new Date(b[c._startTimeField]),e,this.timeUnits);n.some(this.infos,function(b){if(g>=b.minAge&&g<=b.maxAge){var c=
b.color,e=b.size;b=b.alpha;c&&a.setColor(c);d(e)&&this._setSymbolSize(a,e);d(b)&&a.color&&(a.color.a=b);return!0}},this);return a},toJson:function(){var a={agerClassBreakInfos:[]},b,c,f;a.timeUnits=this._getRestUnits(this.timeUnits);for(b=0;b<this.infos.length;b+=1)c=this.infos[b],f={},f.oldestAge=Infinity===c.maxAge?null:c.maxAge,f.size=c.size,c.color&&(f.color=e.toJsonColor(c.color)),c.alpha&&(f.alpha=Math.round(255*c.alpha)),a.agerClassBreakInfos[b]=f;return a},_getRestUnits:function(b){var c=
"esriTimeUnitsDays";switch(b){case a.UNIT_SECONDS:c="esriTimeUnitsSeconds";break;case a.UNIT_MILLISECONDS:c="esriTimeUnitsMilliseconds";break;case a.UNIT_HOURS:c="esriTimeUnitsHours";break;case a.UNIT_MINUTES:c="esriTimeUnitsMinutes";break;case a.UNIT_MONTHS:c="esriTimeUnitsMonths";break;case a.UNIT_WEEKS:c="esriTimeUnitsWeeks";break;case a.UNIT_YEARS:c="esriTimeUnitsYears"}return c}});b.mixin(a,{UNIT_DAYS:"day",UNIT_HOURS:"hour",UNIT_MILLISECONDS:"millisecond",UNIT_MINUTES:"minute",UNIT_MONTHS:"month",
UNIT_SECONDS:"second",UNIT_WEEKS:"week",UNIT_YEARS:"year"});g("extend-esri")&&b.setObject("renderer.TimeClassBreaksAger",a,p);return a})},"esri/renderers/TimeRampAger":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/Color dojo/has ../kernel ../symbols/jsonUtils ../Color ./SymbolAger".split(" "),function(q,n,b,g,h,p,l,f){q=q(f,{declaredClass:"esri.renderer.TimeRampAger",constructor:function(b,c,a){this.colorRange=b;this.sizeRange=c;this.alphaRange=a},getAgedSymbol:function(e,c){var a=
c.getLayer(),d=c.attributes;e=p.fromJson(e.toJson());var f=a._map.timeExtent;c=f.startTime;f=f.endTime;if(!c||!f)return e;c=c.getTime();f=f.getTime();a=new Date(d[a._startTimeField]);a=a.getTime();a<c&&(a=c);a=f===c?1:(a-c)/(f-c);if(c=this.sizeRange)d=c[0],f=c[1],c=Math.abs(f-d)*a,this._setSymbolSize(e,d<f?d+c:d-c);if(c=this.colorRange){var f=c[0],g=c[1],h=Math.round,d=new b,k=f.r,l=g.r;c=Math.abs(l-k)*a;d.r=h(k<l?k+c:k-c);k=f.g;l=g.g;c=Math.abs(l-k)*a;d.g=h(k<l?k+c:k-c);k=f.b;l=g.b;c=Math.abs(l-
k)*a;d.b=h(k<l?k+c:k-c);f=f.a;g=g.a;c=Math.abs(g-f)*a;d.a=f<g?f+c:f-c;e.setColor(d)}d=e.color;(c=this.alphaRange)&&d&&(f=c[0],g=c[1],c=Math.abs(g-f)*a,d.a=f<g?f+c:f-c);return e},toJson:function(){var b={};this.sizeRange&&(b.sizeRange=this.sizeRange);this.colorRange&&(b.colorRange=[l.toJsonColor(this.colorRange[0]),l.toJsonColor(this.colorRange[1])]);this.alphaRange&&(b.alphaRange=[Math.round(255*this.alphaRange[0]),Math.round(255*this.alphaRange[1])]);return b}});g("extend-esri")&&n.setObject("renderer.TimeRampAger",
q,h);return q})},"esri/renderers/StretchRenderer":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ../layers/RasterFunction ./colorRampUtils".split(" "),function(q,n,b,g,h,p,l,f){var e={TYPE_NONE:"none",TYPE_STANDARDDEVIATION:"standardDeviation",TYPE_HISTOGRAMEQUALIZATION:"histogramEqualization",TYPE_MINMAX:"minMax",TYPE_PERCENTCLIP:"percentClip",TYPE_SIGMOID:"sigmoid"};q=q(null,{declaredClass:"esri.renderer.StretchRenderer",constructor:function(c){c=
c||{};this.stretchType=e.TYPE_NONE;this.dra=!0;this.statistics=[];this.gamma=[];this.computeGamma=this.useGamma=!1;this.sigmoidStrengthLevel=this.numberOfStandardDeviations=this.minPercent=this.maxPercent=this.min=this.max=null;b.mixin(this,c);this.colorRamp=f.fromJson(c.colorRamp)},toJson:function(){var c={type:"rasterStretch",stretchType:this.stretchType,colorRamp:this.colorRamp&&this.colorRamp.toJson(),min:this.min,max:this.max,numberOfStandardDeviations:this.numberOfStandardDeviations,statistics:b.clone(this.statistics),
dra:this.dra,minPercent:this.minPercent,maxPercent:this.maxPercent,useGamma:this.useGamma,gamma:b.clone(this.gamma),computeGamma:this.computeGamma,sigmoidStrengthLevel:this.sigmoidStrengthLevel};return p.fixJson(c)},toRenderingRule:function(b){b=b||{};var a=new l;a.functionName="Stretch";var c=this._convertStretchTypeEnumToIndex(this.stretchType),e={StretchType:c,Statistics:this.statistics,DRA:this.dra,UseGamma:this.useGamma,Gamma:this.gamma,ComputeGamma:this.computeGamma};p.isDefined(this.min)&&
(e.Min=this.min);p.isDefined(this.min)&&(e.Max=this.max);3===c?(e.NumberOfStandardDeviations=this.numberOfStandardDeviations,a.outputPixelType="U8"):6===c?(e.MinPercent=parseFloat(this.minPercent),e.MaxPercent=parseFloat(this.maxPercent),a.outputPixelType="U8"):5===c?a.outputPixelType="U8":9===c&&(e.SigmoidStrengthLevel=this.sigmoidStrengthLevel);a.functionArguments=e;a.variableName="Raster";return this.colorRamp?(c=new l,e=f.getColorRampName(this.colorRamp),c.functionArguments=e?{colorRamp:e}:b.convertToColormap?
{Colormap:f.convertColorRampToColormap(this.colorRamp,256)}:{colorRamp:this.colorRamp.toJson()},c.variableName="Raster",c.functionName="Colormap",c.functionArguments.Raster=a,c):a},_convertStretchTypeEnumToIndex:function(b){var a=0;b===e.TYPE_STANDARDDEVIATION?a=3:b===e.TYPE_HISTOGRAMEQUALIZATION?a=4:b===e.TYPE_MINMAX?a=5:b===e.TYPE_PERCENTCLIP?a=6:b===e.TYPE_SIGMOID&&(a=9);return a},_convertStretchTypeIndexToEnum:function(b){var a=0;3===b?a=e.TYPE_STANDARDDEVIATION:4===b?a=e.TYPE_HISTOGRAMEQUALIZATION:
5===b?a=e.TYPE_MINMAX:6===b?a=e.TYPE_PERCENTCLIP:9===b&&(a=e.TYPE_SIGMOID);return a}});b.mixin(q,e);g("extend-esri")&&b.setObject("renderer.StretchRenderer",q,h);return q})},"esri/layers/RasterFunction":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","../lang"],function(q,n,b,g,h){var p=q(null,{declaredClass:"esri.layers.RasterFunction",functionName:null,arguments:null,functionArguments:null,variableName:null,outputPixelType:null,constructor:function(b){if(n.isObject(b)){var f=
0;this.functionName=b.rasterFunction;this.functionArguments=n.clone(b.rasterFunctionArguments||b.arguments);n.mixin(this,b);if(b=this.functionArguments)if(b.Raster=this._toRasterFunction(b.Raster),b.Raster2=this._toRasterFunction(b.Raster2),b.DEM=this._toRasterFunction(b.DEM),b.FillRaster=this._toRasterFunction(b.FillRaster),b.Rasters&&b.Rasters.length)for(f=0;f<b.Rasters.length;f++)b.Rasters[f]=this._toRasterFunction(b.Rasters[f])}},_toRasterFunction:function(b){return b&&(b.rasterFunction||b.functionName)?
new p(b):b},_rfToJson:function(b){b&&"esri.layers.RasterFunction"===b.declaredClass&&(b=b.toJson());return b},toJson:function(){var b=n.clone(this.functionArguments||this.arguments);if(b&&(b.Raster=this._rfToJson(b.Raster),b.Raster2=this._rfToJson(b.Raster2),b.DEM=this._rfToJson(b.DEM),b.FillRaster=this._rfToJson(b.FillRaster),b.Rasters&&b.Rasters.length)){var f,e=[];for(f=0;f<b.Rasters.length;f++)e.push(this._rfToJson(b.Rasters[f]));b.Rasters=e}return h.filter({rasterFunction:this.functionName,rasterFunctionArguments:b,
variableName:this.variableName,outputPixelType:this.outputPixelType?this.outputPixelType:null},function(b){if(null!==b&&void 0!==b)return!0})}});b("extend-esri")&&n.setObject("layers.RasterFunction",p,g);return p})},"esri/renderers/colorRampUtils":function(){define("dojo/_base/lang dojo/_base/array dojo/store/Memory ../tasks/AlgorithmicColorRamp ../tasks/MultipartColorRamp ../Color ./colorUtils".split(" "),function(q,n,b,g,h,p,l){function f(a,b,d){if(a){b=b||m;d=d||w;var e=null,f=a.declaredClass,
g,k;if((g="string"===typeof a?a:a.name)&&n.some(d,function(a){if(a.name===g)return e=a.id,!0})&&e)return e;"esri.tasks.AlgorithmicColorRamp"===f?n.some(b,function(b){if(c(a.fromColor.toRgb(),b.fromColor)&&c(a.toColor.toRgb(),b.toColor))return e=b.id,!0},this):"esri.tasks.MultipartColorRamp"===f&&n.some(b,function(b){if(a.colorRamps&&b.colorRamps&&a.colorRamps.length===b.colorRamps.length&&(k=a.colorRamps,!n.some(b.colorRamps,function(a,b){if(!c(k[b].fromColor.toRgb(),a.fromColor)||!c(k[b].toColor.toRgb(),
a.toColor))return!0},this))){if(e)return!0;e=b.id}},this);return e}}function e(a){var b=new g,c=a.algorithm;b.fromColor=p.toDojoColor(a.fromColor);b.toColor=p.toDojoColor(a.toColor);"esriCIELabAlgorithm"===c?b.algorithm="cie-lab":"esriHSVAlgorithm"===c?b.algorithm="hsv":"esriLabLChAlgorithm"===c&&(b.algorithm="lab-lch");return b}function c(a,b){return a&&b&&a.length&&b.length&&a.length===b.length?!n.some(a,function(a,c){if(a>b[c]+2||a<b[c]-2)return!0}):!1}function a(a,b,c){a=l.toLAB(a);b=l.toLAB(b);
return l.toRGB({l:a.l*(1-c)+c*b.l,a:a.a*(1-c)+c*b.a,b:a.b*(1-c)+c*b.b})}var d={},m=[{id:"none",selected:!0},{id:"aspect_predefined",type:"multipart",colorRamps:[{fromColor:[190,190,190],toColor:[255,45,8]},{fromColor:[255,45,8],toColor:[255,181,61]},{fromColor:[255,181,61],toColor:[255,254,52]},{fromColor:[255,254,52],toColor:[0,251,50]},{fromColor:[0,251,50],toColor:[255,254,52]},{fromColor:[0,253,255],toColor:[0,181,255]},{fromColor:[0,181,255],toColor:[26,35,253]},{fromColor:[26,35,253],toColor:[255,
57,251]},{fromColor:[255,57,251],toColor:[255,45,8]}]},{id:"blackToWhite_predefined",fromColor:[0,0,0],toColor:[255,255,255]},{id:"blueBright_predefined",fromColor:[204,204,255],toColor:[0,0,224]},{id:"blueLightToDark_predefined",fromColor:[211,229,232],toColor:[46,100,140]},{id:"blueGreenBright_predefined",fromColor:[203,245,234],toColor:[48,207,146]},{id:"blueGreenLightToDark_predefined",fromColor:[216,242,237],toColor:[21,79,74]},{id:"brownLightToDark_predefined",fromColor:[240,236,170],toColor:[102,
72,48]},{id:"brownToBlueGreenDivergingBright_predefined",type:"multipart",colorRamps:[{fromColor:[156,85,31],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[33,130,145]}]},{id:"brownToBlueGreenDivergingDark_predefined",type:"multipart",colorRamps:[{fromColor:[110,70,45],toColor:[204,204,102]},{fromColor:[204,204,102],toColor:[48,100,102]}]},{id:"coefficientBias_predefined",fromColor:[214,214,255],toColor:[0,57,148]},{id:"coldToHotDiverging_predefined",type:"multipart",colorRamps:[{fromColor:[69,
117,181],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[214,47,39]}]},{id:"conditionNumber_predefined",type:"multipart",colorRamps:[{fromColor:[0,97,0],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[255,34,0]}]},{id:"cyanToPurple_predefined",type:"multipart",colorRamps:[{fromColor:[0,245,245],toColor:[0,0,245]},{fromColor:[0,0,245],toColor:[245,0,245]}]},{id:"cyanLightToBlueDark_predefined",type:"multipart",colorRamps:[{fromColor:[182,237,240],toColor:[31,131,224]},{fromColor:[31,
131,224],toColor:[9,9,145]}]},{id:"distance_predefined",fromColor:[255,200,0],toColor:[0,0,255]},{id:"elevation1_predefined",type:"multipart",colorRamps:[{fromColor:[175,240,233],toColor:[255,255,179]},{fromColor:[255,255,179],toColor:[0,128,64]},{fromColor:[0,128,64],toColor:[252,186,3]},{fromColor:[252,186,3],toColor:[128,0,0]},{fromColor:[120,0,0],toColor:[105,48,13]},{fromColor:[105,48,13],toColor:[171,171,171]},{fromColor:[171,171,171],toColor:[255,252,255]}]},{id:"elevation2_predefined",type:"multipart",
colorRamps:[{fromColor:[118,219,211],toColor:[255,255,199]},{fromColor:[255,255,199],toColor:[255,255,128]},{fromColor:[255,255,128],toColor:[217,194,121]},{fromColor:[217,194,121],toColor:[135,96,38]},{fromColor:[135,96,38],toColor:[150,150,181]},{fromColor:[150,150,181],toColor:[181,150,181]},{fromColor:[181,150,181],toColor:[255,252,255]}]},{id:"errors_predefined",fromColor:[255,235,214],toColor:[196,10,10]},{id:"grayLightToDark_predefined",fromColor:[219,219,219],toColor:[69,69,69]},{id:"greenBright_predefined",
fromColor:[204,255,204],toColor:[14,204,14]},{id:"greenLightToDark_predefined",fromColor:[220,245,233],toColor:[34,102,51]},{id:"greenToBlue_predefined",type:"multipart",colorRamps:[{fromColor:[32,204,16],toColor:[0,242,242]},{fromColor:[0,242,242],toColor:[2,33,227]}]},{id:"orangeBright_predefined",fromColor:[255,235,204],toColor:[240,118,5]},{id:"orangeLightToDark_predefined",fromColor:[250,233,212],toColor:[171,65,36]},{id:"partialSpectrum_predefined",type:"multipart",colorRamps:[{fromColor:[242,
241,162],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[255,0,0]},{fromColor:[252,3,69],toColor:[176,7,237]},{fromColor:[176,7,237],toColor:[2,29,173]}]},{id:"partialSpectrum1Diverging_predefined",type:"multipart",colorRamps:[{fromColor:[135,38,38],toColor:[240,149,12]},{fromColor:[240,149,12],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[74,80,181]},{fromColor:[74,80,181],toColor:[39,32,122]}]},{id:"partialSpectrum2Diverging_predefined",type:"multipart",colorRamps:[{fromColor:[115,
77,42],toColor:[201,137,52]},{fromColor:[201,137,52],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[91,63,176]},{fromColor:[91,63,176],toColor:[81,13,97]}]},{id:"pinkToYellowGreenDivergingBright_predefined",type:"multipart",colorRamps:[{fromColor:[158,30,113],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[99,110,45]}]},{id:"pinkToYellowGreenDivergingDark_predefined",type:"multipart",colorRamps:[{fromColor:[97,47,73],toColor:[204,204,102]},{fromColor:[204,204,102],toColor:[22,59,
15]}]},{id:"precipitation_predefined",type:"multipart",colorRamps:[{fromColor:[194,82,60],toColor:[237,161,19]},{fromColor:[237,161,19],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[0,219,0]},{fromColor:[0,219,0],toColor:[32,153,143]},{fromColor:[32,153,143],toColor:[11,44,122]}]},{id:"prediction_predefined",type:"multipart",colorRamps:[{fromColor:[40,146,199],toColor:[250,250,100]},{fromColor:[250,250,100],toColor:[232,16,20]}]},{id:"purpleBright_predefined",fromColor:[255,204,255],toColor:[199,
0,199]},{id:"purpleToGreenDivergingBright_predefined",type:"multipart",colorRamps:[{fromColor:[77,32,150],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[20,122,11]}]},{id:"purpleToGreenDivergingDark_predefined",type:"multipart",colorRamps:[{fromColor:[67,14,89],toColor:[204,204,102]},{fromColor:[204,204,102],toColor:[24,79,15]}]},{id:"purpleBlueBright_predefined",fromColor:[223,184,230],toColor:[112,12,242]},{id:"purpleBlueLightToDark_predefined",fromColor:[229,213,242],toColor:[93,44,112]},
{id:"purpleRedBright_predefined",fromColor:[255,204,225],toColor:[199,0,99]},{id:"purpleRedLightToDark_predefined",fromColor:[250,215,246],toColor:[143,17,57]},{id:"redBright_predefined",fromColor:[255,204,204],toColor:[219,0,0]},{id:"redLightToDark_predefined",fromColor:[255,224,224],toColor:[143,10,10]},{id:"redToBlueDivergingBright_predefined",type:"multipart",colorRamps:[{fromColor:[196,69,57],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[48,95,207]}]},{id:"redToBlueDivergingDark_predefined",
type:"multipart",colorRamps:[{fromColor:[107,13,13],toColor:[204,204,102]},{fromColor:[204,204,102],toColor:[13,53,97]}]},{id:"redToGreen_predefined",type:"multipart",colorRamps:[{fromColor:[245,0,0],toColor:[245,245,0]},{fromColor:[245,245,0],toColor:[0,245,0]}]},{id:"redToGreenDivergingBright_predefined",type:"multipart",colorRamps:[{fromColor:[186,20,20],toColor:[255,255,191]},{fromColor:[255,255,191],toColor:[54,145,33]}]},{id:"redToGreenDivergingDark_predefined",type:"multipart",colorRamps:[{fromColor:[97,
21,13],toColor:[204,204,102]},{fromColor:[204,204,102],toColor:[16,69,16]}]},{id:"slope_predefined",type:"multipart",colorRamps:[{fromColor:[56,168,0],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[255,0,0]}]},{id:"spectrumFullBright_predefined",type:"multipart",colorRamps:[{fromColor:[255,0,0],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[0,255,255]},{fromColor:[0,255,255],toColor:[0,0,255]}]},{id:"spectrumFullDark_predefined",type:"multipart",colorRamps:[{fromColor:[153,0,0],toColor:[153,
153,0]},{fromColor:[153,153,0],toColor:[0,153,153]},{fromColor:[0,153,153],toColor:[0,0,153]}]},{id:"spectrumFullLight_predefined",type:"multipart",colorRamps:[{fromColor:[255,153,153],toColor:[255,255,153]},{fromColor:[255,255,153],toColor:[153,255,255]},{fromColor:[153,255,255],toColor:[153,153,255]}]},{id:"surface_predefined",type:"multipart",colorRamps:[{fromColor:[112,153,89],toColor:[242,238,162]},{fromColor:[242,238,162],toColor:[242,206,133]},{fromColor:[242,206,133],toColor:[194,140,124]},
{fromColor:[194,140,124],toColor:[255,242,255]}]},{id:"temperature_predefined",type:"multipart",colorRamps:[{fromColor:[255,252,255],toColor:[255,0,255]},{fromColor:[255,0,255],toColor:[0,0,255]},{fromColor:[0,0,255],toColor:[0,255,255]},{fromColor:[0,255,255],toColor:[0,255,0]},{fromColor:[0,255,0],toColor:[255,255,0]},{fromColor:[255,255,0],toColor:[255,128,0]},{fromColor:[255,128,0],toColor:[128,0,0]}]},{id:"whiteToBlack_predefined",fromColor:[255,255,255],toColor:[0,0,0]},{id:"yellowToDarkRed_predefined",
type:"multipart",colorRamps:[{fromColor:[255,255,128],toColor:[242,167,46]},{fromColor:[242,167,46],toColor:[107,0,0]}]},{id:"yellowToGreenToDarkBlue_predefined",type:"multipart",colorRamps:[{fromColor:[255,255,128],toColor:[56,224,9]},{fromColor:[56,224,9],toColor:[26,147,171]},{fromColor:[26,147,171],toColor:[12,16,120]}]},{id:"yellowToRed_predefined",fromColor:[245,245,0],toColor:[255,0,0]},{id:"yellowGreenBright_predefined",fromColor:[236,252,204],toColor:[157,204,16]},{id:"yellowGreenLightToDark_predefined",
fromColor:[215,240,175],toColor:[96,107,45]}],w=[{name:"Aspect",id:"aspect_predefined"},{name:"Black to White",id:"blackToWhite_predefined"},{name:"Blue Bright",id:"blueBright_predefined"},{name:"Blue Light to Dark",id:"blueLightToDark_predefined"},{name:"Blue-Green Bright",id:"blueGreenBright_predefined"},{name:"Blue-Green Light to Dark",id:"blueGreenLightToDark_predefined"},{name:"Brown Light to Dark",id:"brownLightToDark_predefined"},{name:"Brown to Blue Green Diverging, Bright",id:"brownToBlueGreenDivergingBright_predefined"},
{name:"Brown to Blue Green Diverging, Dark",id:"brownToBlueGreenDivergingDark_predefined"},{name:"Coefficient Bias",id:"coefficientBias_predefined"},{name:"Cold to Hot Diverging",id:"coldToHotDiverging_predefined"},{name:"Condition Number",id:"conditionNumber_predefined"},{name:"Cyan to Purple",id:"cyanToPurple_predefined"},{name:"Cyan-Light to Blue-Dark",id:"cyanLightToBlueDark_predefined"},{name:"Distance",id:"distance_predefined"},{id:"elevation1_predefined",name:"Elevation #1"},{id:"elevation2_predefined",
name:"Elevation #2"},{id:"errors_predefined",name:"Errors"},{id:"grayLightToDark_predefined",name:"Gray Light to Dark"},{id:"greenBright_predefined",name:"Green Bright"},{id:"greenLightToDark_predefined",name:"Green Light to Dark"},{name:"Green to Blue",id:"greenToBlue_predefined"},{name:"Orange Bright",id:"orangeBright_predefined"},{name:"Orange Light to Dark",id:"orangeLightToDark_predefined"},{id:"partialSpectrum_predefined",name:"Partial Spectrum"},{id:"partialSpectrum1Diverging_predefined",name:"Partial Spectrum 1 Diverging",
type:"multipart"},{id:"partialSpectrum2Diverging_predefined",name:"Partial Spectrum 2 Diverging"},{name:"Pink to YellowGreen Diverging, Bright",id:"pinkToYellowGreenDivergingBright_predefined"},{name:"Pink to YellowGreen Diverging, Dark",id:"pinkToYellowGreenDivergingDark_predefined"},{id:"precipitation_predefined",name:"Precipitation"},{id:"prediction_predefined",name:"Prediction"},{name:"Purple Bright",id:"purpleBright_predefined"},{id:"purpleToGreenDivergingBright_predefined",name:"Purple to Green Diverging, Bright"},
{id:"purpleToGreenDivergingDark_predefined",name:"Purple to Green Diverging, Dark"},{name:"Purple-Blue Bright",id:"purpleBlueBright_predefined"},{name:"Purple-Blue Light to Dark",id:"purpleBlueLightToDark_predefined"},{name:"Purple-Red Bright",id:"purpleRedBright_predefined"},{name:"Purple-Red Light to Dark",id:"purpleRedLightToDark_predefined"},{name:"Red Bright",id:"redBright_predefined"},{name:"Red Light to Dark",id:"redLightToDark_predefined"},{id:"redToBlueDivergingBright_predefined",name:"Red to Blue Diverging, Bright"},
{id:"redToBlueDivergingDark_predefined",name:"Red to Blue Diverging, Dark"},{id:"redToGreen_predefined",name:"Red to Green"},{id:"redToGreenDivergingBright_predefined",name:"Red to Green Diverging, Bright"},{id:"redToGreenDivergingDark_predefined",name:"Red to Green Diverging, Dark"},{name:"Slope",id:"slope_predefined"},{id:"spectrumFullBright_predefined",name:"Spectrum-Full Bright"},{id:"spectrumFullDark_predefined",name:"Spectrum-Full Dark"},{id:"spectrumFullLight_predefined",name:"Spectrum-Full Light"},
{id:"surface_predefined",name:"Surface"},{id:"temperature_predefined",name:"Temperature"},{name:"White to Black",id:"whiteToBlack_predefined"},{id:"yellowToDarkRed_predefined",name:"Yellow to Dark Red"},{id:"yellowToGreenToDarkBlue_predefined",name:"Yellow to Green to Dark Blue"},{name:"Yellow to Red",id:"yellowToRed_predefined"},{name:"Yellow-Green Bright",id:"yellowGreenBright_predefined"},{name:"Yellow-Green Light to Dark",id:"yellowGreenLightToDark_predefined"}],t=new b({data:w});q.mixin(d,{predefinedColorRamps:m,
predefinedColorRampNameMap:w,getColorRampName:function(a){return(a=f(a))?(a=t.query({id:a}),a[0]?a[0].name:null):null},fromJson:function(a){var b=null;if(!a)return b;"multipart"===a.type?(b=new h,b.colorRamps=n.map(a.colorRamps,function(a){return e(a)},this)):"algorithmic"===a.type&&(b=e(a));return b},colorsEqual:c,getColorRampId:f,convertColorRampToColormap:function(b,c){if(b&&c){for(var d=b.colorRamps?b.colorRamps.length:1,e=[],f=[],g,k,h,m,p,q=0,t=0,q=0;q<d;q++)e[q]={},e[q].start=t,e[q].end=t+
1/d,t=e[q].end;for(q=0;q<c;q++)m=(q+.5)/c,n.forEach(e,function(c,d){m>=c.start&&m<c.end&&(p=(m-c.start)/(c.end-c.start),1<e.length?(g=l.getDojoColor(b.colorRamps[d].fromColor),k=l.getDojoColor(b.colorRamps[d].toColor)):(g=l.getDojoColor(b.fromColor),k=l.getDojoColor(b.toColor)),h=a(g,k,p),f.push([q,h.r,h.g,h.b]))},this);return f}},interpolateLabColor:a});return d})},"dojo/store/Memory":function(){define(["../_base/declare","./util/QueryResults","./util/SimpleQueryEngine"],function(q,n,b){return q("dojo.store.Memory",
null,{constructor:function(b){for(var g in b)this[g]=b[g];this.setData(this.data||[])},data:null,idProperty:"id",index:null,queryEngine:b,get:function(b){return this.data[this.index[b]]},getIdentity:function(b){return b[this.idProperty]},put:function(b,h){var g=this.data,l=this.index,f=this.idProperty,f=b[f]=h&&"id"in h?h.id:f in b?b[f]:Math.random();if(f in l){if(h&&!1===h.overwrite)throw Error("Object already exists");g[l[f]]=b}else l[f]=g.push(b)-1;return f},add:function(b,h){(h=h||{}).overwrite=
!1;return this.put(b,h)},remove:function(b){var g=this.index,p=this.data;if(b in g)return p.splice(g[b],1),this.setData(p),!0},query:function(b,h){return n(this.queryEngine(b,h)(this.data))},setData:function(b){b.items?(this.idProperty=b.identifier||this.idProperty,b=this.data=b.items):this.data=b;this.index={};for(var g=0,p=b.length;g<p;g++)this.index[b[g][this.idProperty]]=g}})})},"dojo/store/util/QueryResults":function(){define(["../../_base/array","../../_base/lang","../../when"],function(q,n,
b){var g=function(h){function p(f){h[f]=function(){var e=arguments,c=b(h,function(a){Array.prototype.unshift.call(e,a);return g(q[f].apply(q,e))});if("forEach"!==f||l)return c}}if(!h)return h;var l=!!h.then;l&&(h=n.delegate(h));p("forEach");p("filter");p("map");null==h.total&&(h.total=b(h,function(b){return b.length}));return h};n.setObject("dojo.store.util.QueryResults",g);return g})},"dojo/store/util/SimpleQueryEngine":function(){define(["../../_base/array"],function(q){return function(n,b){function g(g){g=
q.filter(g,n);var h=b&&b.sort;h&&g.sort("function"==typeof h?h:function(b,c){for(var a,d=0;a=h[d];d++){var e=b[a.attribute],f=c[a.attribute],e=null!=e?e.valueOf():e,f=null!=f?f.valueOf():f;if(e!=f)return!!a.descending==(null==e||e>f)?-1:1}return 0});if(b&&(b.start||b.count)){var f=g.length;g=g.slice(b.start||0,(b.start||0)+(b.count||Infinity));g.total=f}return g}switch(typeof n){default:throw Error("Can not query with a "+typeof n);case "object":case "undefined":var h=n;n=function(b){for(var g in h){var f=
h[g];if(f&&f.test){if(!f.test(b[g],b))return!1}else if(f!=b[g])return!1}return!0};break;case "string":if(!this[n])throw Error("No filter function "+n+" was found in store");n=this[n];case "function":}g.matches=n;return g}})},"esri/tasks/AlgorithmicColorRamp":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../Color ./ColorRamp".split(" "),function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.tasks.AlgorithmicColorRamp",type:"algorithmic",fromColor:null,toColor:null,algorithm:null,
toJson:function(){var b;switch(this.algorithm&&this.algorithm.toLowerCase()){case "cie-lab":b="esriCIELabAlgorithm";break;case "hsv":b="esriHSVAlgorithm";break;case "lab-lch":b="esriLabLChAlgorithm"}b={type:"algorithmic",algorithm:b};b.fromColor=h.toJsonColor(this.fromColor);b.toColor=h.toJsonColor(this.toColor);return b}});b("extend-esri")&&n.setObject("tasks.AlgorithmicColorRamp",q,g);return q})},"esri/tasks/ColorRamp":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],
function(q,n,b,g){q=q(null,{declaredClass:"esri.tasks.ColorRamp",type:null});b("extend-esri")&&n.setObject("tasks.ColorRamp",q,g);return q})},"esri/tasks/MultipartColorRamp":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../symbols/Symbol ./ColorRamp".split(" "),function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.tasks.MultipartColorRamp",type:"multipart",constructor:function(){this.colorRamps=[]},addColorRamp:function(b){this.colorRamps.push(b)},toJson:function(){return{type:"multipart",
colorRamps:b.map(this.colorRamps,function(b){return b.toJson()})}}});g("extend-esri")&&n.setObject("tasks.MultipartColorRamp",q,h);return q})},"esri/renderers/colorUtils":function(){define(["dojo/_base/Color","dojo/_base/array"],function(q,n){var b={COEF_RGB2XYZ:[[.4124,.3576,.1805],[.2126,.7152,.0722],[.0193,.1192,.9505]],COEF_XYZ2RGB:[[3.2406,-1.5372,-.4986],[-.9689,1.8758,.0415],[.0557,-.204,1.057]],matrixProduct:function(b,g){var h=[],f,e;if(b[0].length!==g.length)throw"dimensions do not match";
var c=b.length,a=b[0].length,d=0;for(f=0;f<c;f++){for(e=d=0;e<a;e++)d+=b[f][e]*g[e];h.push(d)}return h},rgb2xyz:function(b){b=[b.r/255,b.g/255,b.b/255].map(function(b){return.04045>=b?b/12.92:Math.pow((b+.055)/1.055,2.4)});b=this.matrixProduct(this.COEF_RGB2XYZ,b);return{x:100*b[0],y:100*b[1],z:100*b[2]}},xyz2rgb:function(b){b=this.matrixProduct(this.COEF_XYZ2RGB,[b.x/100,b.y/100,b.z/100]).map(function(b){return Math.min(1,Math.max(.0031308>=b?12.92*b:1.055*Math.pow(b,1/2.4)-.055,0))});return{r:Math.round(255*
b[0]),g:Math.round(255*b[1]),b:Math.round(255*b[2])}},xyz2lab:function(b){b=[b.x/95.047,b.y/100,b.z/108.883].map(function(b){return b>Math.pow(6/29,3)?Math.pow(b,1/3):1/3*Math.pow(29/6,2)*b+4/29});return{l:116*b[1]-16,a:500*(b[0]-b[1]),b:200*(b[1]-b[2])}},lab2xyz:function(b){var g=b.l;b=[(g+16)/116+b.a/500,(g+16)/116,(g+16)/116-b.b/200].map(function(b){return b>6/29?Math.pow(b,3):3*Math.pow(6/29,2)*(b-4/29)});return{x:95.047*b[0],y:100*b[1],z:108.883*b[2]}},lab2lch:function(b){var g=b.l,h=b.a,f=b.b;
b=Math.sqrt(h*h+f*f);h=Math.atan2(f,h);h=0<h?h:h+2*Math.PI;return{l:g,c:b,h:h}},lch2lab:function(b){var g=b.c,h=b.h;return{l:b.l,a:g*Math.cos(h),b:g*Math.sin(h)}},rgb2lab:function(b){return this.xyz2lab(this.rgb2xyz(b))},lab2rgb:function(b){return this.xyz2rgb(this.lab2xyz(b))},rgb2lch:function(b){return this.lab2lch(this.xyz2lab(this.rgb2xyz(b)))},lch2rgb:function(b){return this.xyz2rgb(this.lab2xyz(this.lch2lab(b)))}},g={rgb2hsv:function(b){var g=b.r,h=b.g;b=b.b;var f=Math.max(g,h,b),e=f-Math.min(g,
h,b),c;0===e?c=0:f===g?c=(h-b)/e%6:f===h?c=(b-g)/e+2:f===b&&(c=(g-h)/e+4);0>c&&(c+=6);return{h:60*c,s:100*(0===e?0:e/f),v:100/255*f}},hsv2rgb:function(b){var g=(b.h+360)%360/60,h=b.v/100*255;b=b.s/100*h;var f=b*(1-Math.abs(g%2-1));switch(Math.floor(g)){case 0:g={r:b,g:f,b:0};break;case 1:g={r:f,g:b,b:0};break;case 2:g={r:0,g:b,b:f};break;case 3:g={r:0,g:f,b:b};break;case 4:g={r:f,g:0,b:b};break;case 5:case 6:g={r:b,g:0,b:f};break;default:g={r:0,g:0,b:0}}g.r=Math.round(g.r+h-b);g.g=Math.round(g.g+
h-b);g.b=Math.round(g.b+h-b);return g}};return{toRGB:function(h){var p;void 0!==h.r&&void 0!==h.g&&void 0!==h.b?p=h:void 0!==h.l&&void 0!==h.c&&void 0!==h.h?p=b.lch2rgb(h):void 0!==h.l&&void 0!==h.a&&void 0!==h.b?p=b.lab2rgb(h):void 0!==h.x&&void 0!==h.y&&void 0!==h.z?p=b.xyz2rgb(h):void 0!==h.h&&void 0!==h.s&&void 0!==h.v&&(p=g.hsv2rgb(h));return p},toHSV:function(b){if(void 0!==b.h&&void 0!==b.s&&void 0!==b.v)return b;b=this.toRGB(b);return g.rgb2hsv(b)},toLAB:function(g){return void 0!==g.l&&void 0!==
g.a&&void 0!==g.b?g:b.rgb2lab(this.toRGB(g))},toLCH:function(g){return void 0!==g.l&&void 0!==g.c&&void 0!==g.h?g:b.rgb2lch(this.toRGB(g))},toXYZ:function(g){return void 0!==g.x&&void 0!==g.y&&void 0!==g.z?g:b.rgb2xyz(this.toRGB(g))},getDojoColor:function(b){if(b){if(Array.isArray(b))return q.fromArray(b);if(void 0!==b.r&&void 0!==b.g&&void 0!==b.b)return b}},correctRGBLimits:function(b){var g=[b.r,b.g,b.b];n.forEach(g,function(b,f){0>g[f]?g[f]=0:255<g[f]&&(g[f]=255);g[f]=Math.floor(g[f])});return{r:g[0],
g:g[1],b:g[2],a:1}}}})},"esri/renderers/jsonUtils":function(){define("dojo/_base/array dojo/_base/lang dojo/has dojox/gfx/_base ../kernel ../Color ../symbols/jsonUtils ./SimpleRenderer ./UniqueValueRenderer ./ClassBreaksRenderer ./VectorFieldRenderer ./DotDensityRenderer ./ScaleDependentRenderer ./TimeClassBreaksAger ./TimeRampAger ./TemporalRenderer ./HeatmapRenderer ./StretchRenderer".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r){var y={fromJson:function(b){var d;switch(b.type||""){case "simple":d=
new f(b);break;case "uniqueValue":d=new e(b);break;case "classBreaks":d=new c(b);break;case "vectorField":d=new a(b);break;case "scaleDependent":d=this._scaleDependentFromJson(b);break;case "dotDensity":d=this._dotDensityFromJson(b);break;case "temporal":d=this._temporalFromJson(b);break;case "heatmap":d=this._heatmapFromJson(b);break;case "rasterStretch":d=new r(b)}return d},_scaleDependentFromJson:function(a){var b={},c=a.minScale;b.rendererInfos=q.map(a.rendererInfos,function(a){var b=a.maxScale;
a={minScale:c,maxScale:b,renderer:a.renderer&&this.fromJson(a.renderer)};c=b;return a},this);return new m(b)},_dotDensityFromJson:function(a){a.backgroundColor&&n.isArray(a.backgroundColor)&&(a.backgroundColor=p.toDojoColor(a.backgroundColor));0<a.dotSize&&(a.dotSize=g.pt2px(a.dotSize));a.fields&&q.forEach(a.fields,function(a){a&&n.isArray(a.color)&&(a.color=p.toDojoColor(a.color))});a.legendOptions&&(a.legendOptions.backgroundColor&&n.isArray(a.legendOptions.backgroundColor)&&(a.legendOptions.backgroundColor=
p.toDojoColor(a.legendOptions.backgroundColor)),a.legendOptions.outline&&(a.legendOptions.outline=l.fromJson(a.legendOptions.outline)));a.outline&&(a.outline=l.fromJson(a.outline));return new d(a)},_temporalFromJson:function(a){var b,c,d;a=a||{};b=this.fromJson(a.observationRenderer);c=a.latestObservationRenderer?this.fromJson(a.latestObservationRenderer):null;d=a.trackRenderer?this.fromJson(a.trackRenderer):null;a=this._agerFromJson(a.observationAger);return new k(b,c,d,a)},_agerFromJson:function(a){var b;
a=a||{};a.colorRange||a.sizeRange||a.alphaRange?b=this._timeRampFromJson(a):a.agerClassBreakInfos&&(b=this._timeClassBreaksFromJson(a));return b},_timeRampFromJson:function(a){var b,c,d;a.colorRange&&1<a.colorRange.length&&(b=[p.toDojoColor(a.colorRange[0]),p.toDojoColor(a.colorRange[1])]);a.sizeRange&&1<a.sizeRange.length&&(c=[a.sizeRange[0],a.sizeRange[1]]);a.alphaRange&&1<a.alphaRange.length&&(d=[a.alphaRange[0]/255,a.alphaRange[1]/255]);return new t(b,c,d)},_timeClassBreaksFromJson:function(a){var b=
a.agerClassBreakInfos,c,d,e=[],f;c=w.UNIT_DAYS;switch(a.timeUnits){case "esriTimeUnitsSeconds":c=w.UNIT_SECONDS;break;case "esriTimeUnitsMilliseconds":c=w.UNIT_MILLISECONDS;break;case "esriTimeUnitsHours":c=w.UNIT_HOURS;break;case "esriTimeUnitsMinutes":c=w.UNIT_MINUTES;break;case "esriTimeUnitsMonths":c=w.UNIT_MONTHS;break;case "esriTimeUnitsWeeks":c=w.UNIT_WEEKS;break;case "esriTimeUnitsYears":c=w.UNIT_YEARS}for(f=0;f<b.length;f+=1)a=b[f],d={minAge:0,maxAge:a.oldestAge||Infinity},a.color&&(d.color=
p.toDojoColor(a.color)),a.alpha&&(d.alpha=a.alpha/255),d.size=a.size,e[f]=d;return new w(e,c)},_heatmapFromJson:function(a){var b=a.colorStops;b&&b instanceof Array&&q.forEach(b,function(a){a.color=p.toDojoColor(a.color)});return new u(a)}};b("extend-esri")&&n.mixin(n.getObject("renderer",!0,h),y);return y})},"esri/renderers/VectorFieldRenderer":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojo/_base/array ../kernel ../lang ../Color ./Renderer ./ClassBreaksRenderer ../symbols/SimpleMarkerSymbol ../symbols/PictureMarkerSymbol ../symbols/SimpleLineSymbol ../symbols/jsonUtils require".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w){var t=q(f,{declaredClass:"esri.renderer.VectorFieldRenderer",iconFolderPath:"../images/symbol/sfs/",constructor:function(a){p.isDefined(a)||(a={});a.attributeField=a.attributeField||"Magnitude";a.rotationInfo=a.rotationInfo||this._getRotationInfo(a);q.safeMixin(this,a);this.setRotationInfo(this.rotationInfo);this.style=this.style||t.STYLE_SINGLE_ARROW;this.singleArrowSymbol&&(this.singleArrowSymbol=this.singleArrowSymbol.declaredClass?this.singleArrowSymbol:m.fromJson(this.singleArrowSymbol));
this.renderer=new e(this._getDefaultSymbol(),a.attributeField);this._updateRenderer(this.style);this.flowRepresentation=this.flowRepresentation||this.FLOW_FROM},getSymbol:function(a){return this.renderer&&this.renderer.getSymbol(a)},setVisualVariables:function(a){a=g.filter(a,function(a){if("sizeInfo"===a.type)return p.isDefined(this._updateSizeInfo(a))},this);this.inherited(arguments);return this},setSizeInfo:function(a){this._updateSizeInfo(a);this.inherited(arguments);return this},setProportionalSymbolInfo:function(a){this.setSizeInfo(a);
return this},setColorInfo:function(a){return this},_updateRenderer:function(a){return p.isDefined(this.renderer)?a===t.STYLE_SINGLE_ARROW?this._createSingleArrowRenderer():a===t.STYLE_BEAUFORT_KN?this._createBeaufortKnotsRenderer():a===t.STYLE_BEAUFORT_METER?this._createBeaufortMeterRenderer():a===t.STYLE_BEAUFORT_FEET?this._createBeaufortFeetRenderer():a===t.STYLE_BEAUFORT_MILE?this._createBeaufortMilesRenderer():a===t.STYLE_BEAUFORT_KM?this._createBeaufortKilometersRenderer():a===t.STYLE_OCEAN_CURRENT_M?
this._createCurrentMeterRenderer():a===t.STYLE_OCEAN_CURRENT_KN?this._createCurrentKnotsRenderer():a===t.STYLE_SCALAR?this._createSimpleScalarRenderer():a===t.STYLE_WIND_BARBS?this._createWindBarbsRenderer():this._createClassifiedArrowRenderer():Error("Invalid Renderer!")},_updateSizeInfo:function(a){return a&&p.isDefined(a.minSize)&&p.isDefined(a.maxSize)&&p.isDefined(a.minDataValue)&&p.isDefined(a.maxDataValue)?(this.style===t.STYLE_WIND_BARBS&&(a.minSize=a.maxSize),a.field=a.field||"Magnitude",
a.type="sizeInfo",a):null},_createClassifiedArrowRenderer:function(){this.renderer.defaultSymbol=this._getDefaultSymbol(new l([56,168,0]));var a=[0,1E-6,3.5,7,10.5,14];if(p.isDefined(this.minDataValue)&&p.isDefined(this.maxDataValue)){var b=(this.maxDataValue-this.minDataValue)/5,a=[],c,d;d=this.minDataValue;for(c=0;6>c;c++)a[c]=d,d+=b}this._addBreaks(a,[[56,168,0],[139,309,0],[255,255,0],[255,128,0],[255,0,0]])},_createSingleArrowRenderer:function(){this.renderer.defaultSymbol=this.singleArrowSymbol||
this._getDefaultSymbol()},_createBeaufortMeterRenderer:function(){this.renderer.defaultSymbol=this._getDefaultSymbol(new l([214,47,39]));this._addBreaks([0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7],[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])},_createBeaufortKnotsRenderer:function(){this.renderer.defaultSymbol=this._getDefaultSymbol(new l([214,47,39]));this._addBreaks([0,
1,3,6,10,16,21,27,33,40,47,55,63],[[40,146,199],[89,162,186],[129,179,171],[160,194,155],[191,212,138],[218,230,119],[250,250,100],[252,213,83],[252,179,102],[250,141,52],[247,110,42],[240,71,29]])},_createBeaufortFeetRenderer:function(){var a=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];g.forEach(a,function(b,c){a[c]*=3.28084});this.renderer.defaultSymbol=this._getDefaultSymbol(new l([214,47,39]));this._addBreaks(a,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],
[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])},_createBeaufortMilesRenderer:function(){var a=[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];g.forEach(a,function(b,c){a[c]*=2.23694});this.renderer.defaultSymbol=this._getDefaultSymbol(new l([214,47,39]));this._addBreaks(a,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])},_createBeaufortKilometersRenderer:function(){var a=
[0,.2,1.8,3.3,5.4,8.5,11,14.1,17.2,20.8,24.4,28.6,32.7];g.forEach(a,function(b,c){a[c]*=3.6});this.renderer.defaultSymbol=this._getDefaultSymbol(new l([214,47,39]));this._addBreaks(a,[[69,117,181],[101,137,184],[132,158,186],[162,180,189],[192,204,190],[222,227,191],[255,255,191],[255,220,161],[250,185,132],[245,152,105],[237,117,81],[232,21,21]])},_createCurrentMeterRenderer:function(){this.renderer.defaultSymbol=this._getDefaultSymbol(new l([177,177,177]));this._addBreaks([0,.5,1,1.5,2],[[78,26,
153],[179,27,26],[202,128,26],[177,177,177]])},_createCurrentKnotsRenderer:function(){this.renderer.defaultSymbol=this._getDefaultSymbol(new l([177,177,177]));this._addBreaks([0,.25,.5,1,1.5,2,2.5,3,3.5,4],[[0,0,0],[0,37,100],[78,26,153],[151,0,100],[179,27,26],[177,78,26],[202,128,26],[177,179,52],[177,177,177]])},_createSimpleScalarRenderer:function(){this.renderer.defaultSymbol=new a({url:w.toUrl(this.iconFolderPath+"scalar.png"),height:20,width:20,type:"esriPMS",angle:0})},_createWindBarbsRenderer:function(){var b=
[],e,f;for(e=0;150>=e;e+=5)b.push(e);f="M20 20 M5 20 A15 15 0 1 0 35 20 A15 15 0 1 0 5 20 M20 20 M10 20 A10 10 0 1 0 30 20 A10 10 0 1 0 10 20;M25 0 L25 40 M25 35 L17.5 37.5;M25 0 L25 40 L10 45 L25 40;M25 0 L25 40 L10 45 L25 40 M25 35 L17.5 37.5;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L17.5 32.5;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30;M25 0 L25 40 L10 45 L25 40 M25 35 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5;M25 0 L25 40 L10 40 L25 35;M25 0 L25 40 L10 40 L25 35 M25 30 L17.5 32.5;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L17.5 27.5;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L17.5 22.5;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L17.5 17.5;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20;M25 0 L25 40 L10 40 L25 35 M25 30 L10 35 L25 30 M25 25 L10 30 L25 25 M25 20 L10 25 L25 20 M25 15 L10 20 L25 15 M25 10 L17.5 12.5;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L17.5 27.5;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L17.5 22.5;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L17.5 17.5;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L17.5 12.5;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L10 15;M25 0 L25 40 L10 40 L25 35 L10 35 L25 30 M25 25 L10 30 M25 25 M25 20 L10 25 M25 20 M25 15 L10 20 M25 15 M25 10 L10 15 M25 10 M25 5 L17.5 7.5".split(";");
var g=new a({url:w.toUrl(this.iconFolderPath+"windbarb.png"),height:20,width:20,type:"esriPMS",angle:0});this.renderer.defaultSymbol=g;for(e=0;e<b.length-1;e++)0===e?this.renderer.addBreak({minValue:b[e],maxValue:b[e+1],symbol:g}):this.renderer.addBreak({minValue:b[e],maxValue:b[e+1],symbol:(new c).setPath(f[e]).setOutline((new d).setWidth(1.5)).setSize(20).setColor(new l([0,0,0,255]))})},_getDefaultSymbol:function(a){return(new c).setPath("M14,32 14,18 9,23 16,3 22,23 17,18 17,32 z").setOutline((new d).setWidth(0)).setSize(20).setColor(a||
new l([0,92,230]))},_getRotationInfo:function(a){var b=a&&a.flowRepresentation||t.FLOW_FROM,c=a&&a.rotationField||"Direction",d=t.FLOW_FROM;return{field:function(a){a=a.attributes[c];return b===d?a:a+180},type:"geographic"}},_addBreaks:function(a,b){if(!p.isDefined(this.renderer))return Error("Invalid Renderer!");if(!(a&&b&&a.length&&b.length&&a.length>=b.length))return Error("AddBreaks: Input arguments break values and colors not valid");var c;for(c=0;c<b.length;c++)this.renderer.addBreak({minValue:a[c],
maxValue:a[c+1],symbol:this._getDefaultSymbol(new l(b[c]))})},toJson:function(){var a=n.mixin(this.inherited(arguments),{type:"vectorField",style:this.style,attributeField:this.attributeField,flowRepresentation:this.flowRepresentation});this.renderer&&this.renderer.defaultSymbol&&this.style===t.STYLE_SINGLE_ARROW&&(a.singleArrowSymbol=this.renderer.defaultSymbol.toJson());return p.fixJson(a)}});n.mixin(t,{STYLE_WIND_BARBS:"wind_speed",STYLE_SINGLE_ARROW:"single_arrow",STYLE_CLASSIFIED_ARROW:"classified_arrow",
STYLE_BEAUFORT_KN:"beaufort_kn",STYLE_BEAUFORT_METER:"beaufort_m",STYLE_BEAUFORT_MILE:"beaufort_mi",STYLE_BEAUFORT_FEET:"beaufort_ft",STYLE_BEAUFORT_KM:"beaufort_km",STYLE_OCEAN_CURRENT_M:"ocean_current_m",STYLE_OCEAN_CURRENT_KN:"ocean_current_kn",STYLE_SCALAR:"simple_scalar"},{FLOW_FROM:"flow_from",FLOW_TO:"flow_to"});b("extend-esri")&&n.setObject("renderer.VectorFieldRenderer",t,h);return t})},"esri/renderers/DotDensityRenderer":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/dom-construct dojo/has dojox/gfx/_base ../kernel ../lang ../Color ./Renderer ../symbols/PictureFillSymbol ../geometry/ScreenPoint ../geometry/Point".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){q=q(c,{declaredClass:"esri.renderer.DotDensityRenderer",constructor:function(a){this.dotSize=a.dotSize||3;this.dotValue=a.dotValue;this.fields=a.fields;this.outline=a.outline;this.backgroundColor=a.backgroundColor;this.exactCount=a.exactCount||!0;this.dotShape=a.dotShape||"square";this.legendOptions=a.legendOptions;this._exactCountMinArea=1E4;this._currentMapScale=this._map=this._canvas=null;this._symbolMap={};this._currentGraphic=this._currentResolution=this._objectIdField=
null;this._supportsCanvas=window.CanvasRenderingContext2D?!0:!1;window.CanvasRenderingContext2D||console.log("The DotDensityRenderer requires a Canvas enabled Browser.  IE8 and less does not support Canvas.")},getSymbol:function(b){var c,d;this._currentGraphic=b;if(!this._supportsCanvas)return null;this._map||(this._map=b.getLayer()._map,this._objectIdField=b.getLayer().objectIdField,this._currentMapScale=this._map.getScale(),this._currentResolution=this._map.extent.getWidth()/this._map.width,this._map.on("zoom-end",
n.hitch(this,function(a){this._currentMapScale=this._map.getScale();this._currentResolution=a.extent.getWidth()/this._map.width;this._symbolMap[this._currentMapScale]={}})));if(this._symbolMap[this._currentMapScale]&&this._symbolMap[this._currentMapScale][b.attributes[this._objectIdField]])return c=this._symbolMap[this._currentMapScale][b.attributes[this._objectIdField]],d=this._getShapeProperties(b),c.setOffset(d.dx,d.dy),c;c=this._generateFieldsCount(this.fields,b.attributes,this.dotValue);d=this._getShapeProperties(b);
if(!d.width||!d.height)return null;c=new a(this._generateImageSrc(d.width,d.height,c,d.minXY,d.maxXY),this.outline,d.width,d.height);c.setOffset(d.dx,d.dy);this._symbolMap[this._currentMapScale]||(this._symbolMap[this._currentMapScale]={});return this._symbolMap[this._currentMapScale][b.attributes[this._objectIdField]]=c},_generateFieldsCount:function(a,b,c){var d,e;for(e=a.length-1;0<=e;e--)d=b[a[e].name]/c,a[e].numPoints=Math.round(d);return a},_getShapeProperties:function(a){var b,c,d,e;b=a.geometry.getExtent();
b.contains(this._map.extent)&&(b=this._map.extent);d=Math.ceil(b.getWidth()/this._currentResolution);e=Math.ceil(b.getHeight()/this._currentResolution);c=this._map.toScreen(new m(b.xmin,b.ymin,b.spatialReference));b=this._map.toScreen(new m(b.xmax,b.ymax,b.spatialReference));a=a.getLayer().getNode().getCTM();return{minXY:c,maxXY:b,dx:(c.x-a.e)%d,dy:(b.y-a.f)%e,width:d,height:e}},_generateImageSrc:function(a,b,c,d,e,f){var g=this.dotSize,k,h,m;this._canvas?(this._canvas.width=a,this._canvas.height=
b):this._canvas=this._initCanvas(a,b);k=this._canvas.getContext("2d");if(f=f||this.backgroundColor)k.fillStyle=f.toCss(!0),k.fillRect(0,0,a,b),k.fill();for(f=c.length-1;0<=f;f--)for(k.fillStyle=c[f].color.toCss(!0),h=c[f].numPoints-1;0<=h;h--)m=this._getRandomPoint(a,b,d,e),"square"===this.dotShape?k.fillRect(m.x,m.y,g,g):"circle"===this.dotShape&&(k.beginPath(),k.arc(m.x,m.y,g/2,0,2*Math.PI,!0)),k.fill();return this._canvas.toDataURL()},_initCanvas:function(a,b){a=g.create("canvas",{id:"canvas",
width:a+"px",height:b+"px",style:"position: absolute; left: -10000px; top: 0px;"},null);document.body.appendChild(a);return a},_getRandomInt:function(a,b){return Math.floor(Math.random()*(b-a+1)+a)},_getRandomPoint:function(a,b,c,e){var f={},g=this.outline&&this.outline.width?this.outline.width:0;if(!0===this.exactCount&&a*b>this._exactCountMinArea){a=!1;do f.x=this._getRandomInt(c.x,e.x),f.y=this._getRandomInt(e.y,c.y),a=new d(f.x,f.y),a=this._checkPointShapeBounds(a,this.dotSize+g,this._currentGraphic.geometry),
!0===a&&(f.x-=c.x,f.y-=e.y);while(!1===a)}else f.x=this._getRandomInt(0,a),f.y=this._getRandomInt(0,b);return f},_checkPointShapeBounds:function(a,b,c){var d=null,d=!1,e=!0,f=0;do{switch(f){case 1:a.x+=b;break;case 2:a.y+=b;break;case 3:a.x-=b}d=this._map.toMap(a);d=c.contains(d);!1===d&&(e=!1);f+=1}while(3>=f&&!0===e);return d},setDotSize:function(a){0<a&&(this.dotSize=a)},setDotValue:function(a){0<a&&(this.dotValue=a)},setOutline:function(a){this.outline=a},setBackgroundColor:function(a){this.backgroundColor=
a},toJson:function(){var a=n.mixin(this.inherited(arguments),{type:"dotDensity",backgroundColor:e.toJsonColor(this.backgroundColor),dotShape:this.dotShape,dotSize:0<this.dotSize?p.px2pt(this.dotSize):0,dotValue:this.dotValue,fields:b.map(this.fields,function(a){return f.fixJson({color:e.toJsonColor(a.color),name:a.name})}),legendOptions:this.legendOptions&&f.fixJson({backgroundColor:e.toJsonColor(this.legendOptions.backgroundColor),dotCoverage:this.legendOptions.dotCoverage,outline:this.legendOptions.outline&&
this.legendOptions.outline.toJson(),valueUnit:this.legendOptions.valueUnit}),outline:this.outline&&this.outline.toJson()});return f.fixJson(a)}});h("extend-esri")&&n.setObject("renderer.DotDensityRenderer",q,l);return q})},"esri/renderers/ScaleDependentRenderer":function(){define("dojo/_base/declare dojo/_base/array dojo/_base/lang dojo/has ../kernel ../lang ./Renderer".split(" "),function(q,n,b,g,h,p,l){q=q(l,{declaredClass:"esri.renderer.ScaleDependentRenderer",constructor:function(b){this.setRendererInfos(b&&
b.rendererInfos||[])},setRendererInfos:function(b){this.rendererInfos=b;this._setRangeType();return this},getSymbol:function(b){var e=this.getRendererInfo(b);return e&&e.renderer&&e.renderer.getSymbol(b)},getRendererInfo:function(b){b=b.getLayer().getMap();return"zoom"===this.rangeType?this.getRendererInfoByZoom(b.getZoom()):this.getRendererInfoByScale(b.getScale())},getRendererInfoByZoom:function(b){var e,c=this.rendererInfos,a,d=0;do e=c[d],b>=e.minZoom&&b<=e.maxZoom&&(a=e),d++;while(!a&&d<c.length);
return a},getRendererInfoByScale:function(b){var e,c=this.rendererInfos,a,d=0,f,g,h,k;do e=c[d],f=e.minScale,g=e.maxScale,h=!f,k=!g,!h&&b<=f&&(h=!0),!k&&b>=g&&(k=!0),h&&k&&(a=e),d++;while(!a&&d<c.length);return a},addRendererInfo:function(b){var e,c=0,a,d=this.rendererInfos,f=b.hasOwnProperty("minZoom")?"minZoom":"minScale",g=d.length;do{a=d[c];if(g===c||b[f]<a[f])d.splice(c,0,b),this._setRangeType(),e=!0;c++}while(!e&&c<g);return this},_setRangeType:function(){var b=this.rendererInfos;if(b=b&&b[0])this.rangeType=
b.hasOwnProperty("minZoom")?"zoom":b.hasOwnProperty("minScale")?"scale":""},toJson:function(){if("zoom"===this.rangeType)return null;var f=this.rendererInfos||[],e=f[0]&&f[0].minScale,f=b.mixin(this.inherited(arguments),{type:"scaleDependent",minScale:0<e?e:0,rendererInfos:n.map(f,function(b){return p.fixJson({maxScale:0<b.maxScale?b.maxScale:0,renderer:b.renderer&&b.renderer.toJson()})})});return p.fixJson(f)}});g("extend-esri")&&b.setObject("renderer.ScaleDependentRenderer",q,h);return q})},"esri/renderers/HeatmapRenderer":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/dom-construct ../sniff ../kernel ../lang ../symbols/PictureMarkerSymbol ../Color ./Renderer".split(" "),
function(q,n,b,g,h,p,l,f,e,c){q=q([c],{declaredClass:"esri.renderer.HeatmapRenderer",colors:null,blurRadius:10,maxPixelIntensity:100,minPixelIntensity:0,field:null,fieldOffset:null,colorStops:null,constructor:function(a){(this._supportsCanvas=window.CanvasRenderingContext2D?!0:!1)?("string"==typeof a&&(a=JSON.parse(a)),n.mixin(this,a),this._canvas=null,this.colors||this.colorStops||(this.colorStops=[{ratio:0,color:"rgba(255, 140, 0, 0)"},{ratio:.75,color:"rgba(255, 140, 0, 1)"},{ratio:.9,color:"rgba(255, 0,   0, 1)"}]),
this.gradient=this._generateGradient(this.colorStops||this.colors)):console.log("The HeatmapRenderer requires a Canvas enabled Browser.  IE8 and less does not support Canvas.")},getSymbol:function(a){if(!this._supportsCanvas)return!1;var b=a.attributes.imageData;a=a.attributes.size;if(!a)return null;var c=this._getContext(a[0],a[1]),e=c.getImageData(0,0,a[0],a[1]);window.ArrayBuffer&&b instanceof ArrayBuffer?b=window.Uint8ClampedArray?new Uint8ClampedArray(b):new Uint8Array(b):b.BYTES_PER_ELEMENT&&
1!==b.BYTES_PER_ELEMENT&&(b=window.Uint8ClampedArray?new Uint8ClampedArray(b.buffer):new Uint8Array(b.buffer));if(window.CanvasPixelArray&&e.data instanceof window.CanvasPixelArray)for(var g=e.data,k=g.length;k--;)g[k]=b[k];else e.data.set(b);c.putImageData(e,0,0);return new f(c.canvas.toDataURL(),a[0],a[1])},setColors:function(a){a&&(a instanceof Array||a.colors)&&(this.gradient=this._generateGradient(a.colors||a),this.colors=a);return this},setColorStops:function(a){a&&(a instanceof Array||a.colorStops)&&
(this.gradient=this._generateGradient(a.colorStops||a),this.colorStops=a);return this},setMaxPixelIntensity:function(a){this.maxPixelIntensity=a;return this},setMinPixelIntensity:function(a){this.minPixelIntensity=a;return this},setField:function(a){this.field=a;return this},setFieldOffset:function(a){this.fieldOffset=a;return this},setBlurRadius:function(a){this.blurRadius=a;return this},getStats:function(){},getHistogramData:function(){},toJson:function(){var a=n.mixin(this.inherited(arguments),
{type:"heatmap",blurRadius:this.blurRadius,colorStops:this._colorsToStops(this.colorStops||this.colors),maxPixelIntensity:this.maxPixelIntensity,minPixelIntensity:this.minPixelIntensity,field:this.field});null!=this.fieldOffset&&(a.fieldOffset=this.fieldOffset);b.forEach(a.colorStops,function(a){a.color=e.toJsonColor(a.color)});return l.fixJson(a)},_getContext:function(a,b){this._canvas?(this._canvas.width=a,this._canvas.height=b):this._canvas=this._initCanvas(a,b);return this._canvas.getContext("2d")},
_initCanvas:function(a,b){var c=g.create("canvas",{id:"hm_canvas-"+Math.floor(1E3*Math.random()),style:"position: absolute; left: 0px; top: -10000px;"},null);c.width=a;c.height=b;document.body.appendChild(c);return c},_generateGradient:function(a,b){b||(b=512);a=this._colorsToStops(a);for(var c=this._getContext(1,b||512),d=c.createLinearGradient(0,0,0,b),e=0,f;e<a.length;e++)f=a[e],d.addColorStop(f.ratio,f.color.toCss(!0));c.fillStyle=d;c.fillRect(0,0,1,b);return c.getImageData(0,0,1,b).data},_colorsToStops:function(a){var c=
[];if(!a[0])return c;if(null!=a[0].ratio)c=b.map(a,function(a){return{ratio:a.ratio,color:this._toColor(a.color)}},this);else if(null!=a[0].value){var e=Infinity,c=-Infinity,f=0,g;for(g=0;g<a.length;g++){var k=a[g].value;k<e&&(e=k);k>c&&(c=k)}f=c-e;this.maxPixelIntensity=c;this.minPixelIntensity=e;c=b.map(a,function(a){var b=a.value;a=this._toColor(a.color);return{value:b,ratio:(b-e)/f,color:a}},this)}else var h=a.length-1,c=b.map(a,function(a,b){return{color:this._toColor(a),ratio:b/h}},this);return c},
_toColor:function(a){a.toRgba||a.declaredClass||(a=new e(a));return a}});h("extend-esri")&&n.setObject("renderer.HeatmapRenderer",q,p);return q})},"esri/utils":function(){define("./domUtils ./lang ./urlUtils ./request ./tileUtils ./graphicsUtils ./deferredUtils ./layerUtils ./geometry/normalizeUtils".split(" "),function(){return{}})},"esri/graphicsUtils":function(){define(["dojo/_base/lang","dojo/_base/array","dojo/has","./kernel","./geometry/Extent"],function(q,n,b,g,h){var p={graphicsExtent:function(b){if(!b||
!b.length)return null;var f=b[0].geometry,e=f.getExtent(),c,a,d=b.length;null===e&&(e=new h(f.x,f.y,f.x,f.y,f.spatialReference));for(a=1;a<d;a++)c=(f=b[a].geometry).getExtent(),null===c&&(c=new h(f.x,f.y,f.x,f.y,f.spatialReference)),e=e.union(c);return 0>e.getWidth()&&0>e.getHeight()?null:e},getGeometries:function(b){return n.map(b,function(b){return b.geometry})},_encodeGraphics:function(b,f){var e=[],c,a,d;n.forEach(b,function(b,g){c=b.toJson();a={};c.geometry&&(d=f&&f[g],a.geometry=d&&d.toJson()||
c.geometry);c.attributes&&(a.attributes=c.attributes);e[g]=a});return e}};b("extend-esri")&&q.mixin(g,p);return p})},"esri/IdentityManager":function(){define(["./IdentityManagerDialog","./kernel","./OAuthSignInHandler","dojo/_base/declare"],function(q,n,b,g){q=new q;n.id=g.safeMixin(q,b);return n.id})},"esri/IdentityManagerDialog":function(){define("dojo/_base/kernel dojo/_base/declare dojo/_base/config dojo/_base/Deferred dojo/_base/lang dojo/has dojo/dom-attr dojo/keys dijit/registry dijit/Dialog ./kernel ./lang ./domUtils ./Credential ./IdentityManagerBase dojo/i18n!./nls/jsapi dojo/query dijit/form/Button dijit/form/Form dijit/form/ValidationTextBox".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k){n=n([t],{declaredClass:"esri.IdentityManager",_eventMap:{"dialog-cancel":["info"]},constructor:function(a){h.mixin(this,a);this.registerConnectEvents()},_dialogContent:"\x3cdiv data-dojo-type\x3d'dijit.form.Form' data-dojo-props\x3d'\"class\":\"esriIdForm\"'\x3e\x3cdiv class\x3d'dijitDialogPaneContentArea'\x3e\x3cdiv style\x3d'padding-bottom: 5px; word-wrap: break-word;'\x3e${info}\x3c/div\x3e\x3cdiv style\x3d'margin: 0px; padding: 0px; height: 10px;'\x3e\x3c/div\x3e\x3cdiv class\x3d'esriErrorMsg' style\x3d'display: none; color: white; background-color: #D46464; text-align: center; padding-top: 3px; padding-bottom: 3px;'\x3e${invalidUser}\x3c/div\x3e\x3cdiv style\x3d'margin: 0px; padding: 0px; height: 10px;'\x3e\x3c/div\x3e\x3ctable style\x3d'width: 100%;'\x3e\x3ctr\x3e\x3ctd\x3e\x3clabel\x3e${lblUser}\x3cbr/\x3e\x3cinput data-dojo-type\x3d'dijit.form.ValidationTextBox' data-dojo-props\x3d'type:\"text\", \"class\":\"esriIdUser\", required:true, trim:true, style:\"width: 100%;\", autocapitalize:\"none\", autocorrect:\"off\", spellcheck:false' /\x3e\x3c/label\x3e\x3c/td\x3e\x3c/tr\x3e\x3ctr\x3e\x3ctd\x3e\x3clabel\x3e${lblPwd}\x3cbr/\x3e\x3cinput data-dojo-type\x3d'dijit.form.ValidationTextBox' data-dojo-props\x3d'type:\"password\", \"class\":\"esriIdPwd\", required:true, style:\"width: 100%;\"' /\x3e\x3c/label\x3e\x3c/td\x3e\x3c/tr\x3e\x3c/table\x3e\x3c/div\x3e\x3cdiv class\x3d'dijitDialogPaneActionBar'\x3e\x3cbutton data-dojo-type\x3d'dijit.form.Button' data-dojo-props\x3d'type:\"button\", \"class\":\"esriIdSubmit\"'\x3e${lblOk}\x3c/button\x3e\x3cbutton data-dojo-type\x3d'dijit.form.Button' data-dojo-props\x3d'type:\"button\", \"class\":\"esriIdCancel\"'\x3e${lblCancel}\x3c/button\x3e\x3c/div\x3e\x3c/div\x3e",
onDialogCreate:function(){},onDialogCancel:function(){},signIn:function(a,c,d){this._nls||(this._nls=k.identity);this._loginDialog||(this._loginDialog=this.dialog=this._createLoginDialog(),this.onDialogCreate());var e=this._loginDialog,f=d&&d.error,h=d&&d.token,p=new g(function(){e.onCancel()});if(e.open)return a=Error("BUSY"),a.code="IdentityManager.1",a.log=!!b.isDebug,p.errback(a),p;m.hide(e.errMsg_);f&&403==f.code&&h&&(l.set(e.errMsg_,"innerHTML",this._nls.forbidden),m.show(e.errMsg_));e.dfd_=
p;e.serverInfo_=c;e.resUrl_=a;e.admin_=d&&d.isAdmin;l.set(e.resLink_,{title:a,innerHTML:"("+(this.getResourceName(a)||this._nls.lblItem)+")"});l.set(e.serverLink_,{title:c.server,innerHTML:(-1!==c.server.toLowerCase().indexOf("arcgis.com")?"ArcGIS Online":c.server)+" "});e.txtPwd_.set("value","");e.show();return p},_createLoginDialog:function(){var g=this._nls,k=d.substitute(g,this._dialogContent),k=d.substitute({resource:"\x3cspan class\x3d'resLink' style\x3d'word-wrap: break-word;'\x3e\x3c/span\x3e",
server:"\x3cspan class\x3d'serverLink' style\x3d'word-wrap: break-word;'\x3e\x3c/span\x3e"},k),h=new c({title:g.title,content:k,"class":"esriSignInDialog",style:"width: 18em;",esriIdMgr_:this,keypressed_:function(a){a.charOrCode===f.ENTER&&this.execute_()},execute_:function(){var b=this.txtUser_.get("value"),e=this.txtPwd_.get("value"),f=this.dfd_,k=this;if(this.form_.validate()&&b&&e){this.btnSubmit_.set("label",g.lblSigning);var h=a.id.findCredential(k.resUrl_,b),p=function(a){k.btnSubmit_.set("label",
g.lblOk);k.btnSubmit_.set("disabled",!1);m.hide(k.errMsg_);k.hide();c._DialogLevelManager.hide(k);var e=k.serverInfo_;k.dfd_=k.serverInfo_=k.generateDfd_=k.resUrl_=null;var l,p,n=h,q;a&&(l=a.token,p=d.isDefined(a.expires)?Number(a.expires):null,q=!!a.ssl,n?(n.userId=b,n.token=l,n.expires=p,n.validity=a.validity,n.ssl=q,n.creationTime=(new Date).getTime()):n=new w({userId:b,server:e.server,token:l,expires:p,ssl:q,isAdmin:k.admin_,validity:a.validity}));f.callback(n)};h&&!h._enqueued?p():(k.btnSubmit_.set("disabled",
!0),k.generateDfd_=a.id.generateToken(this.serverInfo_,{username:b,password:e},{isAdmin:this.admin_}).addCallback(p).addErrback(function(a){k.btnSubmit_.set("disabled",!1);k.generateDfd_=null;k.btnSubmit_.set("label",g.lblOk);l.set(k.errMsg_,"innerHTML",a&&a.code?g.invalidUser:g.noAuthService);m.show(k.errMsg_)}))}},cancel_:function(){h.generateDfd_&&h.generateDfd_.cancel();var a=h.dfd_,d=h.resUrl_,e=h.serverInfo_;h.btnSubmit_.set("disabled",!1);h.dfd_=h.serverInfo_=h.generateDfd_=h.resUrl_=null;
m.hide(h.errMsg_);c._DialogLevelManager.hide(h);h.esriIdMgr_.onDialogCancel({resourceUrl:d,serverInfo:e});d=Error("ABORTED");d.code="IdentityManager.2";d.log=!!b.isDebug;a.errback(d)}}),k=h.domNode;h.form_=e.byNode(q.query(".esriIdForm",k)[0]);h.txtUser_=e.byNode(q.query(".esriIdUser",k)[0]);h.txtPwd_=e.byNode(q.query(".esriIdPwd",k)[0]);h.btnSubmit_=e.byNode(q.query(".esriIdSubmit",k)[0]);h.btnCancel_=e.byNode(q.query(".esriIdCancel",k)[0]);h.resLink_=q.query(".resLink",k)[0];h.serverLink_=q.query(".serverLink",
k)[0];h.errMsg_=q.query(".esriErrorMsg",k)[0];h.connect(h.txtUser_,"onKeyPress",h.keypressed_);h.connect(h.txtPwd_,"onKeyPress",h.keypressed_);h.connect(h.btnSubmit_,"onClick",h.execute_);h.connect(h.btnCancel_,"onClick",h.onCancel);h.connect(h,"onCancel",h.cancel_);return h}});p("extend-esri")&&(a.IdentityManagerDialog=a.IdentityManager=n);return n})},"dijit/Dialog":function(){define("require dojo/_base/array dojo/aspect dojo/_base/declare dojo/Deferred dojo/dom dojo/dom-class dojo/dom-geometry dojo/dom-style dojo/_base/fx dojo/i18n dojo/keys dojo/_base/lang dojo/on dojo/ready dojo/sniff dojo/touch dojo/window dojo/dnd/Moveable dojo/dnd/TimedMoveable ./focus ./_base/manager ./_Widget ./_TemplatedMixin ./_CssStateMixin ./form/_FormMixin ./_DialogMixin ./DialogUnderlay ./layout/ContentPane ./layout/utils dojo/text!./templates/Dialog.html ./a11yclick dojo/i18n!./nls/common".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H,E,F,I,X,N){function G(){}var Q=new h;Q.resolve(!0);x=g("dijit._DialogBase"+(k("dojo-bidi")?"_NoBidi":""),[B,H,E,C],{templateString:N,baseClass:"dijitDialog",cssStateNodes:{closeButtonNode:"dijitDialogCloseIcon"},_setTitleAttr:{node:"titleNode",type:"innerHTML"},open:!1,duration:x.defaultDuration,refocus:!0,autofocus:!0,_firstFocusItem:null,_lastFocusItem:null,draggable:!0,_setDraggableAttr:function(a){this._set("draggable",a)},maxRatio:.9,
closable:!0,_setClosableAttr:function(a){this.closeButtonNode.style.display=a?"":"none";this._set("closable",a)},postMixInProperties:function(){var b=a.getLocalization("dijit","common");m.mixin(this,b);this.inherited(arguments)},postCreate:function(){e.set(this.domNode,{display:"none",position:"absolute"});this.ownerDocumentBody.appendChild(this.domNode);this.inherited(arguments);b.after(this,"onExecute",m.hitch(this,"hide"),!0);b.after(this,"onCancel",m.hitch(this,"hide"),!0);w(this.closeButtonNode,
u.press,function(a){a.stopPropagation()});this._modalconnects=[]},onLoad:function(){this.resize();this._position();this.autofocus&&U.isTop(this)&&(this._getFocusItems(),z.focus(this._firstFocusItem));this.inherited(arguments)},focus:function(){this._getFocusItems();z.focus(this._firstFocusItem)},_endDrag:function(){var a=f.position(this.domNode),b=r.getBox(this.ownerDocument);a.y=Math.min(Math.max(a.y,0),b.h-a.h);a.x=Math.min(Math.max(a.x,0),b.w-a.w);this._relativePosition=a;this._position()},_setup:function(){var a=
this.domNode;this.titleBar&&this.draggable?(this._moveable=new (6==k("ie")?v:y)(a,{handle:this.titleBar}),b.after(this._moveable,"onMoveStop",m.hitch(this,"_endDrag"),!0)):l.add(a,"dijitDialogFixed");this.underlayAttrs={dialogId:this.id,"class":n.map(this["class"].split(/\s/),function(a){return a+"_underlay"}).join(" "),_onKeyDown:m.hitch(this,"_onKey"),ownerDocument:this.ownerDocument}},_size:function(){this.resize()},_position:function(){if(!l.contains(this.ownerDocumentBody,"dojoMove")){var a=
this.domNode,b=r.getBox(this.ownerDocument),c=this._relativePosition,d=f.position(a);e.set(a,{left:Math.floor(b.l+(c?Math.min(c.x,b.w-d.w):(b.w-d.w)/2))+"px",top:Math.floor(b.t+(c?Math.min(c.y,b.h-d.h):(b.h-d.h)/2))+"px"})}},_onKey:function(a){if(a.keyCode==d.TAB){this._getFocusItems();var b=a.target;this._firstFocusItem==this._lastFocusItem?(a.stopPropagation(),a.preventDefault()):b==this._firstFocusItem&&a.shiftKey?(z.focus(this._lastFocusItem),a.stopPropagation(),a.preventDefault()):b!=this._lastFocusItem||
a.shiftKey||(z.focus(this._firstFocusItem),a.stopPropagation(),a.preventDefault())}else this.closable&&a.keyCode==d.ESCAPE&&(this.onCancel(),a.stopPropagation(),a.preventDefault())},show:function(){if(this.open)return Q.promise;this._started||this.startup();this._alreadyInitialized||(this._setup(),this._alreadyInitialized=!0);this._fadeOutDeferred&&(this._fadeOutDeferred.cancel(),U.hide(this));var a=r.get(this.ownerDocument);this._modalconnects.push(w(a,"scroll",m.hitch(this,"resize",null)));this._modalconnects.push(w(this.domNode,
"keydown",m.hitch(this,"_onKey")));e.set(this.domNode,{opacity:0,display:""});this._set("open",!0);this._onShow();this.resize();this._position();var b;this._fadeInDeferred=new h(m.hitch(this,function(){b.stop();delete this._fadeInDeferred}));this._fadeInDeferred.then(void 0,G);a=this._fadeInDeferred.promise;b=c.fadeIn({node:this.domNode,duration:this.duration,beforeBegin:m.hitch(this,function(){U.show(this,this.underlayAttrs)}),onEnd:m.hitch(this,function(){this.autofocus&&U.isTop(this)&&(this._getFocusItems(),
z.focus(this._firstFocusItem));this._fadeInDeferred.resolve(!0);delete this._fadeInDeferred})}).play();return a},hide:function(){if(!this._alreadyInitialized||!this.open)return Q.promise;this._fadeInDeferred&&this._fadeInDeferred.cancel();var a;this._fadeOutDeferred=new h(m.hitch(this,function(){a.stop();delete this._fadeOutDeferred}));this._fadeOutDeferred.then(void 0,G);this._fadeOutDeferred.then(m.hitch(this,"onHide"));var b=this._fadeOutDeferred.promise;a=c.fadeOut({node:this.domNode,duration:this.duration,
onEnd:m.hitch(this,function(){this.domNode.style.display="none";U.hide(this);this._fadeOutDeferred.resolve(!0);delete this._fadeOutDeferred})}).play();this._scrollConnected&&(this._scrollConnected=!1);for(var d;d=this._modalconnects.pop();)d.remove();this._relativePosition&&delete this._relativePosition;this._set("open",!1);return b},resize:function(a){if("none"!=this.domNode.style.display){this._checkIfSingleChild();if(!a){this._shrunk&&(this._singleChild&&"undefined"!=typeof this._singleChildOriginalStyle&&
(this._singleChild.domNode.style.cssText=this._singleChildOriginalStyle,delete this._singleChildOriginalStyle),n.forEach([this.domNode,this.containerNode,this.titleBar,this.actionBarNode],function(a){a&&e.set(a,{position:"static",width:"auto",height:"auto"})}),this.domNode.style.position="absolute");var b=r.getBox(this.ownerDocument);b.w*=this.maxRatio;b.h*=this.maxRatio;var c=f.position(this.domNode);c.w>=b.w||c.h>=b.h?(a={w:Math.min(c.w,b.w),h:Math.min(c.h,b.h)},this._shrunk=!0):this._shrunk=!1}if(a){f.setMarginBox(this.domNode,
a);b=[];this.titleBar&&b.push({domNode:this.titleBar,region:"top"});this.actionBarNode&&b.push({domNode:this.actionBarNode,region:"bottom"});c={domNode:this.containerNode,region:"center"};b.push(c);var d=X.marginBox2contentBox(this.domNode,a);X.layoutChildren(this.domNode,d,b);this._singleChild?(b=X.marginBox2contentBox(this.containerNode,c),this._singleChild.resize({w:b.w,h:b.h})):(this.containerNode.style.overflow="auto",this._layoutChildren())}else this._layoutChildren();k("touch")||a||this._position()}},
_layoutChildren:function(){n.forEach(this.getChildren(),function(a){a.resize&&a.resize()})},destroy:function(){this._fadeInDeferred&&this._fadeInDeferred.cancel();this._fadeOutDeferred&&this._fadeOutDeferred.cancel();this._moveable&&this._moveable.destroy();for(var a;a=this._modalconnects.pop();)a.remove();U.hide(this);this.inherited(arguments)}});k("dojo-bidi")&&(x=g("dijit._DialogBase",x,{_setTitleAttr:function(a){this._set("title",a);this.titleNode.innerHTML=a;this.applyTextDir(this.titleNode)},
_setTextDirAttr:function(a){this._created&&this.textDir!=a&&(this._set("textDir",a),this.set("title",this.title))}}));var M=g("dijit.Dialog",[I,x],{});M._DialogBase=x;var U=M._DialogLevelManager={_beginZIndex:950,show:function(a,b){O[O.length-1].focus=z.curNode;var c=O[O.length-1].dialog?O[O.length-1].zIndex+2:M._DialogLevelManager._beginZIndex;e.set(a.domNode,"zIndex",c);F.show(b,c-1);O.push({dialog:a,underlayAttrs:b,zIndex:c})},hide:function(a){if(O[O.length-1].dialog==a){O.pop();var b=O[O.length-
1];1==O.length?F.hide():F.show(b.underlayAttrs,b.zIndex-1);if(a.refocus&&(a=b.focus,!b.dialog||a&&p.isDescendant(a,b.dialog.domNode)||(b.dialog._getFocusItems(),a=b.dialog._firstFocusItem),a))try{a.focus()}catch(P){}}else b=n.indexOf(n.map(O,function(a){return a.dialog}),a),-1!=b&&O.splice(b,1)},isTop:function(a){return O[O.length-1].dialog==a}},O=M._dialogStack=[{dialog:null,focus:null,underlayAttrs:null}];z.watch("curNode",function(a,b,c){a=O[O.length-1].dialog;if(c&&a&&!a._fadeOutDeferred&&c.ownerDocument==
a.ownerDocument){do if(c==a.domNode||l.contains(c,"dijitPopup"))return;while(c=c.parentNode);a.focus()}});k("dijit-legacy-requires")&&t(0,function(){q(["dijit/TooltipDialog"])});return M})},"dojo/dnd/Moveable":function(){define("../_base/array ../_base/declare ../_base/lang ../dom ../dom-class ../Evented ../has ../on ../topic ../touch ./common ./Mover ../_base/window".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m){function w(a,b){"touchAction"in document.body.style?t="touchAction":"msTouchAction"in
document.body.style&&(t="msTouchAction");k=function(a,b){a.style[t]=b};k(a,b)}var t,k=function(){};l("touch-action")&&(k=w);return n("dojo.dnd.Moveable",[p],{handle:"",delay:0,skip:!1,constructor:function(a,e){this.node=g.byId(a);k(this.node,"none");e||(e={});this.handle=e.handle?g.byId(e.handle):null;this.handle||(this.handle=this.node);this.delay=0<e.delay?e.delay:0;this.skip=e.skip;this.mover=e.mover?e.mover:d;this.events=[f(this.handle,c.press,b.hitch(this,"onMouseDown")),f(this.handle,"dragstart",
b.hitch(this,"onSelectStart")),f(this.handle,"selectstart",b.hitch(this,"onSelectStart"))]},markupFactory:function(a,b,c){return new c(b,a)},destroy:function(){q.forEach(this.events,function(a){a.remove()});k(this.node,"");this.events=this.node=this.handle=null},onMouseDown:function(d){if(!this.skip||!a.isFormElement(d)){if(this.delay)this.events.push(f(this.handle,c.move,b.hitch(this,"onMouseMove")),f(this.handle.ownerDocument,c.release,b.hitch(this,"onMouseUp"))),this._lastX=d.pageX,this._lastY=
d.pageY;else this.onDragDetected(d);d.stopPropagation();d.preventDefault()}},onMouseMove:function(a){if(Math.abs(a.pageX-this._lastX)>this.delay||Math.abs(a.pageY-this._lastY)>this.delay)this.onMouseUp(a),this.onDragDetected(a);a.stopPropagation();a.preventDefault()},onMouseUp:function(a){for(var b=0;2>b;++b)this.events.pop().remove();a.stopPropagation();a.preventDefault()},onSelectStart:function(b){this.skip&&a.isFormElement(b)||(b.stopPropagation(),b.preventDefault())},onDragDetected:function(a){new this.mover(this.node,
a,this)},onMoveStart:function(a){e.publish("/dnd/move/start",a);h.add(m.body(),"dojoMove");h.add(this.node,"dojoMoveItem")},onMoveStop:function(a){e.publish("/dnd/move/stop",a);h.remove(m.body(),"dojoMove");h.remove(this.node,"dojoMoveItem")},onFirstMove:function(){},onMove:function(a,b){this.onMoving(a,b);var c=a.node.style;c.left=b.l+"px";c.top=b.t+"px";this.onMoved(a,b)},onMoving:function(){},onMoved:function(){}})})},"dojo/dnd/common":function(){define(["../sniff","../_base/kernel","../_base/lang",
"../dom"],function(q,n,b,g){var h=b.getObject("dojo.dnd",!0);h.getCopyKeyState=function(b){return b[q("mac")?"metaKey":"ctrlKey"]};h._uniqueId=0;h.getUniqueId=function(){var b;do b=n._scopeName+"Unique"+ ++h._uniqueId;while(g.byId(b));return b};h._empty={};h.isFormElement=function(b){b=b.target;3==b.nodeType&&(b=b.parentNode);return 0<=" a button textarea input select option ".indexOf(" "+b.tagName.toLowerCase()+" ")};return h})},"dojo/dnd/Mover":function(){define("../_base/array ../_base/declare ../_base/lang ../sniff ../_base/window ../dom ../dom-geometry ../dom-style ../Evented ../on ../touch ./common ./autoscroll".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){return n("dojo.dnd.Mover",[e],{constructor:function(d,e,f){function g(a){a.preventDefault();a.stopPropagation()}this.node=p.byId(d);this.marginBox={l:e.pageX,t:e.pageY};this.mouseButton=e.button;e=this.host=f;d=d.ownerDocument;this.events=[c(d,a.move,b.hitch(this,"onFirstMove")),c(d,a.move,b.hitch(this,"onMouseMove")),c(d,a.release,b.hitch(this,"onMouseUp")),c(d,"dragstart",g),c(d.body,"selectstart",g)];m.autoScrollStart(d);if(e&&e.onMoveStart)e.onMoveStart(this)},
onMouseMove:function(a){m.autoScroll(a);var b=this.marginBox;this.host.onMove(this,{l:b.l+a.pageX,t:b.t+a.pageY},a);a.preventDefault();a.stopPropagation()},onMouseUp:function(a){(g("webkit")&&g("mac")&&2==this.mouseButton?0==a.button:this.mouseButton==a.button)&&this.destroy();a.preventDefault();a.stopPropagation()},onFirstMove:function(a){var b=this.node.style,c,d=this.host;switch(b.position){case "relative":case "absolute":c=Math.round(parseFloat(b.left))||0;b=Math.round(parseFloat(b.top))||0;break;
default:b.position="absolute";b=l.getMarginBox(this.node);c=h.doc.body;var e=f.getComputedStyle(c),g=l.getMarginBox(c,e),e=l.getContentBox(c,e);c=b.l-(e.l-g.l);b=b.t-(e.t-g.t)}this.marginBox.l=c-this.marginBox.l;this.marginBox.t=b-this.marginBox.t;if(d&&d.onFirstMove)d.onFirstMove(this,a);this.events.shift().remove()},destroy:function(){q.forEach(this.events,function(a){a.remove()});var a=this.host;if(a&&a.onMoveStop)a.onMoveStop(this);this.events=this.node=this.host=null}})})},"dojo/dnd/autoscroll":function(){define("../_base/lang ../sniff ../_base/window ../dom-geometry ../dom-style ../window".split(" "),
function(q,n,b,g,h,p){var l={};q.setObject("dojo.dnd.autoscroll",l);l.getViewport=p.getBox;l.V_TRIGGER_AUTOSCROLL=32;l.H_TRIGGER_AUTOSCROLL=32;l.V_AUTOSCROLL_VALUE=16;l.H_AUTOSCROLL_VALUE=16;var f,e=b.doc,c=Infinity,a=Infinity;l.autoScrollStart=function(d){e=d;f=p.getBox(e);d=b.body(e).parentNode;c=Math.max(d.scrollHeight-f.h,0);a=Math.max(d.scrollWidth-f.w,0)};l.autoScroll=function(d){var g=f||p.getBox(e),h=b.body(e).parentNode,n=0,k=0;d.clientX<l.H_TRIGGER_AUTOSCROLL?n=-l.H_AUTOSCROLL_VALUE:d.clientX>
g.w-l.H_TRIGGER_AUTOSCROLL&&(n=Math.min(l.H_AUTOSCROLL_VALUE,a-h.scrollLeft));d.clientY<l.V_TRIGGER_AUTOSCROLL?k=-l.V_AUTOSCROLL_VALUE:d.clientY>g.h-l.V_TRIGGER_AUTOSCROLL&&(k=Math.min(l.V_AUTOSCROLL_VALUE,c-h.scrollTop));window.scrollBy(n,k)};l._validNodes={div:1,p:1,td:1};l._validOverflow={auto:1,scroll:1};l.autoScrollNodes=function(a){for(var c,d,e,f,p,q=0,y=0,v=a.target;v;){if(1==v.nodeType&&v.tagName.toLowerCase()in l._validNodes){e=h.getComputedStyle(v);p=e.overflowX.toLowerCase()in l._validOverflow;
f=e.overflowY.toLowerCase()in l._validOverflow;if(p||f)c=g.getContentBox(v,e),d=g.position(v,!0);if(p){e=Math.min(l.H_TRIGGER_AUTOSCROLL,c.w/2);p=a.pageX-d.x;if(n("webkit")||n("opera"))p+=b.body().scrollLeft;q=0;0<p&&p<c.w&&(p<e?q=-e:p>c.w-e&&(q=e),v.scrollLeft+=q)}if(f){f=Math.min(l.V_TRIGGER_AUTOSCROLL,c.h/2);e=a.pageY-d.y;if(n("webkit")||n("opera"))e+=b.body().scrollTop;y=0;0<e&&e<c.h&&(e<f?y=-f:e>c.h-f&&(y=f),v.scrollTop+=y)}if(q||y)return}try{v=v.parentNode}catch(z){v=null}}l.autoScroll(a)};
return l})},"dojo/dnd/TimedMoveable":function(){define(["../_base/declare","./Moveable"],function(q,n){var b=n.prototype.onMove;return q("dojo.dnd.TimedMoveable",n,{timeout:40,constructor:function(b,h){h||(h={});h.timeout&&"number"==typeof h.timeout&&0<=h.timeout&&(this.timeout=h.timeout)},onMoveStop:function(g){g._timer&&(clearTimeout(g._timer),b.call(this,g,g._leftTop));n.prototype.onMoveStop.apply(this,arguments)},onMove:function(g,h){g._leftTop=h;if(!g._timer){var p=this;g._timer=setTimeout(function(){g._timer=
null;b.call(p,g,g._leftTop)},this.timeout)}}})})},"dijit/DialogUnderlay":function(){define("dojo/_base/declare dojo/_base/lang dojo/aspect dojo/dom-attr dojo/dom-style dojo/on dojo/window ./_Widget ./_TemplatedMixin ./BackgroundIframe ./Viewport ./main".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d){var m=q("dijit.DialogUnderlay",[f,e],{templateString:"\x3cdiv class\x3d'dijitDialogUnderlayWrapper'\x3e\x3cdiv class\x3d'dijitDialogUnderlay' tabIndex\x3d'-1' data-dojo-attach-point\x3d'node'\x3e\x3c/div\x3e\x3c/div\x3e",
dialogId:"","class":"",_modalConnects:[],_setDialogIdAttr:function(a){g.set(this.node,"id",a+"_underlay");this._set("dialogId",a)},_setClassAttr:function(a){this.node.className="dijitDialogUnderlay "+a;this._set("class",a)},postCreate:function(){this.ownerDocumentBody.appendChild(this.domNode);this.own(p(this.domNode,"keydown",n.hitch(this,"_onKeyDown")));this.inherited(arguments)},layout:function(){var a=this.node.style,b=this.domNode.style;b.display="none";var c=l.getBox(this.ownerDocument);b.top=
c.t+"px";b.left=c.l+"px";a.width=c.w+"px";a.height=c.h+"px";b.display="block"},show:function(){this.domNode.style.display="block";this.open=!0;this.layout();this.bgIframe=new c(this.domNode);var b=l.get(this.ownerDocument);this._modalConnects=[a.on("resize",n.hitch(this,"layout")),p(b,"scroll",n.hitch(this,"layout"))]},hide:function(){this.bgIframe.destroy();delete this.bgIframe;for(this.domNode.style.display="none";this._modalConnects.length;)this._modalConnects.pop().remove();this.open=!1},destroy:function(){for(;this._modalConnects.length;)this._modalConnects.pop().remove();
this.inherited(arguments)},_onKeyDown:function(){}});m.show=function(a,b){var c=m._singleton;!c||c._destroyed?c=d._underlay=m._singleton=new m(a):a&&c.set(a);h.set(c.domNode,"zIndex",b);c.open||c.show()};m.hide=function(){var a=m._singleton;a&&!a._destroyed&&a.hide()};return m})},"esri/Credential":function(){define(["dojo/_base/declare","dojo/has","./kernel","./IdentityManagerBase"],function(q,n,b,g){q=q(g.Credential,{});n("extend-esri")&&(b.Credential=q);return q})},"esri/IdentityManagerBase":function(){define("dojo/_base/declare dojo/_base/config dojo/_base/lang dojo/_base/array dojo/_base/Deferred dojo/_base/json dojo/_base/url dojo/sniff dojo/cookie dojo/io-query dojo/on dojo/regexp ./kernel ./config ./lang ./ServerInfo ./urlUtils ./deferredUtils ./request ./Evented ./OAuthCredential ./arcgis/OAuthInfo".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x){var A={},B=function(a){var b=(new l(a.owningSystemUrl)).host;a=(new l(a.server)).host;var c=/.+\.arcgis\.com$/i;return c.test(b)&&c.test(a)},C=function(a,b){return!!(B(a)&&b&&g.some(b,function(b){return b.test(a.server)}))},H,E=q(v,{declaredClass:"esri.IdentityManagerBase",constructor:function(){this._portalConfig=b.getObject("esriGeowConfig");this.serverInfos=[];this.oAuthInfos=[];this.credentials=[];this._soReqs=[];this._xoReqs=[];this._portals=
[];this._getOAuthHash();a(window,"pageshow",b.hitch(this,this._pageShowHandler))},defaultOAuthInfo:null,defaultTokenValidity:60,tokenValidity:null,signInPage:null,useSignInPage:!0,normalizeWebTierAuth:!1,_busy:null,_rejectOnPersistedPageShow:!1,_oAuthHash:null,_gwTokenUrl:"/sharing/generateToken",_agsRest:"/rest/services",_agsPortal:/\/sharing(\/|$)/i,_agsAdmin:/https?:\/\/[^\/]+\/[^\/]+\/admin\/?(\/.*)?$/i,_adminSvcs:/\/admin\/services(\/|$)/i,_agolSuffix:".arcgis.com",_gwDomains:[{regex:/https?:\/\/www\.arcgis\.com/i,
tokenServiceUrl:"https://www.arcgis.com/sharing/generateToken"},{regex:/https?:\/\/dev\.arcgis\.com/i,tokenServiceUrl:"https://dev.arcgis.com/sharing/generateToken"},{regex:/https?:\/\/.*dev[^.]*\.arcgis\.com/i,tokenServiceUrl:"https://devext.arcgis.com/sharing/generateToken"},{regex:/https?:\/\/.*qa[^.]*\.arcgis\.com/i,tokenServiceUrl:"https://qaext.arcgis.com/sharing/generateToken"},{regex:/https?:\/\/.*.arcgis\.com/i,tokenServiceUrl:"https://www.arcgis.com/sharing/generateToken"}],_legacyFed:[],
_regexSDirUrl:/http.+\/rest\/services\/?/ig,_regexServerType:/(\/(MapServer|GeocodeServer|GPServer|GeometryServer|ImageServer|NAServer|FeatureServer|GeoDataServer|GlobeServer|MobileServer|GeoenrichmentServer|VectorTileServer)).*/ig,_gwUser:/http.+\/users\/([^\/]+)\/?.*/i,_gwItem:/http.+\/items\/([^\/]+)\/?.*/i,_gwGroup:/http.+\/groups\/([^\/]+)\/?.*/i,_errorCodes:[499,498,403,401],_rePortalTokenSvc:/\/sharing(\/rest)?\/generatetoken/i,_publicUrls:[/\/arcgis\/tokens/i,/\/sharing(\/rest)?\/generatetoken/i,
/\/rest\/info/i],_createDefaultOAuthInfo:!0,_hasTestedIfAppIsOnPortal:!1,registerServers:function(a){var b=this.serverInfos;b?(a=g.filter(a,function(a){return!this.findServerInfo(a.server)},this),this.serverInfos=b.concat(a)):this.serverInfos=a;g.forEach(a,function(a){a.owningSystemUrl&&this._portals.push(a.owningSystemUrl);if(a.hasPortal){this._portals.push(a.server);var b=w.defaults.io.corsEnabledServers,c=this._getOrigin(a.tokenServiceUrl);u.canUseXhr(a.server)||b.push(a.server.replace(/^https?:\/\//i,
""));u.canUseXhr(c)||b.push(c.replace(/^https?:\/\//i,""))}},this)},registerOAuthInfos:function(a){var b=this.oAuthInfos;b?(a=g.filter(a,function(a){return!this.findOAuthInfo(a.portalUrl)},this),this.oAuthInfos=b.concat(a)):this.oAuthInfos=a},registerToken:function(a){var c=this._sanitizeUrl(a.server),d=this.findServerInfo(c),e=!0,f;d||(d=new k,d.server=this._getServerInstanceRoot(c),d.tokenServiceUrl=this._getTokenSvcUrl(c),d.hasPortal=!0,this.registerServers([d]));(f=this.findCredential(c,a.userId))?
(b.mixin(f,a),e=!1):(f=new H({userId:a.userId,server:d.server,token:a.token,expires:a.expires,ssl:a.ssl,scope:this._isServerRsrc(c)?"server":"portal"}),f.resources=[c],this.credentials.push(f));f.onTokenChange(!1);e||f.refreshServerTokens()},toJson:function(){return t.fixJson({serverInfos:g.map(this.serverInfos,function(a){return a.toJson()}),oAuthInfos:g.map(this.oAuthInfos,function(a){return a.toJson()}),credentials:g.map(this.credentials,function(a){return a.toJson()})})},initialize:function(a){if(a){b.isString(a)&&
(a=p.fromJson(a));var c=a.serverInfos,d=a.oAuthInfos;a=a.credentials;if(c){var e=[];g.forEach(c,function(a){a.server&&a.tokenServiceUrl&&e.push(a.declaredClass?a:new k(a))});e.length&&this.registerServers(e)}if(d){var f=[];g.forEach(d,function(a){a.appId&&f.push(a.declaredClass?a:new x(a))});f.length&&this.registerOAuthInfos(f)}a&&g.forEach(a,function(a){a.userId&&a.server&&a.token&&a.expires&&a.expires>(new Date).getTime()&&(a=a.declaredClass?a:new H(a),a.onTokenChange(),this.credentials.push(a))},
this)}},findServerInfo:function(a){var b;a=this._sanitizeUrl(a);g.some(this.serverInfos,function(c){this._hasSameServerInstance(c.server,a)&&(b=c);return!!b},this);return b},findOAuthInfo:function(a){var b;a=this._sanitizeUrl(a);g.some(this.oAuthInfos,function(c){this._hasSameServerInstance(c.portalUrl,a)&&(b=c);return!!b},this);return b},findCredential:function(a,b){var c,d;a=this._sanitizeUrl(a);d=this._isServerRsrc(a)?"server":"portal";b?g.some(this.credentials,function(e){this._hasSameServerInstance(e.server,
a)&&b===e.userId&&e.scope===d&&(c=e);return!!c},this):g.some(this.credentials,function(b){this._hasSameServerInstance(b.server,a)&&-1!==this._getIdenticalSvcIdx(a,b)&&b.scope===d&&(c=b);return!!c},this);return c},getCredential:function(a,c){var d,f,g=!0;t.isDefined(c)&&(b.isObject(c)?(d=!!c.token,f=c.error,g=!1!==c.prompt):d=c);a=this._sanitizeUrl(a);var m=new h(r._dfdCanceller),l=this._isAdminResource(a),p=d&&this._doPortalSignIn(a)?this._getEsriAuthCookie():null;if((d=d?this.findCredential(a):null)&&
f&&498===f.code)d.destroy(),p&&p.token===c.token&&e("esri_auth",null,{expires:-1,path:"/",domain:document.domain});else if(p||d)return a=Error("You are currently signed in as: '"+(p&&p.email||d&&d.userId)+"'. You do not have access to this resource: "+a),a.code="IdentityManagerBase.1",a.httpCode=f&&f.httpCode,a.messageCode=f?f.messageCode:null,a.subcode=f?f.subcode:null,a.details=f?f.details:null,a.log=!!n.isDebug,m.errback(a),m;if(f=this._findCredential(a,c))return m.callback(f),m;f=this.findServerInfo(a);
if(f)!f.hasServer&&this._isServerRsrc(a)&&(f._restInfoDfd=this._getTokenSvcUrl(a,!0),f.hasServer=!0);else{p=this._getTokenSvcUrl(a);if(!p)return a=Error("Unknown resource - could not find token service endpoint."),a.code="IdentityManagerBase.2",a.log=!!n.isDebug,m.errback(a),m;f=new k;f.server=this._getServerInstanceRoot(a);b.isString(p)?(f.tokenServiceUrl=p,f.hasPortal=!0):(f._restInfoDfd=p,f.hasServer=!0);this.registerServers([f])}g&&f.hasPortal&&void 0===f._selfReq&&!this._findOAuthInfo(a)&&(f._selfReq=
{owningTenant:c&&c.owningTenant,selfDfd:this._getPortalSelf(f.tokenServiceUrl.replace(this._rePortalTokenSvc,"/sharing/rest/portals/self"),a)});return this._enqueue(a,f,c,m,l)},getResourceName:function(a){return this._isRESTService(a)?a.replace(this._regexSDirUrl,"").replace(this._regexServerType,"")||"":this._gwUser.test(a)&&a.replace(this._gwUser,"$1")||this._gwItem.test(a)&&a.replace(this._gwItem,"$1")||this._gwGroup.test(a)&&a.replace(this._gwGroup,"$1")||""},generateToken:function(a,c,d){var e,
f,g,k,h,p,q=this._rePortalTokenSvc.test(a.tokenServiceUrl),r=new l(window.location.href.toLowerCase()),t=this._getEsriAuthCookie(),x,B=!c;k=a.shortLivedTokenValidity;var v;c&&(v=m.id.tokenValidity||k||m.id.defaultTokenValidity,v>k&&(v=k));d&&(e=d.isAdmin,f=d.serverUrl,g=d.token,p=d.ssl,a.customParameters=d.customParameters);e?k=a.adminTokenServiceUrl:(k=a.tokenServiceUrl,h=new l(k.toLowerCase()),t&&(x=(x=t.auth_tier)&&x.toLowerCase()),("web"===x||a.webTierAuth)&&d&&d.serverUrl&&!p&&"http"===r.scheme&&
(u.hasSameOrigin(r.uri,k,!0)||"https"===h.scheme&&r.host===h.host&&"7080"===r.port&&"7443"===h.port)&&(k=k.replace(/^https:/i,"http:").replace(/:7443/i,":7080")),B&&q&&(k=k.replace(/\/rest/i,"")));e=b.mixin({url:k,content:b.mixin({request:"getToken",username:c&&c.username,password:c&&c.password,serverUrl:f,token:g,expiration:v,referer:e||q?window.location.host:null,client:e?"referer":null,f:"json"},a.customParameters),handleAs:"json",callbackParamName:B?"callback":void 0},d&&d.ioArgs);d={usePost:!B,
disableIdentityLookup:!0,useProxy:this._useProxy(a,d)};q||(e.withCredentials=!1);q=y(e,d);q.addCallback(function(b){if(!b||!b.token)return b=Error("Unable to generate token"),b.code="IdentityManagerBase.3",b.log=!!n.isDebug,b;var d=a.server;A[d]||(A[d]={});c&&(A[d][c.username]=c.password);b.validity=v;return b});q.addErrback(function(a){});return q},isBusy:function(){return!!this._busy},checkSignInStatus:function(a){var b=new h;this.getCredential(a,{prompt:!1}).then(function(a){return a.token?y({url:a.server+
("portal"===a.scope?"/sharing/rest":"/rest/services"),content:{f:"json",token:a.token},callbackParamName:"callback"},{disableIdentityLookup:!0}).then(function(){return a}).otherwise(function(b){if(498===b.code)throw a.destroy(),b=Error("User is not signed in."),b.code="IdentityManagerBase.6",b.log=!!n.isDebug,b;return a}):a}).then(function(a){b.resolve(a)}).otherwise(function(a){b.reject(a)});return b},setRedirectionHandler:function(a){this._redirectFunc=a},setProtocolErrorHandler:function(a){this._protocolFunc=
a},signIn:function(){},oAuthSignIn:function(){},onCredentialCreate:function(){},onCredentialsDestroy:function(){},destroyCredentials:function(){if(this.credentials){var a=this.credentials.slice();g.forEach(a,function(a){a.destroy()})}this.onCredentialsDestroy()},_getOAuthHash:function(){var a=window.location.hash;if(a){"#"===a.charAt(0)&&(a=a.substring(1));var a=c.queryToObject(a),b=!1;a.access_token&&a.expires_in&&a.state&&a.hasOwnProperty("username")?(a.state=p.fromJson(a.state),this._oAuthHash=
a,b=!0):a.error&&a.error_description&&(console.log("IdentityManager OAuth Error: ",a.error," - ",a.error_description),"access_denied"===a.error&&(b=!0));b&&(!f("ie")||8<f("ie"))&&(window.location.hash="")}},_pageShowHandler:function(a){a.persisted&&this.isBusy()&&this._rejectOnPersistedPageShow&&(a=Error("ABORTED"),a.code="IdentityManager.2",a.log=!!n.isDebug,this._errbackFunc(a))},_findCredential:function(a,b){var c=-1,d,e,f,k=b&&b.token;b=b&&b.resource;var h=this._isServerRsrc(a)?"server":"portal",
m=g.filter(this.credentials,function(b){return this._hasSameServerInstance(b.server,a)&&b.scope===h},this);a=b||a;if(m.length)if(1===m.length)if(b=m[0],e=(d=(f=this.findServerInfo(b.server))&&f.owningSystemUrl)&&this.findCredential(d,b.userId),c=this._getIdenticalSvcIdx(a,b),k)-1!==c&&(b.resources.splice(c,1),this._removeResource(a,e));else return-1===c&&b.resources.push(a),this._addResource(a,e),b;else{var l,p;g.some(m,function(b){p=this._getIdenticalSvcIdx(a,b);return-1!==p?(l=b,e=(d=(f=this.findServerInfo(l.server))&&
f.owningSystemUrl)&&this.findCredential(d,l.userId),c=p,!0):!1},this);if(k)l&&(l.resources.splice(c,1),this._removeResource(a,e));else if(l)return this._addResource(a,e),l}},_findOAuthInfo:function(a){var b=this.findOAuthInfo(a);b||g.some(this.oAuthInfos,function(c){this._isIdProvider(c.portalUrl,a)&&(b=c);return!!b},this);return b},_addResource:function(a,b){b&&-1===this._getIdenticalSvcIdx(a,b)&&b.resources.push(a)},_removeResource:function(a,b){var c=-1;b&&(c=this._getIdenticalSvcIdx(a,b),-1<c&&
b.resources.splice(c,1))},_useProxy:function(a,b){return b&&b.isAdmin&&!u.hasSameOrigin(a.adminTokenServiceUrl,window.location.href)||!this._isPortalDomain(a.tokenServiceUrl)&&10.1==a.currentVersion&&!u.hasSameOrigin(a.tokenServiceUrl,window.location.href)},_getOrigin:function(a){a=new l(a);return a.scheme+"://"+a.host+(t.isDefined(a.port)?":"+a.port:"")},_getServerInstanceRoot:function(a){var b=a.toLowerCase(),c=b.indexOf(this._agsRest);-1===c&&this._isAdminResource(a)&&(c=b.indexOf("/admin"));-1===
c&&(c=b.indexOf("/sharing"));-1===c&&"/"===b.substr(-1)&&(c=b.length-1);return-1<c?a.substring(0,c):a},_hasSameServerInstance:function(a,b){"/"===a.substr(-1)&&(a=a.slice(0,-1));a=a.toLowerCase();b=this._getServerInstanceRoot(b).toLowerCase();a=this._normalizeAGOLorgDomain(a);b=this._normalizeAGOLorgDomain(b);a=a.substr(a.indexOf(":"));b=b.substr(b.indexOf(":"));return a===b},_normalizeAGOLorgDomain:function(a){var b=/^https?:\/\/.+\.maps\.arcgis\.com/i,c=/^https?:\/\/.+\.mapsdevext\.arcgis\.com/i,
d=/^https?:\/\/.+\.mapsqa\.arcgis\.com/i;b.test(a)?a=a.replace(b,"https://www.arcgis.com"):c.test(a)?a=a.replace(c,"https://devext.arcgis.com"):d.test(a)&&(a=a.replace(d,"https://qaext.arcgis.com"));return a},_sanitizeUrl:function(a){var b=(w.defaults.io.proxyUrl||"").toLowerCase(),c=b?a.toLowerCase().indexOf(b+"?"):-1;-1!==c&&(a=a.substring(c+b.length+1));a=u.normalize(a);return u.urlToObject(a).path},_isRESTService:function(a){return-1<a.indexOf(this._agsRest)},_isAdminResource:function(a){return this._agsAdmin.test(a)||
this._adminSvcs.test(a)},_isServerRsrc:function(a){return this._isRESTService(a)||this._isAdminResource(a)},_isIdenticalService:function(a,b){var c;this._isRESTService(a)&&this._isRESTService(b)?(a=this._getSuffix(a).toLowerCase(),b=this._getSuffix(b).toLowerCase(),c=a===b,c||(c=/(.*)\/(MapServer|FeatureServer).*/ig,c=a.replace(c,"$1")===b.replace(c,"$1"))):this._isAdminResource(a)&&this._isAdminResource(b)?c=!0:this._isServerRsrc(a)||this._isServerRsrc(b)||!this._isPortalDomain(a)||(c=!0);return c},
_isPortalDomain:function(a){a=a.toLowerCase();var c=(new l(a)).authority,d=this._portalConfig,e=-1!==c.indexOf(this._agolSuffix);!e&&d&&(e=this._hasSameServerInstance(this._getServerInstanceRoot(d.restBaseUrl),a));e||(!this._arcgisUrl&&(d=b.getObject("esri.arcgis.utils.arcgisUrl"))&&(this._arcgisUrl=(new l(d)).authority),this._arcgisUrl&&(e=this._arcgisUrl.toLowerCase()===c));e||(e=g.some(this._portals,function(b){return this._hasSameServerInstance(b,a)},this));return e=e||this._agsPortal.test(a)},
_isIdProvider:function(a,b){var c=-1,d=-1;g.forEach(this._gwDomains,function(e,f){-1===c&&e.regex.test(a)&&(c=f);-1===d&&e.regex.test(b)&&(d=f)});var e=!1;if(-1<c&&-1<d)if(0===c||4===c){if(0===d||4===d)e=!0}else if(1===c){if(1===d||2===d)e=!0}else 2===c?2===d&&(e=!0):3===c&&3===d&&(e=!0);if(!e){var f=this.findServerInfo(b),k=f&&f.owningSystemUrl;k&&B(f)&&this._isPortalDomain(k)&&this._isIdProvider(a,k)&&(e=!0)}return e},_isPublic:function(a){a=this._sanitizeUrl(a);return g.some(this._publicUrls,function(b){return b.test(a)})},
_getIdenticalSvcIdx:function(a,b){var c=-1;g.some(b.resources,function(b,d){return this._isIdenticalService(a,b)?(c=d,!0):!1},this);return c},_getSuffix:function(a){return a.replace(this._regexSDirUrl,"").replace(this._regexServerType,"$1")},_getTokenSvcUrl:function(a){var b,c;if((b=this._isRESTService(a))||this._isAdminResource(a))return c=a.toLowerCase().indexOf(b?this._agsRest:"/admin/"),b=a.substring(0,c)+"/admin/generateToken",a=a.substring(0,c)+"/rest/info",c=y({url:a,content:{f:"json"},handleAs:"json",
callbackParamName:"callback"}),c.adminUrl_=b,c;if(this._isPortalDomain(a)){var d="";g.some(this._gwDomains,function(b){b.regex.test(a)&&(d=b.tokenServiceUrl);return!!d});d||g.some(this._portals,function(b){this._hasSameServerInstance(b,a)&&(d=b+this._gwTokenUrl);return!!d},this);d||(c=a.toLowerCase().indexOf("/sharing"),-1!==c&&(d=a.substring(0,c)+this._gwTokenUrl));d||(d=this._getOrigin(a)+this._gwTokenUrl);d&&(b=(new l(a)).port,/^http:\/\//i.test(a)&&"7080"===b&&(d=d.replace(/:7080/i,":7443")),
d=d.replace(/http:/i,"https:"));return d}if(-1!==a.toLowerCase().indexOf("premium.arcgisonline.com"))return"https://premium.arcgisonline.com/server/tokens"},_getPortalSelf:function(a,b){"https:"===window.location.protocol?a=a.replace(/^http:/i,"https:").replace(/:7080/i,":7443"):/^http:/i.test(b)&&(a=a.replace(/^https:/i,"http:").replace(/:7443/i,":7080"));return y({url:a,content:{f:"json"},handleAs:"json",callbackParamName:"callback"},{crossOrigin:!1,disableIdentityLookup:!0})},_hasPortalSession:function(){return!!this._getEsriAuthCookie()},
_getEsriAuthCookie:function(){var a=null;if(e.isSupported()){var b=this._getAllCookies("esri_auth"),c;for(c=0;c<b.length;c++){var d=p.fromJson(b[c]);if(d.portalApp){a=d;break}}}a&&(b=null,a.expires&&("number"===typeof a.expires?b=a.expires:"string"===typeof a.expires&&(b=Date.parse(a.expires)),isNaN(b)&&(b=null),a.expires=b),b&&b<(new Date).getTime()&&(a=null));return a},_getAllCookies:function(a){var b=[],c=document.cookie.match(new RegExp("(?:^|; )"+d.escapeString(a)+"\x3d([^;]*)","g"));if(c)for(a=
0;a<c.length;a++){var e=c[a],f=e.indexOf("\x3d");-1<f&&(e=e.substring(f+1),b.push(decodeURIComponent(e)))}return b},_doPortalSignIn:function(a){if(e.isSupported()){var b=this._getEsriAuthCookie(),c=this._portalConfig,d=window.location.href,f=this.findServerInfo(a);if(this.useSignInPage&&(c||this._isPortalDomain(d)||b)&&(f?f.hasPortal||f.owningSystemUrl&&this._isPortalDomain(f.owningSystemUrl):this._isPortalDomain(a))&&(this._isIdProvider(d,a)||c&&(this._hasSameServerInstance(this._getServerInstanceRoot(c.restBaseUrl),
a)||this._isIdProvider(c.restBaseUrl,a))||u.hasSameOrigin(d,a,!0)))return!0}return!1},_checkProtocol:function(a,c,d,e){var f=!0;e=e?c.adminTokenServiceUrl:c.tokenServiceUrl;0!==b.trim(e).toLowerCase().indexOf("https:")||0===window.location.href.toLowerCase().indexOf("https:")||w.defaults.io.useCors&&(u.canUseXhr(e)||u.canUseXhr(u.getProxyUrl(!0).path))||(f=this._protocolFunc?!!this._protocolFunc({resourceUrl:a,serverInfo:c}):!1,f||(a=Error("Aborted the Sign-In process to avoid sending password over insecure connection."),
a.code="IdentityManagerBase.4",a.log=!!n.isDebug,console.log(a.message),d(a)));return f},_enqueue:function(a,b,c,d,e,f){d||(d=new h(r._dfdCanceller));d.resUrl_=a;d.sinfo_=b;d.options_=c;d.admin_=e;d.refresh_=f;this._busy?this._hasSameServerInstance(this._getServerInstanceRoot(a),this._busy.resUrl_)?(this._oAuthDfd&&this._oAuthDfd.oAuthWin_&&this._oAuthDfd.oAuthWin_.focus(),this._soReqs.push(d)):this._xoReqs.push(d):this._doSignIn(d);return d},_doSignIn:function(a){this._busy=a;this._rejectOnPersistedPageShow=
!1;var c=this,d=function(b){var d=a.options_&&a.options_.resource,e=a.resUrl_,f=a.refresh_,k=!1;-1===g.indexOf(c.credentials,b)&&(f&&-1!==g.indexOf(c.credentials,f)?(f.userId=b.userId,f.token=b.token,f.expires=b.expires,f.validity=b.validity,f.ssl=b.ssl,f.creationTime=b.creationTime,k=!0,b=f):c.credentials.push(b));b.resources||(b.resources=[]);b.resources.push(d||e);b.scope=c._isServerRsrc(e)?"server":"portal";b.onTokenChange();var d=c._soReqs,h={};c._soReqs=[];g.forEach(d,function(a){if(!this._isIdenticalService(e,
a.resUrl_)){var c=this._getSuffix(a.resUrl_);h[c]||(h[c]=!0,b.resources.push(a.resUrl_))}},c);a.callback(b);g.forEach(d,function(a){this._hasSameServerInstance(this._getServerInstanceRoot(e),a.resUrl_)?a.callback(b):this._soReqs.push(a)},c);c._busy=a.resUrl_=a.sinfo_=a.refresh_=null;if(!k)c.onCredentialCreate({credential:b});c._soReqs.length?c._doSignIn(c._soReqs.shift()):c._xoReqs.length&&c._doSignIn(c._xoReqs.shift())},e=function(b){a.errback(b);c._busy=a.resUrl_=a.sinfo_=a.refresh_=null;c._soReqs.length?
c._doSignIn(c._soReqs.shift()):c._xoReqs.length&&c._doSignIn(c._xoReqs.shift())},f=function(b,f,g,k){var h=a.sinfo_,m=!a.options_||!1!==a.options_.prompt,l=h.hasPortal&&c._findOAuthInfo(a.resUrl_);c._doPortalSignIn(a.resUrl_)?(b=c._getEsriAuthCookie(),l=c._portalConfig,b?d(new H({userId:b.email,server:h.server,token:b.token,expires:b.expires})):m?(m="",b=window.location.href,m=c.signInPage?c.signInPage:l?l.baseUrl+l.signin:c._isIdProvider(b,a.resUrl_)?c._getOrigin(b)+"/home/signin.html":h.tokenServiceUrl.replace(c._rePortalTokenSvc,
"")+"/home/signin.html",m=m.replace(/http:/i,"https:"),l&&!1===l.useSSL&&(m=m.replace(/https:/i,"http:")),0===b.toLowerCase().replace("https","http").indexOf(m.toLowerCase().replace("https","http"))?(h=Error("Cannot redirect to Sign-In page from within Sign-In page. URL of the resource that triggered this workflow: "+a.resUrl_),h.code="IdentityManagerBase.5",h.log=!!n.isDebug,e(h)):(c._rejectOnPersistedPageShow=!0,c._redirectFunc?c._redirectFunc({signInPage:m,returnUrlParamName:"returnUrl",returnUrl:b,
resourceUrl:a.resUrl_,serverInfo:h}):window.location=m+"?returnUrl\x3d"+window.escape(b))):(h=Error("User is not signed in."),h.code="IdentityManagerBase.6",h.log=!!n.isDebug,e(h))):b?d(new H({userId:b,server:h.server,token:g,expires:t.isDefined(k)?Number(k):null,ssl:!!f})):l?(b=l._oAuthCred,b||(f=new z(l,window.localStorage),g=new z(l,window.sessionStorage),f.isValid()&&g.isValid()?f.expires>g.expires?(b=f,g.destroy()):(b=g,f.destroy()):b=f.isValid()?f:g,l._oAuthCred=b),b.isValid()?d(new H({userId:b.userId,
server:h.server,token:b.token,expires:b.expires,ssl:b.ssl,_oAuthCred:b})):c._oAuthHash&&c._oAuthHash.state.portalUrl===l.portalUrl?(m=c._oAuthHash,h=new H({userId:m.username,server:h.server,token:m.access_token,expires:(new Date).getTime()+1E3*Number(m.expires_in),ssl:"true"===m.ssl,oAuthState:m.state,_oAuthCred:b}),b.storage=m.persist?window.localStorage:window.sessionStorage,b.token=h.token,b.expires=h.expires,b.userId=h.userId,b.ssl=h.ssl,b.save(),c._oAuthHash=null,d(h)):m?a._pendingDfd=c.oAuthSignIn(a.resUrl_,
h,l,a.options_).addCallbacks(d,e):(h=Error("User is not signed in."),h.code="IdentityManagerBase.6",h.log=!!n.isDebug,e(h))):m?c._checkProtocol(a.resUrl_,h,e,a.admin_)&&(m=a.options_,a.admin_&&(m=m||{},m.isAdmin=!0),a._pendingDfd=c.signIn(a.resUrl_,h,m).addCallbacks(d,e)):(h=Error("User is not signed in."),h.code="IdentityManagerBase.6",h.log=!!n.isDebug,e(h))},k=function(){var b=a.sinfo_,f=b.owningSystemUrl,k=a.options_,h,m,l,p;k&&(h=k.token,m=k.error,l=k.prompt);(p=c._findCredential(f,{token:h,
resource:a.resUrl_}))||g.some(c.credentials,function(a){this._isIdProvider(f,a.server)&&(p=a);return!!p},c);p?(k=c.findCredential(a.resUrl_,p.userId))?d(k):C(b,c._legacyFed)?(k=p.toJson(),k.server=b.server,k.resources=null,d(new H(k))):(a._pendingDfd=c.generateToken(c.findServerInfo(p.server),null,{serverUrl:a.resUrl_,token:p.token,ssl:p.ssl})).addCallbacks(function(c){d(new H({userId:p.userId,server:b.server,token:c.token,expires:t.isDefined(c.expires)?Number(c.expires):null,ssl:!!c.ssl,isAdmin:a.admin_,
validity:c.validity}))},e):(c._busy=null,h&&(a.options_.token=null),(a._pendingDfd=c.getCredential(f.replace(/\/?$/,"/sharing"),{resource:a.resUrl_,owningTenant:b.owningTenant,token:h,error:m,prompt:l})).addCallbacks(function(b){c._enqueue(a.resUrl_,a.sinfo_,a.options_,a,a.admin_)},function(a){e(a)}))};this._errbackFunc=e;var h=a.sinfo_.owningSystemUrl,m=this._isServerRsrc(a.resUrl_),l=a.sinfo_._restInfoDfd;l?l.addCallbacks(function(d){var e=a.sinfo_;e.adminTokenServiceUrl=e._restInfoDfd.adminUrl_;
e._restInfoDfd=null;e.tokenServiceUrl=b.getObject("authInfo.tokenServicesUrl",!1,d)||b.getObject("authInfo.tokenServiceUrl",!1,d)||b.getObject("tokenServiceUrl",!1,d);e.shortLivedTokenValidity=b.getObject("authInfo.shortLivedTokenValidity",!1,d);e.currentVersion=d.currentVersion;e.owningTenant=d.owningTenant;(d=e.owningSystemUrl=d.owningSystemUrl)&&c._portals.push(d);m&&d?k():f()},function(){a.sinfo_._restInfoDfd=null;var b=Error("Unknown resource - could not find token service endpoint.");b.code=
"IdentityManagerBase.2";b.log=!!n.isDebug;e(b)}):m&&h?k():a.sinfo_._selfReq?a.sinfo_._selfReq.selfDfd.then(function(b){var d={},e,f,g,k;b&&(e=b.user&&b.user.username,d.username=e,d.allSSL=b.allSSL,f=b.supportsOAuth,g=b.currentVersion,"multitenant"===b.portalMode&&(k=b.customBaseUrl));a.sinfo_.webTierAuth=!!e;return e&&c.normalizeWebTierAuth?c.generateToken(a.sinfo_,null,{ssl:d.allSSL}).addBoth(function(a){d.portalToken=a&&a.token;d.tokenExpiration=a&&a.expires;return d}):!e&&f&&4.4<=parseFloat(g)&&
!c._doPortalSignIn(a.resUrl_)?c._generateOAuthInfo({portalUrl:a.sinfo_.server,customBaseUrl:k,owningTenant:a.sinfo_._selfReq.owningTenant}).always(function(){return d}):d}).always(function(b){a.sinfo_._selfReq=null;b?f(b.username,b.allSSL,b.portalToken,b.tokenExpiration):f()}):f()},_generateOAuthInfo:function(a){var b=this,c,d=a.portalUrl,e=a.customBaseUrl,f=a.owningTenant;if(a=!this.defaultOAuthInfo&&this._createDefaultOAuthInfo&&!this._hasTestedIfAppIsOnPortal){c=window.location.href;var g=c.indexOf("?");
-1<g&&(c=c.slice(0,g));g=c.search(/\/(apps|home)\//);c=-1<g?c.slice(0,g):null}a&&c?(this._hasTestedIfAppIsOnPortal=!0,a=y({url:c+"/sharing/rest",content:{f:"json"},handleAs:"json"}).then(function(){b.defaultOAuthInfo=new x({appId:"arcgisonline",popup:!0,popupCallbackUrl:c+"/home/oauth-callback.html"})})):(a=new h,a.resolve(),a=a.promise);return a.then(function(){if(b.defaultOAuthInfo)return d=d.replace(/^http:/i,"https:"),y({url:d+"/sharing/rest/oauth2/validateRedirectUri",content:{accountId:f,client_id:b.defaultOAuthInfo.appId,
redirect_uri:u.getAbsoluteUrl(b.defaultOAuthInfo.popupCallbackUrl),f:"json"},handleAs:"json",callbackParamName:"callback"}).then(function(a){if(a.valid){var c=b.defaultOAuthInfo.clone();c.portalUrl=a.urlKey&&e?"https://"+a.urlKey+"."+e:d;b.oAuthInfos.push(c)}})})}});H=q(v,{declaredClass:"esri.Credential",tokenRefreshBuffer:2,constructor:function(a){b.mixin(this,a);this.resources=this.resources||[];t.isDefined(this.creationTime)||(this.creationTime=(new Date).getTime())},_oAuthCred:null,refreshToken:function(){var a=
this,b=this.resources&&this.resources[0],c=m.id.findServerInfo(this.server),d=c&&c.owningSystemUrl,e=!!d&&"server"===this.scope,f=e&&C(c,m.id._legacyFed),k=e&&m.id.findServerInfo(d),h,l=(h=c.webTierAuth)&&m.id.normalizeWebTierAuth,p=A[this.server],p=p&&p[this.userId],n={username:this.userId,password:p},q;if(!h||l)if(e&&!k&&g.some(m.id.serverInfos,function(a){m.id._isIdProvider(d,a.server)&&(k=a);return!!k}),h=k&&m.id.findCredential(k.server,this.userId),!e||h)if(f)h.refreshToken();else{if(e)q={serverUrl:b,
token:h&&h.token,ssl:h&&h.ssl};else if(l)n=null,q={ssl:this.ssl};else if(p)this.isAdmin&&(q={isAdmin:!0});else{var r;b&&(b=m.id._sanitizeUrl(b),this._enqueued=1,r=m.id._enqueue(b,c,null,null,this.isAdmin,this),r.addCallback(function(){a._enqueued=0;a.refreshServerTokens()}).addErrback(function(){a._enqueued=0}));return r}return m.id.generateToken(e?k:c,e?null:n,q).addCallback(function(b){a.token=b.token;a.expires=t.isDefined(b.expires)?Number(b.expires):null;a.creationTime=(new Date).getTime();a.validity=
b.validity;a.onTokenChange();a.refreshServerTokens()}).addErrback(function(){})}},refreshServerTokens:function(){"portal"===this.scope&&g.forEach(m.id.credentials,function(a){var b=m.id.findServerInfo(a.server),c=b&&b.owningSystemUrl;a!==this&&a.userId===this.userId&&c&&"server"===a.scope&&(m.id._hasSameServerInstance(this.server,c)||m.id._isIdProvider(c,this.server))&&(C(b,m.id._legacyFed)?(a.token=this.token,a.expires=this.expires,a.creationTime=this.creationTime,a.validity=this.validity,a.onTokenChange()):
a.refreshToken())},this)},onTokenChange:function(a){clearTimeout(this._refreshTimer);var b=this.server&&m.id.findServerInfo(this.server),c=(b=b&&b.owningSystemUrl)&&m.id.findServerInfo(b);!1!==a&&(!b||"portal"===this.scope||c&&c.webTierAuth&&!m.id.normalizeWebTierAuth)&&(t.isDefined(this.expires)||t.isDefined(this.validity))&&this._startRefreshTimer()},onDestroy:function(){},destroy:function(){this.userId=this.server=this.token=this.expires=this.validity=this.resources=this.creationTime=null;this._oAuthCred&&
(this._oAuthCred.destroy(),this._oAuthCred=null);var a=g.indexOf(m.id.credentials,this);-1<a&&m.id.credentials.splice(a,1);this.onTokenChange();this.onDestroy()},toJson:function(){return this._toJson()},_toJson:function(){var a=t.fixJson({userId:this.userId,server:this.server,token:this.token,expires:this.expires,validity:this.validity,ssl:this.ssl,isAdmin:this.isAdmin,creationTime:this.creationTime,scope:this.scope}),b=this.resources;b&&0<b.length&&(a.resources=b.slice());return a},_startRefreshTimer:function(){clearTimeout(this._refreshTimer);
var a=6E4*this.tokenRefreshBuffer,c=(this.validity?this.creationTime+6E4*this.validity:this.expires)-(new Date).getTime();0>c&&(c=0);this._refreshTimer=setTimeout(b.hitch(this,this.refreshToken),c>a?c-a:c)}});E.Credential=H;f("extend-esri")&&(m.IdentityManagerBase=E);return E})},"dojo/cookie":function(){define(["./_base/kernel","./regexp"],function(q,n){q.cookie=function(b,g,h){var p=document.cookie,l;if(1==arguments.length)l=(l=p.match(new RegExp("(?:^|; )"+n.escapeString(b)+"\x3d([^;]*)")))?decodeURIComponent(l[1]):
void 0;else{h=h||{};p=h.expires;if("number"==typeof p){var f=new Date;f.setTime(f.getTime()+864E5*p);p=h.expires=f}p&&p.toUTCString&&(h.expires=p.toUTCString());g=encodeURIComponent(g);var p=b+"\x3d"+g,e;for(e in h)p+="; "+e,f=h[e],!0!==f&&(p+="\x3d"+f);document.cookie=p}return l};q.cookie.isSupported=function(){"cookieEnabled"in navigator||(this("__djCookieTest__","CookiesAllowed"),navigator.cookieEnabled="CookiesAllowed"==this("__djCookieTest__"),navigator.cookieEnabled&&this("__djCookieTest__",
"",{expires:-1}));return navigator.cookieEnabled};return q.cookie})},"esri/ServerInfo":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","./kernel","./lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.ServerInfo",constructor:function(b){n.mixin(this,b)},toJson:function(){return h.fixJson({server:this.server,tokenServiceUrl:this.tokenServiceUrl,adminTokenServiceUrl:this.adminTokenServiceUrl,shortLivedTokenValidity:this.shortLivedTokenValidity,owningSystemUrl:this.owningSystemUrl,
owningTenant:this.owningTenant,currentVersion:this.currentVersion,hasPortal:this.hasPortal,hasServer:this.hasServer,webTierAuth:this.webTierAuth})}});b("extend-esri")&&(g.ServerInfo=q);return q})},"esri/OAuthCredential":function(){define(["./kernel","dojo/_base/declare","dojo/has","dojo/json"],function(q,n,b,g){n=n(null,{declaredClass:"esri.OAuthCredential",oAuthInfo:null,storage:null,expires:null,ssl:null,token:null,userId:null,constructor:function(b,g){this.oAuthInfo=b;this.storage=g;this._init()},
isValid:function(){var b=!1;if(this.oAuthInfo&&this.token&&this.userId){var g=(new Date).getTime();this.expires>g&&(this.expires-g)/1E3>60*this.oAuthInfo.minTimeUntilExpiration&&(b=!0)}return b},save:function(){if(this.storage){var b=this._load(),p=this.oAuthInfo;if(p&&p.authNamespace&&p.portalUrl){var l=b[p.authNamespace];l||(l=b[p.authNamespace]={});l[p.portalUrl]={expires:this.expires,ssl:this.ssl,token:this.token,userId:this.userId};try{this.storage.setItem("esriJSAPIOAuth",g.stringify(b))}catch(f){console.log(f)}}}},
destroy:function(){var b=this._load(),p=this.oAuthInfo;if(p&&p.authNamespace&&p.portalUrl&&this.storage){var l=b[p.authNamespace];if(l){delete l[p.portalUrl];try{this.storage.setItem("esriJSAPIOAuth",g.stringify(b))}catch(f){console.log(f)}}}p&&(this.oAuthInfo=p._oAuthCred=null)},_init:function(){var b=this._load(),g=this.oAuthInfo;g&&g.authNamespace&&g.portalUrl&&(b=b[g.authNamespace])&&(b=b[g.portalUrl])&&(this.expires=b.expires,this.ssl=b.ssl,this.token=b.token,this.userId=b.userId)},_load:function(){var b=
{};if(this.storage){var p=this.storage.getItem("esriJSAPIOAuth");if(p)try{b=g.parse(p)}catch(l){console.log(l)}}return b}});b("extend-esri")&&(q.OAuthCredential=n);return n})},"esri/arcgis/OAuthInfo":function(){define(["../kernel","../lang","dojo/_base/declare","dojo/_base/lang","dojo/has"],function(q,n,b,g,h){var p=b(null,{declaredClass:"esri.arcgis.OAuthInfo",constructor:function(b){g.mixin(this,{expiration:20160,minTimeUntilExpiration:30,portalUrl:"https://www.arcgis.com",authNamespace:"/",forceLogin:!1,
popup:!1,popupCallbackUrl:"oauth-callback.html",popupWindowFeatures:"height\x3d490,width\x3d800,resizable,scrollbars,status"},b)},_oAuthCred:null,toJson:function(){return n.fixJson({appId:this.appId,expiration:this.expiration,locale:this.locale,minTimeUntilExpiration:this.minTimeUntilExpiration,portalUrl:this.portalUrl,authNamespace:this.authNamespace,forceLogin:this.forceLogin,popup:this.popup,popupCallbackUrl:this.popupCallbackUrl,popupWindowFeatures:this.popupWindowFeatures})},clone:function(){return new p(this.toJson())}});
h("extend-esri")&&g.setObject("arcgis.OAuthInfo",p,q);return p})},"dijit/form/Form":function(){define("dojo/_base/declare dojo/dom-attr dojo/_base/kernel dojo/sniff ../_Widget ../_TemplatedMixin ./_FormMixin ../layout/_ContentPaneResizeMixin".split(" "),function(q,n,b,g,h,p,l,f){return q("dijit.form.Form",[h,p,l,f],{name:"",action:"",method:"",encType:"","accept-charset":"",accept:"",target:"",templateString:"\x3cform data-dojo-attach-point\x3d'containerNode' data-dojo-attach-event\x3d'onreset:_onReset,onsubmit:_onSubmit' ${!nameAttrSetting}\x3e\x3c/form\x3e",
postMixInProperties:function(){this.nameAttrSetting=this.name?"name\x3d'"+this.name+"'":"";this.inherited(arguments)},execute:function(){},onExecute:function(){},_setEncTypeAttr:function(b){n.set(this.domNode,"encType",b);g("ie")&&(this.domNode.encoding=b);this._set("encType",b)},reset:function(b){var c={returnValue:!0,preventDefault:function(){this.returnValue=!1},stopPropagation:function(){},currentTarget:b?b.target:this.domNode,target:b?b.target:this.domNode};!1!==this.onReset(c)&&c.returnValue&&
this.inherited(arguments,[])},onReset:function(){return!0},_onReset:function(b){this.reset(b);b.stopPropagation();b.preventDefault();return!1},_onSubmit:function(e){var c=this.constructor.prototype;if(this.execute!=c.execute||this.onExecute!=c.onExecute)b.deprecated("dijit.form.Form:execute()/onExecute() are deprecated. Use onSubmit() instead.","","2.0"),this.onExecute(),this.execute(this.getValues());!1===this.onSubmit(e)&&(e.stopPropagation(),e.preventDefault())},onSubmit:function(){return this.isValid()},
submit:function(){!1!==this.onSubmit()&&this.containerNode.submit()}})})},"dijit/form/ValidationTextBox":function(){define("dojo/_base/declare dojo/_base/kernel dojo/_base/lang dojo/i18n ./TextBox ../Tooltip dojo/text!./templates/ValidationTextBox.html dojo/i18n!./nls/validate".split(" "),function(q,n,b,g,h,p,l){var f=q("dijit.form.ValidationTextBox",h,{templateString:l,required:!1,promptMessage:"",invalidMessage:"$_unset_$",missingMessage:"$_unset_$",message:"",constraints:{},pattern:".*",regExp:"",
regExpGen:function(){},state:"",tooltipPosition:[],_deprecateRegExp:function(b,c){c!=f.prototype[b]&&(n.deprecated("ValidationTextBox id\x3d"+this.id+", set('"+b+"', ...) is deprecated.  Use set('pattern', ...) instead.","","2.0"),this.set("pattern",c))},_setRegExpGenAttr:function(b){this._deprecateRegExp("regExpGen",b);this._set("regExpGen",this._computeRegexp)},_setRegExpAttr:function(b){this._deprecateRegExp("regExp",b)},_setValueAttr:function(){this.inherited(arguments);this._refreshState()},
validator:function(b,c){return(new RegExp("^(?:"+this._computeRegexp(c)+")"+(this.required?"":"?")+"$")).test(b)&&(!this.required||!this._isEmpty(b))&&(this._isEmpty(b)||void 0!==this.parse(b,c))},_isValidSubset:function(){return 0==this.textbox.value.search(this._partialre)},isValid:function(){return this.validator(this.textbox.value,this.get("constraints"))},_isEmpty:function(b){return(this.trim?/^\s*$/:/^$/).test(b)},getErrorMessage:function(){var b="$_unset_$"==this.invalidMessage?this.messages.invalidMessage:
this.invalidMessage?this.invalidMessage:this.promptMessage,c="$_unset_$"==this.missingMessage?this.messages.missingMessage:this.missingMessage?this.missingMessage:b;return this.required&&this._isEmpty(this.textbox.value)?c:b},getPromptMessage:function(){return this.promptMessage},_maskValidSubsetError:!0,validate:function(b){var c="",a=this.disabled||this.isValid(b);a&&(this._maskValidSubsetError=!0);var d=this._isEmpty(this.textbox.value),e=!a&&b&&this._isValidSubset();this._set("state",a?"":((!this._hasBeenBlurred||
b)&&d||e)&&(this._maskValidSubsetError||e&&!this._hasBeenBlurred&&b)?"Incomplete":"Error");this.focusNode.setAttribute("aria-invalid","Error"==this.state?"true":"false");"Error"==this.state?(this._maskValidSubsetError=b&&e,c=this.getErrorMessage(b)):"Incomplete"==this.state?(c=this.getPromptMessage(b),this._maskValidSubsetError=!this._hasBeenBlurred||b):d&&(c=this.getPromptMessage(b));this.set("message",c);return a},displayMessage:function(b){b&&this.focused?p.show(b,this.domNode,this.tooltipPosition,
!this.isLeftToRight()):p.hide(this.domNode)},_refreshState:function(){this._created&&this.validate(this.focused);this.inherited(arguments)},constructor:function(e){this.constraints=b.clone(this.constraints);this.baseClass+=" dijitValidationTextBox"},startup:function(){this.inherited(arguments);this._refreshState()},_setConstraintsAttr:function(b){!b.locale&&this.lang&&(b.locale=this.lang);this._set("constraints",b);this._refreshState()},_setPatternAttr:function(b){this._set("pattern",b);this._refreshState()},
_computeRegexp:function(b){var c=this.pattern;"function"==typeof c&&(c=c.call(this,b));if(c!=this._lastRegExp){var a="";this._lastRegExp=c;".*"!=c&&c.replace(/\\.|\[\]|\[.*?[^\\]{1}\]|\{.*?\}|\(\?[=:!]|./g,function(b){switch(b.charAt(0)){case "{":case "+":case "?":case "*":case "^":case "$":case "|":case "(":a+=b;break;case ")":a+="|$)";break;default:a+="(?:"+b+"|$)"}});try{"".search(a)}catch(d){a=this.pattern,console.warn("RegExp error in "+this.declaredClass+": "+this.pattern)}this._partialre="^(?:"+
a+")$"}return c},postMixInProperties:function(){this.inherited(arguments);this.messages=g.getLocalization("dijit.form","validate",this.lang);this._setConstraintsAttr(this.constraints)},_setDisabledAttr:function(b){this.inherited(arguments);this._refreshState()},_setRequiredAttr:function(b){this._set("required",b);this.focusNode.setAttribute("aria-required",b);this._refreshState()},_setMessageAttr:function(b){this._set("message",b);this.displayMessage(b)},reset:function(){this._maskValidSubsetError=
!0;this.inherited(arguments)},_onBlur:function(){this.displayMessage("");this.inherited(arguments)},destroy:function(){p.hide(this.domNode);this.inherited(arguments)}});return f})},"dijit/form/TextBox":function(){define("dojo/_base/declare dojo/dom-construct dojo/dom-style dojo/_base/kernel dojo/_base/lang dojo/on dojo/sniff ./_FormValueWidget ./_TextBoxMixin dojo/text!./templates/TextBox.html ../main".split(" "),function(q,n,b,g,h,p,l,f,e,c,a){f=q("dijit.form.TextBox"+(l("dojo-bidi")?"_NoBidi":""),
[f,e],{templateString:c,_singleNodeTemplate:'\x3cinput class\x3d"dijit dijitReset dijitLeft dijitInputField" data-dojo-attach-point\x3d"textbox,focusNode" autocomplete\x3d"off" type\x3d"${type}" ${!nameAttrSetting} /\x3e',_buttonInputDisabled:l("ie")?"disabled":"",baseClass:"dijitTextBox",postMixInProperties:function(){var a=this.type.toLowerCase();if(this.templateString&&"input"==this.templateString.toLowerCase()||("hidden"==a||"file"==a)&&this.templateString==this.constructor.prototype.templateString)this.templateString=
this._singleNodeTemplate;this.inherited(arguments)},postCreate:function(){this.inherited(arguments);9>l("ie")&&this.defer(function(){try{var a=b.getComputedStyle(this.domNode);if(a){var c=a.fontFamily;if(c){var e=this.domNode.getElementsByTagName("INPUT");if(e)for(a=0;a<e.length;a++)e[a].style.fontFamily=c}}}catch(t){}})},_setPlaceHolderAttr:function(a){this._set("placeHolder",a);this._phspan||(this._attachPoints.push("_phspan"),this._phspan=n.create("span",{className:"dijitPlaceHolder dijitInputField"},
this.textbox,"after"),this.own(p(this._phspan,"mousedown",function(a){a.preventDefault()}),p(this._phspan,"touchend, pointerup, MSPointerUp",h.hitch(this,function(){this.focus()}))));this._phspan.innerHTML="";this._phspan.appendChild(this._phspan.ownerDocument.createTextNode(a));this._updatePlaceHolder()},_onInput:function(a){this.inherited(arguments);this._updatePlaceHolder()},_updatePlaceHolder:function(){this._phspan&&(this._phspan.style.display=this.placeHolder&&!this.textbox.value?"":"none")},
_setValueAttr:function(a,b,c){this.inherited(arguments);this._updatePlaceHolder()},getDisplayedValue:function(){g.deprecated(this.declaredClass+"::getDisplayedValue() is deprecated. Use get('displayedValue') instead.","","2.0");return this.get("displayedValue")},setDisplayedValue:function(a){g.deprecated(this.declaredClass+"::setDisplayedValue() is deprecated. Use set('displayedValue', ...) instead.","","2.0");this.set("displayedValue",a)},_onBlur:function(a){this.disabled||(this.inherited(arguments),
this._updatePlaceHolder(),l("mozilla")&&this.selectOnClick&&(this.textbox.selectionStart=this.textbox.selectionEnd=void 0))},_onFocus:function(a){this.disabled||this.readOnly||(this.inherited(arguments),this._updatePlaceHolder())}});9>l("ie")&&(f.prototype._isTextSelected=function(){var a=this.ownerDocument.selection.createRange();return a.parentElement()==this.textbox&&0<a.text.length},a._setSelectionRange=e._setSelectionRange=function(a,b,c){a.createTextRange&&(a=a.createTextRange(),a.collapse(!0),
a.moveStart("character",-99999),a.moveStart("character",b),a.moveEnd("character",c-b),a.select())});l("dojo-bidi")&&(f=q("dijit.form.TextBox",f,{_setPlaceHolderAttr:function(a){this.inherited(arguments);this.applyTextDir(this._phspan)}}));return f})},"dijit/form/_FormValueWidget":function(){define(["dojo/_base/declare","dojo/sniff","./_FormWidget","./_FormValueMixin"],function(q,n,b,g){return q("dijit.form._FormValueWidget",[b,g],{_layoutHackIE7:function(){if(7==n("ie"))for(var b=this.domNode,g=b.parentNode,
l=b.firstChild||b,f=l.style.filter,e=this;g&&0==g.clientHeight;)(function(){var b=e.connect(g,"onscroll",function(){e.disconnect(b);l.style.filter=(new Date).getMilliseconds();e.defer(function(){l.style.filter=f})})})(),g=g.parentNode}})})},"dijit/form/_FormValueMixin":function(){define("dojo/_base/declare dojo/dom-attr dojo/keys dojo/_base/lang dojo/on dojo/sniff ./_FormWidgetMixin".split(" "),function(q,n,b,g,h,p,l){return q("dijit.form._FormValueMixin",l,{readOnly:!1,_setReadOnlyAttr:function(b){p("trident")&&
"disabled"in this?n.set(this.focusNode,"readOnly",b||this.disabled):n.set(this.focusNode,"readOnly",b);this._set("readOnly",b)},postCreate:function(){this.inherited(arguments);void 0===this._resetValue&&(this._lastValueReported=this._resetValue=this.value)},_setValueAttr:function(b,e){this._handleOnChange(b,e)},_handleOnChange:function(b,e){this._set("value",b);this.inherited(arguments)},undo:function(){this._setValueAttr(this._lastValueReported,!1)},reset:function(){this._hasBeenBlurred=!1;this._setValueAttr(this._resetValue,
!0)}})})},"dijit/form/_TextBoxMixin":function(){define("dojo/_base/array dojo/_base/declare dojo/dom dojo/sniff dojo/keys dojo/_base/lang dojo/on ../main".split(" "),function(q,n,b,g,h,p,l,f){var e=n("dijit.form._TextBoxMixin"+(g("dojo-bidi")?"_NoBidi":""),null,{trim:!1,uppercase:!1,lowercase:!1,propercase:!1,maxLength:"",selectOnClick:!1,placeHolder:"",_getValueAttr:function(){return this.parse(this.get("displayedValue"),this.constraints)},_setValueAttr:function(b,a,d){var c;void 0!==b&&(c=this.filter(b),
"string"!=typeof d&&(d=null===c||"number"==typeof c&&isNaN(c)?"":this.filter(this.format(c,this.constraints)),0!=this.compare(c,this.filter(this.parse(d,this.constraints)))&&(d=null)));null==d||"number"==typeof d&&isNaN(d)||this.textbox.value==d||(this.textbox.value=d,this._set("displayedValue",this.get("displayedValue")));this.inherited(arguments,[c,a])},displayedValue:"",_getDisplayedValueAttr:function(){return this.filter(this.textbox.value)},_setDisplayedValueAttr:function(b){null==b?b="":"string"!=
typeof b&&(b=String(b));this.textbox.value=b;this._setValueAttr(this.get("value"),void 0);this._set("displayedValue",this.get("displayedValue"))},format:function(b){return null==b?"":b.toString?b.toString():b},parse:function(b){return b},_refreshState:function(){},onInput:function(){},_onInput:function(b){this._lastInputEventValue=this.textbox.value;this._processInput(this._lastInputProducingEvent||b);delete this._lastInputProducingEvent;this.intermediateChanges&&this._handleOnChange(this.get("value"),
!1)},_processInput:function(){this._refreshState();this._set("displayedValue",this.get("displayedValue"))},postCreate:function(){this.textbox.setAttribute("value",this.textbox.value);this.inherited(arguments);this.own(l(this.textbox,"keydown, keypress, paste, cut, compositionend",p.hitch(this,function(b){var a;if("keydown"==b.type&&229!=b.keyCode){a=b.keyCode;switch(a){case h.SHIFT:case h.ALT:case h.CTRL:case h.META:case h.CAPS_LOCK:case h.NUM_LOCK:case h.SCROLL_LOCK:return}if(!b.ctrlKey&&!b.metaKey&&
!b.altKey){switch(a){case h.NUMPAD_0:case h.NUMPAD_1:case h.NUMPAD_2:case h.NUMPAD_3:case h.NUMPAD_4:case h.NUMPAD_5:case h.NUMPAD_6:case h.NUMPAD_7:case h.NUMPAD_8:case h.NUMPAD_9:case h.NUMPAD_MULTIPLY:case h.NUMPAD_PLUS:case h.NUMPAD_ENTER:case h.NUMPAD_MINUS:case h.NUMPAD_PERIOD:case h.NUMPAD_DIVIDE:return}if(65<=a&&90>=a||48<=a&&57>=a||a==h.SPACE)return;a=!1;for(var c in h)if(h[c]===b.keyCode){a=!0;break}if(!a)return}}(a=32<=b.charCode?String.fromCharCode(b.charCode):b.charCode)||(a=65<=b.keyCode&&
90>=b.keyCode||48<=b.keyCode&&57>=b.keyCode||b.keyCode==h.SPACE?String.fromCharCode(b.keyCode):b.keyCode);a||(a=229);if("keypress"==b.type){if("string"!=typeof a)return;if("a"<=a&&"z">=a||"A"<=a&&"Z">=a||"0"<=a&&"9">=a||" "===a)if(b.ctrlKey||b.metaKey||b.altKey)return}var e={faux:!0},f;for(f in b)/^(layer[XY]|returnValue|keyLocation)$/.test(f)||(c=b[f],"function"!=typeof c&&"undefined"!=typeof c&&(e[f]=c));p.mixin(e,{charOrCode:a,_wasConsumed:!1,preventDefault:function(){e._wasConsumed=!0;b.preventDefault()},
stopPropagation:function(){b.stopPropagation()}});this._lastInputProducingEvent=e;!1===this.onInput(e)&&(e.preventDefault(),e.stopPropagation());if(!e._wasConsumed&&9>=g("ie"))switch(b.keyCode){case h.TAB:case h.ESCAPE:case h.DOWN_ARROW:case h.UP_ARROW:case h.LEFT_ARROW:case h.RIGHT_ARROW:break;default:b.keyCode==h.ENTER&&"textarea"!=this.textbox.tagName.toLowerCase()||this.defer(function(){this.textbox.value!==this._lastInputEventValue&&l.emit(this.textbox,"input",{bubbles:!0})})}})),l(this.textbox,
"input",p.hitch(this,"_onInput")),l(this.domNode,"keypress",function(b){b.stopPropagation()}))},_blankValue:"",filter:function(b){if(null===b)return this._blankValue;if("string"!=typeof b)return b;this.trim&&(b=p.trim(b));this.uppercase&&(b=b.toUpperCase());this.lowercase&&(b=b.toLowerCase());this.propercase&&(b=b.replace(/[^\s]+/g,function(a){return a.substring(0,1).toUpperCase()+a.substring(1)}));return b},_setBlurValue:function(){this._setValueAttr(this.get("value"),!0)},_onBlur:function(b){this.disabled||
(this._setBlurValue(),this.inherited(arguments))},_isTextSelected:function(){return this.textbox.selectionStart!=this.textbox.selectionEnd},_onFocus:function(b){this.disabled||this.readOnly||(this.selectOnClick&&"mouse"==b&&(this._selectOnClickHandle=l.once(this.domNode,"mouseup, touchend",p.hitch(this,function(a){this._isTextSelected()||e.selectInputText(this.textbox)})),this.own(this._selectOnClickHandle),this.defer(function(){this._selectOnClickHandle&&(this._selectOnClickHandle.remove(),this._selectOnClickHandle=
null)},500)),this.inherited(arguments),this._refreshState())},reset:function(){this.textbox.value="";this.inherited(arguments)}});g("dojo-bidi")&&(e=n("dijit.form._TextBoxMixin",e,{_setValueAttr:function(){this.inherited(arguments);this.applyTextDir(this.focusNode)},_setDisplayedValueAttr:function(){this.inherited(arguments);this.applyTextDir(this.focusNode)},_onInput:function(){this.applyTextDir(this.focusNode);this.inherited(arguments)}}));e._setSelectionRange=f._setSelectionRange=function(b,a,
d){b.setSelectionRange&&b.setSelectionRange(a,d)};e.selectInputText=f.selectInputText=function(c,a,d){c=b.byId(c);isNaN(a)&&(a=0);isNaN(d)&&(d=c.value?c.value.length:0);try{c.focus(),e._setSelectionRange(c,a,d)}catch(m){}};return e})},"dijit/Tooltip":function(){define("dojo/_base/array dojo/_base/declare dojo/_base/fx dojo/dom dojo/dom-class dojo/dom-geometry dojo/dom-style dojo/_base/lang dojo/mouse dojo/on dojo/sniff ./_base/manager ./place ./_Widget ./_TemplatedMixin ./BackgroundIframe dojo/text!./templates/Tooltip.html ./main".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r){function y(){}var v=n("dijit._MasterTooltip",[w,t],{duration:d.defaultDuration,templateString:u,postCreate:function(){this.ownerDocumentBody.appendChild(this.domNode);this.bgIframe=new k(this.domNode);this.fadeIn=b.fadeIn({node:this.domNode,duration:this.duration,onEnd:f.hitch(this,"_onShow")});this.fadeOut=b.fadeOut({node:this.domNode,duration:this.duration,onEnd:f.hitch(this,"_onHide")})},show:function(a,b,c,d,e,g,k){if(!this.aroundNode||this.aroundNode!==
b||this.containerNode.innerHTML!=a)if("playing"==this.fadeOut.status())this._onDeck=arguments;else{this.containerNode.innerHTML=a;e&&this.set("textDir",e);this.containerNode.align=d?"right":"left";var h=m.around(this.domNode,b,c&&c.length?c:z.defaultPosition,!d,f.hitch(this,"orient")),p=h.aroundNodePos;"M"==h.corner.charAt(0)&&"M"==h.aroundCorner.charAt(0)?(this.connectorNode.style.top=p.y+(p.h-this.connectorNode.offsetHeight>>1)-h.y+"px",this.connectorNode.style.left=""):"M"==h.corner.charAt(1)&&
"M"==h.aroundCorner.charAt(1)?this.connectorNode.style.left=p.x+(p.w-this.connectorNode.offsetWidth>>1)-h.x+"px":(this.connectorNode.style.left="",this.connectorNode.style.top="");l.set(this.domNode,"opacity",0);this.fadeIn.play();this.isShowingNow=!0;this.aroundNode=b;this.onMouseEnter=g||y;this.onMouseLeave=k||y}},orient:function(b,c,d,e,f){this.connectorNode.style.top="";var g=e.h;e=e.w;b.className="dijitTooltip "+{"MR-ML":"dijitTooltipRight","ML-MR":"dijitTooltipLeft","TM-BM":"dijitTooltipAbove",
"BM-TM":"dijitTooltipBelow","BL-TL":"dijitTooltipBelow dijitTooltipABLeft","TL-BL":"dijitTooltipAbove dijitTooltipABLeft","BR-TR":"dijitTooltipBelow dijitTooltipABRight","TR-BR":"dijitTooltipAbove dijitTooltipABRight","BR-BL":"dijitTooltipRight","BL-BR":"dijitTooltipLeft"}[c+"-"+d];this.domNode.style.width="auto";var k=p.position(this.domNode);if(a("ie")||a("trident"))k.w+=2;p.setMarginBox(this.domNode,{w:Math.min(Math.max(e,1),k.w)});"B"==d.charAt(0)&&"B"==c.charAt(0)?(b=p.position(b),c=this.connectorNode.offsetHeight,
b.h>g?(this.connectorNode.style.top=g-(f.h+c>>1)+"px",this.connectorNode.style.bottom=""):(this.connectorNode.style.bottom=Math.min(Math.max(f.h/2-c/2,0),b.h-c)+"px",this.connectorNode.style.top="")):(this.connectorNode.style.top="",this.connectorNode.style.bottom="");return Math.max(0,k.w-e)},_onShow:function(){a("ie")&&(this.domNode.style.filter="")},hide:function(a){this._onDeck&&this._onDeck[1]==a?this._onDeck=null:this.aroundNode===a&&(this.fadeIn.stop(),this.isShowingNow=!1,this.aroundNode=
null,this.fadeOut.play());this.onMouseEnter=this.onMouseLeave=y},_onHide:function(){this.domNode.style.cssText="";this.containerNode.innerHTML="";this._onDeck&&(this.show.apply(this,this._onDeck),this._onDeck=null)}});a("dojo-bidi")&&v.extend({_setAutoTextDir:function(a){this.applyTextDir(a);q.forEach(a.children,function(a){this._setAutoTextDir(a)},this)},_setTextDirAttr:function(a){this._set("textDir",a);"auto"==a?this._setAutoTextDir(this.containerNode):this.containerNode.dir=this.textDir}});r.showTooltip=
function(a,b,c,d,e,f,g){c&&(c=q.map(c,function(a){return{after:"after-centered",before:"before-centered"}[a]||a}));z._masterTT||(r._masterTT=z._masterTT=new v);return z._masterTT.show(a,b,c,d,e,f,g)};r.hideTooltip=function(a){return z._masterTT&&z._masterTT.hide(a)};var z=n("dijit.Tooltip",w,{label:"",showDelay:400,hideDelay:400,connectId:[],position:[],selector:"",_setConnectIdAttr:function(a){q.forEach(this._connections||[],function(a){q.forEach(a,function(a){a.remove()})},this);this._connectIds=
q.filter(f.isArrayLike(a)?a:a?[a]:[],function(a){return g.byId(a,this.ownerDocument)},this);this._connections=q.map(this._connectIds,function(a){a=g.byId(a,this.ownerDocument);var b=this.selector,d=b?function(a){return c.selector(b,a)}:function(a){return a},k=this;return[c(a,d(e.enter),function(){k._onHover(this)}),c(a,d("focusin"),function(){k._onHover(this)}),c(a,d(e.leave),f.hitch(k,"_onUnHover")),c(a,d("focusout"),f.hitch(k,"set","state","DORMANT"))]},this);this._set("connectId",a)},addTarget:function(a){a=
a.id||a;-1==q.indexOf(this._connectIds,a)&&this.set("connectId",this._connectIds.concat(a))},removeTarget:function(a){a=q.indexOf(this._connectIds,a.id||a);0<=a&&(this._connectIds.splice(a,1),this.set("connectId",this._connectIds))},buildRendering:function(){this.inherited(arguments);h.add(this.domNode,"dijitTooltipData")},startup:function(){this.inherited(arguments);var a=this.connectId;q.forEach(f.isArrayLike(a)?a:[a],this.addTarget,this)},getContent:function(a){return this.label||this.domNode.innerHTML},
state:"DORMANT",_setStateAttr:function(a){if(!(this.state==a||"SHOW TIMER"==a&&"SHOWING"==this.state||"HIDE TIMER"==a&&"DORMANT"==this.state)){this._hideTimer&&(this._hideTimer.remove(),delete this._hideTimer);this._showTimer&&(this._showTimer.remove(),delete this._showTimer);switch(a){case "DORMANT":this._connectNode&&(z.hide(this._connectNode),delete this._connectNode,this.onHide());break;case "SHOW TIMER":"SHOWING"!=this.state&&(this._showTimer=this.defer(function(){this.set("state","SHOWING")},
this.showDelay));break;case "SHOWING":var b=this.getContent(this._connectNode);if(!b){this.set("state","DORMANT");return}z.show(b,this._connectNode,this.position,!this.isLeftToRight(),this.textDir,f.hitch(this,"set","state","SHOWING"),f.hitch(this,"set","state","HIDE TIMER"));this.onShow(this._connectNode,this.position);break;case "HIDE TIMER":this._hideTimer=this.defer(function(){this.set("state","DORMANT")},this.hideDelay)}this._set("state",a)}},_onHover:function(a){this._connectNode&&a!=this._connectNode&&
this.set("state","DORMANT");this._connectNode=a;this.set("state","SHOW TIMER")},_onUnHover:function(a){this.set("state","HIDE TIMER")},open:function(a){this.set("state","DORMANT");this._connectNode=a;this.set("state","SHOWING")},close:function(){this.set("state","DORMANT")},onShow:function(){},onHide:function(){},destroy:function(){this.set("state","DORMANT");q.forEach(this._connections||[],function(a){q.forEach(a,function(a){a.remove()})},this);this.inherited(arguments)}});z._MasterTooltip=v;z.show=
r.showTooltip;z.hide=r.hideTooltip;z.defaultPosition=["after-centered","before-centered"];return z})},"esri/OAuthSignInHandler":function(){define("./Credential ./domUtils ./lang ./urlUtils dijit/Dialog dijit/registry dojo/_base/config dojo/_base/Deferred dojo/_base/kernel dojo/dom-attr dojo/i18n!./nls/jsapi dojo/io-query dojo/sniff dojo/json dijit/form/Button dojo/query".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d,m,w){return{_oAuthDfd:null,_oAuthIntervalId:0,_oAuthDialogContent:"\x3cdiv class\x3d'dijitDialogPaneContentArea'\x3e\x3cdiv style\x3d'padding-bottom: 5px; word-wrap: break-word;'\x3e${oAuthInfo}\x3c/div\x3e\x3cdiv style\x3d'margin: 0px; padding: 0px; height: 10px;'\x3e\x3c/div\x3e\x3cdiv class\x3d'esriErrorMsg' style\x3d'display: none; color: white; background-color: #D46464; text-align: center; padding-top: 3px; padding-bottom: 3px;'\x3e${invalidUser}\x3c/div\x3e\x3cdiv style\x3d'margin: 0px; padding: 0px; height: 10px;'\x3e\x3c/div\x3e\x3cdiv class\x3d'dijitDialogPaneActionBar'\x3e\x3cbutton data-dojo-type\x3d'dijit.form.Button' data-dojo-props\x3d'type:\"button\", \"class\":\"esriIdSubmit\"'\x3e${lblOk}\x3c/button\x3e\x3cbutton data-dojo-type\x3d'dijit.form.Button' data-dojo-props\x3d'type:\"button\", \"class\":\"esriIdCancel\"'\x3e${lblCancel}\x3c/button\x3e\x3c/div\x3e",
setOAuthRedirectionHandler:function(a){this._oAuthRedirectFunc=a},oAuthSignIn:function(b,d,e,g){var k=this._oAuthDfd=new f;k.resUrl_=b;k.sinfo_=d;k.oinfo_=e;var h=!g||!1!==g.oAuthPopupConfirmation;if(!e.popup||!h)return this._doOAuthSignIn(b,d,e),k;this._nls||(this._nls=a.identity);this.oAuthDialog||(this.oAuthDialog=this._createOAuthDialog());b=this.oAuthDialog;d=g&&g.error;g=g&&g.token;n.hide(b.errMsg_);d&&403==d.code&&g&&(c.set(b.errMsg_,"innerHTML",this._nls.forbidden),n.show(b.errMsg_));b.show();
return k},setOAuthResponseHash:function(a){var b=this._oAuthDfd;this._oAuthDfd=null;if(b&&a)if(clearInterval(this._oAuthIntervalId),"#"===a.charAt(0)&&(a=a.substring(1)),a=d.queryToObject(a),a.error)a=Error("access_denied"===a.error?"ABORTED":"OAuth: "+a.error+" - "+a.error_description),a.code="IdentityManagerBase.2",a.log=!!l.isDebug,b.errback(a);else{var c=b.oinfo_._oAuthCred,e=new q({userId:a.username,server:b.sinfo_.server,token:a.access_token,expires:(new Date).getTime()+1E3*Number(a.expires_in),
ssl:"true"===a.ssl,_oAuthCred:c});c.storage=a.persist?window.localStorage:window.sessionStorage;c.token=e.token;c.expires=e.expires;c.userId=e.userId;c.ssl=e.ssl;c.save();b.callback(e)}},_createOAuthDialog:function(){var a=this._nls,c=b.substitute(a,this._oAuthDialogContent),d=new h({title:a.title,content:c,"class":"esriOAuthSignInDialog",style:"min-width: 18em;",esriIdMgr_:this,execute_:function(){var a=d.esriIdMgr_._oAuthDfd;d.hide_();d.esriIdMgr_._doOAuthSignIn(a.resUrl_,a.sinfo_,a.oinfo_)},cancel_:function(){var a=
d.esriIdMgr_._oAuthDfd;d.esriIdMgr_._oAuthDfd=null;d.hide_();var b=Error("ABORTED");b.code="IdentityManager.2";b.log=!!l.isDebug;a.errback(b)},hide_:function(){n.hide(d.errMsg_);d.hide();h._DialogLevelManager.hide(d)}}),a=d.domNode;d.btnSubmit_=p.byNode(e.query(".esriIdSubmit",a)[0]);d.btnCancel_=p.byNode(e.query(".esriIdCancel",a)[0]);d.errMsg_=e.query(".esriErrorMsg",a)[0];d.connect(d.btnSubmit_,"onClick",d.execute_);d.connect(d.btnCancel_,"onClick",d.onCancel);d.connect(d,"onCancel",d.cancel_);
return d},_doOAuthSignIn:function(a,b,c){var e=this,f={client_id:c.appId,response_type:"token",state:w.stringify({portalUrl:c.portalUrl}),expiration:c.expiration,locale:c.locale,redirect_uri:c.popup?g.getAbsoluteUrl(c.popupCallbackUrl):window.location.href.replace(/#.*$/,"")};c.forceLogin&&(f.force_login=!0);var k=c.portalUrl.replace(/^http:/i,"https:")+"/sharing/oauth2/authorize",h=k+"?"+d.objectToQuery(f);if(c.popup){var p;7===m("ie")?(p=window.open(c.popupCallbackUrl,"esriJSAPIOAuth",c.popupWindowFeatures),
p.location=h):p=window.open(h,"esriJSAPIOAuth",c.popupWindowFeatures);p?(p.focus(),this._oAuthDfd.oAuthWin_=p,this._oAuthIntervalId=setInterval(function(){if(p.closed){clearInterval(e._oAuthIntervalId);var a=e._oAuthDfd;if(a){var b=Error("ABORTED");b.code="IdentityManager.2";b.log=!!l.isDebug;a.errback(b)}}},500)):(a=Error("ABORTED"),a.code="IdentityManager.2",a.log=!!l.isDebug,this._oAuthDfd.errback(a))}else this._rejectOnPersistedPageShow=!0,this._oAuthRedirectFunc?this._oAuthRedirectFunc({authorizeParams:f,
authorizeUrl:k,resourceUrl:a,serverInfo:b,oAuthInfo:c}):window.location=h}}})},"esri/layers/graphics":function(){define(["./GraphicsLayer","../graphic","../renderer"],function(){return{}})},"esri/layers/agstiled":function(){define(["./agscommon","./ArcGISTiledMapServiceLayer"],function(){return{}})},"esri/layers/agscommon":function(){define("./ArcGISMapServiceLayer ./LayerInfo ./TimeInfo ./LayerTimeOptions ./TimeReference ./Field ./Domain ./RangeDomain ./CodedValueDomain ./InheritedDomain ./LayerSource ./LayerMapSource ./LayerDataSource ./DataSource ./TableDataSource ./QueryDataSource ./JoinDataSource ./RasterDataSource ./DynamicLayerInfo ./LayerDrawingOptions ../geometry ../utils".split(" "),
function(){return{}})},"esri/layers/Field":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./RangeDomain ./CodedValueDomain".split(" "),function(q,n,b,g,h,p,l){q=q(null,{declaredClass:"esri.layers.Field",constructor:function(b){if(b&&n.isObject(b)&&(this.name=b.name,this.type=b.type,this.alias=b.alias,this.length=b.length,this.editable=b.editable,this.nullable=b.nullable,(b=b.domain)&&n.isObject(b)))switch(b.type){case "range":this.domain=new p(b);break;case "codedValue":this.domain=
new l(b)}},toJson:function(){return h.fixJson({name:this.name,type:this.type,alias:this.alias,length:this.length,editable:this.editable,nullable:this.nullable,domain:this.domain?this.domain.toJson():null})},toJSON:function(){return this.toJson()}});b("extend-esri")&&n.setObject("layers.Field",q,g);return q})},"esri/layers/RangeDomain":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./Domain".split(" "),function(q,n,b,g,h,p){q=q([p],{declaredClass:"esri.layers.RangeDomain",
constructor:function(b){b&&n.isObject(b)&&(this.minValue=b.range[0],this.maxValue=b.range[1])},toJson:function(){var b=this.inherited(arguments);b.range=[this.minValue,this.maxValue];return h.fixJson(b)}});b("extend-esri")&&n.setObject("layers.RangeDomain",q,g);return q})},"esri/layers/Domain":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","../lang"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.layers.Domain",constructor:function(b){b&&n.isObject(b)&&(this.name=
b.name,this.type=b.type)},toJson:function(){return h.fixJson({name:this.name,type:this.type})}});b("extend-esri")&&n.setObject("layers.Domain",q,g);return q})},"esri/layers/CodedValueDomain":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ./Domain".split(" "),function(q,n,b,g,h,p,l){q=q([l],{declaredClass:"esri.layers.CodedValueDomain",constructor:function(b){b&&n.isObject(b)&&(this.codedValues=b.codedValues)},getName:function(f){var e;b.some(this.codedValues,
function(b){b.code==f&&(e=b.name);return!!e});return e},toJson:function(){var b=this.inherited(arguments);b.codedValues=n.clone(this.codedValues);return p.fixJson(b)}});g("extend-esri")&&n.setObject("layers.CodedValueDomain",q,h);return q})},"esri/layers/InheritedDomain":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel","./Domain"],function(q,n,b,g,h){q=q([h],{declaredClass:"esri.layers.InheritedDomain"});b("extend-esri")&&n.setObject("layers.InheritedDomain",q,g);return q})},
"esri/layers/LayerSource":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],function(q,n,b,g){q=q(null,{declaredClass:"esri.layers.LayerSource",type:null,constructor:function(b){b&&n.mixin(this,b)},toJson:function(){}});b("extend-esri")&&n.setObject("layers.LayerSource",q,g);return q})},"esri/layers/LayerMapSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./LayerSource".split(" "),function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.layers.LayerMapSource",
type:"mapLayer",toJson:function(){return h.fixJson({type:"mapLayer",mapLayerId:this.mapLayerId,gdbVersion:this.gdbVersion})}});b("extend-esri")&&n.setObject("layers.LayerMapSource",q,g);return q})},"esri/layers/LayerDataSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./LayerSource ./TableDataSource ./QueryDataSource ./JoinDataSource ./RasterDataSource".split(" "),function(q,n,b,g,h,p,l,f,e,c){q=q(p,{declaredClass:"esri.layers.LayerDataSource",type:"dataLayer",
constructor:function(a){if(a&&a.dataSource){switch(a.dataSource.type){case "table":a=new l(a.dataSource);break;case "queryTable":a=new f(a.dataSource);break;case "joinTable":a=new e(a.dataSource);break;case "raster":a=new c(a.dataSource);break;default:a=a.dataSource}this.dataSource=a}},toJson:function(){var a={type:"dataLayer",dataSource:this.dataSource&&this.dataSource.toJson()};return h.fixJson(a)}});b("extend-esri")&&n.setObject("layers.LayerDataSource",q,g);return q})},"esri/layers/TableDataSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./DataSource".split(" "),
function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.layers.TableDataSource",toJson:function(){return h.fixJson({type:"table",workspaceId:this.workspaceId,dataSourceName:this.dataSourceName,gdbVersion:this.gdbVersion})}});b("extend-esri")&&n.setObject("layers.TableDataSource",q,g);return q})},"esri/layers/DataSource":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],function(q,n,b,g){q=q(null,{declaredClass:"esri.layers.DataSource",constructor:function(b){b&&n.mixin(this,
b)},toJson:function(){}});b("extend-esri")&&n.setObject("layers.DataSource",q,g);return q})},"esri/layers/QueryDataSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./DataSource ../SpatialReference".split(" "),function(q,n,b,g,h,p,l){q=q(p,{declaredClass:"esri.layers.QueryDataSource",constructor:function(b){b&&(b.oidFields&&n.isString(b.oidFields)&&(this.oidFields=b.oidFields.split(",")),b.spatialReference&&(this.spatialReference=new l(b.spatialReference)))},
toJson:function(){var b={type:"queryTable",workspaceId:this.workspaceId,query:this.query,oidFields:this.oidFields&&this.oidFields.join(),spatialReference:this.spatialReference&&this.spatialReference.toJson()};if(this.geometryType){var e;e="point"===this.geometryType.toLowerCase()?"esriGeometryPoint":"multipoint"===this.geometryType.toLowerCase()?"esriGeometryMultipoint":"polyline"===this.geometryType.toLowerCase()?"esriGeometryPolyline":"polygon"===this.geometryType.toLowerCase()?"esriGeometryPolygon":
this.geometryType;b.geometryType=e}return h.fixJson(b)}});b("extend-esri")&&n.setObject("layers.QueryDataSource",q,g);return q})},"esri/layers/JoinDataSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./DataSource ./LayerMapSource ./TableDataSource ./QueryDataSource ./RasterDataSource".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a=q(p,{declaredClass:"esri.layers.JoinDataSource",constructor:function(a){a&&(a.leftTableSource&&(this.leftTableSource=this._createLayerSource(a.leftTableSource)),
a.rightTableSource&&(this.rightTableSource=this._createLayerSource(a.rightTableSource)))},_createLayerSource:function(b){var d;if("mapLayer"===b.type)d=new l(b);else{d={type:"dataLayer"};var g;switch(b.dataSource.type){case "table":g=new f(b.dataSource);break;case "queryTable":g=new e(b.dataSource);break;case "joinTable":g=new a(b.dataSource);break;case "raster":g=new c(b.dataSource);break;default:g=b.dataSource}d.dataSource=g;d.toJson=function(){var a={type:"dataLayer",dataSource:g.toJson()};return h.fixJson(a)}}return d},
toJson:function(){var a={type:"joinTable",leftTableSource:this.leftTableSource&&this.leftTableSource.toJson(),rightTableSource:this.rightTableSource&&this.rightTableSource.toJson(),leftTableKey:this.leftTableKey,rightTableKey:this.rightTableKey},b;b="left-outer-join"===this.joinType.toLowerCase()?"esriLeftOuterJoin":"left-inner-join"===this.joinType.toLowerCase()?"esriLeftInnerJoin":this.joinType;a.joinType=b;return h.fixJson(a)}});b("extend-esri")&&n.setObject("layers.JoinDataSource",a,g);return a})},
"esri/layers/RasterDataSource":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./DataSource".split(" "),function(q,n,b,g,h,p){q=q(p,{declaredClass:"esri.layers.RasterDataSource",toJson:function(){return h.fixJson({type:"raster",workspaceId:this.workspaceId,dataSourceName:this.dataSourceName})}});b("extend-esri")&&n.setObject("layers.RasterDataSource",q,g);return q})},"esri/layers/DynamicLayerInfo":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ./LayerInfo ./LayerMapSource ./LayerDataSource".split(" "),
function(q,n,b,g,h,p,l,f){q=q(p,{declaredClass:"esri.layers.DynamicLayerInfo",defaultVisibility:!0,parentLayerId:-1,maxScale:0,minScale:0,constructor:function(b){b&&(b.source?b="mapLayer"===b.source.type?new l(b.source):new f(b.source):(b=new l,b.mapLayerId=this.id),this.source=b)},toJson:function(){var b=this.inherited(arguments);b.source=this.source&&this.source.toJson();return h.fixJson(b)}});b("extend-esri")&&n.setObject("layers.DynamicLayerInfo",q,g);return q})},"esri/layers/LayerDrawingOptions":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ../renderers/jsonUtils ./LabelClass".split(" "),
function(q,n,b,g,h,p,l,f){q=q(null,{declaredClass:"esri.layers.LayerDrawingOptions",constructor:function(e){if(e&&(n.mixin(this,e),e.renderer&&(this.renderer=l.fromJson(e.renderer)),e.labelingInfo&&0<e.labelingInfo.length)){this.labelingInfo=[];var c;b.forEach(e.labelingInfo,function(a){c=new f(a);this.labelingInfo.push(c)},this)}},toJson:function(){var e={renderer:this.renderer&&this.renderer.toJson(),transparency:this.transparency,scaleSymbols:this.scaleSymbols,showLabels:this.showLabels};this.labelingInfo&&
0<this.labelingInfo.length&&(e.labelingInfo=[],b.forEach(this.labelingInfo,function(b){e.labelingInfo.push(b.toJson())}));return p.fixJson(e)}});g("extend-esri")&&n.setObject("layers.LayerDrawingOptions",q,h);return q})},"esri/layers/LabelClass":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojox/gfx/_base ../kernel ../lang ../symbols/TextSymbol ../symbols/ShieldLabelSymbol".split(" "),function(q,n,b,g,h,p,l,f){var e=/__begin__/ig,c=/__end__/ig,a=/^__begin__/i,d=/__end__$/i;q=q(null,
{declaredClass:"esri.layers.LabelClass",labelPlacement:null,labelExpression:null,format:null,fieldInfos:null,useCodedValues:null,symbol:null,maxScale:0,minScale:0,where:null,sizeInfo:null,_labelPlacementLookup:{"above-center":"esriServerPointLabelPlacementAboveCenter","above-left":"esriServerPointLabelPlacementAboveLeft","above-right":"esriServerPointLabelPlacementAboveRight","below-center":"esriServerPointLabelPlacementBelowCenter","below-left":"esriServerPointLabelPlacementBelowLeft","below-right":"esriServerPointLabelPlacementBelowRight",
"center-center":"esriServerPointLabelPlacementCenterCenter","center-left":"esriServerPointLabelPlacementCenterLeft","center-right":"esriServerPointLabelPlacementCenterRight","above-after":"esriServerLinePlacementAboveAfter","above-along":"esriServerLinePlacementAboveAlong","above-before":"esriServerLinePlacementAboveBefore","above-start":"esriServerLinePlacementAboveStart","above-end":"esriServerLinePlacementAboveEnd","below-after":"esriServerLinePlacementBelowAfter","below-along":"esriServerLinePlacementBelowAlong",
"below-before":"esriServerLinePlacementBelowBefore","below-start":"esriServerLinePlacementBelowStart","below-end":"esriServerLinePlacementBelowEnd","center-after":"esriServerLinePlacementCenterAfter","center-along":"esriServerLinePlacementCenterAlong","center-before":"esriServerLinePlacementCenterBefore","center-start":"esriServerLinePlacementCenterStart","center-end":"esriServerLinePlacementCenterEnd","always-horizontal":"esriServerPolygonPlacementAlwaysHorizontal"},constructor:function(a){a&&(n.mixin(this,
a),this._labelPlacementLookup.hasOwnProperty(this.labelPlacement)||(this.labelPlacement=p.valueOf(this._labelPlacementLookup,a.labelPlacement)),a.format&&(this.format=a.format),a.fieldInfos&&(this.fieldInfos=a.fieldInfos),a.symbol&&(this.symbol="esriSHD"===a.symbol.type?new f(a.symbol):new l(a.symbol)),a=this.sizeInfo)&&(a.minSize&&(a.minSize=g.pt2px(a.minSize)),a.maxSize&&(a.maxSize=g.pt2px(a.maxSize)))},getSymbol:function(){return this.symbol},toJson:function(){var a=this.sizeInfo;a&&(a=n.mixin({},
a),a.minSize&&(a.minSize=g.px2pt(a.minSize)),a.maxSize&&(a.maxSize=g.px2pt(a.maxSize)));var b=p.fixJson(this.labelExpressionInfo&&n.clone(this.labelExpressionInfo));this._processLabelExpressionInfo(b);a={name:this.name,labelExpression:this.labelExpression,labelExpressionInfo:b,format:this.format||void 0,fieldInfos:this.fieldInfos||void 0,useCodedValues:this.useCodedValues,maxScale:this.maxScale,minScale:this.minScale,where:this.where,sizeInfo:a||void 0,labelPlacement:this._labelPlacementLookup.hasOwnProperty(this.labelPlacement)?
this._labelPlacementLookup[this.labelPlacement]:this.labelPlacement,symbol:this.symbol&&this.symbol.toJson()};return p.fixJson(a)},_processLabelExpressionInfo:function(a){a&&a.value&&(a.expression=this._convertTemplatedStringToArcade(a.value))},_convertTemplatedStringToArcade:function(b){var f;b&&(f=n.replace(b,function(a,b){return'__begin__$feature["'+b+'"]__end__'}),f=a.test(f)?f.replace(a,""):'"'+f,f=d.test(f)?f.replace(d,""):f+'"',f=f.replace(e,'" + ').replace(c,' + "'));return f}});b("extend-esri")&&
n.setObject("layers.LabelClass",q,h);return q})},"esri/symbols/ShieldLabelSymbol":function(){define("dojo/_base/declare dojo/_base/lang dojo/sniff dojox/gfx/_base ../kernel ../lang ../urlUtils ./MarkerSymbol ./Font".split(" "),function(q,n,b,g,h,p,l,f,e){var c={url:"",width:12,height:12,angle:0,xoffset:0,yoffset:0};q=q(f,{declaredClass:"esri.symbol.ShieldLabelSymbol",type:"shieldlabelsymbol",color:[255,255,255,1],width:32,height:32,font:g.defaultFont,constructor:function(a,d,e,f,h){a?n.isString(a)?
(this.url=a,d&&(this.color=d),e&&(this.width=e),f&&(this.height=f),void 0!==h&&(this.font=h)):(this.width=g.pt2px(a.width),this.height=g.pt2px(a.height),d=a.imageData,9>b("ie")||!d||(e=this.url,this.url="data:"+(a.contentType||"image")+";base64,"+d,this.imageData=e)):n.mixin(this,c)},getStroke:function(){return null},getFill:function(){return this.color},setWidth:function(a){this.width=a;return this},setHeight:function(a){this.height=a;return this},setUrl:function(a){a!==this.url&&(delete this.imageData,
delete this.contentType);this.url=a;return this},setFont:function(a){this.font=a;return this},setText:function(a){this.text=a;return this},getWidth:function(){return this.width},getHeight:function(){return this.height},getShapeDescriptors:function(){return{defaultShape:{type:"image",x:-Math.round(this.width/2),y:-Math.round(this.height/2),width:this.width,height:this.height,src:this.url||""},fill:null,stroke:null}},toJson:function(){var a=this.url,b=this.imageData;if(0===a.indexOf("data:"))var c=
a,a=b,b=c.indexOf(";base64,")+8,b=c.substr(b);var a=l.getAbsoluteUrl(a),c=g.px2pt(this.width),c=isNaN(c)?void 0:c,f=g.px2pt(this.height),f=isNaN(f)?void 0:f,a=p.fixJson(n.mixin(this.inherited("toJson",arguments),{type:"esriSHD",url:a,imageData:b,contentType:this.contentType,width:c,height:f}));this.font?(b=new e(this.font),a.font=b.toJson()):a.font=null;delete a.size;a.imageData||delete a.imageData;return a}});q.defaultProps=c;b("extend-esri")&&(n.setObject("symbol.ShieldLabelSymbol",q,h),h.symbol.defaultShieldLabelSymbol=
c);return q})},"esri/layers/agsdynamic":function(){define(["./agscommon","./ArcGISDynamicMapServiceLayer","../_time"],function(){return{}})},"esri/layers/ArcGISDynamicMapServiceLayer":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/sniff dojo/io-query ../kernel ../config ../lang ../request ../urlUtils ../layerUtils ../geometry/scaleUtils ./DynamicMapServiceLayer ./ArcGISMapServiceLayer ./TimeInfo ./LayerTimeOptions ./ImageParameters ./DynamicLayerInfo ./LayerMapSource".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v){q=q([w,t],{declaredClass:"esri.layers.ArcGISDynamicMapServiceLayer",_eventMap:{"visible-layers-change":["visibleLayers"]},constructor:function(a,b,c){a=b&&b.imageParameters;var d=n.hitch;if(a){var e=a.layerDefinitions;e&&this.setLayerDefinitions(e);a.layerOption===r.LAYER_OPTION_SHOW&&(this.visibleLayers=[].concat(a.layerIds),this.onVisibleLayersChange(this.visibleLayers))}this._setIsPNG32=d(this,this._setIsPNG32);this.dpi=a&&a.dpi||96;this.imageFormat=
a&&a.format||"png8";this.imageTransparency=a&&!1===a.transparent?!1:!0;this._setIsPNG32();this.gdbVersion=b&&b.gdbVersion;this._params.gdbVersion=this.gdbVersion;e=a&&a.layerDefinitions;n.mixin(this._params,this._url.query,{dpi:this.dpi,transparent:this.imageTransparency,format:this.imageFormat},a?a.toJson():{});e&&(this._params.layerDefs=e);this.getImageUrl=d(this,this.getImageUrl);this._initLayer=d(this,this._initLayer);this._load=d(this,this._load);this.useMapImage=b?b.useMapImage:!1;this._loadCallback=
b&&b.loadCallback;(b=b&&b.resourceInfo)?this._initLayer(b):void 0!==c&&!1!==c||this._load();this.registerConnectEvents()},disableClientCaching:!1,layerDefinitions:null,_initLayer:function(a,b){this.inherited(arguments);a.timeInfo&&(this.timeInfo=new k(a.timeInfo));this.loaded=!0;this.onLoad(this);var c=this._loadCallback;c&&(delete this._loadCallback,c(this))},getImageUrl:function(b,e,k,h){var m=this._url.path+"/export",l=this._params,q=l.token=this._getToken(),r=b.spatialReference.wkid||g.toJson(b.spatialReference.toJson()),
t=this._errorHandler;delete l._ts;n.mixin(l,{bbox:b.xmin+","+b.ymin+","+b.xmax+","+b.ymax,bboxSR:r,imageSR:r,size:e+","+k},this.disableClientCaching?{_ts:(new Date).getTime()}:{});l.layerDefs&&(b=d._serializeLayerDefinitions(l.layerDefs,10.5<=this.version),l=n.mixin({},l),delete l.layerDefs,l.layerDefs=b);b=a.addProxy(a.normalize(m)+"?"+p.objectToQuery(n.mixin({},l,{f:"image"})));b.length>f.defaults.io.postLength||this.useMapImage?this._jsonRequest=c({url:m,content:n.mixin(l,{f:"json"}),callbackParamName:"callback",
load:function(b){b.imageData?b="data:"+(b.contentType||"image")+";base64,"+b.imageData:(b=b.href,q&&(b+=-1===b.indexOf("?")?"?token\x3d"+q:"\x26token\x3d"+q),b=a.addProxy(b));h(b)},error:t}):h(b)},_setIsPNG32:function(){var a=this.imageFormat.toLowerCase(),b=h("ie");this.isPNG32=b&&6===b&&("png32"===a||"png24"===a)&&this.imageTransparency},_setTime:function(a){var c=this.timeInfo;a=this._params.time=a?a.toJson().join(","):null;if(10.02>this.version&&c)if(a)this._params.layerTimeOptions=d._serializeTimeOptions(this.layerTimeOptions);
else{var e=this.layerInfos;if(e){var f=this.layerTimeOptions,g=f?f.slice(0):[],k=[];b.forEach(e,function(a){a.subLayerIds||k.push(a.id)});k.length&&(b.forEach(k,function(a){if(!g[a]){var b=new u;b.useTime=!1;g[a]=b}}),this._params.layerTimeOptions=d._serializeTimeOptions(g,k))}}10.02<=this.version&&c&&!a&&!c.hasLiveData&&(this._params.time="null,null")},setDPI:function(a,b){this.dpi=this._params.dpi=a;b||this.refresh(!0)},setImageFormat:function(a,b){this.imageFormat=this._params.format=a;this._setIsPNG32();
b||this.refresh(!0)},setImageTransparency:function(a,b){this.imageTransparency=this._params.transparent=a;this._setIsPNG32();b||this.refresh(!0)},setVisibleLayers:function(a,b){this.visibleLayers=a;this._params.layers=r.LAYER_OPTION_SHOW+":"+(a.length?a.join():"-1");this._updateDynamicLayers();b||this.refresh(!0);this.onVisibleLayersChange(this.visibleLayers)},onVisibleLayersChange:function(){},setDefaultVisibleLayers:function(a){this.visibleLayers=this._defaultVisibleLayers;this._params.layers=null;
this._updateDynamicLayers();a||this.refresh(!0);this.onVisibleLayersChange(this.visibleLayers)},setLayerDefinitions:function(a,b){this.layerDefinitions=a;this._params.layerDefs=a;this._updateDynamicLayers();b||this.refresh(!0)},setDefaultLayerDefinitions:function(a){this.layerDefinitions=this._params.layerDefs=null;this._updateDynamicLayers();a||this.refresh(!0)},setDisableClientCaching:function(a){this.disableClientCaching=a},setLayerTimeOptions:function(a,b){this.layerTimeOptions=a;this._params.layerTimeOptions=
d._serializeTimeOptions(a);this._updateDynamicLayers();b||this.refresh(!0)},refresh:function(a){if(a)this.inherited(arguments);else{var b=this.disableClientCaching;this.disableClientCaching=!0;this.inherited(arguments);this.disableClientCaching=b}},setLayerDrawingOptions:function(a,b){this.layerDrawingOptions=a;this._updateDynamicLayers();b||this.refresh(!0)},setDynamicLayerInfos:function(a,b){a&&0<a.length?(this.dynamicLayerInfos=a,this.visibleLayers=d._getDefaultVisibleLayers(a),this.onVisibleLayersChange(this.visibleLayers)):
this.dynamicLayerInfos=this.layerDrawingOptions=null;this._updateDynamicLayers();b||this.refresh(!0)},createDynamicLayerInfosFromLayerInfos:function(){var a=[],c;b.forEach(this.layerInfos,function(b){c=new y(b.toJson());c.source=new v({mapLayerId:b.id});a.push(c)});return a},_onDynamicLayersChange:function(){},_updateDynamicLayers:function(){if(this.dynamicLayerInfos&&0<this.dynamicLayerInfos.length||this.layerDrawingOptions&&0<this.layerDrawingOptions.length){this.dynamicLayerInfos&&0!==this.dynamicLayerInfos.length||
(this.dynamicLayerInfos=this.createDynamicLayerInfosFromLayerInfos());var a;a=this.dynamicLayerInfos;var c=[],e=this._map&&m.getScale(this._map),f=this.visibleLayers,k=e?d._getLayersForScale(e,a):f;b.forEach(a,function(a){if(!a.subLayerIds){var d,e=a.id;if(-1!==b.indexOf(f,e)&&-1!==b.indexOf(k,e)){d={id:e,name:a.name};d.source=a.source&&a.source.toJson();var g;this.layerDefinitions&&this.layerDefinitions[e]&&(g=this.layerDefinitions[e]);g&&(d.definitionExpression=g);var h;this.layerDrawingOptions&&
this.layerDrawingOptions[e]&&(h=this.layerDrawingOptions[e]);h&&(g=h.toJson(),this._fixMarkerColor(g.renderer),d.drawingInfo=g);var m;this.layerTimeOptions&&this.layerTimeOptions[e]&&(m=this.layerTimeOptions[e]);m&&(d.layerTimeOptions=m.toJson());d.minScale=a.minScale||0;d.maxScale=a.maxScale||0;c.push(d)}}},this);a=g.toJson(c);this._params.dynamicLayers&&this._params.dynamicLayers.length===a.length&&this._params.dynamicLayers===a||(this._params.dynamicLayers=a,this._onDynamicLayersChange(this._params.dynamicLayers))}else this._params.dynamicLayers?
(this._params.dynamicLayers=null,this._onDynamicLayersChange(null)):this._params.dynamicLayers=null},_fixMarkerColor:function(a){b.forEach(this._getAllSimpleMarkerSymbols(a),function(a){if(!a.color){var b=[0,0,0,0],c=a.outline&&a.outline.color;"esriSMSX"!==a.style&&"esriSMSCross"!==a.style||!c||(b=c.slice(0));a.color=b}})},_getAllSimpleMarkerSymbols:function(a){return b.filter(this._getAllSymbols(a),function(a){return"esriSMS"===a.type})},_getAllSymbols:function(a){var c=[];a&&(c.push(a.symbol),c.push(a.defaultSymbol),
b.forEach(a.uniqueValueInfos||a.classBreakInfos,function(a){c.push(a.symbol)}),c=b.filter(c,e.isDefined));return c},_onExtentChangeHandler:function(a,b,c){c&&this._updateDynamicLayers();this.inherited(arguments)},_setMap:function(a,b,c){this._map=a;this._updateDynamicLayers();return this.inherited(arguments)},onGDBVersionChange:function(){},setGDBVersion:function(a,b){this.gdbVersion=a;this._params.gdbVersion=a;this.onGDBVersionChange();b||this.refresh(!0)},exportMapImage:function(a,b){var c=n.hitch(this,
function(){var c=f.defaults.map,e=a&&a.layerDefinitions;a=a?a.toJson(this.normalization):{};e&&(a.layerDefs=e);a=n.mixin({size:c.width+","+c.height},this._params,a,{f:"json"});delete a._ts;a.layerDefs&&(c=d._serializeLayerDefinitions(a.layerDefs,10.5<=this.version),delete a.layerDefs,a.layerDefs=c);this._exportMapImage(this._url.path+"/export",a,b)});if(this.loaded)c();else this.on("load",c)}});h("extend-esri")&&n.setObject("layers.ArcGISDynamicMapServiceLayer",q,l);return q})},"esri/layers/DynamicMapServiceLayer":function(){define("dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/dom-construct dojo/dom-style dojox/gfx/matrix ../kernel ../config ../sniff ../request ../domUtils ./layer ./MapImage".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){var w=f.defaults.map.zoomDuration;q=q(d,{declaredClass:"esri.layers.DynamicMapServiceLayer",_eventMap:{"map-image-export":["mapImage"]},constructor:function(a,c){this.useMapTime=c&&c.hasOwnProperty("useMapTime")?!!c.useMapTime:!0;this.extentProcessor=c&&c.extentProcessor;a=b.hitch;this._exportMapImageHandler=a(this,this._exportMapImageHandler);this._imgSrcFunc=a(this,this._imgSrcFunc);this._divAlphaImageFunc=a(this,this._divAlphaImageFunc);this._tileLoadHandler=
a(this,this._tileLoadHandler);this._tileErrorHandler=a(this,this._tileErrorHandler);this.registerConnectEvents()},opacity:1,isPNG32:!1,_setMap:function(a,b,c){this.inherited(arguments);this._map=a;var d=this._div=g.create("div",null,b),f=l._css.names,k={position:"absolute",width:a.width+"px",height:a.height+"px",overflow:"visible",opacity:this.opacity},m=e("ie"),p=n.connect,q=a.__visibleDelta;8===m&&delete k.opacity;"css-transforms"===a.navigationMode?(this._isChildLayer||(k[f.transform]=l._css.translate(q.x,
q.y),h.set(d,k)),this._left=q.x,this._top=q.y):(k.left="0px",k.top="0px",h.set(d,k),this._left=this._top=0);h.set(d,k);this._onResizeHandler_connect=p(a,"onResize",this,"_onResizeHandler");this._opacityChangeHandler_connect=p(this,"onOpacityChange",this,"_opacityChangeHandler");this._img_loading=null;this._dragOrigin={x:0,y:0};this.evaluateSuspension();if(this.suspended&&!a.loaded)var t=n.connect(a,"onLoad",this,function(){n.disconnect(t);t=null;this.evaluateSuspension()});this.extentProcessor&&(this._panEndEvalHandle=
n.connect(a,"onPanEnd",this,this.evaluateSuspension),this._zoomEndEvalHandle=n.connect(a,"onZoomEnd",this,this.evaluateSuspension));return d},_unsetMap:function(a,b){this._img&&this._clearEventListeners(this._img);this._img_loading&&this._clearEventListeners(this._img_loading);g.destroy(this._div);this._map=this._div=this._img=this._img_loading=null;var c=n.disconnect;c(this._onResizeHandler_connect);c(this._opacityChangeHandler_connect);c(this._panEndEvalHandle);c(this._zoomEndEvalHandle);this._panEndEvalHandle=
this._zoomEndEvalHandle=this._onResizeHandler_connect=this._opacityChangeHandler_connect=null;this._fireUpdateEnd();this._toggleTime();clearTimeout(this._wakeTimer);this._wakeTimer=null;this._disableDrawConnectors();this.inherited(arguments)},_onResizeHandler:function(a,b,c){h.set(this._div,{width:b+"px",height:c+"px"});this._onExtentChangeHandler(a)},onSuspend:function(){this.inherited(arguments);this._fireUpdateEnd();this._toggleTime();a.hide(this._div);clearTimeout(this._wakeTimer);this._wakeTimer=
null;this._disableDrawConnectors()},onResume:function(){this.inherited(arguments);var a=this._map;this._toggleTime();"css-transforms"===a.navigationMode&&(a=a.__visibleDelta,this._left=a.x,this._top=a.y,this._isChildLayer||h.set(this._div,l._css.names.transform,l._css.translate(this._left,this._top)));this._enableDrawConnectors();this._wakeTimer=this._wakeTimer||setTimeout(b.hitch(this,function(){this.suspended||this._onExtentChangeHandler(this._map.extent,null,!0)}),0)},canResume:function(){var a=
this.inherited(arguments);if(a){var b=this._map.extent;this.extentProcessor&&b&&(a=!!this.extentProcessor({layer:this,extent:b,width:this._map.width}).extent)}return a},_enableDrawConnectors:function(){var a=n.connect,b=this._map;b&&(this._onPanHandler_connect=a(b,"onPan",this,"_onPanHandler"),this._onExtentChangeHandler_connect=a(b,"onExtentChange",this,"_onExtentChangeHandler"),"css-transforms"===b.navigationMode?this._onScaleHandler_connect=a(b,"onScale",this,this._onScaleHandler):this._onZoomHandler_connect=
a(b,"onZoom",this,"_onZoomHandler"))},_disableDrawConnectors:function(){var a=n.disconnect;a(this._onPanHandler_connect);a(this._onExtentChangeHandler_connect);a(this._onZoomHandler_connect);a(this._onScaleHandler_connect);this._onPanHandler_connect=this._onExtentChangeHandler_connect=this._onZoomHandler_connect=this._onScaleHandler_connect=null},_toggleTime:function(){var a=this._map;this.timeInfo&&this.useMapTime&&a&&!this.suspended?(this._timeConnect||(this._timeConnect=n.connect(a,"onTimeExtentChange",
this,this._onTimeExtentChangeHandler)),this._setTime(a.timeExtent)):(n.disconnect(this._timeConnect),this._timeConnect=null,this._setTime(null))},_setTime:function(a){this._params&&(this._params.time=a?a.toJson().join(","):null)},_onPanHandler:function(a,b){this._panDx=b.x;this._panDy=b.y;a=this._dragOrigin;var c=this._map.__visibleDelta,d=this._img;d&&("css-transforms"===this._map.navigationMode?(this._left=c.x+b.x,this._top=c.y+b.y,this._isChildLayer||h.set(this._div,l._css.names.transform,l._css.translate(this._left,
this._top))):h.set(d,{left:a.x+b.x+"px",top:a.y+b.y+"px"}))},_onExtentChangeHandler:function(a,b,c){if(!this.suspended){clearTimeout(this._wakeTimer);this._wakeTimer=null;var d=this._map,f=this._img,k=f&&f.style,m=this._dragOrigin;!b||c||!f||b.x===this._panDx&&b.y===this._panDy||("css-transforms"===d.navigationMode?(b=d.__visibleDelta,this._left=b.x,this._top=b.y,this._isChildLayer||h.set(this._div,l._css.names.transform,l._css.translate(this._left,this._top))):h.set(f,{left:m.x+b.x+"px",top:m.y+
b.y+"px"}));f?(m.x=parseInt(k.left,10),m.y=parseInt(k.top,10)):m.x=m.y=0;"css-transforms"===d.navigationMode&&c&&f&&(h.set(f,l._css.names.transition,"none"),f._multiply=f._multiply?p.multiply(f._matrix,f._multiply):f._matrix);this._fireUpdateStart();if(c=this._img_loading)if(this._clearEventListeners(c),g.destroy(c),this._img_loading=null,c=this._jsonRequest){try{c.cancel()}catch(F){}this._jsonRequest=null}var q=d.width;c=d.height;b=q;var t=0;10<=this.version&&d.wrapAround180&&(a=a._normalize(!0));
this.extentProcessor&&(t=this.extentProcessor({layer:this,extent:a,width:b}),a=t.extent,b=t.width,t=t.marginLeft||0);if(this.isPNG32)f=this._img_loading=g.create("div"),f.id=d.id+"_"+this.id+"_"+(new Date).getTime(),h.set(f,{position:"absolute",left:"0px",top:"0px",width:b+"px",height:c+"px"}),d=f.appendChild(g.create("div")),h.set(d,{opacity:0,width:b+"px",height:c+"px"}),this.getImageUrl(a,b,c,this._divAlphaImageFunc),f=null;else{var u=this._img_loading=g.create("img"),C=l._css.names,H=e("ie"),
E={position:"absolute",width:b+"px",height:c+"px"};u.setAttribute("decoding","sync");8===H&&(E.opacity=this.opacity);null!=t&&0!==t&&(E.marginLeft=t+"px");"css-transforms"===d.navigationMode?(E[C.transform]=l._css.translate(-this._left,-this._top),u._tdx=-this._left,u._tdy=-this._top,E[C.transition]=C.transformName+" "+w+"ms ease",this.extentProcessor&&(E[C.origin]=q/2-t+"px "+c/2+"px")):(E.left="0px",E.top="0px");u.id=d.id+"_"+this.id+"_"+(new Date).getTime();h.set(u,E);u._onload_connect=n.connect(u,
"onload",this,"_onLoadHandler");u._onerror_connect=n.connect(u,"onerror",this,"_onErrorHandler");u._onabort_connect=n.connect(u,"onabort",this,"_onErrorHandler");this._startRect={left:m.x,top:m.y,width:f?parseInt(k.width,10):b,height:f?parseInt(k.height,10):c,marginLeft:f?parseInt(k.marginLeft||"0",10):t,zoom:k&&k.zoom?parseFloat(k.zoom):1};this.getImageUrl(a,b,c,this._imgSrcFunc);u=null}}},_onTimeExtentChangeHandler:function(a){this.suspended||(this._setTime(a),this.refresh(!0))},getImageUrl:function(a,
b,c,d){},_imgSrcFunc:function(a){this._img_loading.src=a},_divAlphaImageFunc:function(a){h.set(this._img_loading,"filter","progid:DXImageTransform.Microsoft.AlphaImageLoader(src\x3d'"+a+"', sizingMethod\x3d'scale')");this._onLoadHandler({currentTarget:this._img_loading})},_onLoadHandler:function(b){b=b.currentTarget;var c=this._map;this._clearEventListeners(b);!c||c.__panning||c.__zooming?g.destroy(b):(this._img&&this._div.removeChild(this._img),this._img=b,c=b.style,this._startRect={left:0,top:0,
width:parseInt(c.width,10),height:parseInt(c.height,10),marginLeft:parseInt(c.marginLeft||"0",10),zoom:1},this._div.appendChild(b),this.suspended||a.show(this._div),this._img_loading=null,b=this._dragOrigin,b.x=b.y=0,this.onUpdate());this._fireUpdateEnd()},_onErrorHandler:function(a){a=a.currentTarget;h.set(a,"visibility","hidden");this._clearEventListeners(a);a=Error("Unable to load image: "+a.src);this.onError(a);this._fireUpdateEnd(a)},_clearEventListeners:function(a){n.disconnect(a._onload_connect);
n.disconnect(a._onerror_connect);n.disconnect(a._onabort_connect);a._onload_connect=a._onerror_connect=a._onabort_connect=null},setUseMapTime:function(a,b){this.useMapTime=a;this._toggleTime();b||this.refresh(!0)},refresh:function(){this._map&&this._onExtentChangeHandler(this._map.extent)},_onScaleHandler:function(a,b){var c={},d=l._css.names,e=this._img;if(e){h.set(e,d.transition,b?"none":d.transformName+" "+w+"ms ease");e._matrix=a;a=e._multiply?p.multiply(a,e._multiply):a;if(e._tdx||e._tdy)a=p.multiply(a,
{xx:1,xy:0,yx:0,yy:1,dx:e._tdx,dy:e._tdy});c[d.transform]=l._css.matrix(a);h.set(e,c)}},_onZoomHandler:function(a,b,c){a=this._startRect;var d=a.width*b,f=a.height*b,g=a.marginLeft*b,k=this._img,m=e("ie");k&&(m&&8>m?h.set(k,{left:a.left-(d-a.width)*(c.x-a.left)/a.width+"px",top:a.top-(f-a.height)*(c.y-a.top)/a.height+"px",zoom:b*a.zoom}):h.set(k,{left:a.left-(d-a.width)*(c.x-a.left)/a.width+"px",top:a.top-(f-a.height)*(c.y-a.top)/a.height+"px",width:d+"px",height:f+"px"}),null!=g&&0!==g&&h.set(k,
{marginLeft:g+"px"}))},_exportMapImage:function(a,b,d){var e=this._exportMapImageHandler;b.token=this._getToken();c({url:a,content:b,callbackParamName:"callback",load:function(a,b){e(a,b,d)},error:f.defaults.io.errorHandler})},_exportMapImageHandler:function(a,b,c){a=new m(a);this.onMapImageExport(a);c&&c(a)},onMapImageExport:function(){},setOpacity:function(a){if(this.opacity!=a)this.onOpacityChange(this.opacity=a)},onOpacityChange:function(){},_opacityChangeHandler:function(a){var b=8===e("ie")?
this._img:this._div;h.set(b,"opacity",a)}});e("extend-esri")&&b.setObject("layers.DynamicMapServiceLayer",q,l);return q})},"esri/layers/MapImage":function(){define("dojo/_base/declare dojo/_base/lang dojo/dom-style dojo/has ../kernel ../domUtils ../geometry/Extent".split(" "),function(q,n,b,g,h,p,l){q=q(null,{declaredClass:"esri.layers.MapImage",constructor:function(b){n.mixin(this,b);this.extent=new l(this.extent)},visible:!0,opacity:1,getLayer:function(){return this._layer},getNode:function(){return this._node},
show:function(){if(!this.visible){this.visible=!0;var b=this._node,e=this._layer,c;if(b){if(c=e&&e._div)e.suspended||e._setPos(b,c._left,c._top),(e._active||c).appendChild(b);p.show(b)}}},hide:function(){if(this.visible){this.visible=!1;var b=this._node;b&&(p.hide(b),b.parentNode&&b.parentNode.removeChild(b))}},setOpacity:function(f){var e=this._node;this.opacity=f;e&&b.set(e,"opacity",f)}});g("extend-esri")&&n.setObject("layers.MapImage",q,h);return q})},"esri/layers/ImageParameters":function(){define("dojo/_base/kernel dojo/_base/declare dojo/_base/lang dojo/_base/json dojo/has ../kernel ../lang ../layerUtils".split(" "),
function(q,n,b,g,h,p,l,f){n=n(null,{declaredClass:"esri.layers.ImageParameters",constructor:function(){this.layerDefinitions=[]},bbox:null,extent:null,width:null,height:null,dpi:null,format:null,imageSpatialReference:null,layerOption:null,layerIds:null,transparent:null,timeExtent:null,layerTimeOptions:null,toJson:function(b){this.bbox&&q.deprecated(this.declaredClass+" : Property 'bbox' deprecated. Use property 'extent'.");var c=this.bbox||this.extent,c=c&&b&&c._normalize(!0);b=this.layerOption;var a=
c?c.spatialReference.wkid||g.toJson(c.spatialReference.toJson()):null,d=this.imageSpatialReference,c={dpi:this.dpi,format:this.format,transparent:this.transparent,size:null!==this.width&&null!==this.height?this.width+","+this.height:null,bbox:c?c.xmin+","+c.ymin+","+c.xmax+","+c.ymax:null,bboxSR:a,layers:b?b+":"+this.layerIds.join(","):null,imageSR:d?d.wkid||g.toJson(d.toJson()):a};c.layerDefs=f._serializeLayerDefinitions(this.layerDefinitions);b=this.timeExtent;c.time=b?b.toJson().join(","):null;
c.layerTimeOptions=f._serializeTimeOptions(this.layerTimeOptions);return l.filter(c,function(a){if(null!==a)return!0})}});b.mixin(n,{LAYER_OPTION_SHOW:"show",LAYER_OPTION_HIDE:"hide",LAYER_OPTION_INCLUDE:"include",LAYER_OPTION_EXCLUDE:"exclude"});h("extend-esri")&&b.setObject("layers.ImageParameters",n,p);return n})},"esri/_time":function(){define(["./TimeExtent"],function(){return{}})},"esri/layers/FeatureLayer":function(){define("require module dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/_base/json dojo/_base/Deferred dojo/date/locale dojo/io-query dojo/dom-construct dojo/i18n dojo/when dojo/promise/all ../sniff ../kernel ../lang ../request ../config ../deferredUtils ../promiseList ../SpatialReference ../urlUtils ../symbols/SimpleMarkerSymbol ../symbols/SimpleLineSymbol ../symbols/SimpleFillSymbol ../symbols/jsonUtils ../renderers/SimpleRenderer ../renderers/UniqueValueRenderer ../renderers/jsonUtils ../support/expressionUtils ../tasks/QueryTask ../tasks/query ../tasks/FeatureSet ../tasks/StatisticDefinition ../geometry/Extent ../geometry/jsonUtils ../geometry/normalizeUtils ../geometry/scaleUtils ./GraphicsLayer ./Field ./TimeInfo ./TimeReference ./FeatureType ./FeatureTemplate ./FeatureEditResult ./LabelClass ./SnapshotMode ./OnDemandMode ./SelectionMode ./StreamMode ./TrackManager ./HeatmapManager ./clustering/ClusterManager dojo/i18n!../nls/jsapi dojo/has!extend-esri?./agscommon".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H,E,F,I,X,N,G,Q,M,U,O,L,ba,P,V,Y,oa,ea,ca,ga,ha,pa,ja,ya,sa,wa,Ba,Ca,ta,ra){var va=y.defaults,Aa=!!t("esri-pbf"),qa=!!t("esri-featurelayer-pbf"),S=b(V,{declaredClass:"esri.layers.FeatureLayer",invalidParams:"query contains one or more unsupported parameters",reHostedFS:/(https?:)?\/\/services.*\.arcgis\.com/i,maxPointCountForAuto:4E3,maxRecordCountForAuto:2E3,maxVertexCountForAuto:25E4,generalizeForScale:4E3,_eventMap:{"add-attachment-complete":["result"],
"before-apply-edits":["adds","updates","deletes"],"delete-attachments-complete":["results"],"edits-complete":["adds","updates","deletes"],"query-attachment-infos-complete":["results"],"query-count-complete":["count"],"query-features-complete":["featureSet"],"query-ids-complete":["objectIds"],"query-related-features-complete":["featureSets"],"selection-complete":["features","method"],"update-end":["error","info"]},constructor:function(a,b){this._preventInit||this._initFeatureLayer(a,b)},_initFeatureLayer:function(a,
b){this.i18n=ra;b=b||{};this._featureReduction=this._featureReduction||b.featureReduction;this._featureReductionEnabled=null!=b.featureReductionEnabled?b.featureReductionEnabled:!0;this.showLabels=null!=b.showLabels?b.showLabels:!0;this._outFields=b.outFields;this._defnExpr=b.definitionExpression;this._loadCallback=b.loadCallback;this._trackIdField=b.trackIdField;this.objectIdField=b.objectIdField;this._maxOffset=this._optMaxOffset=null!=b.maxAllowableOffset?b.maxAllowableOffset:this.maxAllowableOffset;
this.quantize=null!=b.quantize?b.quantize:!0;this._optEditable=b.editable;this._optAutoGen=b.autoGeneralize;this.editSummaryCallback=b.editSummaryCallback;this.userId=b.userId;this.userIsAdmin=b.userIsAdmin;this.useMapTime=b.hasOwnProperty("useMapTime")?!!b.useMapTime:!0;this.source=b.source;this.gdbVersion=b.gdbVersion;this.orderByFields=b.orderByFields;this.maxPointCountForAuto=null!=b.maxPointCountForAuto?b.maxPointCountForAuto:this.maxPointCountForAuto;this.maxRecordCountForAuto=null!=b.maxRecordCountForAuto?
b.maxRecordCountForAuto:this.maxRecordCountForAuto;this.maxVertexCountForAuto=null!=b.maxVertexCountForAuto?b.maxVertexCountForAuto:this.maxVertexCountForAuto;this.generalizeForScale=null!=b.generalizeForScale?b.generalizeForScale:this.generalizeForScale;this.queryPagination=this._optQueryPagination=null!=b.queryPagination?b.queryPagination:!0;this.multipatchOption=b.multipatchOption;this._selectedFeatures={};this._newFeatures=[];this._deletedFeatures={};this._ulid=this._getUniqueId();var c=u.isDefined(b.mode)?
b.mode:S.MODE_ONDEMAND;this._isStream&&(c=S.MODE_STREAM);this.mode=c;switch(c){case S.MODE_SNAPSHOT:this.currentMode=S.MODE_SNAPSHOT;this._mode=new ja(this);break;case S.MODE_ONDEMAND:case S.MODE_AUTO:this.currentMode=S.MODE_ONDEMAND;this._tileWidth=b.tileWidth||512;this._tileHeight=b.tileHeight||512;this._mode=new ya(this);this.latticeTiling=b.latticeTiling;break;case S.MODE_SELECTION:this.currentMode=S.MODE_SELECTION;this._mode=new sa(this);this._isSelOnly=!0;break;case S.MODE_STREAM:this.currentMode=
S.MODE_STREAM,this._mode=new wa(this),this._isStream=!0}this._initLayer=h.hitch(this,this._initLayer);this._selectHandler=h.hitch(this,this._selectHandler);this._editable=!1;if(h.isObject(a)&&a.layerDefinition)return this._collection=!0,this.mode=this._isStream?S.MODE_STREAM:S.MODE_SNAPSHOT,this._isStream||this._outFields||(this._outFields=["*"]),this._initLayer(a),this;this._task=new G(this.url,{source:this.source,gdbVersion:this.gdbVersion});a=this._url.path;this._fserver=!1;-1!==a.search(/\/FeatureServer\//i)&&
(this._fserver=!0);this._checkFeatureLimit();(b=b.resourceInfo)?this._initLayer(b):(this.source&&(b={source:this.source.toJson()},this._url.query=h.mixin(this._url.query,{layer:l.toJson(b)})),this.gdbVersion&&(this._url.query=h.mixin(this._url.query,{gdbVersion:this.gdbVersion})),r({url:a,content:h.mixin({f:"json"},this._url.query),callbackParamName:"callback",load:this._initLayer,error:this._errorHandler}));this.registerConnectEvents()},_initLayer:function(a,b){if(a||b){this._json=a;this._findCredential();
if(this.credential&&this.credential.ssl||a&&a._ssl)this._useSSL(),this._task._useSSL();this.version=a.currentVersion;this.version||(this.version="capabilities"in a||"drawingInfo"in a||"hasAttachments"in a||"htmlPopupType"in a||"relationships"in a||"timeInfo"in a||"typeIdField"in a||"types"in a?10:9.3);this._collection&&(this._isStream||(this.currentMode=S.MODE_SNAPSHOT,this._mode=new ja(this)),this._featureSet=a.featureSet,this._nextId=a.nextObjectId,a=a.layerDefinition);this.geometryType=a.geometryType;
"string"!==typeof this.multipatchOption&&"esriGeometryMultiPatch"===this.geometryType&&(this.multipatchOption="xyFootprint");a.hasOwnProperty("capabilities")?(b=this.capabilities=a.capabilities)&&-1!==b.toLowerCase().indexOf("editing")?this._editable=!0:this._editable=!1:this._collection||(this._editable=this._fserver);u.isDefined(this._optEditable)?(this._editable=this._optEditable,delete this._optEditable):"esriGeometryMultiPatch"===this.geometryType&&(this._editable=!1);this._json=l.toJson(this._json);
this.isEditable()?this._setMaxOffset(null):this.mode===S.MODE_SNAPSHOT||"esriGeometryPolyline"!==this.geometryType&&"esriGeometryPolygon"!==this.geometryType&&!this.hasXYFootprint()||(this._autoGeneralize=u.isDefined(this._optAutoGen)?this._optAutoGen:this.mode===S.MODE_ONDEMAND||this.mode===S.MODE_AUTO,delete this._optAutoGen);b=a.effectiveMinScale||a.minScale;var c=a.effectiveMaxScale||a.maxScale;!this._hasMin&&b&&this.setMinScale(b);!this._hasMax&&c&&this.setMaxScale(c);this.layerId=a.id;this.name=
a.name;this.description=a.description;this.copyright=a.copyrightText;this.type=a.type;this.displayField=a.displayField;this.defaultDefinitionExpression=a.definitionExpression||(a.isView?a.viewDefinitionQuery:a.definitionQuery);this.fullExtent=new O(a.extent);this.initialExtent=new O(this.fullExtent.toJson());this.fullExtent.spatialReference&&(this.spatialReference=new x(this.fullExtent.spatialReference.toJson()));this.defaultVisibility=a.defaultVisibility;if("esriGeometryPoint"===this.geometryType||
"esriGeometryMultipoint"===this.geometryType)this.latticeTiling=!1;this.hasM=a.hasM||!1;this.hasZ=a.hasZ||!1;this.indexedFields=a.indexedFields;this.indexes=a.indexes;this.maxRecordCount=a.maxRecordCount;this.canModifyLayer=a.canModifyLayer;this.supportsStatistics=a.supportsStatistics;this.supportsAdvancedQueries=this._collection?!1:a.supportsAdvancedQueries;this.supportsCalculate=a.supportsCalculate;this.supportsAttachmentsByUploadId=a.supportsAttachmentsByUploadId;this.supportsCoordinatesQuantization=
a.supportsCoordinatesQuantization;this.supportsQuantizationEditMode=a.supportsQuantizationEditMode;this.supportsFormatPBF=a.supportedQueryFormats?-1!==p.map(a.supportedQueryFormats.toLowerCase().split(","),h.trim).indexOf("pbf"):!1;this.quantize=this.quantize&&this.supportsCoordinatesQuantization;this.hasLabels=a.hasLabels;this.canScaleSymbols=a.canScaleSymbols;this.supportsRollbackOnFailureParameter=this.supportsRollbackOnFailure=a.supportsRollbackOnFailure;this.syncCanReturnChanges=a.syncCanReturnChanges;
this.isDataVersioned=a.isDataVersioned;this.editFieldsInfo=a.editFieldsInfo;this.ownershipBasedAccessControlForFeatures=a.ownershipBasedAccessControlForFeatures;this.editFieldsInfo&&this.ownershipBasedAccessControlForFeatures&&(this.creatorField=this.editFieldsInfo.creatorField);this.relationships=a.relationships;this.allowGeometryUpdates=u.isDefined(a.allowGeometryUpdates)?a.allowGeometryUpdates:!0;this.allowUpdateWithoutMValues=!!a.allowUpdateWithoutMValues;this.enableZDefaults=!!a.enableZDefaults;
this.zDefault=u.isDefined(a.zDefault)?a.zDefault:null;this.advancedQueryCapabilities=a.advancedQueryCapabilities||{supportsStatistics:this.supportsStatistics,supportsOrderBy:this.supportsAdvancedQueries,supportsDistinct:this.supportsAdvancedQueries};this.geometryProperties=a.hasGeometryProperties&&a.geometryProperties||null;this.url&&(this.advancedQueryCapabilities.supportsPagination=this.advancedQueryCapabilities.supportsPagination&&(this.reHostedFS.test(this.url)||10.3<this.version));this.queryPagination=
this._optQueryPagination&&this.advancedQueryCapabilities.supportsPagination;this.useStandardizedQueries=a.useStandardizedQueries;this.tileMaxRecordCount=a.tileMaxRecordCount;this.standardMaxRecordCount=a.standardMaxRecordCount;if(b=a.dateFieldsTimeReference)this.dateFieldsTimeReference=new ea(b);this._setMaxOffset(this._maxOffset,!0);this._isTable="Table"===this.type;var d=this.fields=[],c=a.fields;for(b=0;b<c.length;b++)d.push(new Y(c[b]));if(!this.objectIdField){this.objectIdField=a.objectIdField;
if(!this.objectIdField)for(c=a.fields,b=0;b<c.length;b++)if(d=c[b],"esriFieldTypeOID"===d.type){this.objectIdField=d.name;break}this.objectIdField||this._isStream||console.debug("esri.layers.FeatureLayer: "+u.substitute({url:this.url},"objectIdField is not set [url: ${url}]"))}if(!u.isDefined(this._nextId)){c=this.objectIdField;d=-1;if(this._collection&&c){var e=(b=this._featureSet)&&b.features,f=e?e.length:0,g;for(b=0;b<f;b++)g=(g=e[b].attributes)&&g[c],g>d&&(d=g)}this._nextId=d+1}this.globalIdField=
a.globalIdField;if(b=this.typeIdField=a.typeIdField)if(b=!this._getField(b)&&this._getField(b,!0))this.typeIdField=b.name;this.visibilityField=a.visibilityField;if(c=a.defaultSymbol)this.defaultSymbol=E.fromJson(c);var k=this.types=[],m=a.types,n,q,d=(b=this.editFieldsInfo)&&b.creatorField,e=b&&b.editorField;g=d||e;f=[];if(m)for(b=0;b<m.length;b++)n=new ca(m[b]),q=n.templates,g&&q&&q.length&&(f=f.concat(q)),k.push(n);m=a.templates;n=this.templates=[];if(m)for(b=0;b<m.length;b++)k=new ga(m[b]),g&&
f.push(k),n.push(k);for(b=0;b<f.length;b++)if(g=h.getObject("prototype.attributes",!1,f[b]))d&&delete g[d],e&&delete g[e];if(b=a.timeInfo)this.timeInfo=new oa(b),this._startTimeField=b.startTimeField,this._endTimeField=b.endTimeField,this._startTimeField&&this._endTimeField&&(this._twoTimeFields=!0),this._trackIdField?b.trackIdField=this._trackIdField:this._trackIdField=b.trackIdField;this.hasAttachments=!this._collection&&a.hasAttachments?!0:!1;this.htmlPopupType=a.htmlPopupType;b=a.drawingInfo;
var r;(d=b&&b.labelingInfo)&&!this.labelingInfo&&(this.labelingInfo=p.map(d,function(a){return new pa(a)}),this._fixLabelExpr());if(!this.renderer)if(b&&b.renderer){if(r=b.renderer,this.setRenderer(X.fromJson(r)),"classBreaks"===r.type&&this.renderer.setMaxInclusive(!0),!this._collection){var v=r.type,c=[];r=this.renderer;switch(v){case "simple":c.push(r.symbol);break;case "uniqueValue":case "classBreaks":c.push(r.defaultSymbol),c=c.concat(p.map(r.infos,function(a){return a.symbol}))}var c=p.filter(c,
u.isDefined),y=this._url.path+"/images/",ka=this._getToken();p.forEach(c,function(a){var b=a.url;b&&(-1===b.search(/https?\:/)&&-1===b.indexOf("data:")&&(a.url=y+b),ka&&-1!==a.url.search(/https?\:/)&&(a.url+="?token\x3d"+ka))})}}else if(c)m=this.types,0<m.length?(r=new I(this.defaultSymbol,this.typeIdField),p.forEach(m,function(a){r.addValue(a.id,a.symbol)})):r=new F(this.defaultSymbol),this.setRenderer(r);else if(!this._isTable){switch(this.geometryType){case "esriGeometryPoint":case "esriGeometryMultipoint":v=
new B;break;case "esriGeometryPolyline":v=new C;break;case "esriGeometryPolygon":v=new H;break;default:this.hasXYFootprint()&&(v=new H)}this.setRenderer(v?new F(v):null)}v=b&&b.transparency||0;!this.hasOwnProperty("opacity")&&0<v&&(this.opacity=1-v/100);(t("ie")||7<=t("trident")||t("safari"))&&this.isEditable()&&10.02>this.version&&(this._ts=!0);this.statistics=a.statistics;this._fixRendererFields();this._updateRequiredFieldsFromLabelingInfo();this._checkFields();this._updateCaps();var A=function(){null==
this._maxOffset||this._isFractionalOffsetAllowed()||this._setMaxOffset(this._maxOffset);this.loaded=!0;this.setFeatureReduction(this.getFeatureReduction());this.currentMode!==S.MODE_SNAPSHOT&&(this.queryPagination=!1);this.onLoad(this);var a=this._loadCallback;a&&(delete this._loadCallback,a(this))};a=[];this._collection?(v=this._featureSet,this._featureSet=null,this._mode._drawFeatures(new M(v)),this._fcAdded=!0):(a.push(this._forceIdentity()),this._limitPromise&&a.push(this._limitPromise));a.push(this._evalGeometryOperations());
a.length?z(a).then(h.hitch(this,function(){A.call(this)})):A.call(this)}},setShowLabels:function(a){var b=this.showLabels;this.showLabels=a;b!==this.showLabels&&(this._evalSurfaceType(),this.onShowLabelsChange())},onShowLabelsChange:function(){},onRendererChange:function(a){this.inherited(arguments);var b=this._map;this._ager=!!(a&&a.observationAger&&a.observationRenderer);a&&"colors"in a&&"blurRadius"in a&&"maxPixelIntensity"in a?(this._evalSurfaceType(!0),"esriGeometryPoint"==this.geometryType&&
!this._heatmapManager&&b&&(this._heatmapManager=new Ca(this),this._heatmapManager.initialize(b))):this.renderer&&this.renderer.getRendererInfo?p.some(this.renderer.rendererInfos,function(a){return a.renderer&&"colors"in a.renderer&&"blurRadius"in a.renderer})||(this._heatmapManager=null):this._heatmapManager=null;this.timeInfo&&b&&(a&&(a.latestObservationRenderer||a.trackRenderer)?this._trackManager||(this._trackManager=new Ba(this),this._trackManager.initialize(b),this._childLayer=this._trackManager.container,
this._mode._applyTimeFilter()):this._trackManager&&!this._isStream&&(this._trackManager.destroy(),this._trackManager=null));if(a){var c=[],b=p.filter([a,a.observationRenderer,a.latestObservationRenderer,a.trackRenderer],u.isDefined),d=function(a){return null!=a&&"function"!=typeof a&&a};p.forEach(b,function(a){var b=d(a.attributeField),e=d(a.attributeField2);a=d(a.attributeField3);!1!==b&&c.push(b);!1!==e&&c.push(e);!1!==a&&c.push(a)});this._requiredFields=c}else this._requiredFields=[];this.loaded&&
(this._fixRendererFields(),this._checkFields(this._requiredFields),this._collection&&(this._typesDirty=!0))},setFeatureReduction:function(a){a&&(a=h.mixin({},a),null!=a.clusterSize&&null==a.clusterRadius&&(a.clusterRadius=a.clusterSize),delete a.clusterSize);this.loaded?this._isFeatureReductionSupported(a)?this._featureReduction=a:(this._featureReduction=null,a&&console.log("Clustering is not supported for this layer: "+this.url)):this._featureReduction=a;this._evalFeatureReduction(this._featureReduction)},
hasFeatureReduction:function(){return!!this._featureReduction},getFeatureReduction:function(){var a=this._featureReduction;if(a){var a=h.mixin({},a),b=this._clusterManager;if(b=b&&b.aggregationInfo)a.clusterRadius=b.clusterRadius,a.infoTemplate=b.infoTemplate}return a},isFeatureReductionActive:function(){var a=this._clusterManager;return!!(a&&a.isClusteringEnabled()&&a.isClusteringActive())},isFeatureReductionEnabled:function(){return this._featureReductionEnabled},enableFeatureReduction:function(){this._featureReductionEnabled||
(this._featureReductionEnabled=!0,this._evalFeatureReduction(this._featureReduction))},disableFeatureReduction:function(){this._featureReductionEnabled&&(this._featureReductionEnabled=!1,this._evalFeatureReduction(this._featureReduction))},isFeatureReductionApplied:function(){return this.hasFeatureReduction()&&this.isFeatureReductionEnabled()&&this._canCluster(this.getFeatureReduction())},getAggregateGraphics:function(){return this._clusterManager?this._clusterManager.getAggregateGraphics():[]},getChildGraphics:function(a){return this._clusterManager?
this._clusterManager.getFeaturesInCluster(a):[]},getSingleGraphics:function(){return this._clusterManager?this._clusterManager.getSingleGraphics():[]},getFeatureReductionRenderer:function(){return this.isFeatureReductionActive()?this._clusterManager.getClusterRenderer():null},getFeatureReductionLayer:function(){return this._clusterManager?this._clusterManager.container:null},getFeatureReductionField:function(a){var b,c=this._clusterManager?this._clusterManager.getClusterFields():null;a=a?a.toLowerCase():
"";p.some(c,function(c){a===c.name.toLowerCase()&&(b=c);return!!b});return b},_isFeatureReductionSupported:function(a){return a&&"cluster"===a.type&&"esriGeometryPoint"===this.geometryType&&(this._collection||this._isStream||this._optQueryPagination&&this.advancedQueryCapabilities.supportsPagination)},_isReductionCompatibleRenderer:function(a){a=a&&a.declaredClass||"";a=a.toLowerCase();return-1<a.indexOf("simplerenderer")||-1<a.indexOf("classbreaksrenderer")||-1<a.indexOf("uniquevaluerenderer")},
_evalFeatureReduction:function(a){this.loaded&&this.getMap()&&(a=a||this.getFeatureReduction(),this._evalModeFromFReduction(a),a&&this.isFeatureReductionEnabled()?this._canCluster(a)?this._clusterManager?this._updateClusterManager(a):(this._clusterManager=this._createClusterManager(a),this.onFeatureReductionChange()):(console.log("Clustering is supported only for point layers where map spatial reference is WGS84 or Web Mercator"),this._destroyClusterManager()):this._destroyClusterManager())},_canCluster:function(a){var b=
this._map;if(!b)return!1;b=b.spatialReference;return this._isFeatureReductionSupported(a)&&this._isReductionCompatibleRenderer(this.renderer)&&(b.isWebMercator()||4326===b.wkid)},_createClusterManager:function(a){a=new ta({layer:this,aggregationInfo:a});this._clusterHandles=[a.on("renderer-change",h.hitch(this,function(){this.onFeatureReductionRendererChange()}))];a.initialize(this._map);return a},_updateClusterManager:function(a){var b=this._clusterManager;b&&b.setAggregationInfo(a)},_destroyClusterManager:function(a){p.forEach(this._clusterHandles,
function(a){a.remove()});this._clusterHandles=null;this._clusterManager&&(this._clusterManager.destroy(a),this._clusterManager=null,this.onFeatureReductionChange())},redraw:function(){this.inherited(arguments);this._clusterManager&&this._clusterManager.redraw();this._trackManager&&this._trackManager.container&&this._trackManager.container.redraw()},_evalSDRenderer:function(a){this.inherited(arguments);var b=this._getRenderer();this._ager=!!(b&&b.observationAger&&b.observationRenderer);this._trackManager&&
this._trackManager.container&&this._trackManager.container.setRenderer(b&&b.trackRenderer);a&&this._evalFeatureReduction()},_graphicVisibilityChanged:function(a){this._clusterManager?this._clusterManager.toggleFeatureVisibility(a):this._heatmapManager&&this._heatmapManager.redraw()},setWebGLFetchOptions:function(a){this._hasOnDemandDrillMode()&&(a=a||{},null!=a.maxDrillLevel&&(this._mode.maxDrillLevel=a.maxDrillLevel),null!=a.maxRecordCountFactor&&(this._mode.maxRecordCountFactor=a.maxRecordCountFactor),
null!=a.enablePBFQuery&&(this._mode.enablePBFQuery=a.enablePBFQuery))},_isWebGLCompatible:function(){return this.loaded&&!this.isEditable()&&!this.isFeatureReductionApplied()&&(!this.labelingInfo||!1===this.showLabels)&&!this._isGeometryOperationsUsed()&&this._isRendererSupportedInWebGL()&&this.supportsCoordinatesQuantization&&("esriGeometryPolygon"!==this.geometryType||this.advancedQueryCapabilities.supportsReturningGeometryCentroid)&&this.currentMode===S.MODE_ONDEMAND&&(!this._preSurfaceChangeState||
this._preSurfaceChangeState.currentMode===S.MODE_ONDEMAND)},_isRendererSupportedInWebGL:function(){if(!this.renderer)return!1;var a=this.renderer,b=a.declaredClass?a.declaredClass.toLowerCase():"";return(-1<b.indexOf("simplerenderer")||-1<b.indexOf("classbreaksrenderer")||-1<b.indexOf("uniquevaluerenderer"))&&this._hasWebGLCompatibleSymbols(a)&&this._hasWebGLCompatibleVVs(a)},_hasWebGLCompatibleSymbols:function(a){a=this._getAllSymbolsInRenderer(a);return!this._hasSLSWithMarker(a)},_hasWebGLCompatibleVVs:function(a){return!p.some(a&&
a.visualVariables,function(a){var b=a.type;return("colorInfo"===b||"opacityInfo"===b)&&a.stops&&8<a.stops.length||"sizeInfo"===b&&(a.field||a.valueExpression&&"$view.scale"!==a.valueExpression||a.expression&&"view.scale"!==a.expression)&&a.stops&&6<a.stops.length?!0:!1})},_hasSLSWithMarker:function(a){return p.some(a,function(a){return a&&"simplelinesymbol"===a.type&&!!a.marker})},_getAllSymbolsInRenderer:function(a){var b=[];a&&(b.push(a.symbol),b.push(a.defaultSymbol),p.forEach(a.infos,function(a){b.push(a.symbol)}),
b=p.filter(b,function(a){return!!a}));return b},_setMap:function(a){var b=this.inherited(arguments),c=this._mode,d=this;c&&a.loaded&&c.initialize(a);this.geometryType&&this.attr("data-geometry-type",this.geometryType.replace(/esriGeometry/i,"").toLowerCase());this._addHandle=this.on("graphic-node-add",function(a){a=a.graphic.attributes;(a=d._selectedFeatures[a&&a[d.objectIdField]])&&a.attr("data-selected","")});return b},_unsetMap:function(a){var b=this._mode;b&&(b.suspend(),b.destroy());this._destroyClusterManager(!1);
this._trackManager&&(this._trackManager.destroy(),this._trackManager=null);g.disconnect(this._zoomConnect);g.disconnect(this._addHandle);this._zoomConnect=this._addHandle=null;this._toggleTime(!1);this.inherited("_unsetMap",arguments)},onAttach:function(){this._evalModeFromSurface()},refresh:function(){this._needsRefresh=!1;var a=this._mode;a&&a.refresh()},hasXYFootprint:function(){return"esriGeometryMultiPatch"===this.geometryType&&"xyFootprint"===this.multipatchOption},getOutFields:function(){return p.filter(this._getOutFields(),
function(a){return"*"===a||!!this._getField(a)},this)},getField:function(a){return this._getField(a,!0)},isOutField:function(a){a=this.getField(a);if(!a)return!1;var b=this.getOutFields();return-1<p.indexOf(b,"*")||-1<p.indexOf(b,a.name)},getFieldLabel:function(a){var b=this.infoTemplate,b=b&&b.getFieldInfo&&b.getFieldInfo(a);a=h.isFunction(a)?null:this.getField(a);var c=b||a,d="";c&&(d=b&&b.label||a&&a.alias||c.name||c.fieldName);return d},getDomain:function(a,b){var c,d,e=(b=b&&b.feature)&&this.typeIdField&&
b.attributes&&b.attributes[this.typeIdField];null!=e&&p.some(this.types,function(b){return b.id==e?((c=b.domains&&b.domains[a])&&"inherited"===c.type&&(c=this._getLayerDomain(a),d=!0),!0):!1},this);d||c||(c=this._getLayerDomain(a));return c},_getLayerDomain:function(a){var b;p.some(this.fields,function(c){c.name===a&&(b=c.domain);return!!b});return b},getType:function(a){var b,c=a&&this.typeIdField&&a.attributes&&a.attributes[this.typeIdField];p.some(this.types,function(a){a.id==c&&(b=a);return!!b});
return b},setEditable:function(a){if(!this._collection)return console.log("FeatureLayer:setEditable - this functionality is not yet supported for layer in a feature service"),this;if(!this.loaded)return this._optEditable=a,this;var b=this._editable;this._editable=a;this._updateCaps();if(b!==a)this.onCapabilitiesChange();return this},getEditCapabilities:function(a){var b={canCreate:!1,canUpdate:!1,canDelete:!1,canUpdateGeometry:!1};if(!this.loaded||!this.isEditable())return b;var c=a&&a.feature;a=
a&&a.userId||this.getUserId();var d=p.map(this.capabilities?this.capabilities.toLowerCase().split(","):[],h.trim),e=(b=-1<p.indexOf(d,"editing"))&&-1<p.indexOf(d,"create"),f=b&&-1<p.indexOf(d,"update"),d=b&&-1<p.indexOf(d,"delete"),g=this.ownershipBasedAccessControlForFeatures,k=this.editFieldsInfo,m=k&&k.creatorField,k=k&&k.realm,c=(c=c&&c.attributes)&&m?c[m]:void 0,l=!!this.userIsAdmin,m=!g||l||!(!g.allowOthersToUpdate&&!g.allowUpdateToOthers),n=!g||l||!(!g.allowOthersToDelete&&!g.allowDeleteToOthers),
q=!g||l||!g.hasOwnProperty("allowAnonymousToUpdate")||g.allowAnonymousToUpdate,g=!g||l||!g.hasOwnProperty("allowAnonymousToDelete")||g.allowAnonymousToDelete;a&&k&&(a=a+"@"+k);if(l||b&&!(e||f||d))e=f=d=!0;b={canCreate:e,canUpdate:f,canDelete:d,canUpdateGeometry:l||this.allowGeometryUpdates};a||(b.canUpdate=b.canUpdate&&q,b.canDelete=b.canDelete&&g);null===c?(b.canUpdate=b.canUpdate&&m,b.canDelete=b.canDelete&&n):""!==c&&c&&a.toLowerCase()!==c.toLowerCase()&&(b.canUpdate=b.canUpdate&&m,b.canDelete=
b.canDelete&&n);return b},getUserId:function(){var a;this.loaded&&(a=this.credential&&this.credential.userId||this.userId||"");return a},setUserIsAdmin:function(a){this.userIsAdmin=a},setEditSummaryCallback:function(a){this.editSummaryCallback=a},getEditSummary:function(a,b,c){c=u.isDefined(c)?c:(new Date).getTime();var d="";c=this.getEditInfo(a,b,c);(b=b&&b.callback||this.editSummaryCallback)&&(c=b(a,c)||"");if(h.isString(c))d=c;else{if(c){a=c.action;b=c.userId;var e=c.timeValue,f=0;a&&f++;b&&f++;
u.isDefined(e)&&f++;1<f&&(d=("edit"===a?"edit":"create")+(b?"User":"")+(u.isDefined(e)?c.displayPattern:""))}d=d&&u.substitute(c,this.i18n.layers.FeatureLayer[d])}return d},getEditInfo:function(a,b,c){if(this.loaded){c=u.isDefined(c)?c:(new Date).getTime();b=b&&b.action||"last";var d=this.editFieldsInfo,e=d&&d.creatorField,f=d&&d.creationDateField,g=d&&d.editorField,d=d&&d.editDateField,g=(a=a&&a.attributes)&&g?a[g]:void 0,d=a&&d?a[d]:null,e=this._getEditData(a&&e?a[e]:void 0,a&&f?a[f]:null,c);c=
this._getEditData(g,d,c);var k;switch(b){case "creation":k=e;break;case "edit":k=c;break;case "last":k=c||e}k&&(k.action=k===c?"edit":"creation");return k}},_getEditData:function(a,b,c){var d,f,g;u.isDefined(b)&&(f=c-b,g=0>f?"Full":6E4>f?"Seconds":12E4>f?"Minute":36E5>f?"Minutes":72E5>f?"Hour":864E5>f?"Hours":6048E5>f?"WeekDay":"Full");if(void 0!==a||g)d=d||{},d.userId=a,g&&(a=e.format,c=new Date(b),d.minutes=Math.floor(f/6E4),d.hours=Math.floor(f/36E5),d.weekDay=a(c,{datePattern:"EEEE",selector:"date"}),
d.formattedDate=a(c,{selector:"date"}),d.formattedTime=a(c,{selector:"time"}),d.displayPattern=g,d.timeValue=b);return d},isEditable:function(){return!(!this._editable&&!this.userIsAdmin)},isQueryable:function(){var a=p.map(this.capabilities?this.capabilities.toLowerCase().split(","):[],h.trim);return this._isStream||this.userIsAdmin||this._collection||-1!==p.indexOf(a,"query")||-1!==p.indexOf(a,"catalog")},setMaxAllowableOffset:function(a){this.isEditable()||(this._optMaxOffset=a,this._setMaxOffset(a,
!0));return this},_resetMaxAllowableOffset:function(){this.setMaxAllowableOffset(this._optMaxOffset);this._prevScale=null;this._refreshMaxAllowableOffset()},_refreshMaxAllowableOffset:function(){this._calcMaxOffsetForAutoSnapshot();this._updateMaxOffset();this._needsRefresh=!1},getMaxAllowableOffset:function(){var a=this._quantizationParameters?this._quantizationParameters.tolerance:void 0;return null!=this._maxOffset?this._maxOffset:a},_setMaxOffset:function(a,b){if(null==a)return delete this._maxOffset,
delete this._quantizationParameters,this;this.quantize&&this.supportsCoordinatesQuantization?("esriGeometryPolyline"===this.geometryType?this._maxOffset=a:delete this._maxOffset,this._quantizationParameters=a?{mode:"view",originPosition:"upperLeft",tolerance:a,extent:this.fullExtent}:null):(this._isFractionalOffsetAllowed()&&b||(a=Math.floor(a)),isNaN(a)||0===a?delete this._maxOffset:this._maxOffset=a,delete this._quantizationParameters);return this},_isFractionalOffsetAllowed:function(){return null==
this.version||10.1<=this.version||navigator.languages&&this._isLangWithDot(navigator.languages[0])},_isLangWithDot:function(a){a=(a=a&&a.split("-"))&&a[0]&&a[0].toLowerCase();return-1!==p.indexOf(this._langsWithDot,a)},_langsWithDot:"ar en et fr he ja ko th vi zh".split(" "),setAutoGeneralize:function(a){this.loaded?this.isEditable()||this.mode===S.MODE_SNAPSHOT||"esriGeometryPolyline"!==this.geometryType&&"esriGeometryPolygon"!==this.geometryType&&!this.hasXYFootprint()||((this._autoGeneralize=a)?
(this._isAutoSnapshotMode()&&(this._prevScale=null),this._updateMaxOffset()):this._setMaxOffset(null)):this._optAutoGen=a;return this},setGDBVersion:function(a){this._collection||a===this.gdbVersion||!a&&!this.gdbVersion||(this.gdbVersion=a,this._task.gdbVersion=a,this._url.query=h.mixin(this._url.query,{gdbVersion:a}),this.loaded&&(this.clearSelection(),this._map&&this.refresh()),this.onGDBVersionChange());return this},hasAllFeatures:function(){return this._mode?this._mode.hasAllFeatures():!0},hasUpdateError:function(){return this._mode?
this._mode.hasUpdateError():!1},setDefinitionExpression:function(a){this._defnExpr=a;(a=this._checkFeatureLimit())?this._evalModeAndApplyDefnExpr(a):this._applyDefnExpr();return this},_applyDefnExpr:function(){var a=this._mode;a&&a.propertyChangeHandler(1)},_evalModeAndApplyDefnExpr:function(a){a.then(h.hitch(this,function(a){!a||a instanceof Error||a.modeChanged||this._applyDefnExpr()}))},getDefinitionExpression:function(){return this._defnExpr},setTimeDefinition:function(a){this._isSnapshotMode()?
(this._timeDefn=a,(a=this._mode)&&a.propertyChangeHandler(2)):console.log("FeatureLayer.setTimeDefinition: layer in on-demand or selection mode does not support time definitions. Layer id \x3d "+this.id+", Layer URL \x3d "+this.url);return this},getTimeDefinition:function(){return this._timeDefn},setTimeOffset:function(a,b){this._timeOffset=a;this._timeOffsetUnits=b;(a=this._mode)&&a.propertyChangeHandler(0);return this},setUseMapTime:function(a){this.useMapTime=a;this._toggleTime(!this.suspended);
(a=this._mode)&&a.propertyChangeHandler(0)},selectFeatures:function(a,b,c,d){b=b||S.SELECTION_NEW;this._hasSelectionError=this._hasPartialSelectedFeatures=!1;a=this._getShallowClone(a);var e=this._map,g,k=this,h=v._fixDfd(new f(v._dfdCanceller));a.outFields=this.getOutFields();a.returnGeometry=!0;a.multipatchOption=this.multipatchOption;e&&(a.outSpatialReference=new x(e.spatialReference.toJson()));if(!this._applyQueryFilters(a,!0))return g={features:[]},this._selectHandler(g,b,c,d,h),h;if(e=this._canDoClientSideQuery(a))h._pendingDfd=
m(this._doQuery(a,e)),h._pendingDfd.then(function(a){g={features:a};k._selectHandler(g,b,c,d,h)});else{if(this._collection)return this._resolve([Error("FeatureLayer::selectFeatures - "+this.invalidParams)],null,d,h,!0),h;if(this.loaded&&!this.isQueryable())return this._resolve([Error("Layer does not support query capability.")],null,d,h,!0),h;var l=this;this._ts&&(a._ts=(new Date).getTime());e=this._canFetchPBFForQuery(a);this._enableEditModeQuantization(a,e);(h._pendingDfd=this._task.execute(a,null,
null,e?{format:"pbf"}:null)).addCallbacks(function(a){l._selectHandler(a,b,c,d,h)},function(a){l._hasPartialSelectedFeatures=!0;l._hasSelectionError=!0;l._resolve([a],null,d,h,!0)})}return h},getSelectedFeatures:function(){var a=this._selectedFeatures,b=[],c;for(c in a)a.hasOwnProperty(c)&&b.push(a[c]);return b},clearSelection:function(a){var b=this._selectedFeatures,c=this._mode,d;for(d in b)b.hasOwnProperty(d)&&(this._unSelectFeatureIIf(d,c),c._removeFeatureIIf(d));this._selectedFeatures={};this._isSelOnly&&
c._applyTimeFilter(!0);if(!a)this.onSelectionClear();return this},setSelectionSymbol:function(a){if(this._selectionSymbol=a){var b=this._selectedFeatures,c;for(c in b)b.hasOwnProperty(c)&&b[c].setSymbol(a)}return this},getSelectionSymbol:function(){return this._selectionSymbol},setLabelingInfo:function(a){a?(this.labelingInfo=a,this._fixLabelExpr()):delete this.labelingInfo;this._collection&&(this._typesDirty=!0);this._evalSurfaceType();this.onLabelingInfoChange()},_fixLabelExpr:function(){var a=
/\[([^\[\]]+)\]/ig,b,c=this,d=function(a,b){a=c._getField(b,!0);return"["+(a&&a.name||b)+"]"};p.forEach(this.labelingInfo,function(c){if(b=c.labelExpression)c.labelExpression=b.replace(a,d)})},_updateRequiredFieldsFromLabelingInfo:function(){var a=[];p.forEach(this.labelingInfo,function(b){var c=b.labelExpressionInfo;if(b.labelExpression){var d=/[\[\]]/ig;b=b.labelExpression.match(/\[[^\[\]]+\]/ig);(b=p.map(b,function(a){return a.replace(d,"")}))&&(a=a.concat(b))}if(c){if(c.value){var e=/[\{\}]/ig;
b=c.value.match(/\{[^\{\}]+\}/ig);(b=p.map(b,function(a){return a.replace(e,"")}))&&(a=a.concat(b))}c.expression&&(a=a.concat(N.extractFieldNames(c.expression)))}});a=p.map(a,function(a){var b=this.getField(a);return b?b.name:a},this);this._requiredFields&&(this._requiredFields=this._requiredFields.concat(a))},__msigns:[{n:"applyEdits",c:5,a:[{i:0},{i:1}],e:4,f:1}],applyEdits:function(a,b,c,d,e,f){var g=f.assembly,k=f.dfd;this._applyNormalized(a,g&&g[0]);this._applyNormalized(b,g&&g[1]);this.onBeforeApplyEdits(a,
b,c);var m={},l=this.objectIdField,g={f:"json"},n=!1;if(this._collection)f={},f.addResults=a?p.map(a,function(){n=!0;return{objectId:this._nextId++,success:!0}},this):null,f.updateResults=b?p.map(b,function(a){n=!0;var b=a.attributes[l];m[b]=a;return{objectId:b,success:!0}},this):null,f.deleteResults=c?p.map(c,function(a){n=!0;return{objectId:a.attributes[l],success:!0}},this):null,n?this._editHandler(f,a,m,d,e,k):this._resolve([f.addResults,f.updateResults,f.deleteResults],null,d,k);else{a&&0<a.length&&
(g.adds=this._convertFeaturesToJson(a,0,1),n=!0);if(b&&0<b.length){for(f=0;f<b.length;f++){var q=b[f];m[q.attributes[l]]=q}g.updates=this._convertFeaturesToJson(b,0,0,1);n=!0}if(c&&0<c.length){b=[];for(f=0;f<c.length;f++)b.push(c[f].attributes[l]);g.deletes=b.join(",");n=!0}if(n){var t=this;return r({url:this._url.path+"/applyEdits",content:h.mixin(g,this._url.query),callbackParamName:"callback",load:function(b){t._editHandler(b,a,m,d,e,k)},error:function(a){t._resolve([a],null,e,k,!0)}},{usePost:!0})}this._resolve([],
null,d,k)}},queryFeatures:function(a,b,c){return this._query("execute","onQueryFeaturesComplete",a,b,c)},queryRelatedFeatures:function(a,b,c){return this._query("executeRelationshipQuery","onQueryRelatedFeaturesComplete",a,b,c)},queryIds:function(a,b,c){return this._query("executeForIds","onQueryIdsComplete",a,b,c)},queryCount:function(a,b,c){return this._query("executeForCount","onQueryCountComplete",a,b,c)},queryExtent:function(a,b,c){return this._query("executeForExtent","onQueryExtentComplete",
a,b,c)},queryAttachmentInfos:function(a,b,d){var e=this._url.path+"/"+a+"/attachments",g=new f(v._dfdCanceller),k=this,e=A.normalize(e);g._pendingDfd=r({url:e,content:h.mixin({f:"json"},this._url.query),callbackParamName:"callback",load:function(d){d=d.attachmentInfos;var f;p.forEach(d,function(b){f=c.objectToQuery({gdbVersion:k._url.query&&k._url.query.gdbVersion,layer:k._url.query&&k._url.query.layer,token:k._getToken()});b.url=e+"/"+b.id+(f?"?"+f:"");b.objectId=a});k._resolve([d],"onQueryAttachmentInfosComplete",
b,g)},error:function(a){k._resolve([a],null,d,g,!0)}});return g},addAttachment:function(a,b,c,d){return this._sendAttachment("add",a,b,c,d)},updateAttachment:function(b,c,d,e,f){d.appendChild(a.create("input",{type:"hidden",name:"attachmentId",value:c}));return this._sendAttachment("update",b,d,e,f)},deleteAttachments:function(a,b,c,d){var e=this._url.path+"/"+a+"/deleteAttachments",g=new f(v._dfdCanceller),k=this;b={f:"json",attachmentIds:b.join(",")};g._pendingDfd=r({url:e,content:h.mixin(b,this._url.query),
callbackParamName:"callback",load:h.hitch(this,function(b){b=b.deleteAttachmentResults;b=p.map(b,function(b){b=new ha(b);b.attachmentId=b.objectId;b.objectId=a;return b});k._resolve([b],"onDeleteAttachmentsComplete",c,g)}),error:function(a){k._resolve([a],null,d,g,!0)}},{usePost:!0});return g},addType:function(a){var b=this.types;if(b){if(p.some(b,function(b){return b.id==a.id?!0:!1}))return!1;b.push(a)}else this.types=[a];return this._typesDirty=!0},deleteType:function(a){if(this._collection){var b=
this.types;if(b){var c=-1;p.some(b,function(b,d){return b.id==a?(c=d,!0):!1});if(-1<c)return this._typesDirty=!0,b.splice(c,1)[0]}}},toJson:function(){var a=this._json;if(a=h.isString(a)?l.fromJson(a):h.clone(a)){var a=a.layerDefinition?a:{layerDefinition:a},b=a.layerDefinition,c=this._collection;if(c&&this._typesDirty){b.types=p.map(this.types||[],function(a){return a.toJson()});var d=this.renderer,e=this.labelingInfo,f=b.drawingInfo;!d&&!e||f||(f=b.drawingInfo={});f&&d&&-1===d.declaredClass.indexOf("TemporalRenderer")&&
(f.renderer=d.toJson());e&&(f.labelingInfo=p.map(e,function(a){return a.toJson()}))}d=null;if(!c||this._fcAdded)d={geometryType:b.geometryType,features:this._convertFeaturesToJson(this.graphics,!0)};a.featureSet=h.mixin({},a.featureSet||{},d);a.featureSet.transform&&(e=a.featureSet.transform,delete a.featureSet.transform,d=new M(a.featureSet),d.quantize(e),a.featureSet=d.toJson());c&&(a.nextObjectId=this._nextId,b.capabilities=this.capabilities);return a}},onSelectionComplete:function(){},onSelectionClear:function(){},
onBeforeApplyEdits:function(){},onEditsComplete:function(){},onQueryFeaturesComplete:function(){},onQueryRelatedFeaturesComplete:function(){},onQueryIdsComplete:function(){},onQueryCountComplete:function(){},onQueryExtentComplete:function(){},onQueryAttachmentInfosComplete:function(){},onAddAttachmentComplete:function(){},onUpdateAttachmentComplete:function(){},onDeleteAttachmentsComplete:function(){},onCapabilitiesChange:function(){},onGDBVersionChange:function(){},onQueryLimitExceeded:function(){},
onLabelingInfoChange:function(){},onFeatureReductionRendererChange:function(){},onFeatureReductionChange:function(){},_evalGeometryOperations:function(){var a=new f;setTimeout(h.hitch(this,function(){this._isGeometryOperationsUsed()?N.enableGeometryOperations().always(function(){a.resolve()}):a.resolve()}),0);return a.promise},_isGeometryOperationsUsed:function(){var a=this.infoTemplate,b=this.renderer,c=this.labelingInfo;return a&&a.hasGeometryOperations&&a.hasGeometryOperations()||b&&b.hasGeometryOperations&&
b.hasGeometryOperations()||p.some(c,function(a){return N.hasGeometryOperations(a.labelExpressionInfo&&a.labelExpressionInfo.expression)})?!0:!1},_forceIdentity:function(){var a=new f,b=this,c,d=this._url&&this._url.path;c=d&&d.toLowerCase().indexOf("/rest/services");var e=this.editFieldsInfo,e=e&&(e.creatorField||e.editorField);(this.userIsAdmin||e)&&!this._getToken()&&-1<c&&k.id?(c=d.substring(0,c)+"/rest/info",r({url:c,content:{f:"json"},handleAs:"json",callbackParamName:"callback"}).then(function(a){if(a.owningSystemUrl)return k.id.checkSignInStatus(a.owningSystemUrl+
"/sharing")}).then(function(a){if(a)return k.id.getCredential(d)}).then(function(a){a&&b._findCredential()}).always(function(){a.resolve()})):a.resolve();return a.promise},_isSnapshotMode:function(){return this._mode?this._mode.isInstanceOf(ja):!1},_isAutoSnapshotMode:function(){return this._isAutoModeEnabled()&&this.currentMode===S.MODE_SNAPSHOT},_getMaxFeaturesForAutoSnapshotMode:function(){var a=this.geometryType,b;"esriGeometryPolyline"===a||"esriGeometryPolygon"===a||"esriGeometryMultipoint"===
a||this.hasXYFootprint()?b=this.maxRecordCountForAuto:"esriGeometryPoint"===a&&(b=this.maxPointCountForAuto);return b},getLastExceedsLimitResult:function(){return this._lastExceedsLimitResult},_canUseSnapshotMode:function(a){this._lastExceedsLimitResult=a=(a=a&&a.features&&a.features[0])&&a.attributes&&a.attributes.exceedslimit;return!(this.mode!==S.MODE_AUTO||this.isEditable()||0!==a||!(this._isPaginationAllowed()||this.maxRecordCount>=this._getMaxFeaturesForAutoSnapshotMode()))},_evalModeFromFLimit:function(a){this._canUseSnapshotMode(a)?
this._enableAutoSnapshotMode():this._enableAutoOnDemandMode()},_enableAutoSnapshotMode:function(){var a=S.MODE_SNAPSHOT;this.isFeatureReductionApplied()?this._updatePreFReductionState(a):this._preSurfaceChangeState?(this._updatePreSurfaceChangeState(a),this._evalSurfaceType(!0)):this.currentMode!==a&&this._setFetchMode(S.MODE_AUTO,a)},_enableAutoOnDemandMode:function(){var a=S.MODE_ONDEMAND;this.isFeatureReductionApplied()?this._updatePreFReductionState(a):this._preSurfaceChangeState?this._updatePreSurfaceChangeState(a):
this.currentMode!==a&&(this._setFetchMode(S.MODE_AUTO,a),this._evalSurfaceType())},_evalModeFromFReduction:function(a){this.loaded&&(a&&this.isFeatureReductionEnabled()&&this._canCluster(a)?this._enableFReductionMode():this._disableFReductionMode())},_enableFReductionMode:function(){this._evalSurfaceType(!0);if(!this._preFReductionState){var a=this.currentMode;a!==S.MODE_SNAPSHOT&&a!==S.MODE_STREAM&&a!==S.MODE_SELECTION&&(this._preFReductionState={mode:this.mode,currentMode:this.currentMode},this._setFetchMode(this.mode===
S.MODE_AUTO?S.MODE_AUTO:S.MODE_SNAPSHOT,S.MODE_SNAPSHOT))}},_disableFReductionMode:function(){var a=this._preFReductionState;this._preFReductionState=null;!a||a.mode===this.mode&&a.currentMode===this.currentMode||(this._setFetchMode(a.mode,a.currentMode),this._evalSurfaceType())},_updatePreFReductionState:function(a){this._preFReductionState=this._preFReductionState||{};this._preFReductionState.mode=S.MODE_AUTO;this._preFReductionState.currentMode=a},_evalModeFromSurface:function(){this.hasWebGLSurface()?
this._enableWebGLSurfaceMode():this._disableWebGLSurfaceMode()},_enableWebGLSurfaceMode:function(){this._preSurfaceChangeState||(this._preSurfaceChangeState={mode:this.mode,currentMode:this.currentMode},this._setFetchMode(this.mode===S.MODE_AUTO?S.MODE_AUTO:S.MODE_ONDEMAND,S.MODE_ONDEMAND,this.webglDeps.OnDemandDrillMode))},_disableWebGLSurfaceMode:function(){var a=this._preSurfaceChangeState;a&&(this._preSurfaceChangeState=null,this._setFetchMode(a.mode,a.currentMode))},_updatePreSurfaceChangeState:function(a){this._preSurfaceChangeState=
this._preSurfaceChangeState||{};this._preSurfaceChangeState.mode=S.MODE_AUTO;this._preSurfaceChangeState.currentMode=a},_setFetchMode:function(a,b,c){this.clearSelection();this._mode.suspend();this._mode.destroy();this.mode=a;this.currentMode=b;c=c||this._getModeConstructor(b);this._mode=new c(this);this.queryPagination=b===S.MODE_ONDEMAND&&-1===c.prototype.declaredClass.toLowerCase().indexOf("ondemanddrillmode")?!1:this._isPaginationAllowed();(a=this.getMap())&&a.loaded&&(this._resetMaxAllowableOffset(),
this._mode.initialize(a),this._mode.startup())},_isPaginationAllowed:function(){return!(!this._optQueryPagination||this.loaded&&!this.advancedQueryCapabilities.supportsPagination)},_getModeConstructor:function(a){var b;a===S.MODE_SNAPSHOT?b=ja:a===S.MODE_ONDEMAND&&(b=ya);return b},_hasOnDemandDrillMode:function(){var a=this._mode,a=a&&a.declaredClass;return!!(a&&-1<a.toLowerCase().indexOf("ondemanddrillmode"))},_checkFeatureLimit:function(){this._limitPromise&&(this._limitPromise.cancel(),this._limitPromise=
null);var a=this._queryLimit();a&&(this._lastExceedsLimitResult=null,this._limitPromise=a.then(h.hitch(this,function(a){var b=this.currentMode;this._evalModeFromFLimit(a);return{modeChanged:this.currentMode!==b}})).always(h.hitch(this,function(a){this._limitPromise=null;return a})));return this._limitPromise},_queryLimit:function(){if(this._isAutoModeEnabled()){var a,b,c=new f(function(){clearTimeout(a);a=null;b&&!b.isFulfilled()&&b.cancel();b=null});a=setTimeout(h.hitch(this,function(){var a=new Q,
d=new U;d.statisticType="exceedslimit";d.maxPointCount=this.maxPointCountForAuto;d.maxRecordCount=this.maxRecordCountForAuto;d.maxVertexCount=this.maxVertexCountForAuto;d.outStatisticFieldName="exceedslimit";a.outStatistics=[d];b=this.queryFeatures(a).promise.then(function(a){c.resolve(a)}).otherwise(function(a){c.reject(a)})}),0);return c.promise}},_isAutoModeEnabled:function(){return this.mode===S.MODE_AUTO&&this.reHostedFS.test(this.url)},_updateCaps:function(){var a=this._editable,b=h.trim(this.capabilities||
""),c=p.map(b?b.split(","):[],h.trim),d=p.map(b?b.toLowerCase().split(","):[],h.trim),b=p.indexOf(d,"editing"),e,d={Create:p.indexOf(d,"create"),Update:p.indexOf(d,"update"),Delete:p.indexOf(d,"delete")};if(a&&-1===b)c.push("Editing");else if(!a&&-1<b){a=[b];for(e in d)-1<d[e]&&a.push(d[e]);a.sort();for(e=a.length-1;0<=e;e--)c.splice(a[e],1)}this.capabilities=c.join(",")},_counter:{value:0},_getUniqueId:function(){return this._counter.value++},onSuspend:function(){this.inherited(arguments);this._toggleTime(!1);
var a=this._mode;a&&a.suspend()},onResume:function(a){this.inherited(arguments);this._toggleTime(!0);var b=this._map,c=this._getRenderer();if(a.firstOccurrence){if(this._fixRendererFields(),this._updateRequiredFieldsFromLabelingInfo(),this._checkFields(),this.clearSelection(),this._evalFeatureReduction(),this.timeInfo&&!this._trackManager&&(this._trackIdField||c&&(c.latestObservationRenderer||c.trackRenderer))&&(this._trackManager=new Ba(this),this._trackManager.initialize(b),this._childLayer=this._trackManager.container),
c&&"colors"in c&&"blurRadius"in c&&"maxPixelIntensity"in c&&"esriGeometryPoint"==this.geometryType&&!this._heatmapManager&&(this._heatmapManager=new Ca(this),this._heatmapManager.initialize(b)),this._zoomConnect=g.connect(b,"onZoomEnd",this,this._zoomEndHandler),this._refreshMaxAllowableOffset(),c=this._mode)c._init||c.initialize(b),c.startup()}else this._zoomEndHandler(),this._mode&&this._mode.resume()},_zoomEndHandler:function(){var a=this._map;this._updateMaxOffset();this._prevScale=a.getScale();
!this.suspended&&this._needsRefresh&&this.refresh()},_updateMaxOffset:function(){var a=this._map;a&&a.loaded&&this._autoGeneralize&&(this._isAutoSnapshotMode()?(a=this.getMaxAllowableOffset(),this._setMaxOffset(this._getMaxOffsetForScale(),!0),this._needsRefresh||(this._needsRefresh=a!=this.getMaxAllowableOffset())):this._setMaxOffset(a.extent.getWidth()/a.width,!a.extent.spatialReference.isWebMercator()))},_getMaxOffsetForScale:function(){if(this._map){var a=this._map.getScale(),b=this._calculatedScale,
c=this._calcMaxOffset,d=this._prevScale;return a>=b&&(null==d||d<b)?c:a<b&&(null==d||d>=b)?null:this.getMaxAllowableOffset()}},_calcMaxOffsetForAutoSnapshot:function(){var a=this._map;if(a&&this._isAutoSnapshotMode()&&this._autoGeneralize&&("esriGeometryPolyline"===this.geometryType||"esriGeometryPolygon"===this.geometryType||this.hasXYFootprint())&&!this.isEditable()&&null==this.getMaxAllowableOffset()){var b=this.generalizeForScale;this._calculatedScale=b=this.maxScale?this.maxScale:this.minScale?
Math.min(b,this.minScale):Math.min(b,P.getScale(a,this.initialExtent));this._calcMaxOffset=a.extent.getWidth()/a.width/a.getScale()*b}else this._calculatedScale=this._calcMaxOffset=void 0},_toggleTime:function(a){var b=this._map;a&&this.timeInfo&&this.useMapTime&&b?(this._mapTimeExtent=b.timeExtent,this._timeConnect||(this._timeConnect=g.connect(b,"onTimeExtentChange",this,this._timeChangeHandler))):(this._mapTimeExtent=null,g.disconnect(this._timeConnect),this._timeConnect=null)},_timeChangeHandler:function(a){this._mapTimeExtent=
a;(a=this._mode)&&a.propertyChangeHandler(0)},_getOffsettedTE:function(a){var b=this._timeOffset,c=this._timeOffsetUnits;return a&&b&&c?a.offset(-1*b,c):a},_getTimeOverlap:function(a,b){return a&&b?a.intersection(b):a||b},_getTimeFilter:function(a){var b=this.getTimeDefinition(),c;if(b&&(c=this._getTimeOverlap(b,null),!c))return[!1];if(a){if(a=c?this._getTimeOverlap(a,c):a,!a)return[!1]}else a=c;return[!0,a]},_getAttributeFilter:function(a){var b=this.getDefinitionExpression();return a?b?"("+b+") AND ("+
a+")":a:b},_applyQueryFilters:function(a,b){a.where=this._getAttributeFilter(a.where);a.returnGeometry&&null==a.maxAllowableOffset&&!a.quantizationParameters&&(a.maxAllowableOffset=this._maxOffset,a.quantizationParameters=this._quantizationParameters);b&&this.supportsAdvancedQueries&&(a.orderByFields=a.orderByFields||this.getOrderByFields());if(this.timeInfo)if(b=this._getTimeFilter(a.timeExtent),b[0])a.timeExtent=b[1];else return!1;return!0},_add:function(a){var b=this._selectionSymbol,c=a.attributes,
d=this.visibilityField;b&&this._isSelOnly&&a.setSymbol(b);if(d&&c&&c.hasOwnProperty(d))a[c[d]?"show":"hide"]();return this.add.apply(this,arguments)},_remove:function(){return this.remove.apply(this,arguments)},_canDoClientSideQuery:function(a){var b=[],c=this._map,d;if((this._collection||!this._isTable&&c)&&!(a.text||a.where&&a.where!==this.getDefinitionExpression()||a.orderByFields&&a.orderByFields.length&&(d=this.getOrderByFields()||[])&&a.orderByFields.join()!==d.join()||a.outStatistics||a.returnDistinctValues)){d=
this._isSnapshotMode();var e=this._isSelOnly,f=a.geometry;if(f){if(e||a.spatialRelationship!==Q.SPATIAL_REL_INTERSECTS||"extent"!==f.type||!d&&!c.extent.contains(f))return;b.push(1)}if(c=a.objectIds)if(d)b.push(2);else{var f=c.length,g=this._mode,k=0,h;for(h=0;h<f;h++)g._getFeature(c[h])&&k++;if(k===f)b.push(2);else return}if(this.timeInfo)if(a=a.timeExtent,c=this._mapTimeExtent,d)a&&b.push(3);else if(e){if(a)return}else if(c)if(-1!==p.indexOf(b,2))a&&b.push(3);else if(-1!==p.indexOf(b,1))a==c&&b.push(3);
else return;else if(0<b.length)a&&b.push(3);else if(a)return;return 0<b.length?b:null}},_getAbsMid:function(a){return q.toAbsMid?q.toAbsMid(a):n.id.replace(/\/[^\/]*$/ig,"/")+a},_doQuery:function(a,b,c){var d=[],e=this.objectIdField,g=this,k=new f,m=new f,l=this.graphics;if(-1!==p.indexOf(b,1)){var n=this.spatialIndex||this._map&&this._map.spatialIndex,q,r=a.geometry._normalize(null,!0);null==n&&va.autoSpatialIndexing?q=(this._map||this).addPlugin(this._getAbsMid("../plugins/spatialIndex")).then(h.hitch(this,
h.partial(this._getFromIndex,r,n)),function(a){m.resolve(h.hitch(this,h.partial(this._filterByExtent,l,r)))}):n&&(q=this._getFromIndex(r,n));q?q.then(function(a){for(var b=0;b<a.length;b++)a[b].results&&(d=d.concat(a[b].results));m.resolve(d)}).otherwise(function(a){m.reject(a)}):m.resolve(this._filterByExtent(l,r))}else m.resolve(l);m.then(function(f){d=f;if(-1!==p.indexOf(b,2)){var h=a.objectIds;d=p.filter(d,function(a){return-1<p.indexOf(h,a.attributes[e])})}-1!==p.indexOf(b,3)&&g.timeInfo&&(f=
a.timeExtent,d=g._filterByTime(d,f.startTime,f.endTime).match);c&&(d=p.map(d,function(a){return a.attributes[e]},this));k.resolve(d)});return k},_getFromIndex:function(a,b){b=b||this.spatialIndex||this._map.spatialIndex;a instanceof Array||(a=[a]);var c=this.id;return w(p.map(a,function(a){return b.intersects(a,c)}))},_filterByExtent:function(a,b){for(var c=[],d=0,e=a.length;d<e;d++){var f=a[d],g=f.geometry;g&&(this.normalization&&b.length?(b[0].intersects(g)||b[1].intersects(g))&&c.push(f):b.intersects(g)&&
c.push(f))}return c},_filterByTime:function(a,b,c){var d=this._startTimeField,e=this._endTimeField,f;this._twoTimeFields||(f=d||e);var g=u.isDefined,k=[],h=[],m,l=a.length,p,n;b=b?b.getTime():-Infinity;c=c?c.getTime():Infinity;if(f)for(m=0;m<l;m++)p=a[m],n=p.attributes,d=n[f],d>=b&&d<=c?k.push(p):h.push(p);else for(m=0;m<l;m++)p=a[m],n=p.attributes,f=n[d],n=n[e],f=g(f)?f:-Infinity,n=g(n)?n:Infinity,f>=b&&f<=c||n>=b&&n<=c||b>=f&&c<=n?k.push(p):h.push(p);return{match:k,noMatch:h}},_getSizeVariables:function(a){return a&&
p.filter(a.getVisualVariablesForType("sizeInfo",!1),function(a){return!(!a.field&&!a.valueExpression)})},_needClientSideSorting:function(a){return this._collection?!(!a||!a.length):p.some(a,function(a){return!!a.valueExpression})},_sortFeatures:function(a){var b=this.renderer,c=this._getSizeVariables(b);if(a&&1<a.length&&this._needClientSideSorting(c)){var d=c[0],e=this;a.sort(function(a,c){a._layer||(a._layer=e);c._layer||(c._layer=e);a=b._getDataValue(a,d,"sizeInfo",null,e);c=b._getDataValue(c,
d,"sizeInfo",null,e);return null==a?-1:null==c?1:c-a})}return a},_resolve:function(a,b,c,d,e){b&&this[b].apply(this,a);c&&c.apply(null,a);d&&v._resDfd(d,a,e)},_getShallowClone:function(a){var b=new Q,c;for(c in a)a.hasOwnProperty(c)&&(b[c]=a[c]);return b},_canFetchPBF:function(){return!!(Aa&&qa&&this.supportsFormatPBF)},_canFetchPBFForQuery:function(a){var b=this.advancedQueryCapabilities;return!(!(this._canFetchPBF()&&("tile"===a.resultType&&b&&b.supportsQueryWithResultType||!this._isAutoSnapshotMode())&&
(a.quantizationParameters||!this.isEditable()&&this.supportsQuantizationEditMode))||a.outStatistics)},_enableEditModeQuantization:function(a,b){a&&b&&!a.quantizationParameters&&(a.quantizationParameters={mode:"edit"})},_query:function(a,b,c,d,e){var g=this,k=this._map,h=new f(v._dfdCanceller),l=c,n,q,r;if("executeRelationshipQuery"!==a){var l=this._getShallowClone(c),t=this.getOutFields();l.outFields||(l.outFields=t);l.outFields&&l.outFields.length&&(q=-1<p.indexOf(t,"*")?!1:!p.every(l.outFields,
function(a){return-1<p.indexOf(t,a)}));l.returnGeometry=c.hasOwnProperty("returnGeometry")?c.returnGeometry:!c.outStatistics;l.returnGeometry&&(l.multipatchOption=this.multipatchOption,null!=l.maxAllowableOffset||l.quantizationParameters)&&(c=null!=l.maxAllowableOffset?l.maxAllowableOffset:l.quantizationParameters.tolerance,null!=c&&c!==this.getMaxAllowableOffset()&&(r=!0));var u;k&&(k=k&&k.spatialReference,(c=l.outSpatialReference)?n=!c.equals(k):l.outSpatialReference=new x(k.toJson()));if(!this._applyQueryFilters(l,
"execute"===a&&!l.outStatistics)){switch(a){case "execute":u=new M({features:[]});break;case "executeForIds":u=[];break;case "executeForCount":u=0;break;case "executeForExtent":u={}}this._resolve([u],b,d,h);return h}if(k="executeForExtent"!==a&&!n&&!q&&!r&&this._canDoClientSideQuery(l))return h._pendingDfd=m(this._doQuery(l,k,"executeForIds"===a||"executeForCount"===a)),h._pendingDfd.then(function(c){switch(a){case "execute":u=new M;u.features=c;break;case "executeForIds":u=c;break;case "executeForCount":u=
c.length}g._resolve([u],b,d,h)}),h}if(this._collection)return this._resolve([Error("FeatureLayer::_query - "+this.invalidParams)],null,e,h,!0),h;if(this.loaded&&!this.isQueryable())return this._resolve([Error("Layer does not support query capability.")],null,e,h,!0),h;this._ts&&(l._ts=(new Date).getTime());k="execute"===a&&this._canFetchPBFForQuery(l);this._enableEditModeQuantization(l,k);(h._pendingDfd=this._task[a](l,null,null,k?{format:"pbf"}:null)).addCallbacks(function(c){var e=!!l.outStatistics||
n||q||r;if("execute"===a||"executeRelationshipQuery"===a){var f,k;if("execute"===a)for(f=c.features,k=f.length,--k;0<=k;k--){if(f[k]._layer=g,!e&&!g._isTable){var m=g._mode._getFeature(f[k].attributes[g.objectIdField]);m&&f.splice(k,1,m)}}else for(m in c)if(c.hasOwnProperty(m))for(f=c[m].features,k=f.length,--k;0<=k;k--)f[k]._layer=g}g._resolve([c],b,d,h)},function(a){g._resolve([a],null,e,h,!0)});return h},_convertFeaturesToJson:function(a,b,c,d){var e=[],f=this._selectionSymbol,g=this.visibilityField,
k,m=this.objectIdField;this.loaded&&(c||d)&&(k=p.filter(this.fields,function(a){return!1===a.editable&&(!d||a.name!==m)}));for(c=0;c<a.length;c++){var n=a[c],q={},r=n.geometry,t=n.attributes,u=n.symbol;!r||d&&this.loaded&&!this.allowGeometryUpdates||(q.geometry=r.toJson());g?(q.attributes=t=h.mixin({},t),t[g]=n.visible?1:0):t&&(q.attributes=h.mixin({},t));q.attributes&&k&&k.length&&p.forEach(k,function(a){delete q.attributes[a.name]});u&&u!==f&&(q.symbol=u.toJson());e.push(q)}return b?e:l.toJson(e)},
_selectHandler:function(a,b,c,d,e){var f;switch(b){case S.SELECTION_NEW:this.clearSelection(!0);f=!0;break;case S.SELECTION_ADD:f=!0;break;case S.SELECTION_SUBTRACT:f=!1}d=a.features;var g=this._mode,k=[],h=this.objectIdField,m,l;if(f)for(f=0;f<d.length;f++)m=d[f],l=m.attributes[h],m=g._addFeatureIIf(l,m),k.push(m),this._selectFeatureIIf(l,m,g);else for(f=0;f<d.length;f++)m=d[f],l=m.attributes[h],this._unSelectFeatureIIf(l,g),l=g._removeFeatureIIf(l),k.push(l||m);this._isSelOnly&&g._applyTimeFilter(!0);
this._hasPartialSelectedFeatures=!!a.exceededTransferLimit;this._resolve([k,b,a.exceededTransferLimit?{queryLimitExceeded:!0}:null],"onSelectionComplete",c,e);if(a.exceededTransferLimit)this.onQueryLimitExceeded()},_selectFeatureIIf:function(a,b,c){var d=this._selectedFeatures,e=d[a];e||(c._incRefCount(a),d[a]=b,this._isTable||(this._setSelectSymbol(b),b.attr("data-selected","")));return e||b},_unSelectFeatureIIf:function(a,b){var c=this._selectedFeatures[a];c&&(b._decRefCount(a),delete this._selectedFeatures[a],
this._isTable||(this._setUnSelectSymbol(c),c.attr("data-selected")));return c},_setSelectSymbol:function(a){var b=this._selectionSymbol;b&&!this._isSelOnly&&a.setSymbol(b)},_setUnSelectSymbol:function(a){var b=this._selectionSymbol;b&&!this._isSelOnly&&b===a.symbol&&a.setSymbol(null,!0)},_getOutFields:function(){var a=[this.objectIdField,this.typeIdField,this.creatorField,this._startTimeField,this._endTimeField,this._trackIdField].concat(this._requiredFields).concat(this.dataAttributes),a=p.filter(a,
function(a,b,c){return!!a&&p.indexOf(c,a)===b}),b=h.clone(this._outFields);if(b){if(-1!==p.indexOf(b,"*"))return b;p.forEach(a,function(a){-1===p.indexOf(b,a)&&b.push(a)});return b}return a},_checkFields:function(a){var b=a||this._getOutFields();p.forEach(b,function(a){"*"!==a&&(this._getField(a)||console.debug("esri.layers.FeatureLayer: "+u.substitute({url:this.url,field:a},"unable to find '${field}' field in the layer 'fields' information [url: ${url}]")))},this);a||this._isTable||this._fserver||
this._collection||this._isStream||p.some(this.fields,function(a){return a&&"esriFieldTypeGeometry"===a.type?!0:!1})||console.debug("esri.layers.FeatureLayer: "+u.substitute({url:this.url},"unable to find a field of type 'esriFieldTypeGeometry' in the layer 'fields' information. If you are using a map service layer, features will not have geometry [url: ${url}]"))},_fixFieldCase:function(a,b,c){var d=a&&a[b],e;if(d&&!h.isFunction(d)){if(e=!this._getField(d)&&this._getField(d,!0))d=a[b]=e.name;c&&c.push(d)}return d},
_fixRendererFields:function(){var a=this.renderer;this._orderBy=null;this._requiredFields=[];if(a&&0<this.fields.length){var b=[],c,a=p.filter([a,a.observationRenderer,a.latestObservationRenderer,a.trackRenderer],u.isDefined),d=[].concat(a);p.forEach(a,function(a){p.forEach(a.rendererInfos,function(a){a.renderer&&d.push(a.renderer)})});p.forEach(d,function(a){this._fixFieldCase(a,"attributeField",b);this._fixFieldCase(a,"attributeField2",b);this._fixFieldCase(a,"attributeField3",b);this._fixFieldCase(a.rotationInfo,
"field",b);(c=this._fixFieldCase(a.sizeInfo,"field",b))&&!this._orderBy&&(this._orderBy=[c+" DESC"]);this._fixFieldCase(a.sizeInfo,"normalizationField",b);this._fixFieldCase(a.colorInfo,"field",b);this._fixFieldCase(a.colorInfo,"normalizationField",b);this._fixFieldCase(a.field,"field",b);this._fixFieldCase(a.opacityInfo,"field",b);this._fixFieldCase(a.opacityInfo,"normalizationField",b);p.forEach(a.visualVariables,function(a){c=this._fixFieldCase(a,"field",b);"sizeInfo"===a.type&&c&&!this._orderBy&&
(this._orderBy=[c+" DESC"]);this._fixFieldCase(a,"normalizationField",b)},this);var d=p.map(a.getFieldsUsedInExpressions(),function(a){var b=this.getField(a);return b?b.name:a},this);b=b.concat(d);this._orderBy||!a.addBreak||h.isFunction(a.attributeField)||!a.backgroundFillSymbol&&!this._hasSizeDiff(a)||(this._orderBy=[a.attributeField+" DESC"])},this);this._requiredFields=p.filter(b,u.isDefined)}},_hasSizeDiff:function(a){var b=Number.MAX_VALUE,c=-Number.MAX_VALUE,d,e;p.forEach(a.infos,function(a){if(e=
a.symbol){d=0;switch(e.type){case "simplemarkersymbol":d=e.size;break;case "picturemarkersymbol":d=(e.width+e.height)/2;break;case "simplelinesymbol":case "cartographiclinesymbol":d=e.width;break;case "simplefillsymbol":case "picturefillsymbol":d=e.outline&&e.outline.width}d&&(b=Math.min(b,d),c=Math.max(c,d))}});return b!==Number.MAX_VALUE&&c!==-Number.MAX_VALUE&&1<Math.abs(c-b)},getOrderByFields:function(){var a=this.orderByFields||this._orderBy;return this.supportsAdvancedQueries&&a?p.filter(a,
function(a){a=a.split(" ")[0];return!!this._getField(a,!0)},this):null},_getField:function(a,b){var c=this.fields;if(!c||0===c.length)return null;var d;b&&(a=a.toLowerCase());p.some(c,function(c){var e=!1;(e=b?c&&c.name.toLowerCase()===a?!0:!1:c&&c.name===a?!0:!1)&&(d=c);return e});return d},_getDateOpts:function(){this._dtOpts||(this._dtOpts={properties:p.map(p.filter(this.fields,function(a){return!(!a||"esriFieldTypeDate"!==a.type)}),function(a){return a.name})});return this._dtOpts},_applyNormalized:function(a,
b){a&&b&&p.forEach(a,function(a,c){a&&b[c]&&a.setGeometry(b[c])})},_editHandler:function(a,b,c,d,e,f){e=a.addResults;var g=a.updateResults;a=a.deleteResults;var k,m,l,n,q,r=this.objectIdField,t=this._mode,u=this._isTable;k=this.editFieldsInfo;n=this.getOutFields()||[];var x=k&&k.creatorField,v=k&&k.creationDateField,B=k&&k.editorField,y=k&&k.editDateField;k=k&&k.realm;-1===p.indexOf(n,"*")&&(x&&-1===p.indexOf(n,x)&&(x=null),v&&-1===p.indexOf(n,v)&&(v=null),B&&-1===p.indexOf(n,B)&&(B=null),y&&-1===
p.indexOf(n,y)&&(y=null));var A=v||y?(new Date).getTime():null,w=x||B?this.getUserId():void 0;w&&k&&(w=w+"@"+k);if(e){var C=this.globalIdField;for(k=0;k<e.length;k++)e[k]=new ha(e[k]),u||(m=e[k],m.success&&(l=m.objectId,n=b[k],(q=n._graphicsLayer)&&q!==this&&q.remove(n),q=n.attributes||{},q[r]=l,l=m.globalId,C&&l&&(q[C]=l),x&&(q[x]=w),B&&(q[B]=w),v&&(q[v]=A),y&&(q[y]=A),n.setAttributes(q),t._init&&t.drawFeature(n)))}if(g)for(k=0;k<g.length;k++)if(g[k]=new ha(g[k]),!u&&(m=g[k],m.success)){l=m.objectId;
n=c[l];if(b=t._getFeature(l))b.geometry!==n.geometry&&n.geometry&&b.setGeometry(L.fromJson(n.geometry.toJson())),b.attributes!==n.attributes&&n.attributes&&b.setAttributes(h.mixin(b.attributes,n.attributes)),this._repaint(b,l);n=b||n;q=n.attributes||{};B&&(q[B]=w);y&&(q[y]=A);n.setAttributes(q)}if(a){c=[];for(k=0;k<a.length;k++)if(a[k]=new ha(a[k]),!u&&(m=a[k],m.success&&(l=m.objectId,n=t._getFeature(l))))this._unSelectFeatureIIf(l,t)&&c.push(n),n._count=0,t._removeFeatureIIf(l);if(0<c.length)this.onSelectionComplete(c,
S.SELECTION_SUBTRACT)}this._resolve([e,g,a],"onEditsComplete",d,f)},_sendAttachment:function(a,b,c,d,e){var f=this;return r({url:this._url.path+"/"+b+"/"+("add"===a?"addAttachment":"updateAttachment"),form:c,content:h.mixin(this._url.query,{f:"json",token:this._getToken()||void 0}),callbackParamName:"callback.html",handleAs:"json"}).addCallback(function(c){var e="add"===a?"onAddAttachmentComplete":"onUpdateAttachmentComplete";c=new ha(c["add"===a?"addAttachmentResult":"updateAttachmentResult"]);c.attachmentId=
c.objectId;c.objectId=b;f._resolve([c],e,d);return c}).addErrback(function(a){f._resolve([a],null,e,null,!0)})},_repaint:function(a,b,c){b=u.isDefined(b)?b:a.attributes[this.objectIdField];b in this._selectedFeatures&&this._selectionSymbol||a.setSymbol(a.symbol,c)},_getKind:function(a){var b=this._trackManager;return b?b.isLatestObservation(a)?1:0:0}});h.mixin(S,{MODE_SNAPSHOT:0,MODE_ONDEMAND:1,MODE_SELECTION:2,SELECTION_NEW:3,SELECTION_ADD:4,SELECTION_SUBTRACT:5,MODE_AUTO:6,MODE_STREAM:7,POPUP_NONE:"esriServerHTMLPopupTypeNone",
POPUP_HTML_TEXT:"esriServerHTMLPopupTypeAsHTMLText",POPUP_URL:"esriServerHTMLPopupTypeAsURL"});ba._createWrappers(S);Object.defineProperty(S.prototype,"graphics",{get:function(){return this._hasOnDemandDrillMode()?this._mode.graphics:this._graphicsVal},set:function(a){this._graphicsVal=a}});t("extend-esri")&&h.setObject("layers.FeatureLayer",S,k);return S})},"esri/promiseList":function(){define(["dojo/_base/array","dojo/Deferred","dojo/when"],function(q,n,b){var g=q.forEach;return function(h){function p(a,
b){e[b]=a;d.progress([a,b]);0===--m&&d.resolve(e)}var l,f;h instanceof Array?f=h:h&&"object"===typeof h&&(l=h);var e,c=[];if(l){f=[];for(var a in l)Object.hasOwnProperty.call(l,a)&&(c.push(a),f.push(l[a]));e={}}else f&&(e=[]);if(!f||!f.length)return(new n).resolve(e);var d=new n;d.promise.always(function(){e=c=null});var m=f.length;g(f,function(a,e){l||c.push(e);b(a,function(a){d.isFulfilled()||p(a,c[e])},function(a){d.isFulfilled()||p(a,c[e])})});return d.promise}})},"esri/tasks/QueryTask":function(){define("require dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/Deferred dojo/_base/json dojo/DeferredList ../kernel ../sniff ../request ../deferredUtils ../geometry/Extent ../geometry/normalizeUtils ./Task ./FeatureSet".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){var k=e("esri-pbf"),u=n(null,{url:null,query:null,requestOptions:null,pagination:null,pageSize:null,_fetchDfd:null,_startPage:null,_result:null,constructor:function(a){this._handleSuccess=b.hitch(this,this._handleSuccess);this._handleError=b.hitch(this,this._handleError);b.mixin(this,a);null==this.pagination&&(this.pagination=!1);null==this.pageSize&&(this.pageSize=1E3)},execute:function(){var a=new h(this._canceler);this._fetchDfd=a;this._result=null;this._sendRequest();
return a.promise},_canceler:function(a){var b=a._pendingRequest,c;a.isFulfilled()||!b||b.isFulfilled()||(b.cancel(),c=b.results&&b.results[1]);a._pendingRequest=null;return c},_sendRequest:function(a){var b=this.query;this.pagination&&(this._startPage=b.resultOffset=null==a?0:a,b.resultRecordCount=this.pageSize);a=this.requestOptions;this._fetchDfd._pendingRequest=c({url:this.url,content:b,handleAs:"pbf"===b.f?"arraybuffer":"json",callbackParamName:"callback",timeout:a&&a.timeout},a);this._fetchDfd._pendingRequest.then(this._handleSuccess).otherwise(this._handleError)},
_handleSuccess:function(a){this.pagination?(a.exceededTransferLimit&&this._sendRequest(this._startPage+this.pageSize),this._result?this._result.features=this._result.features.concat(a.features):this._result=a,this._fetchDfd.progress(a),a.exceededTransferLimit||this._fetchDfd.resolve(this._result)):(this._fetchDfd.progress(a),this._fetchDfd.resolve(a))},_handleError:function(a){this._fetchDfd.reject(a)}}),r=n(w,{declaredClass:"esri.tasks.QueryTask",_eventMap:{complete:["featureSet"],"execute-for-count-complete":["count"],
"execute-for-ids-complete":["objectIds"],"execute-relationship-query-complete":["featureSets"]},constructor:function(a,c){this._handler=b.hitch(this,this._handler);this._relationshipQueryHandler=b.hitch(this,this._relationshipQueryHandler);this._executeForIdsHandler=b.hitch(this,this._executeForIdsHandler);this._countHandler=b.hitch(this,this._countHandler);this._extentHandler=b.hitch(this,this._extentHandler);this.source=c&&c.source;this.gdbVersion=c&&c.gdbVersion;this.registerConnectEvents()},__msigns:[{n:"execute",
c:4,a:[{i:0,p:["geometry"]}],e:2},{n:"rawExecute",c:2,a:[{i:0,p:["geometry"]}],e:2},{n:"executeForIds",c:3,a:[{i:0,p:["geometry"]}],e:2},{n:"executeForCount",c:3,a:[{i:0,p:["geometry"]}],e:2},{n:"executeForExtent",c:3,a:[{i:0,p:["geometry"]}],e:2}],onComplete:function(){},onRawExecuteComplete:function(){},onExecuteRelationshipQueryComplete:function(){},onExecuteForIdsComplete:function(){},onExecuteForCountComplete:function(){},onExecuteForExtentComplete:function(){},execute:function(a,d,e,f,g){var m=
g.assembly;a=this._encode(b.mixin({},this._url.query,{f:f&&f.format||"json"},a.toJson(m&&m[0])));var n=this._handler,q=this._errorHandler;this.source&&(f={source:this.source.toJson()},a.layer=p.toJson(f));this.gdbVersion&&(a.gdbVersion=this.gdbVersion);var t="pbf"===a.f;if(t){var u;k||(u="QueryTask.execute: 'pbf' format is not supported in your browser.");if(u)return a=new h,a.addErrback(function(a){q(a,e,g.dfd)}),a.reject(Error(u)),a}u=this.requestOptions;u=c({url:this._url.path+"/query",content:a,
callbackParamName:"callback",handleAs:t?"arraybuffer":"json",timeout:u&&u.timeout},u);a=[u];t&&a.push(r.loadPBFReader());(new l(a)).then(function(a){g.dfd.isFulfilled()||(a=a[0],a[0]?n(a[1],t,d,e,g.dfd):q(a[1],e,g.dfd))});return u},rawExecute:function(a,c,d){c=c||{};a=this._encode(b.mixin({},this._url.query,{f:c.format||"json"},a.toJson(d.assembly&&d.assembly[0])));this.source&&(a.layer=p.toJson({source:this.source.toJson()}));this.gdbVersion&&(a.gdbVersion=this.gdbVersion);return(new u({url:this._url.path+
"/query",query:a,requestOptions:this.requestOptions,pagination:c.pagination,pageSize:c.pageSize})).execute().then(null,null,function(a){d.dfd.progress(a)}).then(b.hitch(this,function(a){this._successHandler([a],"onRawExecuteComplete",null,d.dfd)})).otherwise(b.hitch(this,function(a){this._errorHandler(a,null,d.dfd)}))},executeRelationshipQuery:function(d,e,f){d=this._encode(b.mixin({},this._url.query,{f:"json"},d.toJson()));var g=this._relationshipQueryHandler,k=this._errorHandler;this.gdbVersion&&
(d.gdbVersion=this.gdbVersion);var m=new h(a._dfdCanceller),l=this.requestOptions;m._pendingDfd=c({url:this._url.path+"/queryRelatedRecords",content:d,callbackParamName:"callback",timeout:l&&l.timeout,load:function(a,b){g(a,b,e,f,m)},error:function(a){k(a,f,m)}},l);return m},executeForIds:function(a,d,e,f){var g=f.assembly;a=this._encode(b.mixin({},this._url.query,{f:"json",returnIdsOnly:!0},a.toJson(g&&g[0])));var k=this._executeForIdsHandler,h=this._errorHandler;this.source&&(g={source:this.source.toJson()},
a.layer=p.toJson(g));this.gdbVersion&&(a.gdbVersion=this.gdbVersion);g=this.requestOptions;return c({url:this._url.path+"/query",content:a,callbackParamName:"callback",timeout:g&&g.timeout,load:function(a,b){k(a,b,d,e,f.dfd)},error:function(a){h(a,e,f.dfd)}},g)},executeForCount:function(a,d,e,f){var g=f.assembly;a=this._encode(b.mixin({},this._url.query,{f:"json",returnIdsOnly:!0,returnCountOnly:!0},a.toJson(g&&g[0])));var k=this._countHandler,h=this._errorHandler;this.source&&(g={source:this.source.toJson()},
a.layer=p.toJson(g));this.gdbVersion&&(a.gdbVersion=this.gdbVersion);g=this.requestOptions;return c({url:this._url.path+"/query",content:a,callbackParamName:"callback",timeout:g&&g.timeout,load:function(a,b){k(a,b,d,e,f.dfd)},error:function(a){h(a,e,f.dfd)}},g)},executeForExtent:function(a,d,e,f){var g=f.assembly;a=this._encode(b.mixin({},this._url.query,{f:"json",returnExtentOnly:!0,returnCountOnly:!0},a.toJson(g&&g[0])));var k=this._extentHandler,h=this._errorHandler;this.source&&(g={source:this.source.toJson()},
a.layer=p.toJson(g));this.gdbVersion&&(a.gdbVersion=this.gdbVersion);g=this.requestOptions;return c({url:this._url.path+"/query",content:a,callbackParamName:"callback",timeout:g&&g.timeout,load:function(a,b){k(a,b,d,e,f.dfd)},error:function(a){h(a,e,f.dfd)}},g)},_handler:function(a,b,c,d,e){try{a&&b&&(a=r.pbfDeps.optimizedFeatures.convertToFeatureSet(r.pbfDeps.pbfQueryUtils.parsePBFFeatureQuery(a)));var f=new t(a);this._successHandler([f],"onComplete",c,e)}catch(C){this._errorHandler(C,d,e)}},_relationshipQueryHandler:function(a,
b,c,d,e){try{var f=a.geometryType,k=a.spatialReference,h={};g.forEach(a.relatedRecordGroups,function(a){var b={};b.geometryType=f;b.spatialReference=k;b.features=a.relatedRecords;b=new t(b);if(null!=a.objectId)h[a.objectId]=b;else for(var c in a)a.hasOwnProperty(c)&&"relatedRecords"!==c&&(h[a[c]]=b)});this._successHandler([h],"onExecuteRelationshipQueryComplete",c,e)}catch(E){this._errorHandler(E,d,e)}},_executeForIdsHandler:function(a,b,c,d,e){try{this._successHandler([a.objectIds],"onExecuteForIdsComplete",
c,e)}catch(B){this._errorHandler(B,d,e)}},_countHandler:function(a,b,c,d,e){try{var f,g=a.features,k=a.objectIds;if(k)f=k.length;else{if(g)throw Error("Unable to perform query. Please check your parameters.");f=a.count}this._successHandler([f],"onExecuteForCountComplete",c,e)}catch(E){this._errorHandler(E,d,e)}},_extentHandler:function(a,b,c,e,f){try{a.extent&&(a.extent=new d(a.extent)),this._successHandler([a],"onExecuteForExtentComplete",c,f)}catch(B){this._errorHandler(B,e,f)}}});r.loadPBFReader=
function(){var a=new h;r.pbfDeps?a.resolve():q(["./support/pbfDeps"],function(b){r.pbfDeps=b;a.isFulfilled()||a.resolve()});return a.promise};m._createWrappers(r);e("extend-esri")&&b.setObject("tasks.QueryTask",r,f);return r})},"dojo/DeferredList":function(){define(["./_base/kernel","./_base/Deferred","./_base/array"],function(q,n,b){q.DeferredList=function(g,h,p,l,f){var e=[];n.call(this);var c=this;0!==g.length||h||this.resolve([0,[]]);var a=0;b.forEach(g,function(b,f){function d(b,d){e[f]=[b,d];
a++;a===g.length&&c.resolve(e)}b.then(function(a){h?c.resolve([f,a]):d(!0,a)},function(a){p?c.reject(a):d(!1,a);if(l)return null;throw a;})})};q.DeferredList.prototype=new n;q.DeferredList.prototype.gatherResults=function(g){g=new q.DeferredList(g,!1,!0,!1);g.addCallback(function(g){var h=[];b.forEach(g,function(b){h.push(b[1])});return h});return g};return q.DeferredList})},"esri/tasks/Task":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/json dojo/has ../kernel ../deferredUtils ../urlUtils ../Evented".split(" "),
function(q,n,b,g,h,p,l,f){q=q(f,{declaredClass:"esri.tasks._Task",_eventMap:{error:["error"],complete:["result"]},constructor:function(b,c){b&&n.isString(b)&&(this._url=l.urlToObject(this.url=b));c&&c.requestOptions&&(this.requestOptions=c.requestOptions);this.normalization=!0;this._errorHandler=n.hitch(this,this._errorHandler);this.registerConnectEvents()},_useSSL:function(){var b=this._url,c=/^http:/i;this.url&&(this.url=this.url.replace(c,"https:"));b&&b.path&&(b.path=b.path.replace(c,"https:"))},
_encode:function(e,c,a){var d,f,g={},h,k;for(h in e)if("declaredClass"!==h&&(d=e[h],f=typeof d,null!==d&&void 0!==d&&"function"!==f))if(n.isArray(d))for(g[h]=[],k=d.length,f=0;f<k;f++)g[h][f]=this._encode(d[f]);else"object"===f?d.toJson&&(f=d.toJson(a&&a[h]),"esri.tasks.FeatureSet"===d.declaredClass&&f.spatialReference&&(f.sr=f.spatialReference,delete f.spatialReference),g[h]=c?f:b.toJson(f)):g[h]=d;return g},_successHandler:function(b,c,a,d){c&&this[c].apply(this,b);a&&a.apply(null,b);d&&p._resDfd(d,
b)},_errorHandler:function(b,c,a){this.onError(b);c&&c(b);a&&a.errback(b)},setNormalization:function(b){this.normalization=b},onError:function(){}});g("extend-esri")&&(h.Task=q);return q})},"esri/tasks/FeatureSet":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ../graphic ../SpatialReference ../graphicsUtils ../geometry/Polygon ../geometry/jsonUtils ../symbols/jsonUtils".split(" "),function(q,n,b,g,h,p,l,f,e,c,a,d){q=q(null,{declaredClass:"esri.tasks.FeatureSet",
constructor:function(c,e){if(c){n.mixin(this,c);var g=this.features=this.features||[],k=c.spatialReference,k=this.spatialReference=a.createInstance(f.simpleConstructor,k),h=a.getGeometryType(c.geometryType);this.geometryType=c.geometryType;c.fields&&(this.fields=c.fields);c=a.supportsLazyUnquantization(this.geometryType);var m=a.unquantizeFunction(this.geometryType,this.transform),p=!!(e&&c&&m),q=h&&(p?h.accessorConstructor:h.simpleConstructor);b.forEach(g,function(b,c){var e=a.createInstance(l.simpleConstructor),
n=b.geometry;if(h&&n){var r=e.geometry=a.createInstance(q,p?null:n);r.setSpatialReference(n.spatialReference?a.createInstance(f.simpleConstructor,n.spatialReference):k);p&&r.setupLazyUnquantization(m,n)}e.symbol=b.symbol?d.fromJson(b.symbol):null;e.attributes=b.attributes;g[c]=e});p||this._hydrate()}else this.features=[]},displayFieldName:null,geometryType:null,spatialReference:null,fieldAliases:null,toJson:function(b){var c={};this.displayFieldName&&(c.displayFieldName=this.displayFieldName);this.fields&&
(c.fields=this.fields);this.spatialReference?c.spatialReference=this.spatialReference.toJson():this.features[0]&&this.features[0].geometry&&(c.spatialReference=this.features[0].geometry.spatialReference.toJson());this.features[0]&&(this.features[0].geometry&&(c.geometryType=a.getJsonType(this.features[0].geometry)),c.features=e._encodeGraphics(this.features,b));c.geometryType=c.geometryType||this.geometryType;c.exceededTransferLimit=this.exceededTransferLimit;c.transform=this.transform;return p.fixJson(c)},
_hydrate:function(){a.unquantize(this.features,this.geometryType,this.transform);this.transform=null},quantize:function(a){if(!this.geometryType)return this.transform=null,this;var b=a.translate[0],c=a.translate[1],d=a.scale[0],e=a.scale[1],f=this.features,g=function(a,b,c){var d,e,f,g,k,h,l=[];d=0;for(e=a.length;d<e;d++)if(f=a[d],0<d){if(h=b(f[0]),f=c(f[1]),h!==g||f!==k)l.push([h-g,f-k]),g=h,k=f}else g=b(f[0]),k=c(f[1]),l.push([g,k]);return 0<l.length?l:null},h=function(a,b,c){if("esriGeometryPoint"===
a)return function(a){a.x=b(a.x);a.y=c(a.y);return a};if("esriGeometryPolyline"===a||"esriGeometryPolygon"===a)return function(a){var d,e,f,k,h;f=a.rings||a.paths;h=[];d=0;for(e=f.length;d<e;d++)k=f[d],(k=g(k,b,c))&&h.push(k);return 0<h.length?(a.rings?a.rings=h:a.paths=h,a):null};if("esriGeometryMultipoint"===a)return function(a){var d;d=g(a.points,b,c);return 0<d.length?(a.points=d,a):null};if("esriGeometryEnvelope"===a)return function(a){return a}}(this.geometryType,function(a){return Math.round((a-
b)/d)},function(a){return Math.round((c-a)/e)}),l,m;l=0;for(m=f.length;l<m;l++)f[l].geometry&&(h(f[l].geometry)||f[l].setGeometry(null));this.transform=a;return this}});q.createGraphics=function(c){var d=c.geometryType,e=a.createInstance(f.simpleConstructor,c.spatialReference),g=a.getGeometryType(d).accessorConstructor,h=a.unquantizeFunction(d,c.transform);return b.map(c.features,function(b,c){c=a.createInstance(l.simpleConstructor);var d=b.geometry;if(d){var f=c.geometry=a.createInstance(g);f.setSpatialReference(e);
f.setupLazyUnquantization(h,d)}c.attributes=b.attributes;return c})};q.createPolygon=function(b,d,e){var f;b&&(f=a.createInstance(c.accessorConstructor),f.setSpatialReference(d),d=a.unquantizeFunction("esriGeometryPolygon",e),f.setupLazyUnquantization(d,b));return f};g("extend-esri")&&n.setObject("tasks.FeatureSet",q,h);return q})},"esri/tasks/StatisticDefinition":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],function(q,n,b,g){q=q(null,{declaredClass:"esri.tasks.StatisticDefinition",
toJson:function(){return{statisticType:this.statisticType,onStatisticField:this.onStatisticField,outStatisticFieldName:this.outStatisticFieldName,maxPointCount:this.maxPointCount,maxRecordCount:this.maxRecordCount,maxVertexCount:this.maxVertexCount}}});b("extend-esri")&&n.setObject("tasks.StatisticDefinition",q,g);return q})},"esri/layers/FeatureType":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../lang ../symbols/jsonUtils ./RangeDomain ./CodedValueDomain ./InheritedDomain ./FeatureTemplate".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a){q=q(null,{declaredClass:"esri.layers.FeatureType",constructor:function(b){if(b&&n.isObject(b)){this.id=b.id;this.name=b.name;var d=b.symbol;d&&(this.symbol=l.fromJson(d));var d=b.domains,g,h=this.domains={};for(g in d)if(d.hasOwnProperty(g)){var k=d[g];switch(k.type){case "range":h[g]=new f(k);break;case "codedValue":h[g]=new e(k);break;case "inherited":h[g]=new c(k)}}if(g=b.templates)for(d=this.templates=[],b=0;b<g.length;b++)d.push(new a(g[b]))}},toJson:function(){var a=
{id:this.id,name:this.name,symbol:this.symbol&&this.symbol.toJson()},c,e=this.domains,f=this.templates,g=p.fixJson;if(e){var h=a.domains={};for(c in e)e.hasOwnProperty(c)&&(h[c]=e[c]&&e[c].toJson());g(h)}f&&(a.templates=b.map(f,function(a){return a.toJson()}));return g(a)}});g("extend-esri")&&n.setObject("layers.FeatureType",q,h);return q})},"esri/layers/FeatureTemplate":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../lang ../graphic".split(" "),function(q,n,b,g,h,p){q=
q(null,{declaredClass:"esri.layers.FeatureTemplate",constructor:function(b){b&&n.isObject(b)&&(this.name=b.name,this.description=b.description,this.drawingTool=b.drawingTool,this.thumbnail=b.thumbnail,b=b.prototype,this.prototype=new p(b.geometry,null,b.attributes))},toJson:function(){return h.fixJson({name:this.name,description:this.description,drawingTool:this.drawingTool,thumbnail:h.fixJson(n.clone(this.thumbnail)),prototype:this.prototype&&this.prototype.toJson()})}});n.mixin(q,{TOOL_AUTO_COMPLETE_POLYGON:"esriFeatureEditToolAutoCompletePolygon",
TOOL_CIRCLE:"esriFeatureEditToolCircle",TOOL_ELLIPSE:"esriFeatureEditToolEllipse",TOOL_FREEHAND:"esriFeatureEditToolFreehand",TOOL_LINE:"esriFeatureEditToolLine",TOOL_NONE:"esriFeatureEditToolNone",TOOL_POINT:"esriFeatureEditToolPoint",TOOL_POLYGON:"esriFeatureEditToolPolygon",TOOL_RECTANGLE:"esriFeatureEditToolRectangle",TOOL_ARROW:"esriFeatureEditToolArrow",TOOL_TRIANGLE:"esriFeatureEditToolTriangle",TOOL_LEFT_ARROW:"esriFeatureEditToolLeftArrow",TOOL_RIGHT_ARROW:"esriFeatureEditToolRightArrow",
TOOL_UP_ARROW:"esriFeatureEditToolUpArrow",TOOL_DOWN_ARROW:"esriFeatureEditToolDownArrow"});b("extend-esri")&&n.setObject("layers.FeatureTemplate",q,g);return q})},"esri/layers/FeatureEditResult":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/has","../kernel"],function(q,n,b,g){q=q(null,{declaredClass:"esri.layers.FeatureEditResult",constructor:function(b){b&&n.isObject(b)&&(this.objectId=b.objectId,this.globalId=b.globalId,this.success=b.success,b.success||(b=b.error,this.error=
Error(),this.error.code=b.code,this.error.message=b.description))}});b("extend-esri")&&n.setObject("layers.FeatureEditResult",q,g);return q})},"esri/layers/SnapshotMode":function(){define("dojo/_base/declare dojo/_base/lang dojo/has ../kernel ../SpatialReference ../srUtils ../tasks/query ./RenderMode ./support/ParallelSnapshot".split(" "),function(q,n,b,g,h,p,l,f,e){q=q([f],{declaredClass:"esri.layers._SnapshotMode",maxFeatures:5E4,_isSuspendedAtStartup:!1,_pendingRefresh:!1,constructor:function(b){this.featureLayer=
b;this._featureMap={};this._hasUpdateError=this._hasPartialFeatures=!1;this._drawFeatures=n.hitch(this,this._drawFeatures);this._queryErrorHandler=n.hitch(this,this._queryErrorHandler);this._handleSuccess=n.hitch(this,this._handleSuccess);this._handleError=n.hitch(this,this._handleError);this._handleProgress=n.hitch(this,this._handleProgress)},startup:function(){if(!this._started||this._isSuspendedAtStartup){this.inherited(arguments);var b=this.featureLayer,a=b.advancedQueryCapabilities,d=b.reHostedFS.test(b.url);
this.pagination=b.queryPagination&&null!=b.maxRecordCount;this._tileQueriesEnabled=d&&a&&a.supportsQueryWithResultType;d&&this.pagination&&(this._parallelSnapshot=new e({layer:b,mode:this,queryTask:b._task}));this._isSuspendedAtStartup=b.suspended;this._startup()}},propertyChangeHandler:function(b){this._init&&(b?this.featureLayer._collection?console.log("FeatureLayer: layer created by value (from a feature collection) does not support definition expressions and time definitions. Layer id \x3d "+
this.featureLayer.id):this._fetchAll():this._applyTimeFilter())},destroy:function(){this._isSuspendedAtStartup=this._pendingRefresh=!1;this._cancelPendingRequest(this._pendingRequest);this._parallelSnapshot&&this._parallelSnapshot.destroy();this.inherited(arguments)},drawFeature:function(b){var a=b.attributes[this.featureLayer.objectIdField];this._addFeatureIIf(a,b);this._incRefCount(a)},resume:function(){this._isSuspendedAtStartup||this._pendingRefresh?(this._isSuspendedAtStartup=!1,this._startup()):
this.propertyChangeHandler(0)},refresh:function(){var b=this.featureLayer;b._collection?(b._fireUpdateStart(),b._refresh(!0),b._fireUpdateEnd()):this._fetchAll()},hasAllFeatures:function(){return!this._hasPartialFeatures},hasUpdateError:function(){return this._hasUpdateError},canFetchPBF:function(b){return this.inherited(arguments)&&this.featureLayer._canFetchPBFForQuery(b)},_startup:function(){this.featureLayer._collection?this._applyTimeFilter():this._fetchAll()},_fetchAll:function(){var b=this.featureLayer;
b._collection||b.suspended||!b.isQueryable()?this._pendingRefresh=b.suspended:(this._pendingRefresh=!1,b._fireUpdateStart(),this._clearIIf(),this._hasUpdateError=this._hasPartialFeatures=!1,this._parallelSnapshot?this._parallelSnapshot.fetch().then(this._handleSuccess,this._handleError,this._handleProgress):this._sendRequest())},_handleSuccess:function(b){this._hasPartialFeatures=b.hasPartialFeatures;this._hasUpdateError=b.hasUpdateError;this.featureLayer._fireUpdateEnd(null)},_handleError:function(b){this._queryErrorHandler(b)},
_handleProgress:function(b){b.isError?this.featureLayer._errorHandler(b.error):this._addFeatures(b.features)},_getPageSize:function(b){var a=this.featureLayer.tileMaxRecordCount;return"tile"===b.resultType&&a?a:this.featureLayer.maxRecordCount},_sendRequest:function(b){var a=this.featureLayer,c=this._createQueryInfo(),e=c.query;this.pagination&&(this._pageSize=this._getPageSize(e),this._start=e.start=null==b?0:b,e.num=this._pageSize);this._pendingRequest&&this._cancelPendingRequest(this._pendingRequest);
this._pendingRequest=a._task.execute(e,this._drawFeatures,this._queryErrorHandler,c.pbf?{format:"pbf"}:null)},_drawFeatures:function(b){this._pendingRequest=null;var a=this.featureLayer,c=b.exceededTransferLimit,e=c&&!a._collection;b=this._checkMaxLimit(b.features);var f=b.maxLimitReached;this._addFeatures(b.features);this.pagination&&e&&!f||(this._hasPartialFeatures=!!c,a._fireUpdateEnd(null,c?{queryLimitExceeded:!0}:null));e&&(this.pagination&&!f&&this._sendRequest(this._start+this._pageSize),a.onQueryLimitExceeded())},
_queryErrorHandler:function(b){this._pendingRequest=null;this._hasUpdateError=this._hasPartialFeatures=!0;var a=this.featureLayer;a._errorHandler(b);a._fireUpdateEnd(b)},_checkMaxLimit:function(b){var a=b?b.length:0,c=this.featureLayer.graphics.length+a,e=c>=this.maxFeatures;if(e){var f=c-this.maxFeatures;f&&b.splice(a-f,f)}return{maxLimitReached:e,featuresDiscarded:c>this.maxFeatures,features:b}},_createQueryInfo:function(){var b=this.featureLayer,a=new l;a.outFields=b.getOutFields();a.where=b.getDefinitionExpression()||
"1\x3d1";a.returnGeometry=!0;a.outSpatialReference=p.createSpatialReference(this.map.spatialReference.toJson());a.timeExtent=b.getTimeDefinition();a.maxAllowableOffset=b._maxOffset;a.quantizationParameters=b._quantizationParameters;a.orderByFields=b.supportsAdvancedQueries?b.getOrderByFields():null;a.multipatchOption=b.multipatchOption;b._ts&&(a._ts=(new Date).getTime());this._tileQueriesEnabled&&(a.resultType="tile");var d=this.canFetchPBF(a);b._enableEditModeQuantization(a,d);return{query:a,pbf:d}},
_addFeatures:function(b){var a=this.featureLayer,c=a.objectIdField,e=b.length,f=a._selectedFeatures,g=a.mode===a.constructor.MODE_AUTO,k,h,l;a._fireUpdateStart();a._sortFeatures(b);for(a=0;a<e;a++)h=b[a],l=h.attributes[c],k=this._addFeatureIIf(l,h),this._incRefCount(l),g&&k!==h&&f[l]&&(k.setGeometry(h.geometry),k.setAttributes(h.attributes));this._applyTimeFilter(!0)}});b("extend-esri")&&n.setObject("layers._SnapshotMode",q,g);return q})},"esri/layers/RenderMode":function(){define(["dojo/_base/declare",
"dojo/_base/lang","dojo/_base/array","../sniff","../kernel"],function(q,n,b,g,h){var p=!!g("esri-pbf"),l=!!g("esri-featurelayer-pbf");q=q(null,{declaredClass:"esri.layers._RenderMode",enablePBFQuery:p&&l,initialize:function(b){this.map=b;this._init=!0},startup:function(){this._started=!0},propertyChangeHandler:function(b){},destroy:function(){this._init=this._started=!1},drawFeature:function(b){},suspend:function(){},resume:function(){},refresh:function(){},hasAllFeatures:function(){return!0},hasUpdateError:function(){return!1},
canFetchPBF:function(b){return!(!this.featureLayer._canFetchPBF()||!this.enablePBFQuery)},_incRefCount:function(b){(b=this._featureMap[b])&&b._count++},_decRefCount:function(b){(b=this._featureMap[b])&&b._count--},_getFeature:function(b){return this._featureMap[b]},_addFeatureIIf:function(b,e){var c=this._featureMap,a=c[b],d=this.featureLayer;a||(c[b]=e,d._add(e),e._count=0);return a||e},_removeFeatureIIf:function(b){var e=this._featureMap[b],c=this.featureLayer;if(e){if(e._count)return;delete this._featureMap[b];
c._remove(e)}return e},_registerFeature:function(b,e){var c=this._featureMap,a=c[b];a?(a.attributes=e.attributes,a.geometry=e.geometry):(c[b]=e,e._count=0,e._layer=e._graphicsLayer=e._sourceLayer=this.featureLayer);return a||e},_unregisterFeature:function(b){var e=this._featureMap,c=e[b];c&&!c._count&&(delete e[b],c._graphicsLayer=null)},_clearIIf:function(){var b;b=this.featureLayer;var e=b.graphics,c=b._selectedFeatures,a=b.getSelectedFeatures().length,d=b.objectIdField;if(a)for(b=e.length-1;0<=
b;b--){var a=e[b],g=a.attributes[d];g in c?a._count=1:(a._count=0,this._removeFeatureIIf(g))}else b.clear(),this._featureMap={}},_cancelPendingRequest:function(b){if(b)try{b.cancel()}catch(e){}},_toggleVisibility:function(b){var e=this.featureLayer,c=e.graphics,a=b?"show":"hide",d,f=c.length;b=b&&e._ager;for(d=0;d<f;d++){var g=c[d];g[a]();b&&e._repaint(g)}},_applyTimeFilter:function(f){var e=this.featureLayer;if(e.timeInfo&&!e.suspended){f||e._fireUpdateStart();var c=e._trackManager;c&&c.clearTracks();
var a=e.getTimeDefinition(),d=e._getOffsettedTE(e._mapTimeExtent);d?(d=e._getTimeOverlap(a,d))?(a=e._filterByTime(e.graphics,d.startTime,d.endTime),c&&c.addFeatures(a.match),b.forEach(a.match,function(a){var b=a._shape;a.visible||(a.show(),(b=a._shape)&&b._moveToFront());e._ager&&b&&e._repaint(a)}),b.forEach(a.noMatch,function(a){a.visible&&a.hide()})):this._toggleVisibility(!1):(c&&c.addFeatures(e.graphics),this._toggleVisibility(!0));c&&(c.moveLatestToFront(),c.drawTracks());f||e._fireUpdateEnd()}}});
g("extend-esri")&&n.setObject("layers._RenderMode",q,h);return q})},"esri/layers/support/ParallelSnapshot":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has dojo/Deferred ../../kernel".split(" "),function(q,n,b,g,h,p){q=q(null,{declaredClass:"esri.layers.support.ParallelSnapshot",layer:null,mode:null,queryTask:null,batchSize:5,_queryInfo:null,_fetchDfd:null,_startPage:null,_lastPage:null,_pageSize:null,_maxPages:null,_requests:null,constructor:function(b){n.mixin(this,
b);this._requests={}},destroy:function(){this.cancel()},fetch:function(){var b=new h;this.cancel(!0);this._queryInfo=this.mode._createQueryInfo();this._pageSize=this.mode._getPageSize(this._queryInfo.query);this._maxPages=Math.ceil(this._getFeatureCount()/this._pageSize);this._fetchDfd=b;this._sendRequests();return b.promise},cancel:function(b){this._cancelPendingRequests(b);this._reset()},_reset:function(){this._startPage=this._lastPage=null;this._requests={}},_getFeatureCount:function(){return this.layer.mode===
this.layer.constructor.MODE_AUTO&&0===this.layer.getLastExceedsLimitResult()?this.layer._getMaxFeaturesForAutoSnapshotMode():this.mode.maxFeatures},_sendRequests:function(b){var f=this._queryInfo.query,e=this.queryTask,c=this._requests,a;b=null==b?1:b;a=b+this.batchSize-1;a>this._maxPages&&(a=this._maxPages);if(!(b>a))for(this._startPage=b,this._lastPage=a;b<=a;b++)f.start=(b-1)*this._pageSize,f.num=this._pageSize,c[b]=e.execute(f,null,null,this._queryInfo.pbf?{format:"pbf"}:null),c[b].then(n.hitch(this,
this._handleSuccess,b)).otherwise(n.hitch(this,this._handleError,b))},_evalNextBatch:function(b){b===this._lastPage&&this._sendRequests(this._lastPage+1)},_handleSuccess:function(b,f){f.exceededTransferLimit||this._cancelLaterRequests(b,!0);var e=this.mode._checkMaxLimit(f.features);this._fetchDfd.progress({features:e.features,isError:!1});e.maxLimitReached?((b=e.featuresDiscarded||this._hasRejectedRequests())||(b=!!this._getResult(this._getLastSuccessfulRequest()).exceededTransferLimit),this._resolveFetch(b)):
(f.exceededTransferLimit&&this._evalNextBatch(b),this._evalResolution())},_handleError:function(b,f){var e=this._requests;e&&e[b]&&(1===b?this._rejectFetch(f):(this._evalNextBatch(b),this._fetchDfd.progress({error:f,isError:!0}),this._evalResolution()))},_evalResolution:function(){this._hasPendingRequests()||this._resolveFetch(this._hasRejectedRequests())},_resolveFetch:function(b){var f=this._hasRejectedRequests();this.cancel(!0);this._fetchDfd.resolve({hasPartialFeatures:b,hasUpdateError:f})},_rejectFetch:function(b){this.cancel(!0);
this._fetchDfd.reject(b)},_getResult:function(b){return b&&b.dfd.results[0]},_hasPendingRequests:function(){return!!this._getPendingRequests().length},_getPendingRequests:function(){var b=this._requests,f,e=[];for(f in b){var c=b[f];c.isFulfilled()||e.push({pageId:Number(f),dfd:c})}return e},_getLastSuccessfulRequest:function(){var g=this._getResolvedRequests(),f=-Infinity,e,g=b.filter(g,function(b){return!!this._getResult(b).features.length||1===b.pageId},this);b.forEach(g,function(b){b.pageId>f&&
(f=b.pageId,e=b)});return e},_getResolvedRequests:function(){var b=this._requests,f,e=[];for(f in b){var c=b[f];c.isResolved()&&e.push({pageId:Number(f),dfd:c})}return e},_hasRejectedRequests:function(){var g=this._getRejectedRequests(),f=this._getLastSuccessfulRequest(),e=this._getResult(f);e&&!e.exceededTransferLimit&&(g=b.filter(g,function(b){return b.pageId<=f.pageId}));return!!g.length},_getRejectedRequests:function(){var b=this._requests,f,e=[];for(f in b){var c=b[f];c.isRejected()&&e.push({pageId:Number(f),
dfd:c})}return e},_cancelPendingRequests:function(b){this._cancelRequests(this._getPendingRequests(),b)},_cancelLaterRequests:function(g,f){var e=b.filter(this._getPendingRequests(),function(b){return b.pageId>g});this._cancelRequests(e,f)},_cancelRequests:function(g,f){var e=this.mode,c=this._requests;b.forEach(g,function(a){f&&delete c[a.pageId];e._cancelPendingRequest(a.dfd)})}});g("extend-esri")&&n.setObject("layers.support.ParallelSnapshot",q,p);return q})},"esri/layers/OnDemandMode":function(){define("dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/has ../kernel ../geometry/Point ../tasks/query ./RenderMode ./GridLayout".split(" "),
function(q,n,b,g,h,p,l,f,e,c){q=q([e],{declaredClass:"esri.layers._OnDemandMode",constructor:function(a){this.featureLayer=a;this._featureMap={}},initialize:function(a){this.inherited(arguments);var b=this.featureLayer,e=b._srInfo;this._gridLayer=new c(new l(e?e.valid[0]:a.extent.xmin,e?e.valid[1]:a.extent.ymax,a.spatialReference),{width:b._tileWidth,height:b._tileHeight},{width:a.width,height:a.height},e);this._cellMap={};this._gridLayer.setResolution(a.extent)},startup:function(){if(!this._started||
this._isSuspendedAtStartup)this.inherited(arguments),this._ioQueue=[],this._isSuspendedAtStartup=this.featureLayer.suspended,this.featureLayer.suspended||(this._zoomHandler(),this._enableConnectors())},propertyChangeHandler:function(a){this._init&&(2>a?this._zoomHandler():console.log("FeatureLayer: layer in on-demand mode does not support time definitions. Layer id \x3d "+this.featureLayer.id+", Layer URL \x3d "+this.featureLayer.url))},destroy:function(){this._disableConnectors();this._processIOQueue(!0);
this.inherited(arguments)},drawFeature:function(a){var b=a.geometry,c=[];if(b){var c=this._gridLayer.getCellsInExtent("point"===b.type?{xmin:b.x,ymin:b.y,xmax:b.x,ymax:b.y}:b.getExtent(),!1).cells,b=this._cellMap,e,f,g=a.attributes[this.featureLayer.objectIdField],h,l,p;for(e=0;e<c.length;e++)f=c[e],h=f.latticeID,l=f.row,p=f.col,h?f=b[h]=b[h]||f:(b[l]=b[l]||{},f=b[l][p]=b[l][p]||f),f.features=f.features||[],f.features.push(a),this._addFeatureIIf(g,a),this._incRefCount(g)}},suspend:function(){this._init&&
this._disableConnectors()},resume:function(){this._init&&(this._enableConnectors(),this._zoomHandler())},refresh:function(){this._zoomHandler()},hasAllFeatures:function(){var a=!1,b=this._getCurrentCells(),c;for(c=0;c<b.length;c++)if(b[c].hasPartialFeatures){a=!0;break}return!a},hasUpdateError:function(){var a=!1,b=this._getCurrentCells(),c;for(c=0;c<b.length;c++)if(b[c].hasUpdateError){a=!0;break}return a},canFetchPBF:function(a){return this.inherited(arguments)&&this.featureLayer._canFetchPBFForQuery(a)},
_enableConnectors:function(){var a=this.map;this._zoomConnect=n.connect(a,"onZoomEnd",this,this._zoomHandler);this._panConnect=n.connect(a,"onPanEnd",this,this._panHandler);this._resizeConnect=n.connect(a,"onResize",this,this._panHandler)},_disableConnectors:function(){n.disconnect(this._zoomConnect);n.disconnect(this._panConnect);n.disconnect(this._resizeConnect)},_zoomHandler:function(){this._processIOQueue(!0);var a=this.featureLayer,b=this.map;!a.suspended&&a.isQueryable()&&(a._fireUpdateStart(),
this._clearIIf(),(a=a._trackManager)&&a.clearTracks(),this._cellMap={},this._gridLayer.setResolution(b.extent),this._sendRequest())},_panHandler:function(a){if(this.featureLayer.isQueryable()){this.featureLayer._fireUpdateStart();var b=this.featureLayer._resized;a=b?a:null;b&&this._gridLayer.setMapState(a,this.map.width,this.map.height);this._sendRequest(a)}},_sendRequest:function(a){this._exceeds=!1;var c=this.featureLayer,e=this.map;a=a||e.extent;e=this._gridLayer.getCellsInExtent(a,c.latticeTiling).cells;
if(!c.isEditable())var f=this._cellMap,e=g.filter(e,function(a){if(a.lattice){if(f[a.latticeID])return!1}else if(f[a.row]&&f[a.row][a.col])return!1;return!0});this._pending=this._pending||0;var h;for(h=0;h<e.length;h++){var k=e[h],l=this._createQuery(k),p=this.canFetchPBF(l);c._enableEditModeQuantization(l,p);this._pending++;this._ioQueue.push(c._task.execute(l,b.hitch(this,this._drawFeatures,k),b.hitch(this,this._queryErrorHandler,k),p?{format:"pbf"}:null))}this._removeOldCells(a);this._endCheck()},
_drawFeatures:function(a,b){a.hasPartialFeatures=!!b.exceededTransferLimit;a.hasUpdateError=!1;this._exceeds=this._exceeds||b.exceededTransferLimit;this._finalizeIO();var c=this.featureLayer,d=this.map.extent,e=a.extent,f=a.row,g=a.col,h=c.objectIdField;b=b.features;var l=this._gridLayer,p=this._cellMap,n=a.latticeID,p=n?p[n]:p[f]&&p[f][g];if(a.resolution==l._resolution&&(n?n===l.getLatticeID(d):l.intersects(e,d)))if(p)c._sortFeatures(b),this._updateCell(p,b);else for(c._sortFeatures(b),a.features=
b,this._addCellToCellMap(a),c=b.length,a=0;a<c;a++)d=b[a],e=d.attributes[h],this._addFeatureIIf(e,d),this._incRefCount(e);else p&&this._removeCell(f,g,n);this._endCheck()},_queryErrorHandler:function(a,b){this._finalizeIO();a.hasPartialFeatures=!0;a.hasUpdateError=!0;this._addCellToCellMap(a);this.featureLayer._errorHandler(b);this._endCheck(b)},_finalizeIO:function(){this._pending--},_endCheck:function(a){if(0===this._pending){this._processIOQueue();var b=this.featureLayer,c=b._trackManager;c&&(c.clearTracks(),
c.addFeatures(b.graphics),b._ager&&g.forEach(b.graphics,function(a){a._shape&&b._repaint(a)}),c.moveLatestToFront(),c.drawTracks());this.featureLayer._fireUpdateEnd(!!a&&Error("FeatureLayer: "+(a.message||"an error occurred while updating the layer.")),this._exceeds?{queryLimitExceeded:!0}:null);if(this._exceeds)b.onQueryLimitExceeded()}},_processIOQueue:function(a){this._ioQueue=g.filter(this._ioQueue,function(a){return-1<a.fired?!1:!0});a&&g.forEach(this._ioQueue,this._cancelPendingRequest)},_createQuery:function(a){var b=
this.featureLayer,c=new f;c.outFields=b.getOutFields();c.where=b.getDefinitionExpression();c.returnGeometry=!0;c.geometry=a.extent||a.lattice;b.latticeTiling&&a.extent&&(c.spatialRelationship=f.SPATIAL_REL_CONTAINS);c.timeExtent=b._getOffsettedTE(b._mapTimeExtent);c.maxAllowableOffset=b._maxOffset;c.quantizationParameters=b._quantizationParameters;c.orderByFields=b.supportsAdvancedQueries?b.getOrderByFields():null;c.multipatchOption=b.multipatchOption;b._ts&&(c._ts=(new Date).getTime());(a=b.advancedQueryCapabilities)&&
a.supportsQueryWithResultType&&(c.resultType="tile");return c},_getCurrentCells:function(a){var b=[];a=a||this._cellMap;for(var c in a)if(a.hasOwnProperty(c)){var e=a[c];e&&(e.hasOwnProperty("row")||e.hasOwnProperty("latticeID")?b.push(e):"object"===typeof e&&b.push.apply(b,this._getCurrentCells(e)))}return b},_addCellToCellMap:function(a){var b=this._cellMap;if(a.latticeID)b[a.latticeID]=a;else{var c=a.row,e=a.col;b[c]=b[c]||{};b[c][e]=a}},_removeOldCells:function(a){var b=this._cellMap,c=this._gridLayer,
e,f;for(e in b)if(b[e]){var g=b[e],h=g.latticeID,l=0,p=0;if(h)l++,h!==c.getLatticeID(a)&&(this._removeCell(null,null,h),p++);else for(f in g)g[f]&&(l++,c.intersects(g[f].extent,a)||(this._removeCell(e,f),p++));p===l&&delete b[e]}},_updateCell:function(a,b){var c=this.featureLayer,d=c.objectIdField,c=c._selectedFeatures,e,f=b.length;a.features=a.features||[];for(e=0;e<f;e++){var g=b[e],h=g.attributes[d],l=this._addFeatureIIf(h,g);l===g?(this._incRefCount(h),a.features.push(l)):h in c||(l.setGeometry(g.geometry),
l.setAttributes(g.attributes))}},_removeCell:function(a,b,c){var d=this._cellMap,e=this.featureLayer,f=e.objectIdField,g=c?d[c]:d[a]&&d[a][b];if(g&&(c?delete d[c]:delete d[a][b],a=g.features))for(b=0;b<a.length;b++)c=a[b].attributes[f],this._decRefCount(c),c in e._selectedFeatures||this._removeFeatureIIf(c)}});h("extend-esri")&&b.setObject("layers._OnDemandMode",q,p);return q})},"esri/layers/GridLayout":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../kernel ../SpatialReference ../geometry/Extent ../geometry/Polyline ../srUtils".split(" "),
function(q,n,b,g,h,p,l,f,e){q=q(null,{declaredClass:"esri.layers._GridLayout",constructor:function(b,a,d,e){this.origin=b;this.cellWidth=a.width;this.cellHeight=a.height;this.mapWidth=d.width;this.mapHeight=d.height;this.srInfo=e},setResolution:function(b){this._resolution=(b.xmax-b.xmin)/this.mapWidth;this.srInfo&&(b=Math.round(Math.round(2*this.srInfo.valid[1]/this._resolution)/this.cellWidth),this._frameStats=[b,0,b-1])},setMapState:function(b,a,d){this.mapWidth=a;this.mapHeight=d;this.setResolution(b)},
getCellCoordinates:function(b){var a=this._resolution,c=this.origin;return{row:Math.floor((c.y-b.y)/(this.cellHeight*a)),col:Math.floor((b.x-c.x)/(this.cellWidth*a))}},normalize:function(b){var a=this._frameStats;if(a){var c=a[0],e=a[1],a=a[2];b<e?(b%=c,b=b<e?b+c:b):b>a&&(b%=c)}return b},intersects:function(c,a){var d=this.srInfo;return d?b.some(a._getParts(d),function(a){return c.intersects(a.extent)}):c.intersects(a)},getCellExtent:function(b,a){var c=this._resolution,f=this.origin,g=this.cellWidth,
h=this.cellHeight;return new l(a*g*c+f.x,f.y-(b+1)*h*c,(a+1)*g*c+f.x,f.y-b*h*c,e.createSpatialReference(f.spatialReference.toJson()))},getLatticeID:function(b){var a=this.getCellCoordinates({x:b.xmin,y:b.ymax}),c=this.getCellCoordinates({x:b.xmax,y:b.ymin});b=a.row;var e=c.row,a=this.normalize(a.col),c=this.normalize(c.col);return b+"_"+e+"_"+a+"_"+c},sorter:function(b,a){return b<a?-1:1},getCellsInExtent:function(c,a){var d=this.getCellCoordinates({x:c.xmin,y:c.ymax}),e=this.getCellCoordinates({x:c.xmax,
y:c.ymin}),g=d.row,h=e.row,d=d.col,e=e.col,k=[],l,p,n,q=[],z=[],x,A,B=[];for(l=g;l<=h;l++)for(p=d;p<=e;p++)n=this.normalize(p),c=this.getCellExtent(l,n),b.some(k,function(a){return a.row===l&&a.col===n})||k.push({row:l,col:n,extent:c,resolution:this._resolution}),a&&(q.push(c.xmin,c.xmax),z.push(c.ymin,c.ymax));d=this.normalize(d);e=this.normalize(e);q.sort(this.sorter);z.sort(this.sorter);a=q.length;for(l=a-1;0<=l;l--)l<a-1&&q[l]===q[l+1]&&q.splice(l,1);a=z.length;for(l=a-1;0<=l;l--)l<a-1&&z[l]===
z[l+1]&&z.splice(l,1);if(q.length&&z.length){c=q[0];p=q[q.length-1];x=z[0];A=z[z.length-1];a=q.length;for(l=0;l<a;l++)B.push([[q[l],A],[q[l],x]]);a=z.length;for(l=0;l<a;l++)B.push([[c,z[l]],[p,z[l]]]);q=new f({paths:B,spatialReference:this.origin.spatialReference.toJson()});k.push({latticeID:g+"_"+h+"_"+d+"_"+e,lattice:q,resolution:this._resolution})}return{minRow:g,maxRow:h,minCol:d,maxCol:e,cells:k}}});g("extend-esri")&&n.setObject("layers._GridLayout",q,h);return q})},"esri/layers/SelectionMode":function(){define(["dojo/_base/declare",
"dojo/_base/lang","dojo/has","../kernel","./RenderMode"],function(q,n,b,g,h){q=q([h],{declaredClass:"esri.layers._SelectionMode",constructor:function(b){this.featureLayer=b;this._featureMap={}},propertyChangeHandler:function(b){this._init&&0===b&&this._applyTimeFilter()},resume:function(){this.propertyChangeHandler(0)},hasAllFeatures:function(){return!this.featureLayer._hasPartialSelectedFeatures},hasUpdateError:function(){return this.featureLayer._hasSelectionError}});b("extend-esri")&&n.setObject("layers._SelectionMode",
q,g);return q})},"esri/layers/StreamMode":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/Deferred dojo/has ../kernel ../SpatialReference ../tasks/query ../tasks/QueryTask ../geometry/jsonUtils ./RenderMode".split(" "),function(q,n,b,g,h,p,l,f,e,c,a){q=q([a],{declaredClass:"esri.layers._StreamMode",constructor:function(a,b){this.featureLayer=a;this._featureMap={};this._setRefreshRate();this._drawBuffer={adds:[],updates:[]};this._timeoutId=null;this._flushDrawBuffer=n.hitch(this,
this._flushDrawBuffer);this._featuresByTime={};this._lastEndTimeCheck=null;this._maxFeatureAge=0;a.purgeOptions&&a.purgeOptions.age&&"number"===typeof a.purgeOptions.age&&(this._maxFeatureAge=1E3*Math.ceil(60*a.purgeOptions.age));this._drawFeatures=n.hitch(this,this._drawFeatures);this._queryErrorHandler=n.hitch(this,this._queryErrorHandler)},startup:function(){this._started||this.inherited(arguments)},propertyChangeHandler:function(a){this._init&&(0===a?this._applyTimeFilter():3===a?this._redrawAllTracks():
console.debug("StreamLayer: Stream Layer only supports changing map time or maximumTrackPoints. Layer id \x3d "+this.featureLayer.id))},destroy:function(){this.inherited(arguments);clearTimeout(this._timeoutId);this._featuresByTime=this._drawBuffer=this._featureMap=null},drawFeature:function(a){var b=this.featureLayer,c=b.objectIdField;this._timeoutId||(this._timeoutId=setTimeout(this._flushDrawBuffer,this._refreshRate));b._joinField&&this._getFeature(a.attributes[c])?this._drawBuffer.updates.push({oid:a.attributes[c],
updates:a}):this._drawBuffer.adds.push(a)},resume:function(){this.propertyChangeHandler(0)},refresh:function(){this._pendingRequest&&this._cancelPendingRequest(this._pendingRequest);var a=this.featureLayer;a&&(a._relatedUrl||a._keepLatestUrl?(a._fireUpdateStart(),a._refreshing=!0,a.disconnect(),a.clear(),a._relatedQueried=!1,a._keepLatestQueried=!1,a.connect()):(a._fireUpdateStart(),a.clear(),a._fireUpdateEnd()))},_drawFeatures:function(a,b){var c=this.featureLayer;c._create(a.features||[]);c._fireUpdateEnd(null,
b)},_applyTimeFilter:function(a){this.inherited(arguments);this._redrawAllTracks()},_removeFeatures:function(a){var c=this.featureLayer,d=c.objectIdField;a&&b.forEach(a,function(a){a=a.attributes[d];c._unSelectFeatureIIf(a,this);this._decRefCount(a);this._removeFeatureIIf(a)},this)},_addFeatures:function(a){var c=this.featureLayer,d=c._endTimeField,e=c._startTimeField,f,g,h,l=[],p=[],n=[];f=c._trackManager;g=c.objectIdField;if(f)for(h in a=f.addFeatures(a),a)a.hasOwnProperty(h)&&(l.push(h),a[h].adds&&
(p=p.concat(a[h].adds)),a[h].deletes&&(n=n.concat(a[h].deletes)));else p=a;b.forEach(p,function(a){var b=a.attributes[g],c;c=d&&a.attributes[d];!c&&this._maxFeatureAge&&(c=e&&a.attributes[e]?a.attributes[e]+this._maxFeatureAge:Date.now()+this._maxFeatureAge);c&&(c=1E3*Math.ceil(c/1E3),this._featuresByTime[c]?this._featuresByTime[c].push(b):this._featuresByTime[c]=[b]);this._addFeatureIIf(b,a);this._incRefCount(b)},this);n.length&&this._removeFeatures(n);f&&f.refreshTracks(l)},_updateFeatures:function(a){var c=
this.featureLayer,d,e,f=[];d=c._trackManager;e=c._trackIdField;b.forEach(a,function(a){var b=a.updates;a=this._getFeature(a.oid);var g;if(a){b.geometry&&a.setGeometry(b.geometry);b=b.attributes||{};for(g in b)b.hasOwnProperty(g)&&(a.attributes[g]=b[g]);a.setAttributes(a.attributes);a.visible=this._checkFeatureTimeIntersects(a);d&&a.attributes[e]?f.push(a.attributes[e]):c._repaint(a,null,!0)}},this);f.length&&d.refreshTracks(f)},_redrawAllTracks:function(){var a=this.featureLayer._trackManager,b;a&&
(b=a.trimTracks())&&0<b.length&&(this._removeFeatures(b),a.refreshTracks())},_flushDrawBuffer:function(){clearTimeout(this._timeoutId);var a=this._drawBuffer,b=a.adds.splice(0,a.adds.length),c=a.updates.splice(0,a.updates.length),a=this.featureLayer;if(!a)return!1;a.updating||a._fireUpdateStart();this._addFeatures(b);this._updateFeatures(c);(b=this._getExpiredFeatures())&&b.length&&(this._removeFeatures(b),a._trackManager&&a._trackManager.removeFeatures(b));a._purge();a._fireUpdateEnd();this._timeoutId=
null},_clearDrawBuffer:function(){var a=this._timeoutId,b=this._drawBuffer,c=b.adds,b=b.updates;a&&clearTimeout(a);c.splice(0,c.length);b.splice(0,b.length);this._timeoutId=null},_clearTimeBin:function(){this._featuresByTime={};this._lastEndTimeCheck=1E3*Math.ceil(Date.now()/1E3)},_clearFeatureMap:function(){this._featureMap={}},_setRefreshRate:function(a){a=a||0===a?a:200;0>a&&(a=200);this._refreshRate=a},_checkFeatureTimeIntersects:function(a){var b=this.featureLayer,c=b.getMap();return(c=c?c.timeExtent:
null)&&b.timeInfo&&(b.timeInfo.startTimeField||b.timeInfo.endTimeField)?0<b._filterByTime([a],c.startTime,c.endTime).match.length:!0},_fetchArchive:function(a){var b=new g,d=this.featureLayer,h,k,p,n,q;this._pendingRequest&&this._cancelPendingRequest(this._pendingRequest);d._fireUpdateStart();a&&this.map?(a=new e(a),h=new f,k=this.map,p=d.getFilter()||{},n=p.where||"1\x3d1",q=p.geometry?c.fromJson(p.geometry):null,p=p.outFields?p.outFields.split(","):["*"],h.geometry=q,h.where=n,h.outFields=p,h.returnGeometry=
!0,h.outSpatialReference=new l(k.spatialReference.toJson()),this._pendingRequest=a.execute(h).then(function(a){this._pendingRequest=null;var c=this._fixFieldNameCasing(d,a);a.features=c;this._drawFeatures(a);d._fireUpdateEnd();b.resolve()}.bind(this)).otherwise(function(a){this._pendingRequest=null;d._errorHandler(a);d._fireUpdateEnd(a);b.reject(a)}.bind(this))):b.resolve();return b.promise},_queryErrorHandler:function(a){var b=this.featureLayer;b._errorHandler(a);b._fireUpdateEnd(a)},_fixFieldNameCasing:function(a,
b){var c=b.features||[],d=b.fields;if(!d||!c.length)return c;a=this._mapFieldNameDifferences(a.fields,d);for(var d=[],e,f=0,g=b.features.length;f<g;f++)b=c[f],e=this._swizzleResponseAttributes(b.attributes,a),d.push({geometry:b.geometry,attributes:e});return d},_mapFieldNameDifferences:function(a,b){var c=[],d={},e,f;e=0;for(f=b.length;e<f;e++)c.push(b[e].name);e=0;for(f=a.length;e<f;e++){b=a[e].name;var g=this._checkForStreamFieldName(b,c);g&&(d[g]=b)}return d},_checkForStreamFieldName:function(a,
b){a=a.toLowerCase();for(var c,d=0,e=b.length;d<e;d++)if(b[d].toLowerCase()===a){c=b[d];break}return c},_swizzleResponseAttributes:function(a,b){var c={},d;for(d in a)if(a.hasOwnProperty(d)){var e=a[d];b.hasOwnProperty(d)?c[b[d]]=e:c[d]=e}return c},_getExpiredFeatures:function(){var a,c,e,f=[],g=[];if(!this.featureLayer._endTimeField&&!this._maxFeatureAge)return g;a=1E3*Math.floor(this._lastEndTimeCheck/1E3);this._lastEndTimeCheck=c=1E3*Math.ceil(Date.now()/1E3);if(a&&a!==c)for(e=this._featuresByTime;a<=
c;a+=1E3)e[a]&&(f=f.concat(e[a]),delete e[a]);b.forEach(f,function(a){(a=this._getFeature(a))&&g.push(a)},this);return g}});h("extend-esri")&&n.setObject("layers._StreamMode",q,p);return q})},"esri/layers/TrackManager":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has dojo/dom-construct dojox/gfx ../kernel ../graphic ../geometry/Polyline ./GraphicsLayer".split(" "),function(q,n,b,g,h,p,l,f,e,c){var a=-1!==p.renderer.toLowerCase().indexOf("canvas");q=q(null,{declaredClass:"esri.layers._TrackManager",
constructor:function(a){this.layer=a;this.trackMap={};this.trackLineMap={}},initialize:function(a){this.map=a;a=this.layer;this.createTracklineContainer()&&(a.on("visibility-change",n.hitch(this,function(a){this.container.setVisibility(a.visible);this.container.evaluateSuspension()})),a.on("scale-range-change",n.hitch(this,function(){this.container.setScaleRange(this.layer.minScale,this.layer.maxScale)})))},createTracklineContainer:function(){var b=this.layer;if("esriGeometryPoint"!==b.geometryType)return null;
var e=this.map,f=b._getRenderer(),f=f&&f.trackRenderer,g=this.container=new c._GraphicsLayer({id:b.id+"_tracks",_child:!0,visible:b.visible,minScale:b.minScale,maxScale:b.maxScale});g.loaded=!0;g.onLoad(g);g._setMap(e,b._div);a||(e=g._div.getNode(),b=b._div.getNode(),e&&b&&h.place(e,b,"first"));g.setRenderer(f);return g},addFeatures:function(a){var c=this.trackMap,d=this.layer,e=d._trackIdField,f=[];b.forEach(a,function(a){var d=a.attributes[e];(c[d]=c[d]||[]).push(a);-1===b.indexOf(f,d)&&f.push(d)});
var g=d._startTimeField,h=d.objectIdField,l=function(a,b){var c=a.attributes[g],d=b.attributes[g];return c===d?a.attributes[h]<b.attributes[h]?-1:1:c<d?-1:1};b.forEach(f,function(a){c[a].sort(l)})},trimTracks:function(a){function c(a){for(a=d[a]||[];a.length>e;)f.push(a.shift())}var d=this.trackMap,e=this.layer.maximumTrackPoints||0,f=[],g;if(!e)return f;if(a)b.forEach(a,function(a){c(a)});else for(g in d)d.hasOwnProperty(g)&&c(g);return f},drawTracks:function(a){function c(a){var b=k[a],c,m,p;m=
d.trackLineMap[a];g.remove(m);delete d.trackLineMap[a];m=null;if(!b||2>b.length)return!1;m=[];for(c=b.length-1;0<=c;c--)(p=b[c].geometry)&&m.push([p.x,p.y]);b={};b[l]=a;1<m.length&&(m=new f(new e({paths:[m],spatialReference:h}),null,b),g.add(m),d.trackLineMap[a]=m)}var d=this,g=this.container,k,h,l,p;if(g)if(k=this.trackMap,h=this.map.spatialReference,l=this.layer._trackIdField,a)b.forEach(a,function(a){c(a)});else for(p in k)k.hasOwnProperty(p)&&c(p)},refreshTracks:function(a){function c(a){var b,
c;d.drawTracks([a]);if(g&&g.latestObservationRenderer)for(a=e[a]||[],b=a.length,c=0;c<b;c++)f._repaint(a[c],null,!0)}var d=this,e=this.trackMap,f=this.layer,g=f._getRenderer(),h;if(a)b.forEach(a,function(a){c(a)});else for(h in e)e.hasOwnProperty(h)&&c(h);this.moveLatestToFront()},moveLatestToFront:function(a){b.forEach(this.getLatestObservations(a),function(a){var b=a._shape;b&&b._moveToFront();this._repaint(a,null,!0)},this.layer)},getLatestObservations:function(a){function c(a){a=f[a];return a[a.length-
1]}var d=[],e=this.layer._getRenderer(),f=this.trackMap,g;if(!e.latestObservationRenderer)return d;if(a)b.forEach(a,function(a){d.push(c(a))});else for(g in f)f.hasOwnProperty(g)&&d.push(c(g));return d},clearTracks:function(a){var c=this.getLatestObservations(a),d=this.container,e=this.trackMap,f,g;if(a)b.forEach(a,function(a){delete this.trackMap[a];d&&(g=this.trackLineMap[a],d.remove(g),delete this.trackLineMap[a])},this);else{if(d)for(f in e)g=this.trackLineMap[f],d.remove(g);this.trackMap={};
this.trackLineMap={}}b.forEach(c,function(a){this._repaint(a,null,!0)},this.layer)},isLatestObservation:function(a){var b=this.trackMap[a.attributes[this.layer._trackIdField]];return b?b[b.length-1]===a:!1},destroy:function(){var a=this.container;a&&(a.clear(),a._unsetMap(this.map,this.layer._div));this.map=this.layer=this.trackMap=this.container=null}});g("extend-esri")&&n.setObject("layers._TrackManager",q,l);return q})},"esri/layers/HeatmapManager":function(){define("dojo/_base/declare dojo/_base/lang dojo/aspect dojo/_base/array require ../kernel ../sniff ../geometry/Point ../geometry/webMercatorUtils ./MapImage ../renderers/HeatmapRenderer ../tasks/query dojo/_base/fx".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m){function w(){}function t(a){var b=a.layer;return{geometry:a.geometry,attributes:a.attributes,getLayer:function(){return b}}}q=q(null,{declaredClass:"esri.layers.HeatmapManager",heatmapRenderer:null,sourceLayer:null,imageLayer:null,useTiles:!0,useWorker:!1,map:null,constructor:function(a){this.sourceLayer=a;this._hndls=[]},initialize:function(b){this.map=b;var c=this.sourceLayer,d=c.renderer;c.setDrawMode(!1);this.imageLayer=b._getMapImageLyr();var e=this;this.heatmapRenderer=
d instanceof a?d:(d.getRendererInfoByZoom(b.getZoom())||d.getRendererInfoByScale(b.getScale())).renderer;this.redraw=this.redraw.bind(this);this.recalculateHeatmap=this.recalculateHeatmap.bind(this);this._removeRenderer=this._removeRenderer.bind(this);this._handleRendererChange=this._handleRendererChange.bind(this);this._rendererChangeHandle=this.sourceLayer.on("renderer-change",this._handleRendererChange);this._handleOpacityChange=this._handleOpacityChange.bind(this);this._reprojectFeature=this._reprojectFeature.bind(this);
h(["../workers/heatmapCalculator"],function(a){e._calculator=new a(n.mixin({width:e.map.width,height:e.map.height},e._getOptions()));e._setupRenderer();e.heatmapRenderer.getStats=a.calculateStats;e.heatmapRenderer.getHistogramData=a.getHistogramData})},destroy:function(){this._removeHandlers();this._rendererChangeHandle&&this._rendererChangeHandle.remove();this._rendererChangeHandle=this.sourceLayer=this.imageLayer=this.map=this.heatmapRenderer=this._hndls=null},_handleRendererChange:function(b){var c=
b.renderer,d=c instanceof a;this.heatmapRenderer?d?this.heatmapRenderer=c:this._removeRenderer(b):d&&(this.heatmapRenderer=c,this.sourceLayer&&this.map&&this._setupRenderer())},_handleOpacityChange:function(a){a=a.opacity;var b=this._getImageBySourceId(this.sourceLayer.id);b&&b.setOpacity(a)},_setupRenderer:function(){var a=this._hndls,c=this.sourceLayer,d=this.map,e=this;c._originalDraw=c._draw;c._draw=w;c._div.clear();clearTimeout(this._resetTimer);this._resetTimer=setTimeout(this._resetGraphics.bind(this),
250);a.push(c.on("update-end",this.redraw));a.push(c.on("suspend",function(a){(a=e._getImageBySourceId(e.sourceLayer.id))&&a.hide()}));a.push(c.on("resume",function(a){(a=e._getImageBySourceId(e.sourceLayer.id))&&a.show()}));a.push(b.after(c,"redraw",this.redraw));a.push(d.on("layer-remove",function(a){a.layer==c&&((a=e._getImageBySourceId(e.sourceLayer.id))&&e.imageLayer.removeImage(a),e._removeRenderer({target:c}))}));c._collection&&a.push(c.on("graphic-add",function(a){e._reprojectFeature(a.graphic);
e.redraw()}));1!==c.mode&&(a.push(d.on("resize, pan-end",this.redraw)),a.push(d.on("zoom-end",this.redraw)));a.push(c.on("opacity-change",this._handleOpacityChange));this.imageLayer.suspended&&this.imageLayer.resume();c.graphics&&c.graphics.length&&(c.graphics[0].geometry&&!d.spatialReference.equals(c.graphics[0].geometry.spatialReference)&&g.forEach(c.graphics,function(a){this._reprojectFeature(a)}.bind(this)),this.redraw())},redraw:function(){if(!this._drawTimer){var b=this;this._drawTimer=setTimeout(function(){clearTimeout(b._drawTimer);
b._drawTimer=null;b.sourceLayer._getRenderer().isInstanceOf(a)&&b.recalculateHeatmap()},16)}},_removeRenderer:function(a){var b=a.target;b._draw=b._originalDraw;delete b._originalDraw;b.setDrawMode(!0);this._removeHandlers();this._hndls=[];var c=this._getImageBySourceId(this.sourceLayer.id);c&&this.imageLayer.removeImage(c);clearTimeout(this._drawTimer);clearTimeout(this._resetTimer);this._drawTimer=this._resetTimer=null;b.renderer!=a.renderer&&b.renderer.getRendererInfo?this.heatmapRenderer=null:
(this.destroy(),b.renderer&&b.renderer.getRendererInfo&&b.redraw())},recalculateHeatmap:function(){this._calculator?this._doMainCalculation():this._calculatorClient&&this._doWorkerCalculation()},_reprojectFeature:function(a){if(a&&a.geometry){var b=a.geometry,c=this.map.spatialReference;c.equals(b.spatialReference)||(b=e.project(b,c),null==b?console.log("Unable to reproject features to map's spatial reference. Please convert feature geometry before adding to layer"):a.geometry=b)}},_doWorkerCalculation:function(){},
_doMainCalculation:function(){var a=this.sourceLayer,b=this.map,e=this.heatmapRenderer,f=this.map.extent,g=this.map.width,h=this.map.height,l=this._calculator,m=this,p=function(d){d=m._getScreenPoints(d.features,b,a);d=l.calculateImageData(n.mixin({screenPoints:d,mapinfo:{extent:[f.xmin,f.ymin,f.xmax,f.ymax],resolution:b.getResolution()},width:g,height:h},m._getOptions()));d=e.getSymbol(t({geometry:b.extent,attributes:{size:[g,h],imageData:d},layer:a}));d=new c({extent:b.extent,href:d.url,opacity:0,
sourceId:a.id});m._swapMapImages(d,m._getImageBySourceId(a.id));a.suspended&&d.hide()},q={geometry:b.extent,timeExtent:a.useMapTime?b.timeExtent:void 0,spatialRelationship:d.SPATIAL_REL_INTERSECTS};null!=a._canDoClientSideQuery(q)?a.queryFeatures(q,p):p({features:a.graphics})},_getScreenPoints:function(a,b,c){var d=[],e=a.length,h=0,k=0,l,m=new f(b.extent.xmin,b.extent.ymax,b.spatialReference),p=b.toScreen(m),n=p.x,p=p.y,q=b.getResolution(),r;for((k=b.extent.getCacheValue("_parts"))&&(r=g.map(k,function(a){return c._intersects(b,
a.extent)[0]}));e--;)k=a[e],k.geometry&&k.visible&&(l={x:Math.ceil((k.geometry.x-m.x)/q+n),y:Math.floor((m.y-k.geometry.y)/q-p),attributes:k.attributes},r&&(k=1<r.length&&l.x<-r[0]?r[1]:r[0],l.x+=k),d[h++]=l);return d},_getImageBySourceId:function(a){var b=this.imageLayer.getImages(),b=g.filter(b,function(b){return b.sourceId==a});if(b.length)return b[b.length-1]},_swapMapImages:function(a,b){function c(){d.removeImage(b)}var d=this.imageLayer,e=this.sourceLayer.opacity;d.addImage(a);m.anim(a._node,
{opacity:e},null,null,function(){a.opacity=e});null!=b&&m.anim(b._node,{opacity:0},null,null,c)},_removeHandlers:function(){if(null!=this._hndls)for(var a=this._hndls.length;a--;)this._hndls[a].remove()},_getOptions:function(){var a=this.heatmapRenderer;return{blurRadius:a.blurRadius,gradient:a.gradient,maxPixelIntensity:a.maxPixelIntensity,minPixelIntensity:a.minPixelIntensity,field:a.field,fieldOffset:a.fieldOffset}},_resetGraphics:function(){clearTimeout(this._resetTimer);this._resetTimer=null;
for(var a=this.sourceLayer.graphics,b=a.length,c;b--;)c=a[b],c._shape=c._offsets=void 0}});l("extend-esri")&&n.setObject("layers.HeatmapManager",q,p);return q})},"esri/layers/clustering/ClusterManager":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/has ../../kernel ../../Evented ../../graphic ../../lang ../../Color ../../graphicsUtils ../../dijit/PopupTemplate ../../dijit/Legend/utils ../../renderers/ClassBreaksRenderer ../../symbols/SimpleMarkerSymbol ../GraphicsLayer ../Field ./GeohashAggregation ./statUtils dojo/i18n!../../nls/jsapi".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y){var v=y.layers.clusters,z=y.widgets.popup,x=v.numFeatures,A=Math.pow(2,53)-1;q=q(p,{declaredClass:"esri.layers.clustering.ClusterManager",layer:null,aggregationInfo:null,container:null,defaults:{clusterRadius:80,markerSymbol:{color:[77,77,77,255],size:6,angle:0,xoffset:0,yoffset:0,type:"esriSMS",style:"esriSMSCircle",outline:{color:[255,255,255,255],width:.75,type:"esriSLS",style:"esriSLSSolid"}}},_initialized:!1,_map:null,_eventHandles:null,_clusterRadius:null,
_renderer:null,_statisticInfos:null,_fields:null,_infoTemplate:null,_clusterGenerator:null,_singleGraphics:null,constructor:function(a){this._eventHandles=[];this.layer=a.layer;this.setAggregationInfo(a.aggregationInfo)},initialize:function(a){this._initialized=!0;this._map=a;this.container=this._createContainer();this._clusterGenerator=this._createClusterGenerator();this._initClusterGenerator();this._createLayerEventListeners();this._createMapEventListeners();this._createPopupEventListeners()},destroy:function(a){this._clearSingleGraphics();
this._removeClusterBoundary();this._destroyEventListeners();this._removeFromPopup(this.container);this._removeFromPopup(this.layer);this._resetClusterNav();this._destroyClusterGenerator(a);this._destroyContainer();this.layer=this.aggregationInfo=this._map=null},setAggregationInfo:function(a){this.aggregationInfo=a?n.mixin({},a):null;this._applyAggregationInfo()},getClusterRenderer:function(){return this._renderer},getClusterFields:function(){return this._fields||[]},getFeaturesInCluster:function(a){a=
a&&a.getAggregationInfo();return this._clusterGenerator?this._clusterGenerator.getFeaturesInCluster(a):[]},getAggregateGraphics:function(){return this.container?this.container.graphics.slice(0):[]},getSingleGraphics:function(){return this._singleGraphics?this._singleGraphics.slice(0):[]},redraw:function(){this.container&&this.container.redraw()},isClusteringEnabled:function(){return!(!this._clusterGenerator||!this._clusterGenerator.clustersEnabled)},isClusteringActive:function(){return!!(this._clusterGenerator&&
0<this._clusterGenerator.getNumFeatures())},toggleFeatureVisibility:function(a){this._clusterGenerator&&this._clusterGenerator.toggleFeatureVisibility(a)},_createContainer:function(){var a=this.layer,b=new t._GraphicsLayer({_child:!0,id:a.id+"_clusters",visible:a.visible,minScale:a.minScale,maxScale:a.maxScale,infoTemplate:this._infoTemplate});b.fields=this._fields;b.setRenderer(this._renderer);b.loaded=!0;b.onLoad(b);b._setMap(this._map,a._div);return a._childLayer=b},_destroyContainer:function(){var a=
this.container;a&&(a.clear(),a._unsetMap(this._map,this.layer._div),this.layer._childLayer=null);this.container=null},_createClusterGenerator:function(){return new u({map:this._map,layer:this.layer,clusterRadius:this._clusterRadius,statisticInfos:this._statisticInfos})},_initClusterGenerator:function(){var a=this._clusterGenerator;a.loaded?this._awaitClusterGenerator():this._eventHandles.push(a.on("load",n.hitch(this,function(){this._awaitClusterGenerator()})),a.on("load-error",n.hitch(this,function(a){console.log(a.error)})))},
_destroyClusterGenerator:function(a){this._clusterGenerator&&this._clusterGenerator.destroy(a);this._clusterGenerator=null},_awaitClusterGenerator:function(){var a=this._clusterGenerator;a.started?(this._applyRenderer(),this._initClusterUpdates()):this._eventHandles.push(a.on("start",n.hitch(this,function(){this._applyRenderer();this._initClusterUpdates()})))},_applyAggregationInfo:function(){this._applyClusterRadius();this._applyRenderer();this._clusterGenerator&&!this._clusterGenerator.isUpdateScheduled()&&
this.redraw()},_applyClusterRadius:function(){var a=this.aggregationInfo;this._clusterRadius=a&&a.clusterRadius||this.defaults.clusterRadius;this._clusterGenerator&&this._clusterGenerator.setClusterRadius(this._clusterRadius);this._computeClusterRadius()},_computeClusterRadius:function(){var a=this.aggregationInfo||{};a.clusterRadius=this._clusterRadius;this.aggregationInfo=a},_applyRenderer:function(){var a=this.container,c=this._getClusterRendererInfo(),d=this._compareStatInfos(this._statisticInfos,
c.statisticInfos);d&&(this._statisticInfos=c.statisticInfos,this._clusterGenerator&&(this._clusterGenerator.setStatisticInfos(b.map(this._statisticInfos,function(a){return{attributeInfo:a.attributeInfo,statisticType:a.statisticType}})),a&&b.forEach(a.graphics,function(a){this._applyClusterAttributes(a,a.getAggregationInfo())},this)));this._renderer=c.renderer;this._applyFields();this._applyInfoTemplate(!!d&&this._initialized);a&&(a.setRenderer(this._renderer),this.emit("renderer-change"))},_applyFields:function(){this._fields=
this._getFields(this._statisticInfos);this.container&&(this.container.fields=this._fields)},_applyInfoTemplate:function(a){if(this.layer.infoTemplate){var b=this.aggregationInfo,b=b&&b.infoTemplate||this._infoTemplate;a=a||!b?this._createInfoTemplate():this._updateInfoTemplate(b)}else a=null;this._infoTemplate=a;this.container&&this.container.setInfoTemplate(this._infoTemplate);this._computeInfoTemplate()},_computeInfoTemplate:function(){var a=this.aggregationInfo||{};a.infoTemplate=this._infoTemplate;
this.aggregationInfo=a},_getClusterRendererInfo:function(){var a=this.layer&&this.layer.renderer;return a?this._createClusterRenderer(a):this._getDefaultClusterRenderer()},_getDefaultClusterRenderer:function(){var a=this._createContinuousCountRenderer();this._addSizeByCountVariable(a);return{renderer:a,statisticInfos:[]}},_createContinuousCountRenderer:function(a){var b=new m(null,"cluster_count");b.addBreak({minValue:-A,maxValue:A,symbol:a?new a.constructor(a.toJson()):new w(n.clone(this.defaults.markerSymbol))});
return b},_createClusterRenderer:function(a){if(!this._isSupportedRenderer(a))return this._getDefaultClusterRenderer();var b,c=[];if(this._isSimpleRenderer(a))b=this._createContinuousCountRenderer(a.symbol);else{b=new a.constructor(a.toJson());var d=this._getRendererAttributeInfo(a),e;this._isCBRenderer(b)?(e=r.getClusterField(d,"avg"),c.push(this._getStatInfo(d,"avg")),b.normalizationType=null,b.normalizationField=null,b.normalizationTotal=null):this._isUVRenderer(b)&&(e=r.getClusterField(d,"type"),
c.push(this._getStatInfo(d,"type")));b.attributeField=e;b.setValueExpression(null);b.valueExpressionTitle=null;b.setVisualVariables(null);this._setRendererTitle(b,a)}a=this._getSupportedVariables(a);d=this._createClusterVariables(a.allVars,c);b.setVisualVariables(d);a.sizeVars.length||this._isCBSizeRenderer(b)||this._addSizeByCountVariable(b);return{renderer:b,statisticInfos:c}},_isSupportedRenderer:function(a){if(this._isSimpleRenderer(a))return!0;if(this._isCBRenderer(a)){var b=a.normalizationType;
return"function"===typeof a.attributeField||b&&"field"!==b?!1:!0}return this._isUVRenderer(a)?"function"===typeof a.attributeField||a.attributeField2?!1:!0:!1},_isSimpleRenderer:function(a){return-1<a.declaredClass.toLowerCase().indexOf("simplerenderer")},_isCBRenderer:function(a){return-1<a.declaredClass.toLowerCase().indexOf("classbreaksrenderer")},_isUVRenderer:function(a){return-1<a.declaredClass.toLowerCase().indexOf("uniquevaluerenderer")},_isCBSizeRenderer:function(a){var c=a.infos;if(!this._isCBRenderer(a)||
!c||2>c.length)return!1;var d=Infinity,e=-Infinity;b.forEach(c,function(a){if(a=a.symbol){var b=0;switch(a.type){case "simplemarkersymbol":b=a.size;break;case "picturemarkersymbol":b=(a.width+a.height)/2}d=Math.min(d,b);e=Math.max(e,b)}});return Infinity!==d&&-Infinity!==e&&d!==e},_getRendererAttributeInfo:function(a){var b=a.attributeField,c=b?this.layer.getField(b):null;return{field:b,attributeType:c&&"esriFieldTypeDate"===c.type?"date":null,rotationType:null,valueExpression:a.valueExpression,valueExpressionTitle:a.valueExpressionTitle,
normalizationField:a.normalizationField}},_setRendererTitle:function(a,b){a.legendOptions=n.clone(b.legendOptions);a.legendOptions&&a.legendOptions.title||(a.legendOptions=a.legendOptions||{},a.legendOptions.title=d.getRendererTitle(b,this.layer))},_getSupportedVariables:function(a){var c=a.getVisualVariablesForType("colorInfo",!1)||[],d=a.getVisualVariablesForType("sizeInfo",!1)||[],e=a.getVisualVariablesForType("opacityInfo",!1)||[];a=a.getVisualVariablesForType("rotationInfo",!1)||[];c=b.filter(c,
this._variableFilter);d=b.filter(d,this._variableFilter);e=b.filter(e,this._variableFilter);a=b.filter(a,this._variableFilter);return{sizeVars:d,allVars:c.concat(d).concat(e).concat(a)}},_variableFilter:function(a){return"function"!==typeof a.field},_createClusterVariables:function(a,c){return b.map(a,function(a){return this._createVarForAvg(a,c)},this)},_createVarForAvg:function(a,b){var c=n.clone(a),d=this._getVariableAttributeInfo(a);c.field=r.getClusterField(d,"avg");c.normalizationField=null;
c.valueExpression=null;c.valueExpressionTitle=null;d=this._getStatInfo(d,"avg");this._addStatInfo(b,d);this._setVariableTitle(c,a);return c},_getVariableAttributeInfo:function(a){var b="rotationInfo"===a.type,c=b?"angle":null,b=b?a.rotationType:null,d=a.legendOptions&&a.legendOptions.title,e=a.field,f=e?this.layer.getField(e):null;f&&"esriFieldTypeDate"===f.type&&(c="date");return{field:e,attributeType:c,rotationType:b,valueExpression:a.valueExpression,valueExpressionTitle:a.valueExpressionTitle||
a.valueExpression&&d,normalizationField:a.normalizationField}},_setVariableTitle:function(a,b){a.legendOptions&&a.legendOptions.title||(a.legendOptions=a.legendOptions||{},a.legendOptions.title=d.getVisualVariableTitle(b,this.layer))},_getStatInfo:function(a,b){return{statisticHash:r.getStatisticHash(a,b),attributeInfo:a,statisticType:b}},_addStatInfo:function(a,b){var c=this._findStatInfo(a,b);c?c.attributeInfo.valueExpressionTitle||(c.attributeInfo.valueExpressionTitle=b.attributeInfo.valueExpressionTitle):
a.push(b)},_findStatInfo:function(a,c){var d;b.some(a,function(a){a.statisticHash===c.statisticHash&&(d=a);return!!d});return d},_compareStatInfos:function(a,c){var d=b.filter(a,function(a){return!this._findStatInfo(c,a)},this),e=b.filter(c,function(b){return!this._findStatInfo(a,b)},this);return e.length||d.length?{added:e,removed:d}:null},_addSizeByCountVariable:function(a){var b=this._createSizeByCountVariable();b&&this._addVariable(a,b)},_getSizeByCountVariable:function(a){a=a.getVisualVariablesForType("sizeInfo",
!1)||[];return b.filter(a,function(a){return"cluster_count"===a.field})[0]},_updateSizeByCountVariable:function(){var a=this._renderer,b=this._getSizeByCountVariable(a);if(b){var c=this._createSizeByCountVariable();c&&this._replaceVariable(a,b,c)}},_createSizeByCountVariable:function(){var a=this._clusterGenerator,b;if(a){var c=a.getCurrentLodStats();if(c){b=a.getNumFeatures();var a=a.clusters,d=c.min,e=c.max;1===c.count&&d===b||1===a.length&&a[0].count===b?(d=1,e=b):d&&d===e&&(e=2*d);b={type:"sizeInfo",
field:"cluster_count",valueUnit:"unknown",minSize:12,maxSize:50,minDataValue:d,maxDataValue:e,legendOptions:{title:x}}}}return b},_addVariable:function(a,b){var c=a.visualVariables||[];c.push(b);a.setVisualVariables(c)},_replaceVariable:function(a,c,d){var e=a.visualVariables;c=b.indexOf(e,c);-1<c&&e.splice(c,1);e.push(d);a.setVisualVariables(e)},_getFields:function(a){var c=[new k({name:"cluster_count",type:"esriFieldTypeInteger"})];b.forEach(a,function(a){var b=a.statisticType;a=a.attributeInfo;
var d;"avg"===b?d="date"===a.attributeType?"esriFieldTypeDate":"esriFieldTypeDouble":"type"===b&&(d=a.field?this.layer.getField(a.field).type:"esriFieldTypeString");c.push(new k({name:r.getClusterField(a,b),type:d}))},this);return c},_createInfoTemplate:function(){var c=this._statisticInfos,d=this._renderer,e=[{fieldName:"cluster_count",label:x,visible:!0,format:{digitSeparator:!0,places:0}}],g=[],h=[f.substitute({count:"{cluster_count}"},v.countSummary)],k=this._isUVRenderer(d)?d.infos:[];b.forEach(c,
function(a){var b,c,d=a.statisticType,f=a.attributeInfo,l=r.getClusterField(f,d),m=this._getFieldLabel(a);"avg"===d?(b={fieldName:l,label:m,visible:!0,format:"date"===f.attributeType?{dateFormat:"shortDateShortTime"}:{digitSeparator:!0,places:1}},c=this._getFieldSummary(a,l)):"type"===d&&(c="expression/"+l,b={fieldName:c,visible:!0},g.push({name:l,title:m,returnType:"string",expression:this._getExpression(k,l)}),c=this._getFieldSummary(a,c));b&&e.push(b);c&&h.push(c)},this);return new a({fieldInfos:e,
expressionInfos:g,description:h.join("\x3cbr/\x3e\x3cbr/\x3e")})},_updateInfoTemplate:function(c){var d=c.toJson(),e=this._isUVRenderer(this._renderer)?this._renderer.infos:[];b.forEach(this._statisticInfos,function(a){var b=a.statisticType;a=r.getClusterField(a.attributeInfo,b);"type"===b&&(b=this._findExpressionInfo(a,d))&&(b.expression=this._getExpression(e,a))},this);return new a(d)},_findExpressionInfo:function(a,c){var d;b.some(c.expressionInfos,function(b){b.name===a&&(d=b);return!!d});return d},
_escapeDoubleQuotes:function(a){return a?a.replace(/"/g,'\\"'):""},_getExpression:function(a,b){return["var uvInfos \x3d ["+this._getObjects(a).join(", ")+"];",'var predominantType \x3d Text($feature["'+b+'"]);','var label \x3d "'+this._escapeDoubleQuotes(v.predominantNoneValue)+'";',"for (var i \x3d 0; i \x3c Count(uvInfos); i++) {\nif (uvInfos[i].value \x3d\x3d predominantType) {\nlabel \x3d uvInfos[i].label;\nbreak;\n}\n}\nreturn label;"].join("\n")},_getObjects:function(a){return b.map(a,function(a){return'{"value": "'+
String(a.value)+'","label": "'+this._escapeDoubleQuotes(String(a.label))+'"}'},this)},_getFieldLabel:function(a){var b=a.statisticType,c=a.attributeInfo,d=c.field;a=c.normalizationField;var e="",g;"avg"===b?g=a?v.avgNormFieldLabel:v.avgFieldLabel:"type"===b&&(g=v.predominantFieldLabel);g&&(b=c.valueExpression?c.valueExpressionTitle:this.layer.getFieldLabel(d),a=a&&this.layer.getFieldLabel(a),e=f.substitute({fieldLabel:b||"",normFieldLabel:a||""},g));return e},_getFieldSummary:function(a,b){var c=
a.statisticType,d=a.attributeInfo,e=d.field;a=d.normalizationField;var g="",h;"avg"===c?h=a?v.avgNormFieldSummary:v.avgFieldSummary:"type"===c&&(h=v.predominantFieldSummary);h&&(c=d.valueExpression?d.valueExpressionTitle:this.layer.getFieldLabel(e),a=a&&this.layer.getFieldLabel(a),g=f.substitute({fieldLabel:c||"",normFieldLabel:a||"",fieldValue:"{"+b+"}"},h));return g},_removeFromPopup:function(a){var c=this._map.infoWindow,d=c.features;if(d&&d.length){var e=b.filter(d,function(b){return b.getLayer()!==
a});e.length<d.length&&(e.length?c.setFeatures(e):(c.clearFeatures(),c.hide()))}},_resetClusterNav:function(){this._resetClusterNavPartial();this._popupClusterGraphic=null},_resetClusterNavPartial:function(){this._map.infoWindow.removeActions(this._popupActions);this._hideSingleGraphic(this._popupSingleGraphic);this._popupSingleGraphic=null},_addClusterBoundary:function(a,b){(b=b.clusterFillSymbol)&&(b=new b.constructor(b.toJson()));a=new l(a,b);this._map.graphics.add(a);this._clusterBoundary=a},
_removeClusterBoundary:function(){this._map.graphics.remove(this._clusterBoundary);this._clusterBoundary=null},_createBrowseFeaturesAction:function(){return this._map.infoWindow.addActions([{title:z.NLS_browseFeatures,className:"browseFeatures",callback:n.hitch(this,function(a){a.preventDefault();a=this._map.infoWindow;var b=a.getSelectedFeature(),d=b.getChildGraphics(),e=a.getCurrentAnchor();a.setFeatures(d,{anchor:e});if(d=c.graphicsExtent(d))this._addClusterBoundary(d,a),a.show(this._getPopupLocation(d,
e));this._popupClusterGraphic=b})}])[0]},_getPopupLocation:function(a,b){var c=a.getCenter();b=b.toLowerCase();-1<b.indexOf("top")?c.update(c.x,a.ymax):-1<b.indexOf("bottom")?c.update(c.x,a.ymin):-1<b.indexOf("left")?c.update(a.xmin,c.y):c.update(a.xmax,c.y);return c},_createViewSummaryAction:function(){return this._map.infoWindow.addActions([{title:z.NLS_viewSummary,className:"viewSummary",callback:n.hitch(this,function(a){a.preventDefault();a=this._popupClusterGraphic;var b=this._map.infoWindow;
b.setFeatures([a]);b.show(a.geometry);this._popupClusterGraphic=null})}])[0]},_initClusterUpdates:function(){this._updateSizeVariable();this._updateClusterGraphics();this._eventHandles.push(this._clusterGenerator.on("update-end",n.hitch(this,function(a){(a.mapLevelChange||a.indexChange)&&this._updateSizeVariable();this._updateClusterGraphics()})),this._clusterGenerator.on("index-complete",n.hitch(this,function(){this._updateSizeVariable()})))},_updateClusterGraphics:function(){this._hideSingleGraphics();
var a=[],c=[];b.forEach(this._clusterGenerator.clusters,function(b){var d=new l(b.centroid);d.setAggregationSourceLayer(this.layer);d.setAggregationInfo(b);this._applyClusterAttributes(d,b);1===b.count?(b=this._getSingleGraphic(d),c.push(b)):a.push(d)},this);this._showSingleGraphics(c);this._addGraphics(a)},_addGraphics:function(a){var c=this.container;c.clear();b.forEach(a,function(a){c.add(a)})},_getSingleGraphic:function(a){var b=this._clusterGenerator.getCell(a.getAggregationInfo().primary).features[0],
c=this.layer.renderer,c=c&&c.getSymbol(b),d=this._getSizeByCountVariable(this._renderer);c&&d&&(a=d?this._renderer.getSize(a,{sizeInfo:d,shape:c.style,resolution:this._map.getResolutionInMeters(),scale:this._map.getScale()}):null,b.setSize(a));return b},_showSingleGraphics:function(a){b.forEach(a,this._showSingleGraphic);this._singleGraphics=a},_hideSingleGraphics:function(){b.forEach(this._singleGraphics,function(a){a.setSize(null);this._hideSingleGraphic(a)},this);this._singleGraphics=null},_clearSingleGraphics:function(){b.forEach(this._singleGraphics,
function(a){a.setSize(null)});this._singleGraphics=null},_showSingleGraphic:function(a){a&&a._resume()},_hideSingleGraphic:function(a){a&&a._suspend()},_updateSizeVariable:function(){this.isClusteringEnabled()&&(this._updateSizeByCountVariable(),this.emit("renderer-change"))},_applyClusterAttributes:function(a,b){a.setAttributes(b.attributes)},_createLayerEventListeners:function(){var a=this.layer;this._eventHandles.push(a.on("visibility-change",n.hitch(this,function(a){this.container.setVisibility(a.visible)})),
a.on("scale-range-change",n.hitch(this,function(){this.container.setScaleRange(this.layer.minScale,this.layer.maxScale)})),a.on("renderer-change",n.hitch(this,function(){this._applyRenderer()})),a.on("info-template-change",n.hitch(this,function(){this._applyInfoTemplate()})))},_createMapEventListeners:function(){this._eventHandles.push(this._map.on("zoom-start",n.hitch(this,function(){this._removeClusterBoundary();this._removeFromPopup(this.container);this._removeFromPopup(this.layer);this._resetClusterNav();
this.container.clear();this._hideSingleGraphics()})))},_createPopupEventListeners:function(){var a=this._map.infoWindow;this._eventHandles.push(a.on("selection-change",n.hitch(this,function(){this._resetClusterNavPartial();var a=this._map.infoWindow.getSelectedFeature(),b=a&&a.getLayer();if(b){var c;b===this.container?(this._removeClusterBoundary(),c=this._createBrowseFeaturesAction()):b===this.layer&&a._isSuspended()?(c=this._createViewSummaryAction(),this._popupSingleGraphic=a,this._showSingleGraphic(this._popupSingleGraphic)):
this._removeClusterBoundary();this._popupActions=c?[c]:null}})),a.on("clear-features",n.hitch(this,function(a){this._resetClusterNav();a.isIntermediate||this._removeClusterBoundary()})),a.on("hide",n.hitch(this,function(){this._popupSingleGraphic&&this._popupSingleGraphic._suspend();this._clusterBoundary&&this._clusterBoundary.hide()})),a.on("show",n.hitch(this,function(){this._popupSingleGraphic&&this._popupSingleGraphic._resume();this._clusterBoundary&&this._clusterBoundary.show()})))},_destroyEventListeners:function(){b.forEach(this._eventHandles,
function(a){a.remove()})}});g("extend-esri")&&n.setObject("layers.clustering.ClusterManager",q,h);return q})},"esri/dijit/PopupTemplate":function(){define("dojo/_base/declare dojo/_base/lang dojo/has dojo/dom-construct ../kernel ../InfoTemplate ../PopupInfo ./PopupRenderer".split(" "),function(q,n,b,g,h,p,l,f){q=q([p,l],{declaredClass:"esri.dijit.PopupTemplate","-chains-":{constructor:"manual"},chartTheme:null,constructor:function(b,c){n.mixin(this,c);this.initialize(b,c)},getTitle:function(b){var c;
this.info&&(c=this.titleHasRelatedFields?"":this._getPopupValues(b,null,!0).title);return c||""},getContent:function(b){return this.info?(new f({template:this,graphic:b,chartTheme:this.chartTheme},g.create("div"))).domNode:""}});b("extend-esri")&&n.setObject("dijit.PopupTemplate",q,h);return q})},"esri/PopupInfo":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/i18n dojo/has dojo/Deferred dojo/sniff dojo/promise/all dojox/html/entities ./lang ./kernel ./request ./promiseList ./tasks/query ./tasks/QueryTask ./tasks/RelationshipQuery ./tasks/StatisticDefinition ./support/expressionUtils ./layers/support/attributeUtils dojo/i18n!dojo/cldr/nls/number".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z){q=q(null,{declaredClass:"esri.PopupInfo",_reExprField:/^\s*expression\//i,_exprPrefix:"expression/",_relatedFieldPrefix:"relationships/",initialize:function(a,c){if(a){n.mixin(this,c);this.info=a;this.title=this.getTitle;this.content=this.getContent;this._exprCache=this._compileExpressions(this.info.expressionInfos);var d=this._fieldLabels={},e=this._fieldsMap={};this.info.fieldInfos&&b.forEach(this.info.fieldInfos,function(a){var b=a.fieldName.toLowerCase(),
c=this._isExpressionField(b)?this.getExpressionInfo(b):null;d[b]=c?c.title:a.label;e[b]=a},this);this.titleHasRelatedFields=!(!this.info.title||-1===this.info.title.indexOf("{"+this._relatedFieldPrefix))}},toJson:function(){return g.fromJson(g.toJson(this.info))},getTitle:function(){},getContent:function(){},getFieldInfo:function(a){var c;b.some(this.info&&this.info.fieldInfos,function(b){b.fieldName===a&&(c=b);return!!c});return c},getExpressionInfo:function(a){if(this._isExpressionField(a)){a=a.replace(this._reExprField,
"");a=a.toLowerCase();var c;b.some(this.info.expressionInfos,function(b){b.name.toLowerCase()===a&&(c=b);return!!c});return c}},hasGeometryOperations:function(){return b.some(this.info.expressionInfos,function(a){return y.hasGeometryOperations(a.expression)})},getComponents:function(a){var c=this.info,d={};c.fieldInfos&&(c=b.filter(c.fieldInfos,function(a){return-1!==a.fieldName.indexOf(this._relatedFieldPrefix)},this))&&0<c.length&&(d.relatedInfo=this._getRelatedRecords({graphic:a,fieldsInfo:c}));
this._needFullResolutionFeature(a)&&(d.fullResolutionFeature=this._getFullResolutionFeature(a));return w(d).then(n.hitch(this,function(b){return this._getPopupValues(a,b.fullResolutionFeature)}))},getAttachments:function(a){var b=a.getSourceLayer();a=a.attributes;if(this.info.showAttachments&&b&&b.hasAttachments&&b.objectIdField&&(a=a&&a[b.objectIdField]))return b.queryAttachmentInfos(a)},_needFullResolutionFeature:function(a){return(a=a.getSourceLayer())?"esriGeometryPoint"!==a.geometryType&&"function"===
typeof a.getMaxAllowableOffset&&0<a.getMaxAllowableOffset()&&this.hasGeometryOperations():!1},_getFullResolutionFeature:function(a){var b=a.getSourceLayer(),c=b.objectIdField;a=(a=a.attributes)&&c&&a[c];if(null==a)return null;var d=new t;d.objectIds=[a];d.maxAllowableOffset=0;d.outFields=[c];return b.queryFeatures(d).then(function(a){return a.features&&a.features[0]})},_isExpressionField:function(a){return this._reExprField.test(a)},_compileExpressions:function(a){var c={};b.forEach(a,function(a){var b=
a.returnType&&a.returnType.toLowerCase();c[a.name]=v.createAttributeCache({valueExpression:a.expression},"number"!==b)});return c},_fetchAttributes:function(a,d){var e=n.clone(a.attributes)||{},f=d&&d.geometry,g=this._exprPrefix,h=this._exprCache;b.forEach(this.info.expressionInfos,function(b){var d=g+b.name;b=(b=h[b.name])?a._getDataValue(b.attributeInfo,b,y,null,f):null;"string"===typeof b&&(b=c.encode(b));e[d]=b});return e},_getPopupValues:function(c,d,e){var f=this.info,g=c.getSourceLayer(),h=
this._fetchAttributes(c,d),k=n.clone(h);d=f.fieldInfos;var l="",m="",p,q,r,t,x,u=g&&g._getDateOpts&&g._getDateOpts().properties,u=u&&u.slice(0),v={dateFormat:{properties:u,formatter:"DateFormat"+this._insertOffset(this._dateFormats.shortDateShortTime)}};if(this._relatedInfo)for(t in this._relatedInfo)if(this._relatedInfo.hasOwnProperty(t)){var y=this._relatedInfo[t],A=this._relatedLayersInfo[t];y&&(b.forEach(y.relatedFeatures,function(a){for(x in a.attributes)if(a.attributes.hasOwnProperty(x)&&"esriRelCardinalityOneToOne"===
A.relation.cardinality){var b=this._toRelatedFieldName([A.relation.id,x]);h[b]=k[b]=a.attributes[x]}},this),b.forEach(y.relatedStatsFeatures,function(a){for(x in a.attributes)if(a.attributes.hasOwnProperty(x)){var b=this._toRelatedFieldName([A.relation.id,x]);h[b]=k[b]=a.attributes[x]}},this))}d&&b.forEach(d,function(a){q=a.fieldName;var c=this._getLayerFieldInfo(g,q);c&&(q=a.fieldName=c.name);k[q]=this._formatValue(k[q],q,v);u&&a.format&&a.format.dateFormat&&(a=b.indexOf(u,q),-1<a&&u.splice(a,1))},
this);if(g){t=g.types;var z=(y=g.typeIdField)&&h[y];for(q in h)if(h.hasOwnProperty(q)&&-1===q.indexOf(this._relatedFieldPrefix)&&(r=h[q],a.isDefined(r))){var B=this._getDomainName(g,c,t,z,q,r);a.isDefined(B)?k[q]=B:q===y&&(B=this._getTypeName(g,c,r),a.isDefined(B)&&(k[q]=B))}}f.title&&(l=this._processFieldsInLinks(this._fixTokens(f.title,g),h),l=n.trim(this._removeEmptyHref(a.substitute(k,l,v)||"")));if(e)return{title:l};f.description&&(m=this._processFieldsInLinks(this._fixTokens(f.description,g),
h),m=n.trim(this._removeEmptyHref(a.substitute(k,m,v)||"")));d&&(p=[],b.forEach(d,function(b){(q=b.fieldName)&&b.visible&&p.push([this._fieldLabels[q.toLowerCase()]||q,a.substitute(k,"${"+q+"}",v)||""])},this));var w,ea;f.mediaInfos&&(w=[],b.forEach(f.mediaInfos,function(c){ea=0;r=c.value;switch(c.type){case "image":var d=r.sourceURL,d=d&&n.trim(this._removeEmptyHref(a.substitute(h,this._fixTokens(d,g))));ea=!!d;break;case "piechart":case "linechart":case "columnchart":case "barchart":var e,d=r.normalizeField;
r.fields=b.map(r.fields,function(a){return(e=this._getLayerFieldInfo(g,a))?e.name:a},this);d&&(e=this._getLayerFieldInfo(g,d),r.normalizeField=e?e.name:d);ea=b.some(r.fields,function(b){return a.isDefined(h[b])||-1!==b.indexOf(this._relatedFieldPrefix)&&this._relatedInfo},this);break;default:return}if(ea){c=n.clone(c);r=c.value;var d=c.title?this._processFieldsInLinks(this._fixTokens(c.title,g),h):"",f=c.caption?this._processFieldsInLinks(this._fixTokens(c.caption,g),h):"";c.title=d?n.trim(this._removeEmptyHref(a.substitute(k,
d,v)||"")):"";c.caption=f?n.trim(this._removeEmptyHref(a.substitute(k,f,v)||"")):"";if("image"===c.type)r.sourceURL=a.substitute(h,this._fixTokens(r.sourceURL,g)),r.linkURL&&(r.linkURL=n.trim(a.substitute(h,this._fixTokens(r.linkURL,g))||""));else{var l,m;b.forEach(r.fields,function(a,b){if(-1!==a.indexOf(this._relatedFieldPrefix))m=this._getRelatedChartInfos(a,r,h,v),m instanceof Array?r.fields=m:r.fields[b]=m;else{var c=h[a],c=void 0===c?null:c;l=h[r.normalizeField]||0;c&&l&&(c/=l);r.fields[b]=
{y:c,tooltip:(this._fieldLabels[a.toLowerCase()]||a)+":\x3cbr/\x3e"+this._formatValue(c,a,v,!!l)}}},this)}w.push(c)}},this));return{title:l,description:m,hasDescription:!!f.description,fields:p&&p.length?p:null,mediaInfos:w&&w.length?w:null,formatted:k,editSummary:g&&g.getEditSummary?g.getEditSummary(c):""}},_getRelatedChartInfos:function(c,d,e,f){var g,h,k,l,m,p;g=[];p=this._fromRelatedFieldName(c);m=p[0];h=this._relatedInfo[m];m=this._relatedLayersInfo[m];h&&b.forEach(h.relatedFeatures,function(b){b=
b.attributes;var h,m;for(m in b)if(b.hasOwnProperty(m)&&m===p[1]){h={};l=b[m];d.normalizeField&&(k=-1!==d.normalizeField.indexOf(this._relatedFieldPrefix)?b[this._fromRelatedFieldName(d.normalizeField)[1]]:e[d.normalizeField]);l&&k&&(l/=k);if(d.tooltipField)if(-1!==d.tooltipField.indexOf(this._relatedFieldPrefix)){var n=this._fromRelatedFieldName(d.tooltipField)[1],q=a.isDefined(b[n])?this._formatValue(b[n],d.tooltipField,f,!!k):n;h.tooltip=q+":\x3cbr/\x3e"+this._formatValue(l,n,f,!!k)}else h.tooltip=
(this._fieldLabels[c.toLowerCase()]||c)+":\x3cbr/\x3e"+this._formatValue(l,d.tooltipField,f,!!k);else h.tooltip=l;h.y=l;g.push(h)}},this);return"esriRelCardinalityOneToMany"===m.relation.cardinality||"esriRelCardinalityManyToMany"===m.relation.cardinality?g:g[0]},_dateFormats:{shortDate:"(datePattern: 'M/d/y', selector: 'date')",shortDateLE:"(datePattern: 'd/M/y', selector: 'date')",longMonthDayYear:"(datePattern: 'MMMM d, y', selector: 'date')",dayShortMonthYear:"(datePattern: 'd MMM y', selector: 'date')",
longDate:"(datePattern: 'EEEE, MMMM d, y', selector: 'date')",shortDateShortTime:"(datePattern: 'M/d/y', timePattern: 'h:mm a', selector: 'date and time')",shortDateLEShortTime:"(datePattern: 'd/M/y', timePattern: 'h:mm a', selector: 'date and time')",shortDateShortTime24:"(datePattern: 'M/d/y', timePattern: 'H:mm', selector: 'date and time')",shortDateLEShortTime24:"(datePattern: 'd/M/y', timePattern: 'H:mm', selector: 'date and time')",shortDateLongTime:"(datePattern: 'M/d/y', timePattern: 'h:mm:ss a', selector: 'date and time')",
shortDateLELongTime:"(datePattern: 'd/M/y', timePattern: 'h:mm:ss a', selector: 'date and time')",shortDateLongTime24:"(datePattern: 'M/d/y', timePattern: 'H:mm:ss', selector: 'date and time')",shortDateLELongTime24:"(datePattern: 'd/M/y', timePattern: 'H:mm:ss', selector: 'date and time')",longMonthYear:"(datePattern: 'MMMM y', selector: 'date')",shortMonthYear:"(datePattern: 'MMM y', selector: 'date')",year:"(datePattern: 'y', selector: 'date')"},_reHref:/href\s*=\s*\"([^\"]+)\"/ig,_reHrefApos:/href\s*=\s*\'([^\']+)\'/ig,
_fixTokens:function(a,b){var c=this;return a.replace(/(\{([^\{\r\n]+)\})/g,function(a,d,e){a=c._getLayerFieldInfo(b,e);return"$"+(a?"{"+a.name+"}":d)})},_encodeAttributes:function(a){a=n.clone(a)||{};var b,c;for(b in a)(c=a[b])&&"string"===typeof c&&(c=encodeURIComponent(c).replace(/\'/g,"\x26apos;"),a[b]=c);return a},_processFieldsInLinks:function(a,b){var c=this._encodeAttributes(b);b=n.hitch(this,this._addValuesToHref,b,c);a&&(a=a.replace(this._reHref,b).replace(this._reHrefApos,b));return a},
_addValuesToHref:function(b,c,d,e){e=e&&n.trim(e);return d=a.substitute(e&&0===e.indexOf("${")?b:c,d)},_getLayerFieldInfo:function(a,b){return a&&a.getField?a.getField(b):null},_formatValue:function(c,d,e,f){var g=this._fieldsMap[d.toLowerCase()],h=g&&g.format;d=-1!==b.indexOf(e.dateFormat.properties,d);var k="number"===typeof c&&!d&&(!h||!h.dateFormat);if(!a.isDefined(c)||!g||!a.isDefined(h))return k?this._forceLTR(c):c;var l="",g=[],m=h.hasOwnProperty("places")||h.hasOwnProperty("digitSeparator"),
p=h.hasOwnProperty("digitSeparator")?h.digitSeparator:!0;if(m&&!d)l="NumberFormat",g.push("places: "+(a.isDefined(h.places)&&(!f||0<h.places)?Number(h.places):"Infinity")),g.length&&(l+="("+g.join(",")+")");else if(h.dateFormat)l="DateFormat"+this._insertOffset(this._dateFormats[h.dateFormat]||this._dateFormats.shortDateShortTime);else return k?this._forceLTR(c):c;var q=this._applyFormatting(c,l,e);m&&-1<c.constructor.toString().indexOf("Array")&&(q="",b.forEach(c,n.hitch(this,function(a,b){b&&(q+=
" ");q+=this._applyFormatting(a,l,e)})));m&&!p&&z.group&&(q=q.replace(new RegExp("\\"+z.group,"g"),""));d&&(q='\x3cspan class\x3d"esriDateValue"\x3e'+q+"\x3c/span\x3e");return k?this._forceLTR(q):q},_applyFormatting:function(b,c,d){return a.substitute({myKey:b},"${myKey:"+c+"}",d)||""},_forceLTR:function(a){var b=f("ie");return b&&10>=b?a:"\x3cspan class\x3d'esriNumericValue'\x3e"+a+"\x3c/span\x3e"},_insertOffset:function(b){b&&(b=a.isDefined(this.utcOffset)?b.replace(/\)\s*$/,", utcOffset:"+this.utcOffset+
")"):b);return b},_getDomainName:function(a,b,c,d,e,f){return(a=a.getDomain&&a.getDomain(e,{feature:b}))&&a.codedValues?a.getName(f):null},_getTypeName:function(a,b,c){return(a=a.getType&&a.getType(b))&&a.name},_getRelatedRecords:function(a){var b=a.graphic,c;this._relatedLayersInfoPromise||(this._relatedLayersInfoPromise=this._getRelatedLayersInfo(a).then(n.hitch(this,function(a){for(c in a)a.hasOwnProperty(c)&&a[c]&&(this._relatedLayersInfo[c].relatedLayerInfo=a[c])})));return this._relatedLayersInfoPromise.then(n.hitch(this,
function(){return this._queryRelatedLayers(b)})).then(n.hitch(this,function(a){this._setRelatedRecords(b,a);return a}))},_getRelatedLayersInfo:function(a){var c=a.fieldsInfo,d,f,g={};d=a.graphic.getSourceLayer();this._relatedLayersInfo||(this._relatedLayersInfo={});b.forEach(c,function(a){var c,e,f,g;c=this._fromRelatedFieldName(a.fieldName);e=c[0];c=c[1];e&&(!this._relatedLayersInfo[e]&&d&&d.relationships&&(b.some(d.relationships,function(a){if(a.id==e)return g=a,!0}),g&&(this._relatedLayersInfo[e]=
{relation:g,relatedFields:[],outStatistics:[]})),this._relatedLayersInfo[e]&&(this._relatedLayersInfo[e].relatedFields.push(c),a.statisticType&&(f=new r,f.statisticType=a.statisticType,f.onStatisticField=c,f.outStatisticFieldName=c,this._relatedLayersInfo[e].outStatistics.push(f))))},this);for(f in this._relatedLayersInfo)this._relatedLayersInfo.hasOwnProperty(f)&&this._relatedLayersInfo[f]&&(a=this._relatedLayersInfo[f].relation,a=d.url.replace(/[0-9]+$/,a.relatedTableId),this._relatedLayersInfo[f].relatedLayerUrl=
a,g[f]=m({url:a,content:{f:"json"},callbackParamName:"callback"}));return e(g)},_queryRelatedLayers:function(a){var b={},c;for(c in this._relatedLayersInfo)this._relatedLayersInfo.hasOwnProperty(c)&&(b[c]=this._queryRelatedLayer({graphic:a,relatedInfo:this._relatedLayersInfo[c]}));return e(b)},_queryRelatedLayer:function(a){var c,d,f,g,h,m,p,q,r,u,v,x,y;c=a.graphic;d=c.getSourceLayer();f=d.url.match(/[0-9]+$/g)[0];v=a.relatedInfo;u=v.relatedLayerInfo;x=v.relatedLayerUrl;a=v.relation;b.some(u.relationships,
function(a){if(a.relatedTableId===parseInt(f,10))return g=a,!0},this);g&&(h=new t,b.some(u.fields,function(a){if(a.name===g.keyField)return q=-1!==b.indexOf(["esriFieldTypeSmallInteger","esriFieldTypeInteger","esriFieldTypeSingle","esriFieldTypeDouble"],a.type)?"number":"string",!0}),g.relationshipTableId&&g.keyFieldInRelationshipTable?(y=new l,this._queryRelatedRecords(c,g).then(n.hitch(this,function(a){var e;(e=a[c.attributes[d.objectIdField]])?(a=b.map(e.features,function(a){return a.attributes[u.objectIdField]},
this),v.outStatistics&&0<v.outStatistics.length&&u.supportsStatistics&&(r=new t,r.objectIds=a,r.outFields=h.outFields,r.outStatistics=v.outStatistics),r&&(m=new k(x),m.execute(r).then(n.hitch(this,function(a){var b=[];b.push(e);b.push(a);y.resolve(b)})))):y.resolve()}))):(p="string"===q?g.keyField+"\x3d'"+c.attributes[a.keyField]+"'":g.keyField+"\x3d"+c.attributes[a.keyField],h.where=p,h.outFields=v.relatedFields,v.outStatistics&&0<v.outStatistics.length&&u.supportsStatistics&&(r=new t,r.where=h.where,
r.outFields=h.outFields,r.outStatistics=v.outStatistics),m=new k(x),p=[],p.push(m.execute(h)),r&&p.push(m.execute(r))));return p?e(p):y?y.promise:void 0},_setRelatedRecords:function(b,c){this._relatedInfo=[];for(var d in c)c.hasOwnProperty(d)&&c[d]&&(b=c[d],this._relatedInfo[d]={},this._relatedInfo[d].relatedFeatures=b[0].features,a.isDefined(b[1])&&(this._relatedInfo[d].relatedStatsFeatures=b[1].features))},_handlerErrorResponse:function(a,b){a.reject(b)},_fromRelatedFieldName:function(a){var b=
[];-1!==a.indexOf(this._relatedFieldPrefix)&&(a=a.split("/"),b=a.slice(1));return b},_toRelatedFieldName:function(a){var b="";a&&0<a.length&&(b=this._relatedFieldPrefix+a[0]+"/"+a[1]);return b},_queryRelatedRecords:function(a,b){var c=a.getSourceLayer(),d=new u;d.outFields=["*"];d.relationshipId=b.id;d.objectIds=[a.attributes[c.objectIdField]];return c.queryRelatedFeatures(d)},_removeEmptyHref:function(a){return a.replace(/href=(""|'')/gi,"")}});p("extend-esri")&&(d.PopupInfo=d.PopupInfoTemplate=
q);return q})},"dojox/html/entities":function(){define(["dojo/_base/lang"],function(q){var n=q.getObject("dojox.html.entities",!0),b=function(b,g){var h,f;if(g._encCache&&g._encCache.regexp&&g._encCache.mapper&&g.length==g._encCache.length)h=g._encCache.mapper,f=g._encCache.regexp;else{h={};f=["["];var e;for(e=0;e<g.length;e++)h[g[e][0]]="\x26"+g[e][1]+";",f.push(g[e][0]);f.push("]");f=new RegExp(f.join(""),"g");g._encCache={mapper:h,regexp:f,length:g.length}}return b=b.replace(f,function(b){return h[b]})},
g=function(b,g){var h,f;if(g._decCache&&g._decCache.regexp&&g._decCache.mapper&&g.length==g._decCache.length)h=g._decCache.mapper,f=g._decCache.regexp;else{h={};f=["("];var e;for(e=0;e<g.length;e++){var c="\x26"+g[e][1]+";";e&&f.push("|");h[c]=g[e][0];f.push(c)}f.push(")");f=new RegExp(f.join(""),"g");g._decCache={mapper:h,regexp:f,length:g.length}}return b=b.replace(f,function(a){return h[a]})};n.html=[["\x26","amp"],['"',"quot"],["\x3c","lt"],["\x3e","gt"],["\u00a0","nbsp"]];n.latin=[["\u00a1",
"iexcl"],["\u00a2","cent"],["\u00a3","pound"],["\u20ac","euro"],["\u00a4","curren"],["\u00a5","yen"],["\u00a6","brvbar"],["\u00a7","sect"],["\u00a8","uml"],["\u00a9","copy"],["\u00aa","ordf"],["\u00ab","laquo"],["\u00ac","not"],["\u00ad","shy"],["\u00ae","reg"],["\u00af","macr"],["\u00b0","deg"],["\u00b1","plusmn"],["\u00b2","sup2"],["\u00b3","sup3"],["\u00b4","acute"],["\u00b5","micro"],["\u00b6","para"],["\u00b7","middot"],["\u00b8","cedil"],["\u00b9","sup1"],["\u00ba","ordm"],["\u00bb","raquo"],
["\u00bc","frac14"],["\u00bd","frac12"],["\u00be","frac34"],["\u00bf","iquest"],["\u00c0","Agrave"],["\u00c1","Aacute"],["\u00c2","Acirc"],["\u00c3","Atilde"],["\u00c4","Auml"],["\u00c5","Aring"],["\u00c6","AElig"],["\u00c7","Ccedil"],["\u00c8","Egrave"],["\u00c9","Eacute"],["\u00ca","Ecirc"],["\u00cb","Euml"],["\u00cc","Igrave"],["\u00cd","Iacute"],["\u00ce","Icirc"],["\u00cf","Iuml"],["\u00d0","ETH"],["\u00d1","Ntilde"],["\u00d2","Ograve"],["\u00d3","Oacute"],["\u00d4","Ocirc"],["\u00d5","Otilde"],
["\u00d6","Ouml"],["\u00d7","times"],["\u00d8","Oslash"],["\u00d9","Ugrave"],["\u00da","Uacute"],["\u00db","Ucirc"],["\u00dc","Uuml"],["\u00dd","Yacute"],["\u00de","THORN"],["\u00df","szlig"],["\u00e0","agrave"],["\u00e1","aacute"],["\u00e2","acirc"],["\u00e3","atilde"],["\u00e4","auml"],["\u00e5","aring"],["\u00e6","aelig"],["\u00e7","ccedil"],["\u00e8","egrave"],["\u00e9","eacute"],["\u00ea","ecirc"],["\u00eb","euml"],["\u00ec","igrave"],["\u00ed","iacute"],["\u00ee","icirc"],["\u00ef","iuml"],
["\u00f0","eth"],["\u00f1","ntilde"],["\u00f2","ograve"],["\u00f3","oacute"],["\u00f4","ocirc"],["\u00f5","otilde"],["\u00f6","ouml"],["\u00f7","divide"],["\u00f8","oslash"],["\u00f9","ugrave"],["\u00fa","uacute"],["\u00fb","ucirc"],["\u00fc","uuml"],["\u00fd","yacute"],["\u00fe","thorn"],["\u00ff","yuml"],["\u0192","fnof"],["\u0391","Alpha"],["\u0392","Beta"],["\u0393","Gamma"],["\u0394","Delta"],["\u0395","Epsilon"],["\u0396","Zeta"],["\u0397","Eta"],["\u0398","Theta"],["\u0399","Iota"],["\u039a",
"Kappa"],["\u039b","Lambda"],["\u039c","Mu"],["\u039d","Nu"],["\u039e","Xi"],["\u039f","Omicron"],["\u03a0","Pi"],["\u03a1","Rho"],["\u03a3","Sigma"],["\u03a4","Tau"],["\u03a5","Upsilon"],["\u03a6","Phi"],["\u03a7","Chi"],["\u03a8","Psi"],["\u03a9","Omega"],["\u03b1","alpha"],["\u03b2","beta"],["\u03b3","gamma"],["\u03b4","delta"],["\u03b5","epsilon"],["\u03b6","zeta"],["\u03b7","eta"],["\u03b8","theta"],["\u03b9","iota"],["\u03ba","kappa"],["\u03bb","lambda"],["\u03bc","mu"],["\u03bd","nu"],["\u03be",
"xi"],["\u03bf","omicron"],["\u03c0","pi"],["\u03c1","rho"],["\u03c2","sigmaf"],["\u03c3","sigma"],["\u03c4","tau"],["\u03c5","upsilon"],["\u03c6","phi"],["\u03c7","chi"],["\u03c8","psi"],["\u03c9","omega"],["\u03d1","thetasym"],["\u03d2","upsih"],["\u03d6","piv"],["\u2022","bull"],["\u2026","hellip"],["\u2032","prime"],["\u2033","Prime"],["\u203e","oline"],["\u2044","frasl"],["\u2118","weierp"],["\u2111","image"],["\u211c","real"],["\u2122","trade"],["\u2135","alefsym"],["\u2190","larr"],["\u2191",
"uarr"],["\u2192","rarr"],["\u2193","darr"],["\u2194","harr"],["\u21b5","crarr"],["\u21d0","lArr"],["\u21d1","uArr"],["\u21d2","rArr"],["\u21d3","dArr"],["\u21d4","hArr"],["\u2200","forall"],["\u2202","part"],["\u2203","exist"],["\u2205","empty"],["\u2207","nabla"],["\u2208","isin"],["\u2209","notin"],["\u220b","ni"],["\u220f","prod"],["\u2211","sum"],["\u2212","minus"],["\u2217","lowast"],["\u221a","radic"],["\u221d","prop"],["\u221e","infin"],["\u2220","ang"],["\u2227","and"],["\u2228","or"],["\u2229",
"cap"],["\u222a","cup"],["\u222b","int"],["\u2234","there4"],["\u223c","sim"],["\u2245","cong"],["\u2248","asymp"],["\u2260","ne"],["\u2261","equiv"],["\u2264","le"],["\u2265","ge"],["\u2282","sub"],["\u2283","sup"],["\u2284","nsub"],["\u2286","sube"],["\u2287","supe"],["\u2295","oplus"],["\u2297","otimes"],["\u22a5","perp"],["\u22c5","sdot"],["\u2308","lceil"],["\u2309","rceil"],["\u230a","lfloor"],["\u230b","rfloor"],["\u2329","lang"],["\u232a","rang"],["\u25ca","loz"],["\u2660","spades"],["\u2663",
"clubs"],["\u2665","hearts"],["\u2666","diams"],["\u0152","OElig"],["\u0153","oelig"],["\u0160","Scaron"],["\u0161","scaron"],["\u0178","Yuml"],["\u02c6","circ"],["\u02dc","tilde"],["\u2002","ensp"],["\u2003","emsp"],["\u2009","thinsp"],["\u200c","zwnj"],["\u200d","zwj"],["\u200e","lrm"],["\u200f","rlm"],["\u2013","ndash"],["\u2014","mdash"],["\u2018","lsquo"],["\u2019","rsquo"],["\u201a","sbquo"],["\u201c","ldquo"],["\u201d","rdquo"],["\u201e","bdquo"],["\u2020","dagger"],["\u2021","Dagger"],["\u2030",
"permil"],["\u2039","lsaquo"],["\u203a","rsaquo"]];n.encode=function(g,p){g&&(p?g=b(g,p):(g=b(g,n.html),g=b(g,n.latin)));return g};n.decode=function(b,p){b&&(p?b=g(b,p):(b=g(b,n.html),b=g(b,n.latin)));return b};return n})},"esri/tasks/RelationshipQuery":function(){define(["dojo/_base/declare","dojo/_base/lang","dojo/_base/json","dojo/has","../kernel"],function(q,n,b,g,h){q=q(null,{declaredClass:"esri.tasks.RelationshipQuery",definitionExpression:"",relationshipId:null,returnGeometry:!1,objectIds:null,
outSpatialReference:null,outFields:null,orderByFields:null,toJson:function(){var g={definitionExpression:this.definitionExpression,relationshipId:this.relationshipId,returnGeometry:this.returnGeometry,maxAllowableOffset:this.maxAllowableOffset,geometryPrecision:this.geometryPrecision},h=this.objectIds,f=this.outFields,e=this.outSpatialReference,c=this.orderByFields;h&&(g.objectIds=h.join(","));f&&(g.outFields=f.join(","));e&&(g.outSR=e.wkid||b.toJson(e.toJson()));c&&(g.orderByFields=c.join(","));
g._ts=this._ts;return g}});g("extend-esri")&&n.setObject("tasks.RelationshipQuery",q,h);return q})},"esri/dijit/PopupRenderer":function(){define("require dojo/_base/declare dojo/_base/connect dojo/_base/lang dojo/_base/array dojo/_base/kernel dojo/sniff dojo/query dojo/dom dojo/dom-attr dojo/dom-class dojo/dom-construct dojo/dom-style dojox/html/entities dijit/_Widget dijit/_Templated ../kernel ../lang ../urlUtils ./_EventedWidget dojo/i18n!../nls/jsapi dojo/NodeList-dom".split(" "),function(q,n,
b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z){var x=0,A=z.widgets.popup,B=z.widgets.templatePicker;n=n([v,t,k],{declaredClass:"esri.dijit._PopupRenderer",constructor:function(){this._nls=g.mixin({},A)},templateString:"\x3cdiv class\x3d'esriViewPopup'\x3e\x3cdiv class\x3d'statusSection hidden' dojoAttachPoint\x3d'_status'\x3e\x3c/div\x3e\x3cdiv class\x3d'mainSection'\x3e\x3cdiv class\x3d'header' dojoAttachPoint\x3d'_title'\x3e\x3c/div\x3e\x3cdiv class\x3d'hzLine'\x3e\x3c/div\x3e\x3cdiv dojoAttachPoint\x3d'_description'\x3e\x3c/div\x3e\x3cdiv class\x3d'break'\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'attachmentsSection hidden'\x3e\x3cdiv\x3e${_nls.NLS_attach}:\x3c/div\x3e\x3cul dojoAttachPoint\x3d'_attachmentsList'\x3e\x3c/ul\x3e\x3cdiv class\x3d'break'\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'mediaSection hidden'\x3e\x3cdiv class\x3d'header' dojoAttachPoint\x3d'_mediaTitle'\x3e\x3c/div\x3e\x3cdiv class\x3d'hzLine'\x3e\x3c/div\x3e\x3cdiv class\x3d'caption' dojoAttachPoint\x3d'_mediaCaption'\x3e\x3c/div\x3e\x3cdiv class\x3d'gallery' dojoAttachPoint\x3d'_gallery'\x3e\x3cdiv class\x3d'mediaHandle prev' dojoAttachPoint\x3d'_prevMedia' dojoAttachEvent\x3d'onclick: _goToPrevMedia'\x3e\x3c/div\x3e\x3cdiv class\x3d'mediaHandle next' dojoAttachPoint\x3d'_nextMedia' dojoAttachEvent\x3d'onclick: _goToNextMedia'\x3e\x3c/div\x3e\x3cul class\x3d'summary'\x3e\x3cli class\x3d'image mediaCount hidden' dojoAttachPoint\x3d'_imageCount'\x3e0\x3c/li\x3e\x3cli class\x3d'image mediaIcon hidden'\x3e\x3c/li\x3e\x3cli class\x3d'chart mediaCount hidden' dojoAttachPoint\x3d'_chartCount'\x3e0\x3c/li\x3e\x3cli class\x3d'chart mediaIcon hidden'\x3e\x3c/li\x3e\x3c/ul\x3e\x3cdiv class\x3d'frame' dojoAttachPoint\x3d'_mediaFrame'\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e\x3cdiv class\x3d'editSummarySection hidden' dojoAttachPoint\x3d'_editSummarySection'\x3e\x3cdiv class\x3d'break'\x3e\x3c/div\x3e\x3cdiv class\x3d'break hidden' dojoAttachPoint\x3d'_mediaBreak'\x3e\x3c/div\x3e\x3cdiv class\x3d'editSummary' dojoAttachPoint\x3d'_editSummary'\x3e\x3c/div\x3e\x3c/div\x3e\x3c/div\x3e",
showTitle:!0,startup:function(){this.inherited(arguments);this._showStatus(B.loading);this._contentDfd=this.template.getComponents(this.graphic).then(g.hitch(this,this._handleComponentsSuccess)).otherwise(g.hitch(this,this._handleComponentsError))},destroy:function(){this._contentDfd&&this._contentDfd.cancel();this._attachmentsDfd&&this._attachmentsDfd.cancel();this._destroyFrame();this.template=this.graphic=this._nls=this._mediaInfos=this._mediaPtr=this._contentDfd=this._attachmentsDfd=null;this.inherited(arguments)},
_goToPrevMedia:function(){0>this._mediaPtr-1||(this._mediaPtr--,this._updateUI(),this._displayMedia())},_goToNextMedia:function(){this._mediaPtr+1!==this._mediaInfos.length&&(this._mediaPtr++,this._updateUI(),this._displayMedia())},_updateUI:function(){var b=this._mediaInfos,d=b.length,e=this.domNode,f=this._prevMedia,g=this._nextMedia;if(1<d){var k=0,l=0;h.forEach(b,function(a){"image"===a.type?k++:-1!==a.type.indexOf("chart")&&l++});k&&(c.set(this._imageCount,"innerHTML",k),p.query(".summary .image",
e).removeClass("hidden"));l&&(c.set(this._chartCount,"innerHTML",l),p.query(".summary .chart",e).removeClass("hidden"))}else p.query(".summary",e).addClass("hidden"),a.add(f,"hidden"),a.add(g,"hidden");b=this._mediaPtr;0===b?a.add(f,"hidden"):a.remove(f,"hidden");b===d-1?a.add(g,"hidden"):a.remove(g,"hidden");this._destroyFrame()},_displayMedia:function(){var b=this._mediaInfos[this._mediaPtr],d=b.title,e=b.caption,f=p.query(".mediaSection .hzLine",this.domNode)[0];c.set(this._mediaTitle,"innerHTML",
d);a[d?"remove":"add"](this._mediaTitle,"hidden");c.set(this._mediaCaption,"innerHTML",e);a[e?"remove":"add"](this._mediaCaption,"hidden");a[d&&e?"remove":"add"](f,"hidden");this._rid=null;if("image"===b.type)this._showImage(b);else{var h=this,d=["dojox/charting/Chart2D","dojox/charting/action2d/Tooltip"],e=b.value.theme||this.chartTheme;g.isString(e)&&(e=e.replace(/\./gi,"/"),-1===e.indexOf("/")&&(e="dojox/charting/themes/"+e));e||(e="./Rainbow");d.push(e);try{var k=this._rid=x++;q(d,function(a,
c,d){k===h._rid&&(h._rid=null,h._showChart(b.type,b.value,a,c,d))})}catch(N){console.log("PopupRenderer: error loading modules")}}},_preventNewTab:function(a){return(a=a&&g.trim(a).toLowerCase())&&(0===a.indexOf("mailto:")||0===a.indexOf("tel:"))},_showImage:function(c){a.add(this._mediaFrame,"image");var e=m.get(this._gallery,"height"),f=c.value,g;f.linkURL&&(g=d.create("a",{href:f.linkURL,target:this._preventNewTab(f.linkURL)?"":"_blank"},this._mediaFrame));f=c.refreshInterval?this._addURLParameter(f.sourceURL,
"timestamp",Date.now()):f.sourceURL;d.create("img",{className:"esriPopupMediaImage",src:f},g||this._mediaFrame);var h=p.query(".esriPopupMediaImage",this._mediaFrame)[0];this._imageLoadHandle=b.connect(h,"onload",this,function(){this._clearImageHandles();this._imageLoaded(h,e);this._initImageRefresh(c)})},_addURLParameter:function(a,b,c){var d=-1===a.indexOf("?")?"?":"\x26";return a+d+b+"\x3d"+c},_initImageRefresh:function(a){if(a.refreshInterval){var b=6E4*a.refreshInterval;this._imageRefreshHandle=
setTimeout(g.hitch(this,function(){this._destroyFrame();this._showImage(a)}),b)}},_clearImageHandles:function(){b.disconnect(this._imageLoadHandle);this._imageLoadHandle=null;clearTimeout(this._imageRefreshHandle);this._imageRefreshHandle=null},_showChart:function(b,c,e,f,g){a.remove(this._mediaFrame,"image");e=this._chart=new e(d.create("div",{"class":"chart"},this._mediaFrame),{margins:{l:4,t:4,r:4,b:4}});g&&e.setTheme(g);switch(b){case "piechart":e.addPlot("default",{type:"Pie",labels:!1});e.addSeries("Series A",
c.fields);break;case "linechart":e.addPlot("default",{type:"Markers"});e.addAxis("x",{min:0,majorTicks:!1,minorTicks:!1,majorLabels:!1,minorLabels:!1});e.addAxis("y",{includeZero:!0,vertical:!0,fixUpper:"minor"});h.forEach(c.fields,function(a,b){a.x=b+1});e.addSeries("Series A",c.fields);break;case "columnchart":e.addPlot("default",{type:"Columns",gap:3});e.addAxis("y",{includeZero:!0,vertical:!0,fixUpper:"minor"});e.addSeries("Series A",c.fields);break;case "barchart":e.addPlot("default",{type:"Bars",
gap:3}),e.addAxis("x",{includeZero:!0,fixUpper:"minor",minorLabels:!1}),e.addAxis("y",{vertical:!0,majorTicks:!1,minorTicks:!1,majorLabels:!1,minorLabels:!1}),e.addSeries("Series A",c.fields)}this._action=new f(e);e.render()},_destroyFrame:function(){this._rid=null;this._clearImageHandles();this._chart&&(this._chart.destroy(),this._chart=null);this._action&&(this._action.destroy(),this._action=null);c.set(this._mediaFrame,"innerHTML","")},_imageLoaded:function(a,b){var c=a.height;c<b&&m.set(a,"marginTop",
Math.round((b-c)/2)+"px")},_attListHandler:function(a,b){if(a===this._attachmentsDfd){this._attachmentsDfd=null;var d="";b instanceof Error||!b||!b.length||h.forEach(b,function(a){d+="\x3cli\x3e";d+="\x3ca href\x3d'"+y.addProxy(a.url)+"' target\x3d'_blank'\x3e"+(a.name||"[No name]")+"\x3c/a\x3e";d+="\x3c/li\x3e"});c.set(this._attachmentsList,"innerHTML",d||"\x3cli\x3e"+this._nls.NLS_noAttach+"\x3c/li\x3e")}},_supportedURIInfos:[{pattern:/^\s*(https?:\/\/([^\s]+))\s*$/i,label:A.NLS_moreInfo},{pattern:/^\s*(tel:([^\s]+))\s*$/i,
label:"${hierPart}"},{pattern:/^\s*(mailto:([^\s]+))\s*$/i,label:"${hierPart}"},{pattern:/^\s*(arcgis-appstudio-player:\/\/([^\s]+))\s*$/i,appName:"App Studio Player",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-collector:\/\/([^\s]+))\s*$/i,appName:"Collector",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-explorer:\/\/([^\s]+))\s*$/i,appName:"Explorer",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-navigator:\/\/([^\s]+))\s*$/i,appName:"Navigator",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-survey123:\/\/([^\s]+))\s*$/i,
appName:"Survey123",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-trek2there:\/\/([^\s]+))\s*$/i,appName:"Trek2There",label:A.NLS_openLinkInApp},{pattern:/^\s*(arcgis-workforce:\/\/([^\s]+))\s*$/i,appName:"Workforce",label:A.NLS_openLinkInApp},{pattern:/^\s*(iform:\/\/([^\s]+))\s*$/i,appName:"iForm",label:A.NLS_openLinkInApp},{pattern:/^\s*(flow:\/\/([^\s]+))\s*$/i,appName:"FlowFinity",label:A.NLS_openLinkInApp},{pattern:/^\s*(lfmobile:\/\/([^\s]+))\s*$/i,appName:"Laserfische",label:A.NLS_openLinkInApp},
{pattern:/^\s*(mspbi:\/\/([^\s]+))\s*$/i,appName:"Microsoft Power BI",label:A.NLS_openLinkInApp}],_findURIInfo:function(a){var b;h.some(this._supportedURIInfos,function(c){c.pattern.test(a)&&(b=c);return!!b});return b},_createLinkIfURI:function(a){var b=this._findURIInfo(a);if(b){var c=a.match(b.pattern);return a.replace(b.pattern,"\x3ca target\x3d'_blank' href\x3d'$1' title\x3d'$1'\x3e"+r.substitute({appName:b.appName,hierPart:c&&c[2]},b.label)+"\x3c/a\x3e")}return a},_showStatus:function(b){c.set(this._status,
"innerHTML",b);a.remove(this._status,"hidden");p.query(".mainSection",this.domNode).addClass("hidden")},_hideStatus:function(){c.set(this._status,"innerHTML","");a.add(this._status,"hidden");p.query(".mainSection",this.domNode).removeClass("hidden")},_handleComponentsSuccess:function(b){if(b){this._hideStatus();var d=this.showTitle?b.title:"",f=b.description,k=b.fields,l=b.mediaInfos,m=this.domNode,n=this._nls,q=this,r=this.template,t=this.graphic;this._prevMedia.title=n.NLS_prevMedia;this._nextMedia.title=
n.NLS_nextMedia;c.set(this._title,"innerHTML",d);d||a.add(this._title,"hidden");!b.hasDescription&&k&&(f="",h.forEach(k,function(a){f+="\x3ctr valign\x3d'top'\x3e";f+="\x3ctd class\x3d'attrName'\x3e"+w.encode(a[0])+"\x3c/td\x3e";f+="\x3ctd class\x3d'attrValue'\x3e"+this._createLinkIfURI(a[1])+"\x3c/td\x3e";f+="\x3c/tr\x3e"},this),f&&(f="\x3ctable class\x3d'attrTable' cellpadding\x3d'0px' cellspacing\x3d'0px'\x3e"+f+"\x3c/table\x3e"));c.set(this._description,"innerHTML",f);f||a.add(this._description,
"hidden");p.query("a",this._description).forEach(function(a){q._preventNewTab(a.href)?"_blank"===a.target&&c.remove(a,"target"):c.set(a,"target","_blank")});d&&f?p.query(".mainSection .hzLine",m).removeClass("hidden"):d||f?p.query(".mainSection .hzLine",m).addClass("hidden"):p.query(".mainSection",m).addClass("hidden");if(d=this._attachmentsDfd=r.getAttachments(t))d.addBoth(g.hitch(this,this._attListHandler,d)),c.set(this._attachmentsList,"innerHTML","\x3cli\x3e"+n.NLS_searching+"...\x3c/li\x3e"),
p.query(".attachmentsSection",m).removeClass("hidden");l&&l.length&&(p.query(".mediaSection",m).removeClass("hidden"),e.setSelectable(this._mediaFrame,!1),this._mediaInfos=l,this._mediaPtr=0,this._updateUI(),this._displayMedia());b.editSummary&&(c.set(this._editSummary,"innerHTML",b.editSummary),l&&l.length&&a.remove(this._mediaBreak,"hidden"),a.remove(this._editSummarySection,"hidden"));this.emit("content-update")}else this._showStatus(A.NLS_noInfo)},_handleComponentsError:function(a){a&&"cancel"===
a.dojoType||(console.log("PopupRenderer: error loading template",a),this._showStatus(A.NLS_noInfo))}});l("extend-esri")&&g.setObject("dijit._PopupRenderer",n,u);return n})},"dijit/_Templated":function(){define("./_WidgetBase ./_TemplatedMixin ./_WidgetsInTemplateMixin dojo/_base/array dojo/_base/declare dojo/_base/lang dojo/_base/kernel".split(" "),function(q,n,b,g,h,p,l){p.extend(q,{waiRole:"",waiState:""});return h("dijit._Templated",[n,b],{constructor:function(){l.deprecated(this.declaredClass+
": dijit._Templated deprecated, use dijit._TemplatedMixin and if necessary dijit._WidgetsInTemplateMixin","","2.0")},_processNode:function(b,e){var c=this.inherited(arguments),a=e(b,"waiRole");a&&b.setAttribute("role",a);(a=e(b,"waiState"))&&g.forEach(a.split(/\s*,\s*/),function(a){-1!=a.indexOf("-")&&(a=a.split("-"),b.setAttribute("aria-"+a[0],a[1]))});return c}})})},"dijit/_WidgetsInTemplateMixin":function(){define(["dojo/_base/array","dojo/aspect","dojo/_base/declare","dojo/_base/lang","dojo/parser"],
function(q,n,b,g,h){return b("dijit._WidgetsInTemplateMixin",null,{_earlyTemplatedStartup:!1,contextRequire:null,_beforeFillContent:function(){if(/dojoType|data-dojo-type/i.test(this.domNode.innerHTML)){var b=this.domNode;this.containerNode&&!this.searchContainerNode&&(this.containerNode.stopParser=!0);h.parse(b,{noStart:!this._earlyTemplatedStartup,template:!0,inherited:{dir:this.dir,lang:this.lang,textDir:this.textDir},propsThis:this,contextRequire:this.contextRequire,scope:"dojo"}).then(g.hitch(this,
function(b){this._startupWidgets=b;for(var f=0;f<b.length;f++)this._processTemplateNode(b[f],function(b,c){return b[c]},function(b,c,a){return c in b?b.connect(b,c,a):b.on(c,a,!0)});this.containerNode&&this.containerNode.stopParser&&delete this.containerNode.stopParser}));if(!this._startupWidgets)throw Error(this.declaredClass+": parser returned unfilled promise (probably waiting for module auto-load), unsupported by _WidgetsInTemplateMixin.   Must pre-load all supporting widgets before instantiation.");
}},_processTemplateNode:function(b,g,f){return g(b,"dojoType")||g(b,"data-dojo-type")?!0:this.inherited(arguments)},startup:function(){q.forEach(this._startupWidgets,function(b){b&&!b._started&&b.startup&&b.startup()});this._startupWidgets=null;this.inherited(arguments)}})})},"esri/dijit/_EventedWidget":function(){define("dojo/_base/declare dojo/_base/lang dojo/aspect dojo/on ../Evented dijit/_WidgetBase".split(" "),function(q,n,b,g,h,p){return q([p,h],{_onMap:function(b){var f=this.constructor._onMap,
e;f&&f.FINAL||(delete this.constructor._onMap,f=this.registerConnectEvents(),f.FINAL=!0);b=b.toLowerCase();f[b]?e=this[f[b].method]:(b=this._onCamelCase(b),this[b]&&(e=b));return e},on:function(b,f){var e=this._onMap(b),c=b.replace(/\-/g,""),a="on"+c in this.domNode;return e||!a?this.inherited(arguments):this.own(g(this.domNode,c,f))[0]},emit:function(b,f,e){var c,a,d,g=b.toLowerCase(),h=this.constructor._onMap||this.registerConnectEvents();a=this[this._onMap(g)];f=f||{};f.target||(f.target=this);
a&&h&&h[g]&&(this._onObj2Arr(function(){c=Array.prototype.slice.call(arguments)},h[g].argKeys)(f),d=n.mixin({},arguments),d[2]=c,d[0]=h[g].name.replace(/^on/,""));return this.inherited(d||arguments)}})})},"esri/dijit/Legend/utils":function(){define(["dojo/_base/lang","../../lang","dojo/i18n!../../nls/jsapi"],function(q,n,b){var g=b.widgets.legend;return{getVisualVariableTitle:function(b,p){var h,f=b.field,e=b.normalizationField,c=!1,a=!1,d=!1,f=q.isFunction(f)?null:f,e=q.isFunction(e)?null:e;if(b.legendOptions&&
b.legendOptions.title)h=b.legendOptions.title;else if(b.valueExpressionTitle)h=b.valueExpressionTitle;else{if(p.renderer&&p.renderer.authoringInfo&&p.renderer.authoringInfo.visualVariables){var m=p.renderer.authoringInfo.visualVariables;for(b=0;b<m.length;b++){var w=m[b];if("colorInfo"===w.type&&"ratio"===w.style){c=!0;break}else if("colorInfo"===w.type&&"percent"===w.style){a=!0;break}else if("colorInfo"===w.type&&"percentTotal"===w.style){d=!0;break}}}(c=d&&"showRatioPercentTotal"||a&&"showRatioPercent"||
c&&"showRatio"||e&&"showNormField"||f&&"showField"||null)&&(h=n.substitute({field:f&&p.getFieldLabel(f),normField:e&&p.getFieldLabel(e)},"showField"===c?"${field}":g[c]))}return h},getRendererTitle:function(b,p){var h;if(b){var f,e,c;"esri.renderer.ClassBreaksRenderer"===b.declaredClass&&(f=b.attributeField,e=b.normalizationField,c="percent-of-total"===b.normalizationType);f=q.isFunction(f)?null:f;e=q.isFunction(e)?null:e;b.legendOptions&&b.legendOptions.title?h=b.legendOptions.title:b.valueExpressionTitle?
h=b.valueExpressionTitle:(b=e&&"showNormField"||(c?"showNormPct":null)||f&&"showField"||null)&&(h=n.substitute({field:f&&p.getFieldLabel(f),normField:e&&p.getFieldLabel(e)},"showField"===b?"${field}":g[b]))}return h}}})},"esri/layers/clustering/GeohashAggregation":function(){define("dojo/has dojo/_base/declare dojo/_base/lang dojo/_base/array ../../kernel ../../Evented ../../geometry/Point ../../geometry/Extent ../../geometry/mathUtils ../../support/expressionUtils ../../core/timerUtils ../support/attributeUtils ./geohashUtils ./statUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w){n=n(p,{loaded:!1,started:!1,map:null,layer:null,lod:null,tolerance:null,clusterMode:null,clusterRadius:null,sortEnabled:!0,filterEnabled:!0,bufferEnabled:!0,updateEnabled:!0,clusters:null,clustersEnabled:!0,statisticInfos:null,defaults:{lod:1,tolerance:0,clusterMode:"auto",clusterRadius:80,sortEnabled:!0,filterEnabled:!0,bufferEnabled:!0,updateEnabled:!0},_eventHandles:null,_updateHandle:null,_indexHandle:null,_cellIndex:null,_globalIndex:null,_perfProfile:null,
_indexUpdated:!1,_cellSizeScaleFactor:1.5,_extentScaleFactor:1.25,_maxGeohashLength:12,_minClusterRadius:15,_levelChange:!0,_clusterFieldPrefix:"cluster_",_mapLevelChange:!1,constructor:function(a){this._update=b.hitch(this,this._update);this._indexFeatures=b.hitch(this,this._indexFeatures);this._eventHandles=[];this._globalIndex={numFeatures:null,fullExtent:null,lodStats:null};this._perfProfile={lastIndex:{total:null,numFeatures:0},lastUpdate:{cells:null,clusters:null,total:null}};this.clusters=
[];this.map=a.map;this.layer=a.layer;this.setLod(a.lod);this.setTolerance(a.tolerance);this.setClusterMode(a.clusterMode);this.setClusterRadius(a.clusterRadius);this.setSortEnabled(a.sortEnabled);this.setFilterEnabled(a.filterEnabled);this.setBufferEnabled(a.bufferEnabled);this.setUpdateEnabled(a.updateEnabled);this.setStatisticInfos(a.statisticInfos);this._load();this.loaded?this._startup():this._eventHandles.push(this.on("load",b.hitch(this,this._startup)))},destroy:function(b){this._displayFeatures(!0,
b);g.forEach(this._eventHandles,function(a){a.remove()});a.clearTimeout(this._updateHandle);a.clearTimeout(this._indexHandle);this._cellIndex=this._globalIndex=this._eventHandles=this._updateHandle=this._indexHandle=this.map=this.layer=this.clusters=null},setLod:function(a){var b=this.lod;this.lod=a||this.defaults.lod;b!==this.lod&&this.update()},setTolerance:function(a){var b=this.tolerance;this.tolerance=a||this.defaults.tolerance;b!==this.tolerance&&this.update()},setClusterMode:function(a){var b=
this.clusterMode;this.clusterMode=a||this.defaults.clusterMode;this._evalClusterParams();b!==this.clusterMode&&this.update()},setClusterRadius:function(a){var b=this.clusterRadius;this.clusterRadius=null!=a?a:this.defaults.clusterRadius;this._evalClusterParams();b!==this.clusterRadius&&this.update()},setSortEnabled:function(a){var b=this.sortEnabled;this.sortEnabled=null!=a?!!a:this.defaults.sortEnabled;b!==this.sortEnabled&&this.update()},setFilterEnabled:function(a){var b=this.filterEnabled;this.filterEnabled=
null!=a?!!a:this.defaults.filterEnabled;b!==this.filterEnabled&&this.update()},setBufferEnabled:function(a){var b=this.bufferEnabled;this.bufferEnabled=null!=a?!!a:this.defaults.bufferEnabled;b!==this.bufferEnabled&&this.update()},setUpdateEnabled:function(a){var b=this.updateEnabled;(this.updateEnabled=null!=a?!!a:this.defaults.updateEnabled)&&b!==this.updateEnabled&&(this._mapLevelChange=!0,this.update())},setStatisticInfos:function(a){this.statisticInfos=a||[];this.loaded&&this._applyStatInfos(this.statisticInfos)},
update:function(){this.loaded&&null==this._updateHandle&&(this._updateHandle=a.setTimeout(this._update,a.priority.HIGH))},isUpdateScheduled:function(){return null!=this._updateHandle},index:function(){this.loaded&&null==this._indexHandle&&(this._indexHandle=a.setTimeout(this._indexFeatures,a.priority.HIGH))},getCell:function(a){return this._cellIndex[a.length][a]},getCluster:function(a){var b;g.some(this.clusters,function(c){-1<g.indexOf(c.geohashes,a)&&(b=c);return!!b});return b},getCellsInCluster:function(a){var b=
[];g.forEach(a&&a.geohashes,function(a){(a=this.getCell(a))&&b.push(a)},this);return b},getFeaturesInCluster:function(a){var b=[];a=this.getCellsInCluster(a);g.forEach(a,function(a){Array.prototype.push.apply(b,a.features)});return b},toggleFeatureVisibility:function(a){this.index()},getCurrentLodStats:function(){var a=this._globalIndex.lodStats;return a&&a[this.lod]},getNumFeatures:function(){return this._globalIndex.numFeatures},getFullExtent:function(){var a=this._globalIndex.fullExtent;return a&&
Infinity!==a.xmin?new f(a):null},_load:function(){this._displayFeatures(!1);this._checkLoadStatus();this.map.loaded||this._eventHandles.push(this.map.on("load",b.hitch(this,this._checkLoadStatus)));this.layer.loaded||this._eventHandles.push(this.layer.on("load",b.hitch(this,this._checkLoadStatus)))},_checkLoadStatus:function(){if(this.map.loaded&&this.layer.loaded){var a;if("esriGeometryPoint"!==this.layer.geometryType)a=Error("GeohashAggregation is supported only for points");else{var b=this.map.spatialReference;
b.isWebMercator()||4326===b.wkid||(a=Error("GeohashAggregation is supported only when map spatial reference is WGS84 or WebMercator"))}a?(this.loadError=a,this.emit("load-error",{error:a})):(this.loaded=!0,this.emit("load"))}},_startup:function(){this._evalUpdateStatus();this.index();this._processExtentChange();this._eventHandles.push(this.layer.on("update-end",b.hitch(this,this.index)),this.layer.on("edits-complete",b.hitch(this,this.index)),this.layer.on("graphics-clear",b.hitch(this,this.index)),
this.layer.on("suspend",b.hitch(this,this._evalUpdateStatus)),this.layer.on("resume",b.hitch(this,this._evalUpdateStatus)),this.map.on("extent-change",b.hitch(this,this._processExtentChange)))},_evalUpdateStatus:function(){this.setUpdateEnabled(!this.layer.suspended)},_processExtentChange:function(a){this._mapLevelChange=!(!a||!a.levelChange);this._evalClusterParams();this.update()},_update:function(){this._updateHandle=null;if(this.updateEnabled){this.emit("update-start");if(this.clustersEnabled){var a=
this.map.geographicExtent;if(a){var b=this._getIntersectingCells(a),a=this._getClusters(b.cells,a);this.clusters=a.clusters;this._applyStatInfosToClusters();var b=b.profile,a=a.profile,c=b.total+a.total;b.total=this._getElapsedTime(b.total);a.total=this._getElapsedTime(a.total);var d=this._perfProfile.lastUpdate={};d.cells=b;d.clusters=a;d.total=this._getElapsedTime(c)}}else this.clusters=[],this._perfProfile.lastUpdate=null;b=this._indexUpdated;this._indexUpdated=!1;a=this._mapLevelChange;this._mapLevelChange=
!1;this.emit("update-end",{levelChange:this._levelChange,mapLevelChange:a,indexChange:b})}},_displayFeatures:function(a,b){var c=this.layer;a=!a;c.suspendGraphics(a);!1!==b&&(a?c.clearNodes():c.redraw())},_indexFeatures:function(){this._indexHandle=null;var a=this._getTime();this._initializeIndexing();var b=0,c=this._globalIndex.fullExtent;g.forEach(this.layer.graphics,function(a){if(a.visible){var d=a.geometry,e=this._getLngLat(d),f;e&&(f=d.getCacheValue("_geohash"),void 0===f&&(f=m.pointToGeohash(e),
d.setCacheValue("_geohash",f||null)));f&&(this._addGeohashToIndex(f,a,e),b++,this._updateExtent(c,e))}},this);this._applyStatInfosToIndex();this._globalIndex.numFeatures=b;for(var d=this._globalIndex.lodStats,e=1;e<=this._maxGeohashLength;e++)d[e]=this._getLODStats(e,b);this._perfProfile.lastIndex.total=this._getElapsedTime(a,this._getTime());this._perfProfile.lastIndex.numFeatures=b;this._indexUpdated=!0;this.emit("index-complete");this.started||(this.started=!0,this.emit("start"));this.update()},
_initializeIndexing:function(){this._globalIndex={numFeatures:0,fullExtent:{xmin:Infinity,ymin:Infinity,xmax:-Infinity,ymax:-Infinity},lodStats:{}};for(var a=this._cellIndex=[],b=1;b<=this._maxGeohashLength;b++)a[b]={}},_getLngLat:function(a){if(a){var b=a.getLongitude();a=a.getLatitude();a=null!=b&&null!=a?{x:b,y:a}:null}return a},_addGeohashToIndex:function(a,b,c){for(var d=this._cellIndex,e="",f=0;f<this._maxGeohashLength;f++){var e=e+a[f],g=d[e.length],h=g[e];h||(h=g[e]={count:0,centroid:{x:null,
y:null},extent:{xmin:Infinity,ymin:Infinity,xmax:-Infinity,ymax:-Infinity},features:[],geohash:e,statistics:null});this._updateItem(h,1,c,!0);h.features.push(b)}},_getLODStats:function(a,b){var c=this._cellIndex[a],d=0,e=Infinity,f=-Infinity,g=null,h;for(h in c){var k=c[h];d++;k.count<e&&(e=k.count);k.count>f&&(f=k.count)}0<d&&(g=Number((b/d).toFixed(2)));return{lod:a,count:d,min:Infinity===e?null:e,max:-Infinity===f?null:f,avg:g}},_evalClusterParams:function(){if(this.loaded&&"auto"===this.clusterMode){var a=
this._getClusterParams(this.map.getResolutionInMeters(),this.clusterRadius,this._minClusterRadius);this._levelChange=this.lod!==a.lod;this.lod=a.lod;this.tolerance=a.tolerance}},_getClusterParams:function(a,b,c){b<c&&(b=c);a=Math.ceil(a*b);b=this._getClosestLODRange(a).max;do c=this._getCellSize(b),(c=a>=this._cellSizeScaleFactor*c||1===c)||(b+=1);while(!c);c=a/this._getCellSize(b);return{lod:b,tolerance:a,multiplier:Number(c.toFixed(2))}},_getClosestLODRange:function(a){for(var b,c=this._maxGeohashLength;1<=
c;c--)if(this._getCellSize(c)>=a){b=c;break}null==b&&(b=1);a=b+1;a>this._maxGeohashLength&&(a=this._maxGeohashLength);return{min:b,max:a}},_getCellSize:function(a){a=m.getCellSizeInMeters(a);return Math.ceil(Math.min(a.width,a.height))},_sorter:function(a,b){var c=a.centroid,d=b.centroid;return a.count>b.count?-1:a.count<b.count?1:c.x>d.x?-1:c.x<d.x?1:0},_getIntersectingCells:function(a){var b=this._getTime();a=a.expand(this._extentScaleFactor);var c=m.getIntersecting(a,this.lod,this.bufferEnabled?
this.tolerance:0);a=this._getTime();var d=[],e=this.tolerance,f=this.sortEnabled;g.forEach(c,function(a){(a=this.getCell(a))&&d.push(a)},this);e&&f&&d.sort(this._sorter);c=this._getTime();return{cells:d,profile:{findCells:this._getElapsedTime(b,a),scanAndSortCells:this._getElapsedTime(a,c),total:c-b}}},_getClusters:function(a,b){var c=this._getTime(),d=[],e={},f={findCells:0};g.forEach(a,function(a,b){(a=this._createCluster(a,e,f))&&d.push(a)},this);this._markIntersecting(d,b);this.filterEnabled&&
(d=this._getIntersectingClusters(d));a=this._getTime();return{clusters:d,profile:{findCellsInCluster:this._getElapsedTime(f.findCells),total:a-c}}},_markIntersecting:function(a,b){var c=b.normalize();g.forEach(a,function(a){var b=a.centroid.x,d=a.centroid.y;a.isIntersecting=g.some(c,function(a){return b>=a.xmin&&b<=a.xmax&&d>=a.ymin&&d<=a.ymax})})},_getIntersectingClusters:function(a){return g.filter(a,function(a){return a.isIntersecting})},_createCluster:function(a,b,c){if(!b[a.geohash]){var d=[{cell:a,
distance:0}];if(this.tolerance){var e=this._getTime(),f=m.getNeighborsWithinDistance(a.centroid,this.lod,this.tolerance);c.findCells+=this._getTime()-e;g.forEach(f,function(b){if(b!==a.geohash&&(b=this.getCell(b))){var c=this._calculateDistance(a.centroid,b.centroid);c<=this.tolerance&&d.push({cell:b,distance:c})}},this)}return this._mergeCells(d,b)}},_calculateDistance:function(a,b){return e.getLength(m.geographicToWebMercator(a),m.geographicToWebMercator(b))},_mergeCells:function(a,b){var c=this._initializeCluster({},
a[0].cell.geohash);g.forEach(a,function(a){var d=a.cell,e=d.geohash;a=a.distance;var f=b[e];if(f)if(a<f.distance)this._removeCellFromCluster(e,b);else return;b[e]={cluster:c,distance:a};this._updateItem(c,d.count,d.centroid);c.geohashes.push(e)},this);return c},_removeCellFromCluster:function(a,b){var c=b[a].cluster;delete b[a];a=g.indexOf(c.geohashes,a);-1<a&&c.geohashes.splice(a,1);this._reevaluateCluster(c)},_reevaluateCluster:function(a){var b=a.geohashes;a=this._initializeCluster(a,a.primary);
g.forEach(b,function(b){var c=this.getCell(b);c&&(this._updateItem(a,c.count,c.centroid),a.geohashes.push(b))},this)},_initializeCluster:function(a,b){a.count=0;a.centroid=new l(null,null);a.geohashes=[];a.primary=b;a.statistics=null;return a},_applyStatInfos:function(a){a=this._getValidStatInfos(a);this._applyStatInfosToIndex(a);this._applyStatInfosToClusters(a)},_getValidStatInfos:function(a){var b=[];g.forEach(a,function(a){var c=a.attributeInfo;a=a.statisticType;var e="angle"===c.attributeType;
if(w.isSupportedStatisticType(a)&&(!e||"avg"===a)){var f="arithmetic"===c.rotationType;b.push({attributeCache:d.createAttributeCache(c,"type"===a),identifier:w.getStatisticId(c,a),statFunctions:w.getStatisticFunctions(a),isAngular:e,isDate:"date"===c.attributeType,isArithmetic:f})}});return b},_applyStatInfosToIndex:function(a){a=a||this._getValidStatInfos(this.statisticInfos);var b=this._cellIndex;if(b)for(var c=1;c<=this._maxGeohashLength;c++){var d=b[c],e;for(e in d)this._applyStatInfosToCell(d[e],
a)}},_applyStatInfosToCell:function(a,b){var c=this._initializeStats(a,b);g.forEach(a.features,function(a){this._calcFeatureStats(a,b,c)},this);this._summarizeStats(a,c,b)},_calcFeatureStats:function(a,b,d){a.attributes&&g.forEach(b,function(b){var e=d[b.identifier],f=b.attributeCache,f=f?a._getDataValue(f.attributeInfo,f,c):null;b.statFunctions.updateCellStat(e,f,b)})},_applyStatInfosToClusters:function(a){a=a||this._getValidStatInfos(this.statisticInfos);var b=this._clusterFieldPrefix;g.forEach(this.clusters,
function(c){var d=this._initializeStats(c,a);g.forEach(this.getCellsInCluster(c),function(b){this._calcCellStats(b,a,d)},this);this._summarizeStats(c,d,a,b);c.attributes[b+"id"]=c.primary},this)},_calcCellStats:function(a,b,c){var d=a.statistics;g.forEach(b,function(a){var b=a.identifier;a.statFunctions.updateClusterStat(c[b],d[b],a)})},_initializeStats:function(a,b){var c=a.statistics={};g.forEach(b,function(a){c[a.identifier]=a.statFunctions.initialize(a)});return c},_summarizeStats:function(a,
b,c,d){var e=a.attributes={};d=d||"";e[d+"count"]=a.count;g.forEach(c,function(a){var c=this._getStatFieldName(a,d);e[c]=a.statFunctions.summarize(b[a.identifier],a)},this)},_getStatFieldName:function(a,b){return(b||"")+a.identifier},_updateItem:function(a,b,c,d){var e=c.y,f=a.centroid,g=a.count;f.x=(g*f.x+b*c.x)/(g+b);f.y=(g*f.y+b*e)/(g+b);a.count+=b;d&&this._updateExtent(a.extent,c)},_updateExtent:function(a,b){var c=b.x;b=b.y;c<a.xmin&&(a.xmin=c);c>a.xmax&&(a.xmax=c);b<a.ymin&&(a.ymin=b);b>a.ymax&&
(a.ymax=b)},_getTime:function(){return window.performance?window.performance.now():(new Date).getTime()},_getElapsedTime:function(a,b){var c;a=null!=a&&null!=b?b-a:a;null!=a&&(c="millisecond",1E3<=a&&(a/=1E3,c="second",60<=a&&(a/=60,c="minute")),c={value:Number(a.toFixed(2)),unit:c});return c}});q("extend-esri")&&b.setObject("layers.clustering.GeohashAggregation",n,h);return n})},"esri/core/timerUtils":function(){define([],function(){function q(b){var g,f=b.length;for(g=0;g<f;g++)b[g]()}var n={LOW:1,
HIGH:2},b,g={};g[n.LOW]=[];g[n.HIGH]=[];var h=function(){clearTimeout(b);b=null;var h=g[n.HIGH];g[n.HIGH]=[];q(h);h=g[n.LOW];g[n.LOW]=[];q(h)};return{priority:n,callbackQueue:g,setTimeout:function(p,l){p=[l,g[l].push(p)-1];b||(b=setTimeout(h,0));return p},clearTimeout:function(b){b&&g[b[0]].splice(b[1],1)}}})},"esri/layers/clustering/geohashUtils":function(){define("dojo/has dojo/string dojo/_base/lang dojo/_base/array ../../kernel ../../geometry/Point ../../geometry/Extent ../../SpatialReference ../../geometry/webMercatorUtils".split(" "),
function(q,n,b,g,h,p,l,f,e){function c(a){var b=a.spatialReference;if(!b)return{x:a.x,y:a.y};var c=b.isWebMercator(),d;4326===b.wkid?d={x:a.x,y:a.y}:c&&(d={x:a.getLongitude(),y:a.getLatitude()});return d}function a(a){var b=a.spatialReference,c=!(!b||!b.isWebMercator()),d;b&&4326===b.wkid?d=new l(a.toJson()):c&&(d=e.webMercatorToGeographic(a,!0));return d}function d(a,b){b.x=p.prototype._normalizeX(a.x,f.prototype._info[4326]);b.y=a.y;return b}function m(a){a=F.decimals[a].toString(2);return n.pad(a,
F.bitsPerBase32Char,"0")}function w(a,b){var c;b=b.slice();b.splice(1,0,0);for(var d=b[0],e=b[2],f=0;f<a.length;f++)Number(a[f])?b[0]=b[1]:b[2]=b[1],c=b[1]=(b[0]+b[2])/2,d=b[0],e=b[2];return{value:c,min:d,max:e}}function t(a,b,c){var d=[];b=b.slice();b.splice(1,0,0);for(var e=b[0],f=b[2],g=0;g<c;g++)a>=b[1]?(b[0]=b[1],e=1):(b[2]=b[1],e=0),b[1]=(b[0]+b[2])/2,d.push(e),e=b[0],f=b[2];return{value:d.join(""),min:e,max:f}}function k(a){var b=a*F.bitsPerBase32Char;0===b%2?a=b/=2:(a=(b+1)/2,b-=a);return{lon:a,
lat:b}}function u(a){var b=0;a=a.split("").reverse().join("");for(var c=0;c<a.length;c++)b+=Number(a[c])*Math.pow(2,c);return F.base32[b]}function r(a,b){var c={x:a.xmin,y:a.ymax},d={x:a.xmax,y:a.ymin},e={x:a.xmax,y:a.ymax};return{sw:I.pointToGeohash({x:a.xmin,y:a.ymin},b),nw:I.pointToGeohash(c,b),se:I.pointToGeohash(d,b),ne:I.pointToGeohash(e,b)}}function y(a,b,c,d,e){var f=a;do e[f]||(e[f]=!0,d.push(f)),(a=f===b)||(f=E(f,c));while(!a)}function v(a,b,c,d){var e=r(a,b);a=[];y(e.sw,e.nw,"n",a,{});
b=[];y(e.se,e.ne,"n",b,{});for(e=0;e<a.length;e++)y(a[e],b[e],"e",c,d)}function z(a){return g.filter(a,function(a){return 180===a.xmax?!0:!1})[0]}function x(a){return g.filter(a,function(a){return-180===a.xmin?!0:!1})[0]}function A(a,b,c,d){var e=I.geographicToWebMercator(a);a={x:e.x-b,y:e.y-b};b=I.webMercatorToGeographic({x:e.x+b,y:e.y+b},!0);a=I.webMercatorToGeographic(a,!0);return new l(null!=c?c:a.x,a.y,null!=d?d:b.x,b.y)}function B(a,b,c,d){var e;a=r(a,b);var f,g;"min"===d?g=180:"max"===d&&(f=
-180);var h=f;d=g;e=I.geohashToCell(a.sw).extent;b=I.geohashToCell(a.ne).extent;a=null!=h?h:e.xmin;e=e.ymin;d=null!=d?d:b.xmax;b=b.ymax;a=A({x:a,y:e},c,f,g);c=A({x:d,y:b},c,f,g);return new l(a.xmin,a.ymin,c.xmax,c.ymax)}function C(a,b,c){var d=a,e=0;do e++,(a=d===b)||(d=E(d,c));while(!a);return e}function H(a,b){a=r(a,b);b=C(a.nw,a.ne,"e");return{rows:C(a.nw,a.sw,"s"),cols:b}}function E(a,b){var c=a.length%2,d=a.slice(-1),e=F.decimals[d];a=a.slice(0,-1);-1!=F.borders[b][c].indexOf(d)&&a&&(a=E(a,b));
return a+F.neighbors[b][c][e]}var F={base32:"0123456789bcdefghjkmnpqrstuvwxyz",decimals:function(){for(var a={},b=0;32>b;b++)a["0123456789bcdefghjkmnpqrstuvwxyz"[b]]=b;return a}(),neighbors:{n:[null,"238967debc01fg45kmstqrwxuvhjyznp"],s:[null,"bc01fg45238967deuvhjyznpkmstqrwx"],e:[null,"14365h7k9dcfesgujnmqp0r2twvyx8zb"],w:[null,"p0r21436x8zb9dcf5h7kjnmqesgutwvy"]},borders:{n:[null,"bcfguvyz"],s:[null,"0145hjnp"],e:[null,"prxz"],w:[null,"028b"]},bitsPerBase32Char:5,maxGeohashLength:12,longitudeRange:[-180,
180],latitudeRange:[-90,90]};F.neighbors.n[0]="14365h7k9dcfesgujnmqp0r2twvyx8zb";F.neighbors.s[0]="p0r21436x8zb9dcf5h7kjnmqesgutwvy";F.neighbors.e[0]="238967debc01fg45kmstqrwxuvhjyznp";F.neighbors.w[0]="bc01fg45238967deuvhjyznpkmstqrwx";F.borders.n[0]="prxz";F.borders.s[0]="028b";F.borders.e[0]="bcfguvyz";F.borders.w[0]="0145hjnp";var I={geographicToWebMercator:function(a){a=p.lngLatToXY(a.x,a.y);return{x:a[0],y:a[1]}},webMercatorToGeographic:function(a,b){a=p.xyToLngLat(a.x,a.y,b);return{x:a[0],
y:a[1]}},geohashToCell:function(a){for(var b=[],c=0;c<a.length;c++)b.push(m(a[c]));for(var b=b.join(""),c=[],d=[],e=0;e<b.length;e++)0===e%2?c.push(b[e]):d.push(b[e]);c=c.join("");d=d.join("");c=[c,d];b=w(c[0],F.longitudeRange);c=w(c[1],F.latitudeRange);return{point:{x:b.value,y:c.value},extent:{xmin:b.min,xmax:b.max,ymin:c.min,ymax:c.max},geohash:a}},pointToCell:function(a,b){var e,f;b=b||F.maxGeohashLength;if(a=c(a)){a=d(a,a);e=k(b);b=t(a.x,F.longitudeRange,e.lon);var g=t(a.y,F.latitudeRange,e.lat);
e=b.value;f=g.value;b={xmin:b.min,xmax:b.max,ymin:g.min,ymax:g.max};for(var g=[],h=Math.ceil((e.length+f.length)/F.bitsPerBase32Char),l=0,m=0,p=0;p<h*F.bitsPerBase32Char;p++){var n=0===p%2?e[l++]:f[m++];null==n&&(n=0);g.push(n)}e=g.join("");f=F.bitsPerBase32Char;g=e.length/f;h=[];for(l=0;l<g;l++)m=e.substr(l*f,f),h.push(u(m));e=h.join("");return{point:a,extent:b,geohash:e}}},geohashToPoint:function(a){return I.geohashToCell(a).point},pointToGeohash:function(a,b){return(a=I.pointToCell(a,b))&&a.geohash},
getCells:function(a){return g.map(a,function(a){return I.geohashToCell(a)})},getCellSize:function(a){var b=F.longitudeRange,c=F.latitudeRange,b=Math.abs(b[1]-b[0]),c=Math.abs(c[1]-c[0]);a=k(a||1);return{width:b/Math.pow(2,a.lon),height:c/Math.pow(2,a.lat)}},getCellSizeInMeters:function(a){a=I.getCellSize(a);var b=e.metersPerDegree;a.width*=b;a.height*=b;return a},getIntersecting:function(b,c,d){c=c||1;d=d||0;var e=[],f=a(b);if(f){d&&(f=I.expandExtent(b,c,d));b=f.normalize();var h={};g.forEach(b,function(a){v(a,
c,e,h)})}return e},countIntersecting:function(b,c,e){c=c||1;e=e||0;var f=0,g=a(b);if(g){e&&(g=I.expandExtent(b,c,e));b=g.normalize();if(2===b.length){f=z(b);g=x(b);e=H(f,c);var h=H(g,c);b=e.rows;e=e.cols+h.cols;f={x:f.xmin,y:f.ymax};g={x:g.xmax,y:g.ymax};f=d(f,{});g=d(g,{});f=I.pointToGeohash(f,c);c=I.pointToGeohash(g,c);f===c&&e--;c={rows:b,cols:e}}else c=H(b[0],c);f=c.cols*c.rows}return f},getChildren:function(a){a=a||"";var b=[],c;for(c in F.decimals)b.push(a+c);return b},getNeighbors:function(a){var b=
E(a,"n"),c=E(a,"s");return[b,E(b,"e"),E(b,"w"),c,E(c,"e"),E(c,"w"),E(a,"e"),E(a,"w")]},getExtentFromDistance:function(a,b){b=b||1E3;var d;(a=c(a))&&(d=A(a,b));return d},expandExtent:function(b,c,d){c=c||1;d=d||0;if(b=a(b)){if(d){b=b.normalize();if(2===b.length){var e=d;d=z(b);b=x(b);d=B(d,c,e,"min");b=B(b,c,e,"max");360<=d.getWidth()+b.getWidth()?(c=-180,b=180):(c=d.xmin,b=b.xmax);return new l(c,d.ymin,b,d.ymax)}return B(b[0],c,d)}return b}},getNeighborsWithinDistance:function(a,b,d){d=d||1E3;b=b||
1;var e=[];if(a=c(a)){d=A(a,d).normalize();var f={};g.forEach(d,function(a){v(a,b,e,f)})}return e}};q("extend-esri")&&b.setObject("layers.clustering.geohashUtils",I,h);return I})},"esri/layers/clustering/statUtils":function(){define(["dojo/_base/lang","../support/attributeUtils"],function(q,n){function b(b){return"number"===typeof b&&!isNaN(b)&&Infinity!==b&&-Infinity!==b}var g={sum:{initialize:function(){return{count:0,sum:null}},updateCellStat:function(g,h){b(h)&&(g.count++,g.sum+=h)},updateClusterStat:function(b,
g){g.count&&(b.count+=g.count,b.sum+=g.sum)},summarize:function(b){return b.sum}},avg:{initialize:function(b){return{count:0,sum:null,avg:null,sum_cosine:null,sum_sine:null}},updateCellStat:function(g,h,f){b(h)&&(g.count++,f.isAngular?(f.isArithmetic||(h=-1*h+90),g.sum_cosine+=Math.cos(h*Math.PI/180),g.sum_sine+=Math.sin(h*Math.PI/180)):g.sum+=h)},updateClusterStat:function(b,g,f){g.count&&(b.count+=g.count,f.isAngular?(b.sum_cosine+=g.sum_cosine,b.sum_sine+=g.sum_sine):b.sum+=g.sum)},summarize:function(b,
g){if(0<b.count){var f=b.count;g.isAngular?(f=180*Math.atan2(b.sum_sine/f,b.sum_cosine/f)/Math.PI,g.isArithmetic||(f=-1*(f-90)),b.avg=0>f?f+360:f):(b.avg=b.sum/f,g.isDate&&(b.avg=Math.ceil(b.avg)))}return b.avg}},type:{initialize:function(){return{uvInfos:{}}},updateCellStat:function(b,g){if(null==g||""===g||"string"===typeof g&&""===q.trim(g))g=null;b=b.uvInfos;null==b[g]?b[g]={count:1,value:g}:b[g].count++},updateClusterStat:function(b,g){b=b.uvInfos;g=g.uvInfos;for(var f in g){var e=g[f];null==
b[f]?b[f]={count:e.count,value:e.value}:b[f].count+=e.count}},summarize:function(b){b=b.uvInfos;var g,f=-Infinity,e;for(g in b){var c=b[g];c.count>f?(f=c.count,e=c.value):c.count===f&&(e=null)}return e}}},h={isSupportedStatisticType:function(b){return g.hasOwnProperty(b)},getStatisticFunctions:function(b){return g[b]},getStatisticId:function(b,g){var f=n.getAttributeIdSource(b);b=f&&n.getAttributeId(f)||b.field;return g+"_"+b},getClusterField:function(b,g){return"cluster_"+h.getStatisticId(b,g)},
getStatisticHash:function(b,g){g=[h.getStatisticId(b,g)];b.attributeType&&g.push(b.attributeType.toLowerCase());b.rotationType&&g.push(b.rotationType.toLowerCase());return g.join("_")}};return h})},"esri/dijit/Attribution":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/connect dojo/_base/kernel dojo/has dojo/query dojo/dom dojo/dom-attr dojo/dom-construct dojo/dom-style dojo/dom-class dojo/dom-geometry ../kernel ../lang ../SpatialReference ../geometry/webMercatorUtils ../geometry/Extent".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r){q=q(null,{declaredClass:"esri.dijit.Attribution",itemDelimiter:" | ",listClass:"esriAttributionList",itemClass:"esriAttributionItem",lastItemClass:"esriAttributionLastItem",delimiterClass:"esriAttributionDelim",constructor:function(a,b){try{n.mixin(this,a);this._attributions={};this._pendingDfds={};this._activeLayers=[];this._sharedLayers=[];this._layerHandles={};var c=this.domNode=f.byId(b),d=this.map,k="\x3cspan class\x3d'"+this.listClass+"'\x3e\x3c/span\x3e";
c&&(e.set(c,"innerHTML",k),this.listNode=h.query(".esriAttributionList",c)[0],this.itemNodes={});this._eventConnections=[g.connect(d,"onLayerAdd",this,this._onLayerAdd),g.connect(d,"onLayerRemove",this,this._onLayerRemove),g.connect(d,"onLayerSuspend",this,this._onLayerSuspend),g.connect(d,"onLayerResume",this,this._onLayerResume),g.connect(d,"onResize",this,this._adjustFocus),g.connect(d,"onExtentChange",this,this._onExtentChange)];if(d.loaded){var l=d.layerIds.concat(d.graphicsLayerIds),m,p,q=l.length;
for(p=0;p<q;p++)m=d.getLayer(l[p]),m.loaded&&this._onLayerAdd(m)}}catch(F){}},startup:function(){},destroy:function(){b.forEach(this._eventConnections,g.disconnect);c.destroy(this.listNode);var a=this._layerHandles,d;for(d in a)a[d]&&a[d].remove();this.map=this.domNode=this._eventConnections=this.listNode=this._attributions=this._pendingDfds=this.itemNodes=this._activeLayers=this._lastItem=this._sharedLayers=this._layerHandles=null},_onLayerAdd:function(a){try{var b=this._attributions,c=a.id;if(!t.isDefined(b[c])&&
a.showAttribution){if(a.hasAttributionData){var d=a.getAttributionData();this._pendingDfds[c]=1;b[c]=d;d.addBoth(n.partial(this._onAttributionLoad,this,a))}else b[c]=a.copyright||a.copyrightText||"",b[c]?(a.suspended||this._activeLayers.push(c),this._createNode(c)):this._onLayerRemove(a);-1<a.declaredClass.toLowerCase().indexOf("vetiledlayer")&&(this._layerHandles[c]=a.on("map-style-change",n.hitch(this,function(){this._onLayerRemove(a);this._onLayerAdd(a)})))}}catch(A){}},_onAttributionLoad:function(a,
b,c){var d=a._attributions,e=a._pendingDfds,f=b.id;if(e&&e[f]){delete e[f];if(!c||c instanceof Error)c="";d[f]=c?a._createIndexByLevel(c,-1!==b.declaredClass.toLowerCase().indexOf("vetiledlayer")):b.copyright||b.copyrightText||"";d[f]?(b.suspended||a._activeLayers.push(f),a._createNode(f)):a._onLayerRemove(b)}},_onLayerRemove:function(a){try{var d=a.id,e=this.itemNodes,f,g=-1;this._onLayerSuspend(a);this._layerHandles[d]&&this._layerHandles[d].remove();delete this._attributions[d];delete this._pendingDfds[d];
delete this._layerHandles[d];f=this._getGroupIndex(d);-1!==f&&(g=b.indexOf(this._sharedLayers[f],d),-1!==g&&(this._sharedLayers[f].splice(g,1),1>=this._sharedLayers[f].length&&this._sharedLayers.splice(f,1)));e[d]&&-1===g&&c.destroy(e[d]);delete e[d];this._updateLastItem()}catch(B){}},_onLayerSuspend:function(a){try{var c=a.id;if(this._attributions[c]){var d=b.indexOf(this._activeLayers,c),e=this.itemNodes[c];-1!==d&&this._activeLayers.splice(d,1);e&&this._toggleItem(e,!1,this._getGroupIndex(c))}}catch(A){}},
_adjustFocus:function(){var a=this.domNode.scrollWidth>this.domNode.clientWidth,b=d.contains(this.domNode,"esriAttributionOpen");e.set(this.domNode,"tabIndex",a||b?"0":"")},_onLayerResume:function(a){try{var c=a.id,d=this._attributions[c],f=this.itemNodes[c];if(d&&(-1===b.indexOf(this._activeLayers,c)&&this._activeLayers.push(c),f)){var g=n.isString(d)?d:this._getContributorsList(d,this.map.extent,this.map.getLevel());n.isString(d)||e.set(f,"innerHTML",g?g+this._getDelimiter():"");g&&this._toggleItem(f,
!0,this._getGroupIndex(c))}}catch(B){}},_onExtentChange:function(a,b,c,d){try{var f=this._activeLayers,g=this._attributions,h=this.itemNodes,k,l,m,p,q=f.length||0;for(p=0;p<q;p++)if(l=f[p],m=g[l],(k=h[l])&&!n.isString(m)){var r=this._getContributorsList(m,a,d?d.level:-1);e.set(k,"innerHTML",r?r+this._getDelimiter():"");this._toggleItem(k,!!r,-1)}}catch(G){}this._adjustCursorStyle()},_createNode:function(a){if(this.domNode){var b=this._checkShareInfo(a),d=b&&b.sharedWith,d=d&&this.itemNodes[d],e=this.map,
f=this._attributions[a],f=n.isString(f)?f:this._getContributorsList(f,e.extent,e.getLevel()),e=!!f&&!e.getLayer(a).suspended;d?(this.itemNodes[a]=d,this._toggleItem(d,e,b.index)):(a=this.itemNodes[a]=c.create("span",{"class":this.itemClass,innerHTML:f?f+this._getDelimiter():"",style:{display:e?"inline":"none"}},this.listNode),e&&this._setLastItem(a));this._adjustCursorStyle()}},_checkShareInfo:function(a){var c=this._attributions,d,e,f=-1,g=c[a],h;if(g&&n.isString(g)){for(e in c)if(d=c[e],e!==a&&
d&&n.isString(d)&&d.length===g.length&&d.toLowerCase()===g.toLowerCase()){h=e;break}c=this._sharedLayers;d=c.length;if(h){for(e=0;e<d;e++)if(g=c[e],-1!==b.indexOf(g,h)){f=e;g.push(a);break}-1===f&&(f=c.push([h,a])-1)}}return-1<f?{index:f,sharedWith:h}:null},_getGroupIndex:function(a){var c=this._sharedLayers,d,e=c.length,f=-1;for(d=0;d<e;d++)if(-1!==b.indexOf(c[d],a)){f=d;break}return f},_getDelimiter:function(){var a=this.itemDelimiter;return a?"\x3cspan class\x3d'"+this.delimiterClass+"'\x3e"+a+
"\x3c/span\x3e":""},_toggleItem:function(c,d,e){if(-1<e&&!d){e=this._sharedLayers[e];var f,g=e.length,h=this._activeLayers;for(f=0;f<g;f++)if(-1!==b.indexOf(h,e[f]))return}a.set(c,"display",d?"inline":"none");this._updateLastItem()},_updateLastItem:function(){var b=this.listNode.childNodes,c;c=b.length;var d;if(c)for(--c;0<=c;c--)if(d=b[c],"none"!==a.get(d,"display")){this._setLastItem(d);break}this._adjustCursorStyle()},_setLastItem:function(a){var b=this.itemClass,c=this.lastItemClass;this._lastItem&&
d.replace(this._lastItem,b,c);a&&(d.replace(a,c,b),this._lastItem=a)},_createIndexByLevel:function(a,b){a=a.contributors;var c,d,e,f,g=a?a.length:0,h,l,m=new k(4326),n={},p;for(f=0;f<g;f++)for(c=a[f],l=(d=c.coverageAreas)?d.length:0,h=0;h<l;h++)for(e=d[h],p=e.bbox,p={extent:u.geographicToWebMercator(new r(p[1],p[0],p[3],p[2],m)),attribution:c.attribution||"",zoomMin:e.zoomMin-(b&&e.zoomMin?1:0),zoomMax:e.zoomMax-(b&&e.zoomMax?1:0),score:t.isDefined(e.score)?e.score:100,objectId:f},e=p.zoomMin;e<=
p.zoomMax;e++)n[e]=n[e]||[],n[e].push(p);return n},_getContributorsList:function(a,b,c){var d="";if(b&&t.isDefined(c)&&-1<c){a=a[c];c=b.getCenter().normalize();for(var e=a?a.length:0,f=[],g={},d=0;d<e;d++)b=a[d],!g[b.objectId]&&b.extent.contains(c)&&(g[b.objectId]=1,f.push(b));f.sort(function(a,b){return b.score-a.score||a.objectId-b.objectId});e=f.length;for(d=0;d<e;d++)f[d]=f[d].attribution;d=f.join(", ")}return d},_adjustCursorStyle:function(){var b=m.position(this.listNode.parentNode,!0).h;d.contains(this.listNode.parentNode,
"esriAttributionOpen")?(d.remove(this.listNode.parentNode,"esriAttributionOpen"),b>m.position(this.listNode.parentNode,!0).h?(a.set(this.listNode.parentNode,"cursor","pointer"),d.add(this.listNode.parentNode,"esriAttributionOpen")):a.set(this.listNode.parentNode,"cursor","default")):(d.add(this.listNode.parentNode,"esriAttributionOpen"),b<m.position(this.listNode.parentNode,!0).h?a.set(this.listNode.parentNode,"cursor","pointer"):a.set(this.listNode.parentNode,"cursor","default"),d.remove(this.listNode.parentNode,
"esriAttributionOpen"));this._adjustFocus()}});p("extend-esri")&&n.setObject("dijit.Attribution",q,w);return q})},"esri/arcgis/utils":function(){define("require dojo/_base/lang dojo/_base/array dojo/_base/connect dojo/_base/Deferred dojo/_base/json dojo/_base/url dojo/on dojo/DeferredList dojo/dom-construct dojo/sniff dojox/gfx/_base ../kernel ../config ../Color ../lang ../request ../SpatialReference ../map ../urlUtils ../geometry/ScreenPoint ../geometry/Extent ../geometry/webMercatorUtils ../symbols/jsonUtils ../renderers/jsonUtils ../dijit/PopupTemplate ../dijit/Popup ../tasks/query ../tasks/GeometryService ../layers/ArcGISTiledMapServiceLayer ../layers/FeatureLayer dojo/i18n!../nls/jsapi".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t,k,u,r,y,v,z,x,A,B,C,H,E,F,I,X,N,G){function Q(a){return u({url:D.arcgisUrl+"/"+a.itemId+"/data",content:{f:"json"},callbackParamName:"callback"},{disableIdentityLookup:!0,_preLookup:!0})}function M(a,b){var c={f:"json"};b&&(c.token=b);return u({url:a,content:c,callbackParamName:"callback"},{disableIdentityLookup:!0})}function U(a){!a.layerDefinition||a.layerDefinition.drawingInfo&&a.layerDefinition.drawingInfo.labelingInfo||(a.showLabels=!1);a.itemProperties.layerDefinition&&
(a.layerDefinition?(a.layerDefinition.drawingInfo||(a.layerDefinition.drawingInfo=a.itemProperties.layerDefinition.drawingInfo),k.isDefined(a.layerDefinition.definitionExpression)||(a.layerDefinition.definitionExpression=a.itemProperties.layerDefinition.definitionExpression),k.isDefined(a.layerDefinition.minScale)||(a.layerDefinition.minScale=a.itemProperties.layerDefinition.minScale),k.isDefined(a.layerDefinition.maxScale)||(a.layerDefinition.maxScale=a.itemProperties.layerDefinition.maxScale)):
a.layerDefinition=a.itemProperties.layerDefinition);!a.itemProperties.popupInfo||a.popupInfo||a.disablePopup||(a.popupInfo=a.itemProperties.popupInfo);k.isDefined(a.itemProperties.showLabels)&&!k.isDefined(a.showLabels)&&(a.showLabels=a.itemProperties.showLabels);k.isDefined(a.itemProperties.showLegend)&&!k.isDefined(a.showLegend)&&(a.showLegend=a.itemProperties.showLegend);k.isDefined(a.itemProperties.refreshInterval)&&!k.isDefined(a.refreshInterval)&&(a.refreshInterval=a.itemProperties.refreshInterval)}
function O(a){U(a);a.itemProperties.layerDefinition&&a.layerDefinition&&(!k.isDefined(a.layerDefinition.maximumTrackPoints)&&k.isDefined(a.itemProperties.layerDefinition.maximumTrackPoints)&&(a.layerDefinition.maximumTrackPoints=a.itemProperties.layerDefinition.maximumTrackPoints),!a.layerDefinition.definitionGeometry&&a.itemProperties.layerDefinition.definitionGeometry&&(a.layerDefinition.definitionGeometry=a.itemProperties.layerDefinition.definitionGeometry));a.itemProperties.purgeOptions&&!a.purgeOptions&&
(a.purgeOptions=a.itemProperties.purgeOptions)}function L(a,c){var d=new h;c=a.itemData;var f=[],g=[];b.forEach(c.operationalLayers,function(a){if(a.itemId&&!a.type){var b=a.url.toLowerCase();-1<b.indexOf("/featureserver")||-1<b.indexOf("/mapserver/")?(g.push(a),f.push(Q(a))):-1<b.indexOf("/mapserver")&&-1===b.indexOf("/mapserver/")&&(!a.layers||!k.isDefined(a.minScale)&&!k.isDefined(a.maxScale))?(g.push(a),f.push(Q(a))):-1<b.indexOf("/imageserver")&&!k.isDefined(a.minScale)&&!k.isDefined(a.maxScale)?
(g.push(a),f.push(Q(a))):-1<b.indexOf("/streamserver")&&(g.push(a),f.push(Q(a)))}});c.baseMap&&c.baseMap.baseMapLayers&&b.forEach(c.baseMap.baseMapLayers,function(a){a.itemId&&"VectorTileLayer"!==a.layerType&&(g.push(a),f.push(Q(a)))});if(0<f.length){var l={};(new e(f)).addCallback(function(c){b.forEach(g,function(a,d){if((d=c[d][1])&&!(d instanceof Error)&&(l[a.itemId]=d,!a.type)){var e=a.url.toLowerCase();(-1<e.indexOf("/featureserver")||-1<e.indexOf("/mapserver/"))&&d.layers?b.forEach(d.layers,
function(b){var c="/featureserver/"+b.id;(c=e.match(c+"$")==c)||(c="/mapserver/"+b.id,c=e.match(c+"$")==c);c&&(a.itemProperties=b,U(a))}):-1<e.indexOf("/streamserver")?(a.itemProperties=d,O(a)):-1<e.indexOf("/mapserver")?(d.layers&&!a.layers&&(a.layers=d.layers),k.isDefined(d.minScale)&&!k.isDefined(a.minScale)&&(a.minScale=d.minScale),k.isDefined(d.maxScale)&&!k.isDefined(a.maxScale)&&(a.maxScale=d.maxScale),k.isDefined(d.refreshInterval)&&!k.isDefined(a.refreshInterval)&&(a.refreshInterval=d.refreshInterval),
d.visibleLayers&&!a.visibleLayers&&(a.visibleLayers=d.visibleLayers)):-1<e.indexOf("/imageserver")&&(k.isDefined(d.minScale)&&!k.isDefined(a.minScale)&&(a.minScale=d.minScale),k.isDefined(d.maxScale)&&!k.isDefined(a.maxScale)&&(a.maxScale=d.maxScale),k.isDefined(d.refreshInterval)&&!k.isDefined(a.refreshInterval)&&(a.refreshInterval=d.refreshInterval),!d.popupInfo||a.popupInfo||a.disablePopup||(a.popupInfo=d.popupInfo),d.renderingRule&&!a.renderingRule&&(a.renderingRule=d.renderingRule,d.renderingRule.functionName&&
(a.renderingRule.rasterFunction=d.renderingRule.functionName)),d.bandIds&&!a.bandIds&&(a.bandIds=d.bandIds),d.mosaicRule&&!a.mosaicRule&&(a.mosaicRule=d.mosaicRule),d.format&&!a.format&&(a.format=d.format),k.isDefined(d.compressionQuality)&&!k.isDefined(a.compressionQuality)&&(a.compressionQuality=d.compressionQuality),!d.layerDefinition||!d.layerDefinition.definitionExpression||k.isDefined(a.layerDefinition)&&k.isDefined(a.layerDefinition.definitionExpression)||(a.layerDefinition=a.layerDefinition||
{},a.layerDefinition.definitionExpression=d.layerDefinition.definitionExpression))}});a.relatedItemsData=l;d.callback(a)})}else d.callback(a);return d}function ba(a,b){var c=new h,d=a.itemData,e=d.baseMap.baseMapLayers[0];if("BingMapsAerial"===e.type||"BingMapsRoad"===e.type||"BingMapsHybrid"===e.type)if(e.portalUrl&&m.id)delete b.bingMapsKey,m.id.checkSignInStatus(v.urlToObject(D.arcgisUrl).path).then(n.hitch(null,function(a,b,c,d,f){M(e.portalUrl,f.token).then(n.hitch(null,V,a,b,c,d),n.hitch(null,
Y,a,b,c,d))},a,b,d,c),n.hitch(null,function(a,b,c,d,f){M(e.portalUrl).then(n.hitch(null,V,a,b,c,d),n.hitch(null,Y,a,b,c,d))},a,b,d,c));else if(b.bingMapsKey){var f=new Va({bingMapsKey:b.bingMapsKey,mapStyle:Va.MAP_STYLE_AERIAL});g.connect(f,"onLoad",n.hitch(this,function(){c.callback([a,b])}));g.connect(f,"onError",function(f){delete b.bingMapsKey;a.itemData=oa(d);e=a.itemData.baseMap.baseMapLayers[0];e.errors=[];e.errors.push({message:"The owner of the application has not provided a valid Bing Key for the Bing Map it includes. Switching to Esri layers."});
c.callback([a,b])})}else a.itemData=oa(d),e=a.itemData.baseMap.baseMapLayers[0],e.errors=[],e.errors.push({message:"The owner of the application has not provided a Bing Key for the Bing Map it includes. Switching to Esri layers."}),c.callback([a,b]);else c.callback([a,b]);return c}function P(a){var b=new h,c,d;a=a.itemData;var e=a.baseMap&&a.baseMap.baseMapLayers;if(db&&!db.supported())for(a=0;a<e.length;a++){var f=e[a];if(!f.isReference){"VectorTileLayer"===f.layerType&&(c=f.itemId,d=a);break}}c?
ma(c,!1).addBoth(function(a){var c=/^https?:\/\/basemaps(dev)?\.arcgis\.com\/arcgis\/rest\/services\/World_Basemap\/VectorTileServer/i;a&&a.item&&c.test(a.item.url)&&(e[d]={id:"FB_"+f.id,layerType:"ArcGISTiledMapServiceLayer",opacity:"opacity"in f?f.opacity:1,visibility:"visibility"in f?f.visibility:!0,url:"https://services.arcgisonline.com/arcgis/rest/services/World_Street_Map/MapServer"});b.resolve()}):b.resolve();return b}function V(a,b,c,d,e){e.bingKey?(b.bingMapsKey=e.bingKey,e=new Va({bingMapsKey:b.bingMapsKey,
mapStyle:Va.MAP_STYLE_AERIAL}),g.connect(e,"onLoad",n.hitch(this,function(){d.callback([a,b])})),g.connect(e,"onError",function(e){delete b.bingMapsKey;a.itemData=oa(c);e=a.itemData.baseMap.baseMapLayers[0];e.errors=[];e.errors.push({message:"The owner of the map has not provided a valid Bing Key for the Bing Map it includes. Switching to Esri layers."});d.callback([a,b])})):Y(a,b,c,d)}function Y(a,b,c,d){delete b.bingMapsKey;a.itemData=oa(c);c=a.itemData.baseMap.baseMapLayers[0];c.errors=[];c.errors.push({message:"The owner of the map has not provided a Bing Key for the Bing Map it includes. Switching to Esri layers."});
d.callback([a,b])}function oa(a){a.baseMap="BingMapsAerial"===a.baseMap.baseMapLayers[0].type?{title:"Imagery",baseMapLayers:[{id:"World_Imagery_2017",visibility:!0,opacity:1,url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"}]}:"BingMapsRoad"===a.baseMap.baseMapLayers[0].type?{title:"Streets",baseMapLayers:[{id:"World_Street_Map_8421",opacity:1,visibility:!0,url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"}]}:{title:"Imagery with Labels",
baseMapLayers:[{id:"World_Imagery_6611",opacity:1,visibility:!0,url:"https://services.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer"},{id:"World_Boundaries_and_Places_1145",isReference:!0,opacity:1,visibility:!0,url:"https://services.arcgisonline.com/ArcGIS/rest/services/Reference/World_Boundaries_and_Places/MapServer"}]};return a}function ea(a,c,d,e){var f=a.dynamicLayerInfos||a.layerInfos,g=c.layers;if(g&&f)if(e.usePopupManager){var h;b.forEach(f,function(a){var b=a.id;if(!a.subLayerIds)for(a=
0;a<g.length;a++){var c=g[a];if(c.id===b&&c.popupInfo){h||(h={});h[b]={infoTemplate:new d(c.popupInfo),layerUrl:c.layerUrl};break}}});h&&a.setInfoTemplates(h)}else{var l=[],m=[],n=[],p=[],q=[],r=[];b.forEach(f,function(c){var d=c.id;if(!c.subLayerIds&&-1!==b.indexOf(a.visibleLayers,d))for(c=0;c<g.length;c++){var e=g[c];if(e.id===d){m.push(d);l.push(e.popupInfo);n.push(e.layerUrl||"");e.layerDefinition&&e.layerDefinition.definitionExpression?p.push(e.layerDefinition.definitionExpression):p.push("");
q.push(k.isDefined(e.minScale)?e.minScale:null);r.push(k.isDefined(e.maxScale)?e.maxScale:null);break}}});l.length&&(a.__popups=l,a.__popupIds=m,a.__popupUrls=n,a.__popupWhereClauses=p,a.__popupMinScales=q,a.__popupMaxScales=r,a.__resourceInfo=c.resourceInfo)}}function ca(a){if(!a)return!1;var b=(new l(D.arcgisUrl)).authority;return-1!==a.indexOf(".arcgis.com/")||-1!==a.indexOf(b)}function ga(a){return a?-1!==a.indexOf("/services.arcgisonline.com/")||-1!==a.indexOf("/server.arcgisonline.com/"):!1}
function ha(a){"https:"===location.protocol&&(ca(a)||ga(a))&&(a=a.replace("http:","https:"));return a}function pa(a,c,d){var e=[],f;a.displayLevels||(e=b.map(a.resourceInfo.tileInfo.lods,function(a){return a.level}));a.exclusionAreas&&(f=n.clone(a.exclusionAreas),f=b.map(f,function(a){a.geometry=new x(a.geometry);return a}));e=new X(ha(a.url),{resourceInfo:a.resourceInfo,opacity:a.opacity,visible:a.visibility,displayLevels:a.displayLevels||e,id:a.id,minScale:a.minScale,maxScale:a.maxScale,refreshInterval:a.refreshInterval,
exclusionAreas:f});d.ignorePopups||ea(e,a,c,d);return e}function ja(a,b){if(!a||!b||0===b.length)return[];b=","+b+",";var c=[],d,e=",";for(d=0;d<a.length;d++)if(null!==a[d].subLayerIds){if(-1===b.indexOf(","+a[d].id+",")||-1<e.indexOf(","+a[d].id+","))e+=a[d].subLayerIds.toString()+","}else-1<b.indexOf(","+a[d].id+",")&&-1===e.indexOf(","+a[d].id+",")&&c.push(a[d].id);return c}function ya(a,c,d){var e=new Ra;e.format="png24";a.resourceInfo&&a.resourceInfo.supportedImageFormatTypes&&-1<a.resourceInfo.supportedImageFormatTypes.indexOf("PNG32")&&
(e.format="png32");var e=new da(ha(a.url),{resourceInfo:a.resourceInfo,opacity:a.opacity,visible:a.visibility,id:a.id,imageParameters:e,minScale:a.minScale,maxScale:a.maxScale,refreshInterval:a.refreshInterval}),f=a.visibleLayers;if(!a.visibleLayers){var g="";b.forEach(e.layerInfos,function(a){a.defaultVisibility&&(g+=(0<g.length?",":"")+a.id)});f=g}if(a.layers&&0<a.layers.length){var h=[],k=[],l,m=[],p,q;b.forEach(a.layers,function(c){var d=c.layerDefinition;d&&d.definitionExpression&&(h[c.id]=d.definitionExpression);
if(d&&d.source){l=null;q=d.source;if("mapLayer"===q.type){var e=b.filter(a.resourceInfo.layers,function(a){return a.id===q.mapLayerId});e.length&&(l=n.mixin(e[0],c))}else l=n.mixin({},c);l&&(l.source=q,delete l.popupInfo,l=new K(l),a.visibleLayers&&(e="string"==typeof a.visibleLayers?a.visibleLayers.split(","):a.visibleLayers,-1<b.indexOf(e,c.id)?l.defaultVisibility=!0:l.defaultVisibility=!1),k.push(l))}d&&null!=d.transparency&&(e=d.drawingInfo||{},null==e.transparency&&(e.transparency=d.transparency,
d.drawingInfo=e));d&&d.source&&d.drawingInfo&&(p=new tb(d.drawingInfo),m[c.id]=p)},this);0<h.length&&e.setLayerDefinitions(h);0<k.length?(e.setDynamicLayerInfos(k,!0),0<m.length&&e.setLayerDrawingOptions(m,!0)):(f=ja(e.layerInfos,f),e.setVisibleLayers(f))}else f=ja(e.layerInfos,f),e.setVisibleLayers(f);d.ignorePopups||ea(e,a,c,d);return e}function sa(a,b,c){var d=new Ya;d.bandIds=a.bandIds;null!=a.format&&(d.format=a.format,null!=a.compressionQuality&&(d.compressionQuality=a.compressionQuality));
if(a.renderingRule&&a.renderingRule.rasterFunction){var e=new vb(a.renderingRule);d.renderingRule=e}a.mosaicRule&&(e=new nb(a.mosaicRule),d.mosaicRule=e);k.isDefined(a.noData)&&(d.noData=a.noData);k.isDefined(a.noDataInterpretation)&&(d.noDataInterpretation=a.noDataInterpretation);k.isDefined(a.interpolation)&&(d.interpolation=a.interpolation);e=a.layerType?"ArcGISImageServiceVectorLayer"===a.layerType:!1;k.isDefined(a.layerType)||(e=a.resourceInfo.hasMultidimensions&&("esriImageServiceDataTypeVector-UV"===
a.resourceInfo.serviceDataType||"esriImageServiceDataTypeVector-MagDir"===a.resourceInfo.serviceDataType));d={resourceInfo:a.resourceInfo,opacity:a.opacity,visible:a.visibility,id:a.id,imageServiceParameters:d,minScale:a.minScale,maxScale:a.maxScale,refreshInterval:a.refreshInterval};d=e?new la(ha(a.url),d):new fa(ha(a.url),d);a.layerDefinition&&(a.layerDefinition.drawingInfo&&a.layerDefinition.drawingInfo.renderer&&(e=C.fromJson(a.layerDefinition.drawingInfo.renderer),d.setRenderer(e)),a.layerDefinition.definitionExpression&&
d.setDefinitionExpression(a.layerDefinition.definitionExpression,!0));!c.ignorePopups&&a.popupInfo&&d.setInfoTemplate(new b(a.popupInfo));return d}function wa(a,c,d){var e=[102113,102100,3857],f=d||new r(c[0].layerObject.fullExtent.spatialReference),g=new r(a.resourceInfo.fullExtent.spatialReference);return f.wkt==g.wkt&&(f.wkid==g.wkid||k.isDefined(f.latestWkid)&&f.latestWkid==g.wkid||k.isDefined(g.latestWkid)&&f.wkid==g.latestWkid||k.isDefined(f.latestWkid)&&f.latestWkid==g.latestWkid)||f.wkid&&
g.wkid&&b.some(e,function(a){return a===g.wkid})&&b.some(e,function(a){return a===f.wkid})?!0:!1}function Ba(a,b,c){if(!b[0].layerObject.tileInfo)return!1;a=a.resourceInfo.tileInfo;b=b[0].layerObject.tileInfo;c=c.width>c.height?c.width:c.height;for(var d=!1,e=!1,f=0;f<a.lods.length;f++){for(var g=a.lods[f].scale/a.dpi,h=0;h<b.lods.length;h++){var k=b.lods[h].scale/b.dpi;if(Math.abs(k-g)/k<1/c)if(d){e=!0;break}else d=!0}if(e)break}return e||d&&(1===a.lods.length||1===b.lods.length)?!0:!1}function Ca(a,
c,e,h,l,q){var t,u,y=e._clazz;if("OpenStreetMap"===a.type)t=new ub({id:a.id,opacity:a.opacity,visible:null!==a.visibility&&void 0!==a.visibility?a.visibility:!0});else if("WFS"===a.type)h={customParameters:a.wfsInfo.customParameters,geometryType:a.layerDefinition.geometryType,id:a.id,labelingInfo:a.layerDefinition.drawingInfo.labelingInfo,maxFeatures:a.wfsInfo.maxFeatures,mode:a.mode,name:a.wfsInfo.name,showLabels:!0,swapXY:a.wfsInfo.swapXY,title:a.title,url:a.url,version:a.wfsInfo.version,visible:a.visibility,
wkid:a.layerDefinition.spatialReference.wkid},t=new Bb,t.fromJson(h,function(){k.isDefined(a.opacity)&&t.setOpacity(a.opacity);k.isDefined(a.visibility)&&t.setVisibility(a.visibility);(a.minScale||a.maxScale)&&t.setScaleRange(a.minScale,a.maxScale);t.renderer=C.fromJson(a.layerDefinition.drawingInfo.renderer);!e.ignorePopups&&a.popupInfo&&t.setInfoTemplate(new y(a.popupInfo));t.emit("fromJsonComplete")});else if("WMS"===a.type){var w=[],A=[];b.forEach(a.layers,function(a){A.push(new Cb({name:a.name,
title:a.title,legendURL:a.legendURL,queryable:a.queryable,showPopup:a.showPopup}));w.push(a.name)},this);a.visibleLayers&&(w=a.visibleLayers);h=new x(a.extent[0][0],a.extent[0][1],a.extent[1][0],a.extent[1][1],new r({wkid:4326}));h={customLayerParameters:a.customLayerParameters,customParameters:a.customParameters,extent:h,layerInfos:A,version:a.version,maxWidth:a.maxWidth,maxHeight:a.maxHeight,featureInfoFormat:a.featureInfoFormat,getFeatureInfoURL:a.featureInfoUrl,getMapURL:a.mapUrl,spatialReferences:a.spatialReferences,
title:a.title,copyright:a.copyright,minScale:a.minScale||0,maxScale:a.maxScale||0,format:a.format};t=new pb(a.url,{id:a.id,visibleLayers:w,format:"png",transparent:a.firstLayer?!1:!0,opacity:a.opacity,visible:null!==a.visibility?a.visibility:!0,resourceInfo:h,refreshInterval:a.refreshInterval});t.spatialReference.wkid=h.spatialReferences[0]}else if("KML"===a.type){u=a.url;if(m.id){var z=m.id.findCredential(v.urlToObject(D.arcgisUrl).path);z&&(c=D.arcgisUrl.substring(D.arcgisUrl.indexOf("//")+2,D.arcgisUrl.indexOf("/",
D.arcgisUrl.indexOf("//")+3)),l=c.split("."),l=l[l.length-2]+"."+l[l.length-1],q=u.indexOf(l),-1<q&&(u="https://"+c+u.substring(q+l.length),u+="?token\x3d"+z.token))}t=new sb(u,{id:a.id,visible:null!==a.visibility?a.visibility:!0,outSR:h,refreshInterval:a.refreshInterval});g.connect(t,"onLoad",function(){(a.opacity||0===a.opacity)&&t.setOpacity(a.opacity);k.isDefined(a.minScale)&&k.isDefined(a.maxScale)&&t.setScaleRange(a.minScale,a.maxScale);a.visibleFolders&&b.forEach(t.folders,function(c){-1<b.indexOf(a.visibleFolders,
c.id)?t.setFolderVisibility(c,!0):t.setFolderVisibility(c,!1)},this)})}else if("WebTiledLayer"===a.type){if(t=new lb(a.templateUrl,{id:a.id,visible:null!==a.visibility?a.visibility:!0,opacity:a.opacity,copyright:a.copyright,fullExtent:a.fullExtent&&new x(a.fullExtent),initialExtent:a.fullExtent&&new x(a.fullExtent),subDomains:a.subDomains,tileInfo:a.tileInfo?new wb(a.tileInfo):null,refreshInterval:a.refreshInterval,wmtsInfo:a.wmtsInfo}),k.isDefined(a.minScale)||k.isDefined(a.maxScale))t.loaded?t.setScaleRange(a.minScale,
a.maxScale):g.connect(t,"onLoad",function(){t.setScaleRange(a.minScale,a.maxScale)})}else if("GeoRSS"===a.type)t=new rb(a.url,{id:a.id,opacity:a.opacity,outSpatialReference:h,refreshInterval:a.refreshInterval}),g.connect(t,"onLoad",function(){!1===a.visibility&&t.hide();k.isDefined(a.minScale)&&k.isDefined(a.maxScale)&&t.setScaleRange(a.minScale,a.maxScale);var c=t.getFeatureLayers();b.forEach(c,function(b){a.pointSymbol&&"esriGeometryPoint"===b.geometryType?(b.renderer.symbol=B.fromJson(a.pointSymbol),
1===c.length&&(t.pointSymbol=B.fromJson(a.pointSymbol))):a.lineSymbol&&"esriGeometryPolyline"===b.geometryType?(b.renderer.symbol=B.fromJson(a.lineSymbol),1===c.length&&(t.polylineSymbol=B.fromJson(a.lineSymbol))):a.polygonSymbol&&"esriGeometryPolygon"===b.geometryType&&(b.renderer.symbol=B.fromJson(a.polygonSymbol),1===c.length&&(t.polygonSymbol=B.fromJson(a.polygonSymbol)))})});else if("CSV"==a.type&&a.url)h={layerDefinition:a.layerDefinition,columnDelimiter:a.columnDelimiter,id:a.id?a.id:null,
visible:null!==a.visibility?a.visibility:!0,opacity:a.opacity,refreshInterval:a.refreshInterval},a.locationInfo&&(h.latitudeFieldName=a.locationInfo.latitudeFieldName,h.longitudeFieldName=a.locationInfo.longitudeFieldName),e.ignorePopups||(h.infoTemplate=new H(a.popupInfo?a.popupInfo:W.generateDefaultPopupInfo(a))),t=new Z(a.url,h);else if("VectorTileLayer"===a.layerType&&a.styleUrl)t=new db(a.styleUrl,{id:a.id,minScale:a.minScale,maxScale:a.maxScale,opacity:a.opacity,visible:a.visibility});else if(a.layerDefinition&&
!a.url)h=p.fromJson(p.toJson(a)),delete h.id,delete h.opacity,delete h.visibility,t=new N(h,{id:a.id,opacity:a.opacity,visible:a.visibility,outFields:["*"],autoGeneralize:!0}),!e.ignorePopups&&h.popupInfo&&t.setInfoTemplate(new y(h.popupInfo)),Aa(t);else if("BingMapsAerial"===a.type||"BingMapsRoad"===a.type||"BingMapsHybrid"===a.type)e.bingMapsKey?(h=Va.MAP_STYLE_AERIAL_WITH_LABELS,"BingMapsAerial"===a.type?h=Va.MAP_STYLE_AERIAL:"BingMapsRoad"===a.type&&(h=Va.MAP_STYLE_ROAD),t=new Va({bingMapsKey:e.bingMapsKey,
mapStyle:h,opacity:a.opacity,id:a.id}),g.connect(t,"onError",n.hitch(this,function(a){a.errors=a.errors||[];a.errors.push({message:"This application does not have a valid Bing Key for the Bing layer that is included in this map. [type:"+a.type+"]"})},a))):(a.errors=a.errors||[],a.errors.push({message:"This application does not provide a Bing Key for the Bing layer that is included in this map. [type:"+a.type+"]"}));else if(a.resourceInfo&&a.resourceInfo.mapName)t=!0===a.resourceInfo.singleFusedMapCache&&
(a.baseMapLayer||wa(a,c,h)&&Ba(a,l,q))?pa(a,y,e):ya(a,y,e);else if(a.resourceInfo&&a.resourceInfo.pixelSizeX)t=!0===a.resourceInfo.singleFusedMapCache&&(a.baseMapLayer||wa(a,c,h)&&Ba(a,l,q))?pa(a,y,e):sa(a,y,e);else if(a.resourceInfo&&"Feature Layer"===a.resourceInfo.type){a.capabilities&&(a.resourceInfo.capabilities=a.capabilities);var E;!1===e.editable?E=!1:e.privileges&&-1===b.indexOf(e.privileges,"features:user:edit")&&m.id&&m.id.findCredential(a.url)&&(E=!1);t=new N(ha(a.url),{resourceInfo:a.resourceInfo,
opacity:a.opacity,visible:a.visibility,id:a.id,mode:a.mode===N.MODE_SELECTION?N.MODE_SELECTION:N.MODE_AUTO,editable:E,outFields:["*"],autoGeneralize:!0,refreshInterval:a.refreshInterval});!e.ignorePopups&&a.popupInfo&&t.setInfoTemplate(new y(a.popupInfo));a.layerDefinition&&(a.layerDefinition.drawingInfo&&a.layerDefinition.drawingInfo.renderer&&(h=C.fromJson(a.layerDefinition.drawingInfo.renderer),h.isMaxInclusive=!0,t.setRenderer(h)),a.layerDefinition.drawingInfo&&a.layerDefinition.drawingInfo.labelingInfo&&
(h=b.map(a.layerDefinition.drawingInfo.labelingInfo,function(a){return new Za(a)}),t.setLabelingInfo(h)),a.layerDefinition.definitionExpression&&t.setDefinitionExpression(a.layerDefinition.definitionExpression),k.isDefined(a.layerDefinition.minScale)&&t.setMinScale(a.layerDefinition.minScale),k.isDefined(a.layerDefinition.maxScale)&&t.setMaxScale(a.layerDefinition.maxScale));Aa(t)}else a.resourceInfo&&a.resourceInfo.streamUrls&&(h={resourceInfo:a.resourceInfo,opacity:a.opacity,visible:a.visibility,
id:a.id},a.layerDefinition&&(z=a.layerDefinition.drawingInfo,a.layerDefinition.definitionGeometry&&(u=u||{},u.geometry=a.layerDefinition.definitionGeometry),k.isDefined(a.layerDefinition.definitionExpression)&&(u=u||{},u.where=a.layerDefinition.definitionExpression),k.isDefined(a.layerDefinition.maximumTrackPoints)&&(h.maximumTrackPoints=a.layerDefinition.maximumTrackPoints)),u&&(h.filter=u),a.purgeOptions&&(h.purgeOptions=a.purgeOptions),t=new cb(ha(a.url),h),z&&z.renderer&&(h=z.renderer,t.setRenderer(C.fromJson(h))),
!e.ignorePopups&&a.popupInfo&&t.setInfoTemplate(new y(a.popupInfo)),a.layerDefinition&&(k.isDefined(a.layerDefinition.minScale)&&t.setMinScale(a.layerDefinition.minScale),k.isDefined(a.layerDefinition.maxScale)&&t.setMaxScale(a.layerDefinition.maxScale)),f.once(t,"error",function(b){a.errors.push({message:"Error loading stream layer. Check websocket url"})}));t&&(t.arcgisProps={title:a.title},a.baseMapLayer&&(a.isReference?(t.attr("data-reference",!0),t._basemapGalleryLayerType="reference"):t._basemapGalleryLayerType=
"basemap"),t instanceof N&&a.layerDefinition&&a.layerDefinition.featureReduction&&"cluster"===a.layerDefinition.featureReduction.type&&(h=a.layerDefinition.featureReduction,h.clusterSize&&(h.clusterSize=d.pt2px(h.clusterSize)),h.clusterRadius&&(h.clusterRadius=d.pt2px(h.clusterRadius)),h.popupInfo&&(h.infoTemplate=new H(h.popupInfo),delete h.popupInfo),t.setFeatureReduction(h)));return t}function ta(a,c,d,e,f){b.forEach(a,function(b){b.layerObject=Ca(b,a,c,d,e,f)});var g=b.filter(a,function(a){return!a.isReference}),
h=b.filter(a,function(a){return!!a.isReference});return a=g.concat(h)}function ra(a){var b=null;a=a[0];a.url&&!a.type?a.resourceInfo.spatialReference&&(b=new r,a.resourceInfo.spatialReference.wkid&&(b.wkid=a.resourceInfo.spatialReference.wkid),a.resourceInfo.spatialReference.wkt&&(b.wkt=a.resourceInfo.spatialReference.wkt)):a.type&&(-1<a.type.indexOf("BingMaps")||"OpenStreetMap"==a.type?b=new r({wkid:102100}):"WMS"==a.type&&(b=new r({wkid:a.spatialReferences[0]})));return b}function va(a,c,d,e,f,
g,h,k){b.forEach(c,function(b){b.url&&!b.type&&(b.resourceInfo=a[b.deferredsPos][1],delete b.deferredsPos)});g=g||ra(c);c=ta(c,d,g,h,k);f.callback(c);return f}function Aa(a){!window.CanvasRenderingContext2D&&a.renderer&&"esri.renderer.HeatmapRenderer"===a.renderer.declaredClass&&a.setRenderer(C.fromJson({type:"simple",symbol:{color:[77,77,77,255],size:6,angle:0,xoffset:0,yoffset:0,type:"esriSMS",style:"esriSMSCircle",outline:{color:[255,255,255,255],width:.75,type:"esriSLS",style:"esriSLSSolid"}}}))}
function qa(a,b){var c=ha(a);return u({url:c,content:{f:"json"},callbackParamName:"callback",error:function(a,d){a.message=a.message?a.message+(" [url:"+c+"]"):"[url:"+c+"]";b.push(a);w.defaults.io.errorHandler(a,d)}})}function S(a){var b=D.arcgisUrl+"/"+a.itemId+"/data";return u({url:b,content:{f:"json"},callbackParamName:"callback",error:function(c,d){c.message=c.message?c.message+(" [url:"+b+"]"):"[url:"+b+"]";a.errors=a.errors||[];a.errors.push(c);w.defaults.io.errorHandler(c,d)}})}function ka(a,
c,d){var e=new h;if(!(d.featureCollection&&d.featureCollection.layers||d.layers))return console.log("Invalid Feature Collection item data [item id: "+a.itemId+"]: ",d),a.errors=a.errors||[],a.errors.push({message:"Invalid Feature Collection item data. [item id: "+a.itemId+"]"}),e.errback(),e;d.layers&&(d.featureCollection={layers:d.layers},delete d.layers,k.isDefined(d.showLegend)&&(d.featureCollection.showLegend=d.showLegend,delete d.showLegend));Pa(a,d.featureCollection,c).then(function(c){d.featureCollection=
c;a.featureCollection&&a.featureCollection.layers?b.forEach(d.featureCollection.layers,function(b,c){c=a.featureCollection.layers[c];c.popupInfo||c.layerDefinition?c.layerDefinition?(k.isDefined(c.layerDefinition.minScale)&&k.isDefined(c.layerDefinition.maxScale)&&(c.layerDefinition.minScale!==b.layerDefinition.minScale||c.layerDefinition.maxScale!==b.layerDefinition.maxScale)&&(delete b.layerDefinition.minScale,delete b.layerDefinition.maxScale),c.layerDefinition.drawingInfo&&p.toJson(c.layerDefinition.drawingInfo)!==
p.toJson(b.layerDefinition.drawingInfo)&&delete b.layerDefinition.drawingInfo,c.layerDefinition.showLegend!==b.layerDefinition.showLegend&&delete b.layerDefinition.showLegend,c.layerDefinition=n.mixin(c.layerDefinition,b.layerDefinition)):c.layerDefinition=b.layerDefinition:(c.popupInfo=b.popupInfo,c.layerDefinition=b.layerDefinition);c.featureSet=b.featureSet;c.nextObjectId=b.nextObjectId}):(a.featureCollection=a.featureCollection||{},a.featureCollection=n.mixin(a.featureCollection,d.featureCollection));
e.callback(a)});return e}function Pa(a,c,d){var f=new h;q(["./csv"],function(g){var h=[];b.forEach(c.layers,function(a){a.featureSet&&a.featureSet.features&&a.featureSet.features.length&&a.featureSet.features[0].geometry&&a.featureSet.features[0].geometry.spatialReference&&(a.deferredsPos=h.length,h.push(g.projectFeatureCollection(a,d,a.featureSet.features[0].geometry.spatialReference)))});(new e(h)).addCallback(function(){b.forEach(c.layers,function(b){k.isDefined(b.deferredsPos)&&(h[b.deferredsPos].results&&
h[b.deferredsPos].results.length?b=h[b.deferredsPos].results[0]:(console.log("Errors projecting feature collection. ["+a.title+" - "+b.layerDefinition.name+"]"),b.errors=b.errors||[],b.errors.push({message:"Errors projecting feature collection. ["+a.title+" - "+b.layerDefinition.name+"]"})),delete b.deferredsPos)});f.callback(c)})});return f}function Ma(a,c,d,g,k){var l=new h,m=new h,p=[],r;b.forEach(a.operationalLayers,function(a){a.itemId&&"Feature Collection"==a.type&&p.push(S(a).then(n.hitch(null,
ka,a,d)))});0===p.length?Na(a,c,d,g,m,k):(r=new e(p),r.addCallback(function(b){Na(a,c,d,g,m,k)}));m.then(function(a){p=[];b.forEach(a,function(a){var b;a=a.layerObject;a instanceof N&&!a.loaded&&!a.loadError?(b=new h,f.once(a,"load, error",function(){b.callback(a)}),p.push(b)):a&&"esri.layers.WFSLayer"===a.declaredClass&&!a.loadError&&(b=new h,f.once(a,"fromJsonComplete, error",function(c){b.callback(a)}),p.push(b))});if(p.length){var c=new h;r=new e(p);r.addCallback(function(){c.callback(a)});return c.promise}return a}).then(function(a){var c=
[];b.forEach(a,function(a){var b=a.layerObject;b instanceof N?b.loaded&&b.labelingInfo&&(a.showLabels||b._collection)&&c.push(b):b&&"esri.layers.WFSLayer"===b.declaredClass&&b.loaded&&b.labelingInfo&&c.push(b)});c.length?q(["../layers/LabelLayer"],function(d){var e=new d;b.forEach(c,function(a){e.addFeatureLayer(a)});a.push({layerObject:e});l.callback(a)}):l.callback(a)});return l}function Na(a,c,d,f,g,h){var k=[],l=[],m=[];b.forEach(a.operationalLayers,function(a,c){if(a.featureCollection&&a.featureCollection.layers){var d=
a.featureCollection.layers.length;b.forEach(a.featureCollection.layers,function(e,f){var g=!0;a.visibleLayers&&-1==b.indexOf(a.visibleLayers,f)&&(g=!1);e.visibility=a.visibility&&g;e.opacity=a.opacity;e.id=(a.id||"operational"+c)+"_"+f;a.title&&(e.title=1!==d&&e.layerDefinition.name&&a.title!==e.layerDefinition.name?a.title+" - "+e.layerDefinition.name:a.title);m.push(e)},this)}else m.push(a)});b.forEach(a.baseMap.baseMapLayers,function(a,b){a.baseMapLayer=!0;a.id=a.id||"base"+b;k.push(a)});b.forEach(m,
function(a,b){a.id=a.id||"operational"+b;k.push(a)});b.forEach(k,function(a){a.url&&!a.type&&(a.deferredsPos=l.length,a.errors=a.errors||[],l.push(qa(a.url,a.errors)))});0===l.length?(d=d||ra(k),k=ta(k,c,d,f,h),g.callback(k)):(new e(l)).addCallback(function(a){va(a,k,c,l,g,d,f,h)});return g}function Da(a,c,d,e){var f=a.minScale,g=a.maxScale;if(10.1>=d.version&&c)for(a=c.length-1;0<=a;a--){if(c[a].id==e)if(0==f&&0<c[a].minScale?f=c[a].minScale:0<f&&0==c[a].minScale?f=d.minScale:0<f&&0<c[a].minScale&&
(f=Math.min(f,c[a].minScale)),g=Math.max(d.maxScale||0,c[a].maxScale||0),d.setScaleRange(f,g),-1<c[a].parentLayerId)e=c[a].parentLayerId;else break}else 10.1<d.version&&(b.forEach(a.layerInfos,function(a){a.id==e&&(0==f&&0<a.minScale?f=a.minScale:0<f&&0==a.minScale||0<f&&0<a.minScale&&(f=Math.min(f,a.minScale)),g=Math.max(g||0,a.maxScale||0))}),d.setScaleRange(f,g))}function Fa(a,c,d,e){var f=a.url,h=a.__popupIds,l=a.__popupUrls,m=a.__popupWhereClauses,p=a.__popupMinScales,q=a.__popupMaxScales,r=
a.__resourceInfo,t=[];b.forEach(a.__popups,function(e,n){if(e){var u,v=[];b.forEach(e.fieldInfos,function(a){"shape"!==a.fieldName.toLowerCase()&&v.push(a.fieldName)});if(a.dynamicLayerInfos&&0<a.dynamicLayerInfos.length){var x=b.filter(a.dynamicLayerInfos,function(a){return h[n]==a.id})[0].source;u=new N(f+"/dynamicLayer",{id:a.id+"_"+h[n],source:x,outFields:v,mode:N.MODE_SELECTION,infoTemplate:e&&new d(e),drawMode:!1,visible:a.visible,autoGeneralize:!0});var y=function(b,d){0<m[b].length&&d.setDefinitionExpression(m[b]);
if(k.isDefined(p[b])||k.isDefined(q[b]))if(k.isDefined(a.minScale)||k.isDefined(a.maxScale)){var e=a.minScale,f=a.maxScale;0==e&&0<p[b]?e=p[b]:0<e&&0==p[b]||0<e&&0<p[b]&&(e=Math.min(e,p[b]));f=Math.max(f||0,q[b]||0);d.setScaleRange(e,f)}else d.setScaleRange(p[b],q[b]);else Da(a,c||r.layers,d,h[b])};u.loaded?y(n,u):g.connect(u,"onLoad",function(a){y(n,u)})}else{var w=null,A=f+"/"+h[n];if(l[n].length)A=l[n];else if(c)for(x=0;x<c.length;x++)if(c[x].id===h[n]){w=c[x];break}u=new N(ha(A),{id:a.id+"_"+
h[n],outFields:v,mode:N.MODE_SELECTION,infoTemplate:e&&new d(e),drawMode:!1,visible:a.visible,resourceInfo:w,autoGeneralize:!0});u.loaded?(0<m[n].length&&u.setDefinitionExpression(m[n]),Da(a,c||r.layers,u,h[n])):g.connect(u,"onLoad",function(b){0<m[n].length&&u.setDefinitionExpression(m[n]);Da(a,c||r.layers,b,h[n])})}t.push(u)}});0<t.length&&(g.connect(a,"onVisibilityChange",n.hitch(this,function(a,c){b.forEach(a,function(a){c?a.show():a.hide()})},t)),g.connect(e,"onLayerRemove",n.hitch(this,function(a,
c,d){a.id===d.id&&b.forEach(c,function(a){e.removeLayer(a)})},a,t)));delete a.__popups;delete a.__popupIds;delete a.__popupUrls;delete a.__popupWhereClauses;delete a.__popupMinScales;delete a.__popupMaxScales;delete a.__resourceInfo;return t}function Ea(a){return u({url:ha(a.url+"/layers"),content:{f:"json"},callbackParamName:"callback",error:function(){}})}function Qa(a,c,d){var f=[];b.forEach(a,function(a){var b=a.__popups;b&&1<b.length&&10<=a.version&&(a.__deferredsPos=f.length,f.push(Ea(a)))});
var g=[];0<f.length?(new e(f)).addCallback(function(e){b.forEach(a,function(a){a.__popups&&0<a.__popups.length&&(a.__deferredsPos||0===a.__deferredsPos?(g=g.concat(Fa(a,e[a.__deferredsPos][1].layers,d,c)),delete a.__deferredsPos):g=g.concat(Fa(a,null,d,c)))});c.addLayers(g)}):(b.forEach(a,function(a){a.__popups&&0<a.__popups.length&&(g=g.concat(Fa(a,null,d,c)))}),c.addLayers(g))}function Ha(a){b.forEach(a,function(a){var c=a.layer;c.toJson&&(a=c.toJson(),a.featureSet&&c.name&&-1<c.name.indexOf("Text")&&
b.forEach(a.featureSet.features,function(a,b){a.attributes.TEXT&&(b=c.graphics[b],b.symbol.setText(a.attributes.TEXT),a.symbol.horizontalAlignment&&(b.symbol.align=a.symbol.horizontalAlignment),b.setSymbol(b.symbol),b.setAttributes(a.attributes))},this))})}function Oa(a){var c=6;b.forEach(a,function(a){if(a=a.renderer)"esri.renderer.SimpleRenderer"===a.declaredClass?((a=a.symbol)&&a.xoffset&&(c=Math.max(c,Math.abs(a.xoffset))),a&&a.yoffset&&(c=Math.max(c,Math.abs(a.yoffset)))):"esri.renderer.UniqueValueRenderer"!==
a.declaredClass&&"esri.renderer.ClassBreaksRenderer"!==a.declaredClass||b.forEach(a.infos,function(a){(a=a.symbol)&&a.xoffset&&(c=Math.max(c,Math.abs(a.xoffset)));a&&a.yoffset&&(c=Math.max(c,Math.abs(a.yoffset)))})});return c}function R(a){var c=this,d=c.infoWindow,e=a.graphic;if(c.loaded){d.hide();d.clearFeatures();var f=[];b.forEach(c.graphicsLayerIds,function(a){(a=c.getLayer(a))&&a instanceof N&&a.loaded&&a.visible&&(a.clearSelection(),a.infoTemplate&&!a.suspended&&f.push(a))});b.forEach(c.layerIds,
function(a){(a=c.getLayer(a))&&-1!==a.declaredClass.indexOf("ArcGISImageServiceLayer")&&a.loaded&&a.visible&&a.infoTemplate&&f.push(a)});e=e&&e.getInfoTemplate()?e:null;if(f.length||e){var g=Oa(f),k=a.screenPoint,l=c.toMap(new z(k.x-g,k.y+g)),g=c.toMap(new z(k.x+g,k.y-g)),m=new x(l.x,l.y,g.x,g.y,c.spatialReference),n=new F;n.geometry=m;n.timeExtent=c.timeExtent;var p=!0,l=b.map(f,function(c){c=c&&c.isFeatureReductionActive&&c.isFeatureReductionActive()?c.getFeatureReductionLayer():c;var d;if(-1!==
c.declaredClass.indexOf("ArcGISImageServiceLayer"))n.geometry=a.mapPoint,p=!1,d=c.queryVisibleRasters(n,{rasterAttributeTableFieldPrefix:"Raster.",returnDomainValues:!0}),d.addCallback(function(){return c.getVisibleRasters()});else if("function"===typeof c.selectFeatures)d=c.selectFeatures(n),d.addCallback(function(){return c.getSelectedFeatures()});else{d=new h;var e=b.filter(c.graphics,function(a){return a&&a.visible&&m.intersects(a.geometry)});d.resolve(e)}return d});e&&(g=new h,g.callback([e]),
l.splice(0,0,g));if(!b.some(l,function(a){return-1===a.fired})){var q=e?1:0;b.forEach(f,function(a){q=-1!==a.declaredClass.indexOf("ArcGISImageServiceLayer")?q+a.getVisibleRasters().length:q+a.getSelectedFeatures().length});if(!q)return}d.setFeatures(l);d.show(a.mapPoint,{closestFirst:p})}}}function Ia(a,b){var d=b.mapOptions||{},e;d.infoWindow||(e=new E({visibleWhenEmpty:!1},c.create("div")),d.infoWindow=e);k.isDefined(d.showInfoWindowOnClick)||b.usePopupManager||(d.showInfoWindowOnClick=!1);a=new y(a,
d);g.connect(a,"onLayersAddResult",Ha);return a}function ua(a,c,d,e,f,h){var k,l,m,n;e.map?(k=e.map,l=e.clickEventHandle,m=e.clickEventListener,n=e.errors):(k=Ia(e,f),f.ignorePopups||f.disableClickBehavior||f.usePopupManager||(l=g.connect(k,"onClick",R),m=R));k.addLayers(a);f.ignorePopups||f.usePopupManager||Qa(a,k,f._clazz);var p=n||[];b.forEach(c,function(a){a.errors&&(p=p.concat(a.errors))},this);k.loaded?h.callback({map:k,itemInfo:d,errors:p,clickEventHandle:l,clickEventListener:m}):g.connect(k,
"onLoad",function(){h.callback({map:k,itemInfo:d,errors:p,clickEventHandle:l,clickEventListener:m})})}function aa(a,c,d,e,f){var g=[];b.forEach(f,function(a){n.isArray(a.layerObject)?b.forEach(a.layerObject,function(a){g.push(a)}):g.push(a.layerObject)});if("BingMapsAerial"===f[0].type||"BingMapsRoad"===f[0].type||"BingMapsHybrid"===f[0].type)var h=setInterval(function(){if(f[0].layerObject&&f[0].layerObject.loaded)clearInterval(h),Sa(a,c,d,e,f,g);else if(f[0].errors){clearInterval(h);var b="";f[0].errors&&
f[0].errors.length&&(b=" ("+f[0].errors[0].message+")");e.errback(Error(G.arcgis.utils.baseLayerError+b))}},10);else if(!g[0]&&f[0].baseMapLayer){var k="";f[0].errors&&f[0].errors.length&&(k=" ("+f[0].errors[0].message+")");e.errback(Error(G.arcgis.utils.baseLayerError+k))}else Sa(a,c,d,e,f,g)}function Sa(a,c,d,e,f,g){try{var h=d.mapOptions||{};d.mapOptions=h;var l=a.item,m=a.itemData;!h.backgroundColor&&m.background&&m.background.color&&null!=m.background.color[0]&&(h.backgroundColor=t.toDojoColor(m.background.color));
g=b.filter(g,k.isDefined);if(l)if(l.extent&&l.extent.length)if(h.extent)ua(g,f,a,c,d,e);else{var n=new x(l.extent[0][0],l.extent[0][1],l.extent[1][0],l.extent[1][1],new r({wkid:4326})),p=g[0].spatialReference;4326===p.wkid?(h.extent=n,ua(g,f,a,c,d,e)):102100===p.wkid||102113===p.wkid||3857===p.wkid?(n.xmin=Math.max(n.xmin,-180),n.xmax=Math.min(n.xmax,180),n.ymin=Math.max(n.ymin,-89.99),n.ymax=Math.min(n.ymax,89.99),h.extent=A.geographicToWebMercator(n),ua(g,f,a,c,d,e)):d.geometryServiceURL||w.defaults.geometryService?
(d.geometryServiceURL?new I(d.geometryServiceURL):w.defaults.geometryService).project([n],p,function(b){b=b[0];h.extent=h.extent||b;ua(g,f,a,c,d,e)},function(){ua(g,f,a,c,d,e)}):e.errback(Error(G.arcgis.utils.geometryServiceError))}else ua(g,f,a,c,d,e);else ua(g,f,a,c,d,e)}catch(Ja){e.errback(Ja)}}function Ta(a){var c=[];b.forEach(a.operationalLayers,function(a){a.featureCollection?c.push({featureCollection:a.featureCollection,visibility:a.visibility,title:a.title}):a.layerObject&&c.push({layer:a.layerObject,
visibility:a.visibility,title:a.title})});return c}function ia(a){var c=[],d=a.baseMap.baseMapLayers;a.operationalLayers&&(d=d.concat(a.operationalLayers));b.forEach(d,function(a){var d={};if(a.featureCollection&&"CSV"!==a.type)!0===a.featureCollection.showLegend&&b.forEach(a.featureCollection.layers,function(b){if(!1!==b.showLegend){var e=b.layerObject.renderer;d={layer:b.layerObject,title:a.title,defaultSymbol:e&&e.defaultSymbol&&e.defaultLabel?!0:!1};1<a.featureCollection.layers.length&&(d.title+=
" - "+b.layerDefinition.name);c.push(d)}});else if(a.baseMapLayer&&!0===a.showLegend&&a.layerObject||!a.baseMapLayer&&!1!==a.showLegend&&a.layerObject&&!(a.layerObject instanceof N&&a.layerObject.mode===N.MODE_SELECTION)){var e=a.layerObject.renderer,f=a.layerObject.declaredClass,e=!e||e&&e.defaultSymbol&&e.defaultLabel?!0:!1;if(10.1>a.layerObject.version&&("esri.layers.ArcGISDynamicMapServiceLayer"===f||"esri.layers.ArcGISTiledMapServiceLayer"===f)||"esri.layers.ArcGISImageServiceLayer"===f)e=!0;
d={layer:a.layerObject,title:a.title,defaultSymbol:e};a.layers&&(f=b.map(b.filter(a.layers,function(a){return!1===a.showLegend}),function(a){return a.id}),f.length&&(d.hideLayers=f));c.push(d)}});return c}function hb(a,c){function d(a,c){b.forEach(a,function(a,b){switch(a){case "../layers/ArcGISDynamicMapServiceLayer":da=c[b];break;case "../layers/ArcGISImageServiceLayer":fa=c[b];break;case "../layers/ArcGISImageServiceVectorLayer":la=c[b];break;case "./csv":W=c[b];break;case "../layers/CSVLayer":Z=
c[b];break;case "../layers/DynamicLayerInfo":K=c[b];break;case "../layers/GeoRSSLayer":rb=c[b];break;case "../layers/ImageParameters":Ra=c[b];break;case "../layers/ImageServiceParameters":Ya=c[b];break;case "../layers/KMLLayer":sb=c[b];break;case "../layers/LabelClass":Za=c[b];break;case "../layers/LayerDrawingOptions":tb=c[b];break;case "../layers/MosaicRule":nb=c[b];break;case "../layers/OpenStreetMapLayer":ub=c[b];break;case "../layers/RasterFunction":vb=c[b];break;case "../layers/StreamLayer":cb=
c[b];break;case "../layers/TileInfo":wb=c[b];break;case "../layers/VectorTileLayer":db=c[b];break;case "../virtualearth/VETiledLayer":Va=c[b];break;case "../layers/WebTiledLayer":lb=c[b];break;case "../layers/WFSLayer":Bb=c[b];break;case "../layers/WMSLayer":pb=c[b];break;case "../layers/WMSLayerInfo":Cb=c[b]}})}var e=new h;a=a.itemData;c=[];a.baseMap&&a.baseMap.baseMapLayers&&(c=c.concat(a.baseMap.baseMapLayers));a.operationalLayers&&(c=c.concat(a.operationalLayers));a=b.map(c,function(a){return a&&
a.layerType});var f=[],g=[];c=!1;for(var k=0;k<a.length;k++){switch(a[k]){case "ArcGISFeatureLayer":-1===b.indexOf(f,"../layers/LabelClass")&&f.push("../layers/LabelClass");break;case "ArcGISImageServiceLayer":case "ArcGISTiledImageServiceLayer":-1===b.indexOf(f,"../layers/ArcGISImageServiceLayer")&&(f.push("../layers/ArcGISImageServiceLayer"),g.push("../layers/ImageServiceParameters"),g.push("../layers/MosaicRule"),g.push("../layers/RasterFunction"));break;case "ArcGISImageServiceVectorLayer":-1===
b.indexOf(f,"../layers/ArcGISImageServiceVectorLayer")&&(f.push("../layers/ArcGISImageServiceVectorLayer"),g.push("../layers/ImageServiceParameters"),g.push("../layers/MosaicRule"),g.push("../layers/RasterFunction"));break;case "ArcGISMapServiceLayer":case "ArcGISTiledMapServiceLayer":-1===b.indexOf(f,"../layers/ArcGISDynamicMapServiceLayer")&&(f.push("../layers/ArcGISDynamicMapServiceLayer"),g.push("../layers/DynamicLayerInfo"),g.push("../layers/ImageParameters"),g.push("../layers/LayerDrawingOptions"));
break;case "ArcGISStreamLayer":-1===b.indexOf(f,"../layers/StreamLayer")&&f.push("../layers/StreamLayer");break;case "BingMapsAerial":case "BingMapsHybrid":case "BingMapsRoad":-1===b.indexOf(f,"../virtualearth/VETiledLayer")&&f.push("../virtualearth/VETiledLayer");break;case "CSV":-1===b.indexOf(f,"../layers/CSVLayer")&&(f.push("../layers/CSVLayer"),g.push("./csv"));break;case "GeoRSS":-1===b.indexOf(f,"../layers/GeoRSSLayer")&&f.push("../layers/GeoRSSLayer");break;case "KML":-1===b.indexOf(f,"../layers/KMLLayer")&&
f.push("../layers/KMLLayer");break;case "OpenStreetMap":-1===b.indexOf(f,"../layers/OpenStreetMapLayer")&&f.push("../layers/OpenStreetMapLayer");break;case "VectorTileLayer":-1===b.indexOf(f,"../layers/VectorTileLayer")&&f.push("../layers/VectorTileLayer");break;case "WebTiledLayer":-1===b.indexOf(f,"../layers/WebTiledLayer")&&(f.push("../layers/WebTiledLayer"),g.push("../layers/TileInfo"));break;case "WFS":-1===b.indexOf(f,"../layers/WFSLayer")&&f.push("../layers/WFSLayer");break;case "WMS":-1===
b.indexOf(f,"../layers/WMSLayer")&&(f.push("../layers/WMSLayer"),g.push("../layers/WMSLayerInfo"));break;default:c=!0}if(c)break}c&&(f=Gb,g=ab);f.length?q(f,function(){d(f,arguments);g.length?q(g,function(){d(g,arguments);e.resolve()}):e.resolve()}):e.resolve();return e}function J(a,c,d,e){var f=e.itemData;f.baseMap&&f.baseMap.baseMapLayers&&f.baseMap.baseMapLayers.length&&(f.baseMap.baseMapLayers[0].firstLayer=!0);var g=c.layerMixins,k=g&&g.length;if(k){var l=function(a){for(var b=0;b<k;b++){var c=
g[b];if(c.mixin)if(c.hasOwnProperty("id")){if(a.id===c.id){n.mixin(a,c.mixin);break}}else if(a.url===c.url){n.mixin(a,c.mixin);break}}};b.forEach(f.baseMap&&f.baseMap.baseMapLayers,l);b.forEach(f.operationalLayers,l)}hb(e,c).then(function(){return P(e,c)}).then(function(){return ba(e,c)}).then(function(c){var e=c[0],f=c[1];if(e.itemData.operationalLayers&&0!==e.itemData.operationalLayers.length){var g=new h,k=e.itemData.baseMap.baseMapLayers.slice(),l=b.filter(e.itemData.baseMap.baseMapLayers,function(a){return!a.isReference});
c={item:e.item,itemData:{baseMap:{baseMapLayers:l}}};e.itemData.baseMap.baseMapLayers=b.filter(e.itemData.baseMap.baseMapLayers,function(a){return a.isReference});L(c,f).addCallback(function(b){Ma(b.itemData,f).addCallback(n.hitch(null,aa,b,a,f,g))});g.then(function(a){L(e,f).addCallback(function(b){Ma(b.itemData,f,a.map.spatialReference,l,a.map).addCallback(function(c){b.itemData.baseMap.baseMapLayers=k;aa(b,a,f,d,c)})})},n.hitch(d,d.errback))}else L(e,f).addCallback(function(b){Ma(b.itemData,f).addCallback(n.hitch(null,
aa,b,a,f,d))})})}function ma(a,b){"undefined"===typeof b&&(b=!0);D._arcgisUrl&&0<D._arcgisUrl.length&&(D.arcgisUrl=D._arcgisUrl);var c=D.arcgisUrl+"/"+a,d={},e=new h;u({url:c,content:{f:"json"},callbackParamName:"callback",load:function(a){d.item=a;b?u({url:c+"/data",content:{f:"json"},callbackParamName:"callback",load:function(a){d.itemData=a;e.callback(d)},error:function(a){e.errback(a)}}):e.callback(d)},error:function(a){e.errback(a)}});return e}var D,da,fa,la,W,Z,K,rb,Ra,Ya,sb,Za,tb,nb,ub,vb,
cb,wb,db,Va,lb,Bb,pb,Cb,Gb="../layers/ArcGISDynamicMapServiceLayer ../layers/ArcGISImageServiceLayer ../layers/ArcGISImageServiceVectorLayer ../layers/CSVLayer ../layers/GeoRSSLayer ../layers/KMLLayer ../layers/LabelClass ../layers/OpenStreetMapLayer ../layers/StreamLayer ../layers/VectorTileLayer ../virtualearth/VETiledLayer ../layers/WebTiledLayer ../layers/WFSLayer ../layers/WMSLayer".split(" "),ab="./csv ../layers/DynamicLayerInfo ../layers/ImageParameters ../layers/ImageServiceParameters ../layers/LayerDrawingOptions ../layers/MosaicRule ../layers/RasterFunction ../layers/TileInfo ../layers/WMSLayerInfo".split(" ");
D={arcgisUrl:v.getProtocolForWebResource()+"//www.arcgis.com/sharing/rest/content/items",getItem:ma,createMap:function(a,b,c){var d=new h;c=c||{};var e=c.infoTemplateClass;c._clazz=e&&(n.isObject(e)?e:n.getObject(e))||H;n.isString(a)?ma(a).addCallback(n.hitch(null,J,b,c,d)).addErrback(n.hitch(d,d.errback)):J(b,c,d,a);return d},getLayerList:function(a){return a&&a.itemInfo&&a.itemInfo.itemData?Ta(a.itemInfo.itemData):[]},getLegendLayers:function(a){return a&&a.itemInfo&&a.itemInfo.itemData?ia(a.itemInfo.itemData):
[]},_arcgisUrl:null,_getItemProps:L,_getItemData:Q,_getBingKey:M,_portalUrlResponse:V,_portalUrlFailure:Y,_processFSItemProperties:U,_processSSItemProperties:O,_getLayers:Ma,_preBuildLayerObjects:va,_buildLayerObjects:ta,_preCreateMap:aa,_getMapSR:ra,_createMap:ua,_addSelectionLayers:Qa,_createSelectionFeatureLayers:Fa,_getServiceInfo:qa,_getFeatureCollectionItem:S,_mergeFeatureCollectionItem:ka,_projectFeatureCollection:Pa,_getLayersInfo:Ea,_initLayer:Ca,_loadAsCached:pa,_loadAsDynamic:ya,_processPopups:ea,
_onLayersAddResult:Ha,_sameSpatialReferenceAsBasemap:wa,_sameTilingSchemeAsBasemap:Ba,_showPopup:R,_calculateClickTolerance:Oa,_getVisibleFeatureLayers:ja,_updateLayerScaleInfo:Da,_checkUrl:ha,_isHostedService:ca,_isAgolService:ga,_getLegendLayers:ia};n.setObject("arcgis.utils",D,m);return D})},"esri/tasks/GeometryService":function(){define("dojo/_base/declare dojo/_base/lang dojo/_base/array dojo/_base/json dojo/_base/Deferred dojo/has ../kernel ../request ../deferredUtils ./Task ../geometry/Extent ../geometry/Polyline ../geometry/Polygon ../geometry/Multipoint ../geometry/jsonUtils".split(" "),
function(q,n,b,g,h,p,l,f,e,c,a,d,m,w,t){q=q(c,{declaredClass:"esri.tasks.GeometryService",_eventMap:{"areas-and-lengths-complete":["result"],"auto-complete-complete":["geometries"],"buffer-complete":["geometries"],"convex-hull-complete":["geometry"],"cut-complete":["result"],"densify-complete":["geometries"],"difference-complete":["geometries"],"distance-complete":["distance"],"generalize-complete":["geometries"],"intersect-complete":["geometries"],"label-points-complete":["geometries"],"lengths-complete":["result"],
"offset-complete":["geometries"],"project-complete":["geometries"],"relation-complete":["relations"],"reshape-complete":["geometry"],"simplify-complete":["geometries"],"trim-extend-complete":["geometries"],"union-complete":["geometry"]},constructor:function(a){a=n.hitch;this._projectHandler=a(this,this._projectHandler);this._simplifyHandler=a(this,this._simplifyHandler);this._bufferHandler=a(this,this._bufferHandler);this._areasAndLengthsHandler=a(this,this._areasAndLengthsHandler);this._lengthsHandler=
a(this,this._lengthsHandler);this._labelPointsHandler=a(this,this._labelPointsHandler);this._relationHandler=a(this,this._relationHandler);this._convexHullHandler=a(this,this._convexHullHandler);this._unionHandler=a(this,this._unionHandler);this._autoCompleteHandler=a(this,this._autoCompleteHandler);this._reshapeHandler=a(this,this._reshapeHandler);this._cutHandler=a(this,this._cutHandler);this._intersectHandler=a(this,this._intersectHandler);this._differenceHandler=a(this,this._differenceHandler);
this._trimExtendHandler=a(this,this._trimExtendHandler);this._densifyHandler=a(this,this._densifyHandler);this._generalizeHandler=a(this,this._densifyHandler);this._offsetHandler=a(this,this._offsetHandler);this._distanceHandler=a(this,this._distanceHandler);this._toGeoCoordinateHandler=a(this,this._toGeoCoordinateHandler);this._fromGeoCoordinateHandler=a(this,this._fromGeoCoordinateHandler);this.registerConnectEvents()},_encodeGeometries:function(a){var b=[],c,d=a.length;for(c=0;c<d;c++)b.push(a[c].toJson());
return{geometryType:t.getJsonType(a[0]),geometries:b}},_decodeGeometries:function(a,c,d){var e=t.getGeometryType(c);a=a.geometries;var f=[],g={spatialReference:d.toJson()},h=n.mixin;b.forEach(a,function(a,b){f[b]=new e(h(a,g))});return f},_toProjectGeometry:function(b){var c=b.spatialReference.toJson();return b instanceof a?new m({rings:[[[b.xmin,b.ymin],[b.xmin,b.ymax],[b.xmax,b.ymax],[b.xmax,b.ymin],[b.xmin,b.ymin]]],spatialReference:c}):new d({paths:[[].concat(b.points)],spatialReference:c})},
_fromProjectedGeometry:function(b,c,d){return"esriGeometryEnvelope"===c?(b=b.rings[0],new a(b[0][0],b[0][1],b[2][0],b[2][1],d)):new w({points:b.paths[0],spatialReference:d.toJson()})},project:function(a,b,c,d){var k=n.mixin({},this._url.query,{f:"json"}),l;a.geometries?(d=c,c=b,b=a.outSR,l=a.geometries[0],k=n.mixin(k,a.toJson())):(l=a[0],k=n.mixin(k,{outSR:b.wkid||g.toJson(b.toJson()),inSR:l.spatialReference.wkid||g.toJson(l.spatialReference.toJson()),geometries:g.toJson(this._encodeGeometries(a))}));
var m=t.getJsonType(l),p=this._projectHandler,q=this._errorHandler,r=new h(e._dfdCanceller);r._pendingDfd=f({url:this._url.path+"/project",content:k,callbackParamName:"callback",load:function(a,e){p(a,e,m,b,c,d,r)},error:function(a){q(a,d,r)}});return r},_projectHandler:function(a,b,c,d,e,f,g){try{var h=this._decodeGeometries(a,c,d);this._successHandler([h],"onProjectComplete",e,g)}catch(B){this._errorHandler(B,f,g)}},onProjectComplete:function(){},simplify:function(a,b,c){var d=a[0].spatialReference,
k=n.mixin({},this._url.query,{f:"json",sr:d.wkid?d.wkid:g.toJson(d.toJson()),geometries:g.toJson(this._encodeGeometries(a))}),l=t.getJsonType(a[0]),m=this._simplifyHandler,p=this._errorHandler,q=new h(e._dfdCanceller);q._pendingDfd=f({url:this._url.path+"/simplify",content:k,callbackParamName:"callback",load:function(a,e){m(a,e,l,d,b,c,q)},error:function(a){p(a,c,q)}});return q},_simplifyHandler:function(a,b,c,d,e,f,g){try{var h=this._decodeGeometries(a,c,d);this._successHandler([h],"onSimplifyComplete",
e,g)}catch(B){this._errorHandler(B,f,g)}},onSimplifyComplete:function(){},convexHull:function(a,b,c){var d=a[0].spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(d.toJson()),geometries:g.toJson(this._encodeGeometries(a))});var k=this._convexHullHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/convexHull",content:a,callbackParamName:"callback",load:function(a,e){k(a,e,d,b,c,m)},error:function(a){l(a,c,m)}});return m},_convexHullHandler:function(a,
b,c,d,e,f){try{var g=t.fromJson(a.geometry).setSpatialReference(c);this._successHandler([g],"onConvexHullComplete",d,f)}catch(A){this._errorHandler(A,e,f)}},onConvexHullComplete:function(){},union:function(a,b,c){var d=a[0].spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(d.toJson()),geometries:g.toJson(this._encodeGeometries(a))});var k=this._unionHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/union",content:a,callbackParamName:"callback",
load:function(a,e){k(a,e,d,b,c,m)},error:function(a){l(a,c,m)}});return m},_unionHandler:function(a,b,c,d,e,f){try{var g=t.fromJson(a.geometry).setSpatialReference(c);this._successHandler([g],"onUnionComplete",d,f)}catch(A){this._errorHandler(A,e,f)}},onUnionComplete:function(){},autoComplete:function(a,b,c,d){var k=a[0].spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(k.toJson()),polygons:g.toJson(this._encodeGeometries(a).geometries),polylines:g.toJson(this._encodeGeometries(b).geometries)});
var l=this._autoCompleteHandler,m=this._errorHandler,p=new h(e._dfdCanceller);p._pendingDfd=f({url:this._url.path+"/autoComplete",content:a,callbackParamName:"callback",load:function(a,b){l(a,b,k,c,d,p)},error:function(a){m(a,d,p)}});return p},_autoCompleteHandler:function(a,b,c,d,e,f){try{var g=a.geometries;a=[];var h,k=g.length;for(h=0;h<k;h++)a[h]=new m({spatialReference:c,rings:g[h].rings});this._successHandler([a],"onAutoCompleteComplete",d,f)}catch(C){this._errorHandler(C,e,f)}},onAutoCompleteComplete:function(){},
reshape:function(a,b,c,d){var k=a.spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(k.toJson()),target:g.toJson({geometryType:t.getJsonType(a),geometry:a.toJson()}),reshaper:g.toJson(b.toJson())});var l=this._reshapeHandler,m=this._errorHandler,p=new h(e._dfdCanceller);p._pendingDfd=f({url:this._url.path+"/reshape",content:a,callbackParamName:"callback",load:function(a,b){l(a,b,k,c,d,p)},error:function(a){m(a,d,p)}});return p},_reshapeHandler:function(a,b,c,d,e,f){try{var g=t.fromJson(a.geometry).setSpatialReference(c);
this._successHandler([g],"onReshapeComplete",d,f)}catch(A){this._errorHandler(A,e,f)}},onReshapeComplete:function(){},cut:function(a,c,d,l){var k=a[0].spatialReference,m=b.map(a,function(a){return a.toJson()});a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(k.toJson()),target:g.toJson({geometryType:t.getJsonType(a[0]),geometries:m}),cutter:g.toJson(c.toJson())});var p=this._cutHandler,q=this._errorHandler,r=new h(e._dfdCanceller);r._pendingDfd=f({url:this._url.path+"/cut",content:a,callbackParamName:"callback",
load:function(a,b){p(a,b,k,d,l,r)},error:function(a){q(a,l,r)}});return r},_cutHandler:function(a,c,d,e,f,g){try{var h=a.geometries,k={};k.cutIndexes=a.cutIndexes;k.geometries=[];b.forEach(h,function(a){k.geometries.push(t.fromJson(a).setSpatialReference(d))});this._successHandler([k],"onCutComplete",e,g)}catch(B){this._errorHandler(B,f,g)}},onCutComplete:function(){},intersect:function(a,b,c,d){var k=a[0].spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(k.toJson()),geometries:g.toJson(this._encodeGeometries(a)),
geometry:g.toJson({geometryType:t.getJsonType(b),geometry:b.toJson()})});var l=this._intersectHandler,m=this._errorHandler,p=new h(e._dfdCanceller);p._pendingDfd=f({url:this._url.path+"/intersect",content:a,callbackParamName:"callback",load:function(a,b){l(a,b,k,c,d,p)},error:function(a){m(a,d,p)}});return p},_intersectHandler:function(a,c,d,e,f,g){try{var h=[];b.forEach(a.geometries,function(a){h.push(t.fromJson(a).setSpatialReference(d))});this._successHandler([h],"onIntersectComplete",e,g)}catch(A){this._errorHandler(A,
f,g)}},onIntersectComplete:function(){},difference:function(a,b,c,d){var k=a[0].spatialReference;a=n.mixin({},this._url.query,{f:"json",sr:g.toJson(k.toJson()),geometries:g.toJson(this._encodeGeometries(a)),geometry:g.toJson({geometryType:t.getJsonType(b),geometry:b.toJson()})});var l=this._differenceHandler,m=this._errorHandler,p=new h(e._dfdCanceller);p._pendingDfd=f({url:this._url.path+"/difference",content:a,callbackParamName:"callback",load:function(a,b){l(a,b,k,c,d,p)},error:function(a){m(a,
d,p)}});return p},_differenceHandler:function(a,c,d,e,f,g){try{var h=[];b.forEach(a.geometries,function(a){h.push(t.fromJson(a).setSpatialReference(d))});this._successHandler([h],"onDifferenceComplete",e,g)}catch(A){this._errorHandler(A,f,g)}},onDifferenceComplete:function(){},buffer:function(a,b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.outSpatialReference||a.geometries[0].spatialReference,k=this._bufferHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+
"/buffer",content:d,callbackParamName:"callback",load:function(a,d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_bufferHandler:function(a,b,c,d,e,f){try{var g=a.geometries;a=[];var h,k=g.length;for(h=0;h<k;h++)a[h]=new m({spatialReference:c,rings:g[h].rings});this._successHandler([a],"onBufferComplete",d,f)}catch(C){this._errorHandler(C,e,f)}},onBufferComplete:function(){},areasAndLengths:function(a,b,c){a=n.mixin({},this._url.query,{f:"json"},a.toJson());var d=this._areasAndLengthsHandler,
g=this._errorHandler,k=new h(e._dfdCanceller);k._pendingDfd=f({url:this._url.path+"/areasAndLengths",content:a,callbackParamName:"callback",load:function(a,e){d(a,e,b,c,k)},error:function(a){g(a,c,k)}});return k},_areasAndLengthsHandler:function(a,b,c,d,e){try{this._successHandler([a],"onAreasAndLengthsComplete",c,e)}catch(z){this._errorHandler(z,d,e)}},onAreasAndLengthsComplete:function(){},lengths:function(a,b,c){a=n.mixin({},this._url.query,{f:"json"},a.toJson());var d=this._lengthsHandler,g=this._errorHandler,
k=new h(e._dfdCanceller);k._pendingDfd=f({url:this._url.path+"/lengths",content:a,callbackParamName:"callback",load:function(a,e){d(a,e,b,c,k)},error:function(a){g(a,c,k)}});return k},_lengthsHandler:function(a,b,c,d,e){try{this._successHandler([a],"onLengthsComplete",c,e)}catch(z){this._errorHandler(z,d,e)}},onLengthsComplete:function(){},labelPoints:function(a,c,d){var k=b.map(a,function(a){return a.toJson()}),l=a[0].spatialReference,k=n.mixin({},this._url.query,{f:"json",sr:l.wkid?l.wkid:g.toJson(l.toJson()),
polygons:g.toJson(k)}),m=this._labelPointsHandler,p=this._errorHandler,q=new h(e._dfdCanceller);q._pendingDfd=f({url:this._url.path+"/labelPoints",content:k,callbackParamName:"callback",load:function(b,e){m(b,e,a,l,c,d,q)},error:function(a){p(a,d,q)}});return q},_labelPointsHandler:function(a,c,d,e,f,g,h){try{var k=[];b.forEach(a.labelPoints,function(a){k.push(t.fromJson(a).setSpatialReference(e))});this._successHandler([k],"onLabelPointsComplete",f,h)}catch(B){this._errorHandler(B,g,h)}},onLabelPointsComplete:function(){},
relation:function(a,b,c){a=n.mixin({},this._url.query,{f:"json"},a.toJson());var d=this._relationHandler,g=this._errorHandler,k=new h(e._dfdCanceller);k._pendingDfd=f({url:this._url.path+"/relation",content:a,callbackParamName:"callback",load:function(a,e){d(a,e,b,c,k)},error:function(a){g(a,c,k)}});return k},_relationHandler:function(a,b,c,d,e){try{this._successHandler([a.relations],"onRelationComplete",c,e)}catch(z){this._errorHandler(z,d,e)}},onRelationComplete:function(){},trimExtend:function(a,
b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.sr,k=this._trimExtendHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/trimExtend",content:d,callbackParamName:"callback",load:function(a,d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_trimExtendHandler:function(a,b,c,e,f,g){try{var h=a.geometries;a=[];var k,l=h.length;for(k=0;k<l;k++)a[k]=new d({spatialReference:c,paths:h[k].paths});this._successHandler([a],"onTrimExtendComplete",
e,g)}catch(C){this._errorHandler(C,f,g)}},onTrimExtendComplete:function(){},densify:function(a,b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.geometries[0].spatialReference,k=this._densifyHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/densify",content:d,callbackParamName:"callback",load:function(a,d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_densifyHandler:function(a,c,d,e,f,g){try{var h=[];b.forEach(a.geometries,function(a){h.push(t.fromJson(a).setSpatialReference(d))});
this._successHandler([h],"onDensifyComplete",e,g)}catch(A){this._errorHandler(A,f,g)}},onDensifyComplete:function(){},generalize:function(a,b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.geometries[0].spatialReference,k=this._generalizeHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/generalize",content:d,callbackParamName:"callback",load:function(a,d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_generalizeHandler:function(a,
c,d,e,f,g){try{var h=[];b.forEach(a.geometries,function(a){h.push(t.fromJson(a).setSpatialReference(d))});this._successHandler([h],"onGeneralizeComplete",e,g)}catch(A){this._errorHandler(A,f,g)}},onGeneralizeComplete:function(){},offset:function(a,b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.geometries[0].spatialReference,k=this._offsetHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/offset",content:d,callbackParamName:"callback",load:function(a,
d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_offsetHandler:function(a,c,d,e,f,g){try{var h=[];b.forEach(a.geometries,function(a){h.push(t.fromJson(a).setSpatialReference(d))});this._successHandler([h],"onOffsetComplete",e,g)}catch(A){this._errorHandler(A,f,g)}},onOffsetComplete:function(){},distance:function(a,b,c){var d=n.mixin({},this._url.query,{f:"json"},a.toJson()),g=a.geometry1.spatialReference,k=this._distanceHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=
f({url:this._url.path+"/distance",content:d,callbackParamName:"callback",load:function(a,d){k(a,d,g,b,c,m)},error:function(a){l(a,c,m)}});return m},_distanceHandler:function(a,b,c,d,e,f){try{a=a&&a.distance,this._successHandler([a],"onDistanceComplete",d,f)}catch(x){this._errorHandler(x,e,f)}},onDistanceComplete:function(){},toGeoCoordinateString:function(a,b,c){var d={};n.isObject(a.sr)?d.sr=a.sr.wkid||g.toJson(a.sr.toJson()):d.sr=a.sr;d.coordinates=g.toJson(a.coordinates);d.conversionType=a.conversionType||
"MGRS";d.conversionMode=a.conversionMode;d.numOfDigits=a.numOfDigits;d.rounding=a.rounding;d.addSpaces=a.addSpaces;a=n.mixin({},this._url.query,{f:"json"},d);var k=this._toGeoCoordinateHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/toGeoCoordinateString",content:a,callbackParamName:"callback",load:function(a,d){k(a,d,b,c,m)},error:function(a){l(a,c,m)}});return m},_toGeoCoordinateHandler:function(a,b,c,d,e){try{this._successHandler([a.strings],"onToGeoCoordinateStringComplete",
c,e)}catch(z){this._errorHandler(z,d,e)}},onToGeoCoordinateStringComplete:function(){},fromGeoCoordinateString:function(a,b,c){var d={};n.isObject(a.sr)?d.sr=a.sr.wkid||g.toJson(a.sr.toJson()):d.sr=a.sr;d.strings=g.toJson(a.strings);d.conversionType=a.conversionType||"MGRS";d.conversionMode=a.conversionMode;a=n.mixin({},this._url.query,{f:"json"},d);var k=this._fromGeoCoordinateHandler,l=this._errorHandler,m=new h(e._dfdCanceller);m._pendingDfd=f({url:this._url.path+"/fromGeoCoordinateString",content:a,
callbackParamName:"callback",load:function(a,d){k(a,d,b,c,m)},error:function(a){l(a,c,m)}});return m},_fromGeoCoordinateHandler:function(a,b,c,d,e){try{this._successHandler([a.coordinates],"onToGeoCoordinateStringComplete",c,e)}catch(z){this._errorHandler(z,d,e)}},onFromGeoCoordinateStringComplete:function(){}});n.mixin(q,{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,UNIT_SQUARE_INCHES:"esriSquareInches",UNIT_SQUARE_FEET:"esriSquareFeet",UNIT_SQUARE_YARDS:"esriSquareYards",UNIT_ACRES:"esriAcres",UNIT_SQUARE_MILES:"esriSquareMiles",UNIT_SQUARE_MILLIMETERS:"esriSquareMillimeters",
UNIT_SQUARE_CENTIMETERS:"esriSquareCentimeters",UNIT_SQUARE_DECIMETERS:"esriSquareDecimeters",UNIT_SQUARE_METERS:"esriSquareMeters",UNIT_ARES:"esriAres",UNIT_HECTARES:"esriHectares",UNIT_SQUARE_KILOMETERS:"esriSquareKilometers"});p("extend-esri")&&n.setObject("tasks.GeometryService",q,l);return q})},"url:dijit/form/templates/Button.html":'\x3cspan class\x3d"dijit dijitReset dijitInline" role\x3d"presentation"\r\n\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitButtonNode"\r\n\t\tdata-dojo-attach-event\x3d"ondijitclick:__onClick" role\x3d"presentation"\r\n\t\t\x3e\x3cspan class\x3d"dijitReset dijitStretch dijitButtonContents"\r\n\t\t\tdata-dojo-attach-point\x3d"titleNode,focusNode"\r\n\t\t\trole\x3d"button" aria-labelledby\x3d"${id}_label"\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitIcon" data-dojo-attach-point\x3d"iconNode"\x3e\x3c/span\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitToggleButtonIconChar"\x3e\x26#x25CF;\x3c/span\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitButtonText"\r\n\t\t\t\tid\x3d"${id}_label"\r\n\t\t\t\tdata-dojo-attach-point\x3d"containerNode"\r\n\t\t\t\x3e\x3c/span\r\n\t\t\x3e\x3c/span\r\n\t\x3e\x3c/span\r\n\t\x3e\x3cinput ${!nameAttrSetting} type\x3d"${type}" value\x3d"${value}" class\x3d"dijitOffScreen"\r\n\t\tdata-dojo-attach-event\x3d"onclick:_onClick"\r\n\t\ttabIndex\x3d"-1" aria-hidden\x3d"true" data-dojo-attach-point\x3d"valueNode"\r\n/\x3e\x3c/span\x3e\r\n',
"url:dijit/form/templates/DropDownButton.html":'\x3cspan class\x3d"dijit dijitReset dijitInline"\r\n\t\x3e\x3cspan class\x3d\'dijitReset dijitInline dijitButtonNode\'\r\n\t\tdata-dojo-attach-event\x3d"ondijitclick:__onClick" data-dojo-attach-point\x3d"_buttonNode"\r\n\t\t\x3e\x3cspan class\x3d"dijitReset dijitStretch dijitButtonContents"\r\n\t\t\tdata-dojo-attach-point\x3d"focusNode,titleNode,_arrowWrapperNode,_popupStateNode"\r\n\t\t\trole\x3d"button" aria-haspopup\x3d"true" aria-labelledby\x3d"${id}_label"\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitIcon"\r\n\t\t\t\tdata-dojo-attach-point\x3d"iconNode"\r\n\t\t\t\x3e\x3c/span\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitButtonText"\r\n\t\t\t\tdata-dojo-attach-point\x3d"containerNode"\r\n\t\t\t\tid\x3d"${id}_label"\r\n\t\t\t\x3e\x3c/span\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitArrowButtonInner"\x3e\x3c/span\r\n\t\t\t\x3e\x3cspan class\x3d"dijitReset dijitInline dijitArrowButtonChar"\x3e\x26#9660;\x3c/span\r\n\t\t\x3e\x3c/span\r\n\t\x3e\x3c/span\r\n\t\x3e\x3cinput ${!nameAttrSetting} type\x3d"${type}" value\x3d"${value}" class\x3d"dijitOffScreen" tabIndex\x3d"-1"\r\n\t\tdata-dojo-attach-event\x3d"onclick:_onClick" data-dojo-attach-point\x3d"valueNode" aria-hidden\x3d"true"\r\n/\x3e\x3c/span\x3e\r\n',
"url:dijit/form/templates/ComboButton.html":'\x3ctable class\x3d"dijit dijitReset dijitInline dijitLeft"\r\n\tcellspacing\x3d\'0\' cellpadding\x3d\'0\' role\x3d"presentation"\r\n\t\x3e\x3ctbody role\x3d"presentation"\x3e\x3ctr role\x3d"presentation"\r\n\t\t\x3e\x3ctd class\x3d"dijitReset dijitStretch dijitButtonNode" data-dojo-attach-point\x3d"buttonNode" data-dojo-attach-event\x3d"ondijitclick:__onClick,onkeydown:_onButtonKeyDown"\r\n\t\t\x3e\x3cdiv id\x3d"${id}_button" class\x3d"dijitReset dijitButtonContents"\r\n\t\t\tdata-dojo-attach-point\x3d"titleNode"\r\n\t\t\trole\x3d"button" aria-labelledby\x3d"${id}_label"\r\n\t\t\t\x3e\x3cdiv class\x3d"dijitReset dijitInline dijitIcon" data-dojo-attach-point\x3d"iconNode" role\x3d"presentation"\x3e\x3c/div\r\n\t\t\t\x3e\x3cdiv class\x3d"dijitReset dijitInline dijitButtonText" id\x3d"${id}_label" data-dojo-attach-point\x3d"containerNode" role\x3d"presentation"\x3e\x3c/div\r\n\t\t\x3e\x3c/div\r\n\t\t\x3e\x3c/td\r\n\t\t\x3e\x3ctd id\x3d"${id}_arrow" class\x3d\'dijitReset dijitRight dijitButtonNode dijitArrowButton\'\r\n\t\t\tdata-dojo-attach-point\x3d"_popupStateNode,focusNode,_buttonNode"\r\n\t\t\tdata-dojo-attach-event\x3d"onkeydown:_onArrowKeyDown"\r\n\t\t\ttitle\x3d"${optionsTitle}"\r\n\t\t\trole\x3d"button" aria-haspopup\x3d"true"\r\n\t\t\t\x3e\x3cdiv class\x3d"dijitReset dijitArrowButtonInner" role\x3d"presentation"\x3e\x3c/div\r\n\t\t\t\x3e\x3cdiv class\x3d"dijitReset dijitArrowButtonChar" role\x3d"presentation"\x3e\x26#9660;\x3c/div\r\n\t\t\x3e\x3c/td\r\n\t\t\x3e\x3ctd style\x3d"display:none !important;"\r\n\t\t\t\x3e\x3cinput ${!nameAttrSetting} type\x3d"${type}" value\x3d"${value}" data-dojo-attach-point\x3d"valueNode"\r\n\t\t\t\tclass\x3d"dijitOffScreen" aria-hidden\x3d"true" data-dojo-attach-event\x3d"onclick:_onClick"\r\n\t\t/\x3e\x3c/td\x3e\x3c/tr\x3e\x3c/tbody\r\n\x3e\x3c/table\x3e\r\n',
"url:dijit/templates/TooltipDialog.html":'\x3cdiv role\x3d"alertdialog" tabIndex\x3d"-1"\x3e\r\n\t\x3cdiv class\x3d"dijitTooltipContainer" role\x3d"presentation"\x3e\r\n\t\t\x3cdiv data-dojo-attach-point\x3d"contentsNode" class\x3d"dijitTooltipContents dijitTooltipFocusNode"\x3e\r\n\t\t\t\x3cdiv data-dojo-attach-point\x3d"containerNode"\x3e\x3c/div\x3e\r\n\t\t\t${!actionBarTemplate}\r\n\t\t\x3c/div\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv class\x3d"dijitTooltipConnector" role\x3d"presentation" data-dojo-attach-point\x3d"connectorNode"\x3e\x3c/div\x3e\r\n\x3c/div\x3e\r\n',
"url:esri/core/request/iframe.html":'\x3c!DOCTYPE html\x3e\r\n\x3chtml\x3e\r\n\x3chead\x3e\r\n  \x3cmeta http-equiv\x3d"Content-Security-Policy" content\x3d"default-src \'none\'; script-src * \'unsafe-inline\'"\x3e\r\n\r\n  \x3cscript\x3e\r\n    var dojoConfig \x3d {\r\n      async: true,\r\n      baseUrl: "../../../dojo/",\r\n      has: {\r\n        "csp-restrictions": true,\r\n        "dojo-preload-i18n-Api": false\r\n      }\r\n    };\r\n  \x3c/script\x3e\r\n  \x3c!--\r\n  This src is relative to this page and assumes dojo is a sibling to esri.\r\n  It is updated when this file is set as the iframe\'s `srcdoc` value.\r\n  --\x3e\r\n  \x3cscript src\x3d"../../../dojo/dojo.js"\x3e\x3c/script\x3e\r\n\r\n  \x3cscript\x3e\r\n    function windowMessageHandler(event) {\r\n      window.removeEventListener("message", windowMessageHandler);\r\n\r\n      var port \x3d event.ports[0];\r\n\r\n      require([\r\n        "dojo/request/script"\r\n      ], function(script) {\r\n        port.postMessage("ready");\r\n\r\n        port.addEventListener("message", function(event) {\r\n          var data \x3d event.data;\r\n          script.get(data.url, data.options)\r\n              .then(function(response) {\r\n                port.postMessage({\r\n                  id: data.id,\r\n                  response: response\r\n                });\r\n              })\r\n              .otherwise(function(error) {\r\n                port.postMessage({\r\n                  id: data.id,\r\n                  isError: true,\r\n                  message: error.message\r\n                });\r\n              });\r\n        });\r\n        port.start();\r\n      });\r\n    }\r\n\r\n    window.addEventListener("message", windowMessageHandler);\r\n  \x3c/script\x3e\r\n\x3c/head\x3e\r\n\x3cbody\x3e\r\n\x3c/body\x3e\r\n\x3c/html\x3e\r\n',
"url:dijit/templates/Dialog.html":'\x3cdiv class\x3d"dijitDialog" role\x3d"dialog" aria-labelledby\x3d"${id}_title"\x3e\r\n\t\x3cdiv data-dojo-attach-point\x3d"titleBar" class\x3d"dijitDialogTitleBar"\x3e\r\n\t\t\x3cspan data-dojo-attach-point\x3d"titleNode" class\x3d"dijitDialogTitle" id\x3d"${id}_title"\r\n\t\t\t\trole\x3d"heading" level\x3d"1"\x3e\x3c/span\x3e\r\n\t\t\x3cspan data-dojo-attach-point\x3d"closeButtonNode" class\x3d"dijitDialogCloseIcon" data-dojo-attach-event\x3d"ondijitclick: onCancel" title\x3d"${buttonCancel}" role\x3d"button" tabindex\x3d"-1"\x3e\r\n\t\t\t\x3cspan data-dojo-attach-point\x3d"closeText" class\x3d"closeText" title\x3d"${buttonCancel}"\x3ex\x3c/span\x3e\r\n\t\t\x3c/span\x3e\r\n\t\x3c/div\x3e\r\n\t\x3cdiv data-dojo-attach-point\x3d"containerNode" class\x3d"dijitDialogPaneContent"\x3e\x3c/div\x3e\r\n\t${!actionBarTemplate}\r\n\x3c/div\x3e\r\n\r\n',
"url:dijit/form/templates/TextBox.html":'\x3cdiv class\x3d"dijit dijitReset dijitInline dijitLeft" id\x3d"widget_${id}" role\x3d"presentation"\r\n\t\x3e\x3cdiv class\x3d"dijitReset dijitInputField dijitInputContainer"\r\n\t\t\x3e\x3cinput class\x3d"dijitReset dijitInputInner" data-dojo-attach-point\x3d\'textbox,focusNode\' autocomplete\x3d"off"\r\n\t\t\t${!nameAttrSetting} type\x3d\'${type}\'\r\n\t/\x3e\x3c/div\r\n\x3e\x3c/div\x3e\r\n',"url:dijit/templates/Tooltip.html":'\x3cdiv class\x3d"dijitTooltip dijitTooltipLeft" id\x3d"dojoTooltip" data-dojo-attach-event\x3d"mouseenter:onMouseEnter,mouseleave:onMouseLeave"\r\n\t\x3e\x3cdiv class\x3d"dijitTooltipConnector" data-dojo-attach-point\x3d"connectorNode"\x3e\x3c/div\r\n\t\x3e\x3cdiv class\x3d"dijitTooltipContainer dijitTooltipContents" data-dojo-attach-point\x3d"containerNode" role\x3d\'alert\'\x3e\x3c/div\r\n\x3e\x3c/div\x3e\r\n',
"url:dijit/form/templates/ValidationTextBox.html":'\x3cdiv class\x3d"dijit dijitReset dijitInline dijitLeft"\r\n\tid\x3d"widget_${id}" role\x3d"presentation"\r\n\t\x3e\x3cdiv class\x3d\'dijitReset dijitValidationContainer\'\r\n\t\t\x3e\x3cinput class\x3d"dijitReset dijitInputField dijitValidationIcon dijitValidationInner" value\x3d"\x26#935; " type\x3d"text" tabIndex\x3d"-1" readonly\x3d"readonly" role\x3d"presentation"\r\n\t/\x3e\x3c/div\r\n\t\x3e\x3cdiv class\x3d"dijitReset dijitInputField dijitInputContainer"\r\n\t\t\x3e\x3cinput class\x3d"dijitReset dijitInputInner" data-dojo-attach-point\x3d\'textbox,focusNode\' autocomplete\x3d"off"\r\n\t\t\t${!nameAttrSetting} type\x3d\'${type}\'\r\n\t/\x3e\x3c/div\r\n\x3e\x3c/div\x3e\r\n',
"*now":function(q){q(['dojo/i18n!*preload*esri/nls/jsapi*["ar","az","ca","cs","da","de-de","el","en-gb","en-us","es-es","fi-fi","fr-fr","he-il","hu","it-it","ja-jp","ko-kr","nl-nl","nb","pl","pt-br","pt-pt","ro","ru","sk","sl","sv","th","tr","zh-tw","zh-cn","ROOT"]'])},"*noref":1}});
define("esri/jsapi","dojo/fx/Toggler dojo/_base/html dijit/_base dijit/form/DropDownButton dijit/form/ComboButton dijit/form/ToggleButton dijit/_base/manager dijit/TooltipDialog ./main ./map ./geometry ./symbol ./renderer ./utils ./IdentityManager ./layers/graphics ./layers/agstiled ./layers/agsdynamic ./layers/FeatureLayer ./dijit/PopupTemplate ./dijit/PopupRenderer ./dijit/Attribution ./arcgis/utils ./tasks/query ./tasks/QueryTask ./tasks/RelationshipQuery ./tasks/StatisticDefinition".split(" "),function(){return{}});