forked from transit-appliance/Transit-Board-Hotel
-
Notifications
You must be signed in to change notification settings - Fork 1
/
tbdhotel.min.js
761 lines (761 loc) · 354 KB
/
tbdhotel.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
(function(a,b){function c(a){return h.isWindow(a)?a:9===a.nodeType?a.defaultView||a.parentWindow:!1}function d(a){if(!pa[a]){var b=w.body,c=h("<"+a+">").appendTo(b),d=c.css("display");c.remove();if("none"===d||""===d){R||(R=w.createElement("iframe"),R.frameBorder=R.width=R.height=0);b.appendChild(R);if(!aa||!R.createElement)aa=(R.contentWindow||R.contentDocument).document,aa.write(("CSS1Compat"===w.compatMode?"<!doctype html>":"")+"<html><body>"),aa.close();c=aa.createElement(a);aa.body.appendChild(c);
d=h.css(c,"display");b.removeChild(R)}pa[a]=d}return pa[a]}function e(a,b){var c={};h.each(za.concat.apply([],za.slice(0,b)),function(){c[this]=a});return c}function f(){ia=b}function g(){setTimeout(f,0);return ia=h.now()}function j(){try{return new a.XMLHttpRequest}catch(b){}}function k(a,b,c,d){if(h.isArray(b))h.each(b,function(b,H){c||$a.test(a)?d(a,H):k(a+"["+("object"==typeof H||h.isArray(H)?b:"")+"]",H,c,d)});else if(!c&&null!=b&&"object"==typeof b)for(var e in b)k(a+"["+e+"]",b[e],c,d);else d(a,
b)}function m(a,c){var d,e,f=h.ajaxSettings.flatOptions||{};for(d in c)c[d]!==b&&((f[d]?a:e||(e={}))[d]=c[d]);e&&h.extend(!0,a,e)}function s(a,c,d,e,h,f){h=h||c.dataTypes[0];f=f||{};f[h]=!0;for(var h=a[h],g=0,j=h?h.length:0,k=a===qa,p;g<j&&(k||!p);g++)p=h[g](c,d,e),"string"==typeof p&&(!k||f[p]?p=b:(c.dataTypes.unshift(p),p=s(a,c,d,e,p,f)));(k||!p)&&!f["*"]&&(p=s(a,c,d,e,"*",f));return p}function n(a){return function(b,c){"string"!=typeof b&&(c=b,b="*");if(h.isFunction(c))for(var d=b.toLowerCase().split(Ba),
e=0,f=d.length,g,j,k;e<f;e++)g=d[e],k=/^\+/.test(g),k&&(g=g.substr(1)||"*"),j=a[g]=a[g]||[],j[k?"unshift":"push"](c)}}function q(a,b,c){var d="width"===b?a.offsetWidth:a.offsetHeight,e="width"===b?ab:bb,f=0,g=e.length;if(0<d){if("border"!==c)for(;f<g;f++)c||(d-=parseFloat(h.css(a,"padding"+e[f]))||0),"margin"===c?d+=parseFloat(h.css(a,c+e[f]))||0:d-=parseFloat(h.css(a,"border"+e[f]+"Width"))||0;return d+"px"}d=ba(a,b,b);if(0>d||null==d)d=a.style[b]||0;d=parseFloat(d)||0;if(c)for(;f<g;f++)d+=parseFloat(h.css(a,
"padding"+e[f]))||0,"padding"!==c&&(d+=parseFloat(h.css(a,"border"+e[f]+"Width"))||0),"margin"===c&&(d+=parseFloat(h.css(a,c+e[f]))||0);return d+"px"}function o(a,b){b.src?h.ajax({url:b.src,async:!1,dataType:"script"}):h.globalEval((b.text||b.textContent||b.innerHTML||"").replace(cb,"/*$0*/"));b.parentNode&&b.parentNode.removeChild(b)}function p(a){var b=(a.nodeName||"").toLowerCase();"input"===b?u(a):"script"!==b&&"undefined"!=typeof a.getElementsByTagName&&h.grep(a.getElementsByTagName("input"),
u)}function u(a){if("checkbox"===a.type||"radio"===a.type)a.defaultChecked=a.checked}function D(a){return"undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName("*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll("*"):[]}function A(a,b){var c;if(1===b.nodeType){b.clearAttributes&&b.clearAttributes();b.mergeAttributes&&b.mergeAttributes(a);c=b.nodeName.toLowerCase();if("object"===c)b.outerHTML=a.outerHTML;else if("input"!==c||"checkbox"!==a.type&&"radio"!==a.type)if("option"===
c)b.selected=a.defaultSelected;else{if("input"===c||"textarea"===c)b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(h.expando)}}function y(a,b){if(1===b.nodeType&&h.hasData(a)){var c,d,e;d=h._data(a);var f=h._data(b,d),g=d.events;if(g)for(c in delete f.handle,f.events={},g)for(d=0,e=g[c].length;d<e;d++)h.event.add(b,c+(g[c][d].namespace?".":"")+g[c][d].namespace,g[c][d],g[c][d].data);f.data&&(f.data=h.extend({},
f.data))}}function J(a){var b=Ca.split("|"),a=a.createDocumentFragment();if(a.createElement)for(;b.length;)a.createElement(b.pop());return a}function F(a,b,c){b=b||0;if(h.isFunction(b))return h.grep(a,function(a,d){return!!b.call(a,d,a)===c});if(b.nodeType)return h.grep(a,function(a){return a===b===c});if("string"==typeof b){var d=h.grep(a,function(a){return 1===a.nodeType});if(db.test(b))return h.filter(b,d,!c);b=h.filter(b,d)}return h.grep(a,function(a){return 0<=h.inArray(a,b)===c})}function x(){return!0}
function E(){return!1}function B(a,b,c){var d=b+"defer",e=b+"queue",f=b+"mark",g=h._data(a,d);g&&("queue"===c||!h._data(a,e))&&("mark"===c||!h._data(a,f))&&setTimeout(function(){!h._data(a,e)&&!h._data(a,f)&&(h.removeData(a,d,!0),g.fire())},0)}function K(a){for(var b in a)if(!("data"===b&&h.isEmptyObject(a[b]))&&"toJSON"!==b)return!1;return!0}function V(a,c,d){if(d===b&&1===a.nodeType)if(d="data-"+c.replace(ra,"-$1").toLowerCase(),d=a.getAttribute(d),"string"==typeof d){try{d="true"===d?!0:"false"===
d?!1:"null"===d?null:h.isNumeric(d)?parseFloat(d):ca.test(d)?h.parseJSON(d):d}catch(e){}h.data(a,c,d)}else d=b;return d}function S(a){var b=O[a]={},c,d,a=a.split(/\s+/);for(c=0,d=a.length;c<d;c++)b[a[c]]=!0;return b}var w=a.document,T=a.navigator,Q=a.location,h=function(){function c(){if(!d.isReady){try{w.documentElement.doScroll("left")}catch(a){setTimeout(c,1);return}d.ready()}}var d=function(a,b){return new d.fn.init(a,b,f)},e=a.jQuery,h=a.$,f,g=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,j=/\S/,
k=/^\s+/,p=/\s+$/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,q=/^[\],:{}\s]*$/,o=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,u=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,m=/(?:^|:|,)(?:\s*\[)+/g,C=/(webkit)[ \/]([\w.]+)/,D=/(opera)(?:.*version)?[ \/]([\w.]+)/,s=/(msie) ([\w.]+)/,A=/(mozilla)(?:.*? rv:([\w.]+))?/,x=/-([a-z]|[0-9])/ig,y=/^-ms-/,B=function(a,b){return(b+"").toUpperCase()},K=T.userAgent,ja,ka,ea,eb=Object.prototype.toString,sa=Object.prototype.hasOwnProperty,ta=Array.prototype.push,
ga=Array.prototype.slice,Da=String.prototype.trim,E=Array.prototype.indexOf,I={};d.fn=d.prototype={constructor:d,init:function(a,c,v){var e,h,f;if(!a)return this;if(a.nodeType)return this.context=this[0]=a,this.length=1,this;if("body"===a&&!c&&w.body)return this.context=w,this[0]=w.body,this.selector=a,this.length=1,this;if("string"==typeof a){"<"!==a.charAt(0)||">"!==a.charAt(a.length-1)||3>a.length?e=g.exec(a):e=[null,a,null];if(e&&(e[1]||!c)){if(e[1])return c=c instanceof d?c[0]:c,f=c?c.ownerDocument||
c:w,h=n.exec(a),h?d.isPlainObject(c)?(a=[w.createElement(h[1])],d.fn.attr.call(a,c,!0)):a=[f.createElement(h[1])]:(h=d.buildFragment([e[1]],[f]),a=(h.cacheable?d.clone(h.fragment):h.fragment).childNodes),d.merge(this,a);if((c=w.getElementById(e[2]))&&c.parentNode){if(c.id!==e[2])return v.find(a);this.length=1;this[0]=c}this.context=w;this.selector=a;return this}return!c||c.jquery?(c||v).find(a):this.constructor(c).find(a)}if(d.isFunction(a))return v.ready(a);a.selector!==b&&(this.selector=a.selector,
this.context=a.context);return d.makeArray(a,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return ga.call(this,0)},get:function(a){return null==a?this.toArray():0>a?this[this.length+a]:this[a]},pushStack:function(a,b,c){var v=this.constructor();d.isArray(a)?ta.apply(v,a):d.merge(v,a);v.prevObject=this;v.context=this.context;"find"===b?v.selector=this.selector+(this.selector?" ":"")+c:b&&(v.selector=this.selector+"."+b+"("+c+")");return v},each:function(a,
b){return d.each(this,a,b)},ready:function(a){d.bindReady();ka.add(a);return this},eq:function(a){a=+a;return-1===a?this.slice(a):this.slice(a,a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(ga.apply(this,arguments),"slice",ga.call(arguments).join(","))},map:function(a){return this.pushStack(d.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:ta,sort:[].sort,splice:[].splice};
d.fn.init.prototype=d.fn;d.extend=d.fn.extend=function(){var a,c,v,e,h,f,g=arguments[0]||{},G=1,N=arguments.length,j=!1;for("boolean"==typeof g&&(j=g,g=arguments[1]||{},G=2),"object"!=typeof g&&!d.isFunction(g)&&(g={}),N===G&&(g=this,--G);G<N;G++)if(null!=(a=arguments[G]))for(c in a)v=g[c],e=a[c],g!==e&&(j&&e&&(d.isPlainObject(e)||(h=d.isArray(e)))?(h?(h=!1,f=v&&d.isArray(v)?v:[]):f=v&&d.isPlainObject(v)?v:{},g[c]=d.extend(j,f,e)):e!==b&&(g[c]=e));return g};d.extend({noConflict:function(b){a.$===
d&&(a.$=h);b&&a.jQuery===d&&(a.jQuery=e);return d},isReady:!1,readyWait:1,holdReady:function(a){a?d.readyWait++:d.ready(!0)},ready:function(a){if(!0===a&&!--d.readyWait||!0!==a&&!d.isReady){if(!w.body)return setTimeout(d.ready,1);d.isReady=!0;!0!==a&&0<--d.readyWait||(ka.fireWith(w,[d]),d.fn.trigger&&d(w).trigger("ready").off("ready"))}},bindReady:function(){if(!ka){ka=d.Callbacks("once memory");if("complete"===w.readyState)return setTimeout(d.ready,1);if(w.addEventListener)w.addEventListener("DOMContentLoaded",
ea,!1),a.addEventListener("load",d.ready,!1);else if(w.attachEvent){w.attachEvent("onreadystatechange",ea);a.attachEvent("onload",d.ready);var b=!1;try{b=null==a.frameElement}catch(e){}w.documentElement.doScroll&&b&&c()}}},isFunction:function(a){return"function"===d.type(a)},isArray:Array.isArray||function(a){return"array"===d.type(a)},isWindow:function(a){return a&&"object"==typeof a&&"setInterval"in a},isNumeric:function(a){return!isNaN(parseFloat(a))&&isFinite(a)},type:function(a){return null==
a?""+a:I[eb.call(a)]||"object"},isPlainObject:function(a){if(!a||"object"!==d.type(a)||a.nodeType||d.isWindow(a))return!1;try{if(a.constructor&&!sa.call(a,"constructor")&&!sa.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}for(var v in a);return v===b||sa.call(a,v)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw Error(a);},parseJSON:function(b){if("string"!=typeof b||!b)return null;b=d.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);
if(q.test(b.replace(o,"@").replace(u,"]").replace(m,"")))return(new Function("return "+b))();d.error("Invalid JSON: "+b)},parseXML:function(c){var v,e;try{a.DOMParser?(e=new DOMParser,v=e.parseFromString(c,"text/xml")):(v=new ActiveXObject("Microsoft.XMLDOM"),v.async="false",v.loadXML(c))}catch(h){v=b}(!v||!v.documentElement||v.getElementsByTagName("parsererror").length)&&d.error("Invalid XML: "+c);return v},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,
b)})(b)},camelCase:function(a){return a.replace(y,"ms-").replace(x,B)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,v){var e,h=0,f=a.length,g=f===b||d.isFunction(a);if(v)if(g)for(e in a){if(!1===c.apply(a[e],v))break}else for(;h<f&&!(!1===c.apply(a[h++],v)););else if(g)for(e in a){if(!1===c.call(a[e],e,a[e]))break}else for(;h<f&&!(!1===c.call(a[h],h,a[h++])););return a},trim:Da?function(a){return null==a?"":Da.call(a)}:function(a){return null==
a?"":(a+"").replace(k,"").replace(p,"")},makeArray:function(a,b){var c=b||[];if(null!=a){var v=d.type(a);null==a.length||"string"===v||"function"===v||"regexp"===v||d.isWindow(a)?ta.call(c,a):d.merge(c,a)}return c},inArray:function(a,b,c){var d;if(b){if(E)return E.call(b,a,c);for(d=b.length,c=c?0>c?Math.max(0,d+c):c:0;c<d;c++)if(c in b&&b[c]===a)return c}return-1},merge:function(a,c){var d=a.length,v=0;if("number"==typeof c.length)for(var e=c.length;v<e;v++)a[d++]=c[v];else for(;c[v]!==b;)a[d++]=
c[v++];a.length=d;return a},grep:function(a,b,c){for(var d=[],v,c=!!c,e=0,h=a.length;e<h;e++)v=!!b(a[e],e),c!==v&&d.push(a[e]);return d},map:function(a,c,v){var e,h,f=[],g=0,G=a.length;if(a instanceof d||G!==b&&"number"==typeof G&&(0<G&&a[0]&&a[G-1]||0===G||d.isArray(a)))for(;g<G;g++)e=c(a[g],g,v),null!=e&&(f[f.length]=e);else for(h in a)e=c(a[h],h,v),null!=e&&(f[f.length]=e);return f.concat.apply([],f)},guid:1,proxy:function(a,c){if("string"==typeof c){var v=a[c];c=a;a=v}if(!d.isFunction(a))return b;
var e=ga.call(arguments,2),v=function(){return a.apply(c,e.concat(ga.call(arguments)))};v.guid=a.guid=a.guid||v.guid||d.guid++;return v},access:function(a,c,v,e,h,f){var g=a.length;if("object"==typeof c){for(var G in c)d.access(a,G,c[G],e,h,v);return a}if(v!==b){e=!f&&e&&d.isFunction(v);for(G=0;G<g;G++)h(a[G],c,e?v.call(a[G],G,h(a[G],c)):v,f);return a}return g?h(a[0],c):b},now:function(){return(new Date).getTime()},uaMatch:function(a){a=a.toLowerCase();a=C.exec(a)||D.exec(a)||s.exec(a)||0>a.indexOf("compatible")&&
A.exec(a)||[];return{browser:a[1]||"",version:a[2]||"0"}},sub:function(){function a(b,c){return new a.fn.init(b,c)}d.extend(!0,a,this);a.superclass=this;a.fn=a.prototype=this();a.fn.constructor=a;a.sub=this.sub;a.fn.init=function(c,v){v&&v instanceof d&&!(v instanceof a)&&(v=a(v));return d.fn.init.call(this,c,v,b)};a.fn.init.prototype=a.fn;var b=a(w);return a},browser:{}});d.each("Boolean Number String Function Array Date RegExp Object".split(" "),function(a,b){I["[object "+b+"]"]=b.toLowerCase()});
ja=d.uaMatch(K);ja.browser&&(d.browser[ja.browser]=!0,d.browser.version=ja.version);d.browser.webkit&&(d.browser.safari=!0);j.test("\u00a0")&&(k=/^[\s\xA0]+/,p=/[\s\xA0]+$/);f=d(w);w.addEventListener?ea=function(){w.removeEventListener("DOMContentLoaded",ea,!1);d.ready()}:w.attachEvent&&(ea=function(){"complete"===w.readyState&&(w.detachEvent("onreadystatechange",ea),d.ready())});return d}(),O={};h.Callbacks=function(a){var a=a?O[a]||S(a):{},c=[],d=[],e,f,g,j,k,p=function(b){var d,e,f,g;for(d=0,e=
b.length;d<e;d++)f=b[d],g=h.type(f),"array"===g?p(f):"function"===g&&(!a.unique||!q.has(f))&&c.push(f)},n=function(b,h){for(h=h||[],e=!a.memory||[b,h],f=!0,k=g||0,g=0,j=c.length;c&&k<j;k++)if(!1===c[k].apply(b,h)&&a.stopOnFalse){e=!0;break}f=!1;c&&(a.once?!0===e?q.disable():c=[]:d&&d.length&&(e=d.shift(),q.fireWith(e[0],e[1])))},q={add:function(){if(c){var a=c.length;p(arguments);f?j=c.length:e&&!0!==e&&(g=a,n(e[0],e[1]))}return this},remove:function(){if(c)for(var b=arguments,d=0,e=b.length;d<e;d++)for(var h=
0;h<c.length&&!(b[d]===c[h]&&(f&&h<=j&&(j--,h<=k&&k--),c.splice(h--,1),a.unique));h++);return this},has:function(a){if(c)for(var b=0,d=c.length;b<d;b++)if(a===c[b])return!0;return!1},empty:function(){c=[];return this},disable:function(){c=d=e=b;return this},disabled:function(){return!c},lock:function(){d=b;(!e||!0===e)&&q.disable();return this},locked:function(){return!d},fireWith:function(b,c){d&&(f?a.once||d.push([b,c]):(!a.once||!e)&&n(b,c));return this},fire:function(){q.fireWith(this,arguments);
return this},fired:function(){return!!e}};return q};var W=[].slice;h.extend({Deferred:function(a){var b=h.Callbacks("once memory"),c=h.Callbacks("once memory"),d=h.Callbacks("memory"),e="pending",f={resolve:b,reject:c,notify:d},g={done:b.add,fail:c.add,progress:d.add,state:function(){return e},isResolved:b.fired,isRejected:c.fired,then:function(a,b,c){j.done(a).fail(b).progress(c);return this},always:function(){j.done.apply(j,arguments).fail.apply(j,arguments);return this},pipe:function(a,b,c){return h.Deferred(function(d){h.each({done:[a,
"resolve"],fail:[b,"reject"],progress:[c,"notify"]},function(a,b){var c=b[0],v=b[1],e;h.isFunction(c)?j[a](function(){e=c.apply(this,arguments);e&&h.isFunction(e.promise)?e.promise().then(d.resolve,d.reject,d.notify):d[v+"With"](this===j?d:this,[e])}):j[a](d[v])})}).promise()},promise:function(a){if(null==a)a=g;else for(var b in g)a[b]=g[b];return a}},j=g.promise({}),k;for(k in f)j[k]=f[k].fire,j[k+"With"]=f[k].fireWith;j.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},
b.disable,d.lock);a&&a.call(j,j);return j},when:function(a){function b(a){return function(b){g[a]=1<arguments.length?W.call(arguments,0):b;k.notifyWith(p,g)}}function c(a){return function(b){d[a]=1<arguments.length?W.call(arguments,0):b;--j||k.resolveWith(k,d)}}var d=W.call(arguments,0),e=0,f=d.length,g=Array(f),j=f,k=1>=f&&a&&h.isFunction(a.promise)?a:h.Deferred(),p=k.promise();if(1<f){for(;e<f;e++)d[e]&&d[e].promise&&h.isFunction(d[e].promise)?d[e].promise().then(c(e),k.reject,b(e)):--j;j||k.resolveWith(k,
d)}else k!==a&&k.resolveWith(k,f?[a]:[]);return p}});h.support=function(){var b,c,d,e,f,g,j,k,p,n,q,o,u=w.createElement("div");u.setAttribute("className","t");u.innerHTML=" <link/><table></table><a href='/a' style='top:1px;float:left;opacity:.55;'>a</a><input type='checkbox'/>";c=u.getElementsByTagName("*");d=u.getElementsByTagName("a")[0];if(!c||!c.length||!d)return{};e=w.createElement("select");f=e.appendChild(w.createElement("option"));g=u.getElementsByTagName("input")[0];b={leadingWhitespace:3===
u.firstChild.nodeType,tbody:!u.getElementsByTagName("tbody").length,htmlSerialize:!!u.getElementsByTagName("link").length,style:/top/.test(d.getAttribute("style")),hrefNormalized:"/a"===d.getAttribute("href"),opacity:/^0.55/.test(d.style.opacity),cssFloat:!!d.style.cssFloat,checkOn:"on"===g.value,optSelected:f.selected,getSetAttribute:"t"!==u.className,enctype:!!w.createElement("form").enctype,html5Clone:"<:nav></:nav>"!==w.createElement("nav").cloneNode(!0).outerHTML,submitBubbles:!0,changeBubbles:!0,
focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0};g.checked=!0;b.noCloneChecked=g.cloneNode(!0).checked;e.disabled=!0;b.optDisabled=!f.disabled;try{delete u.test}catch(m){b.deleteExpando=!1}!u.addEventListener&&u.attachEvent&&u.fireEvent&&(u.attachEvent("onclick",function(){b.noCloneEvent=!1}),u.cloneNode(!0).fireEvent("onclick"));g=w.createElement("input");g.value="t";g.setAttribute("type","radio");b.radioValue="t"===g.value;
g.setAttribute("checked","checked");u.appendChild(g);k=w.createDocumentFragment();k.appendChild(u.lastChild);b.checkClone=k.cloneNode(!0).cloneNode(!0).lastChild.checked;b.appendChecked=g.checked;k.removeChild(g);k.appendChild(u);u.innerHTML="";a.getComputedStyle&&(j=w.createElement("div"),j.style.width="0",j.style.marginRight="0",u.style.width="2px",u.appendChild(j),b.reliableMarginRight=0===(parseInt((a.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0));if(u.attachEvent)for(q in{submit:1,
change:1,focusin:1})n="on"+q,o=n in u,o||(u.setAttribute(n,"return;"),o="function"==typeof u[n]),b[q+"Bubbles"]=o;k.removeChild(u);k=e=f=j=u=g=null;h(function(){var a,c,d,e,f,H=w.getElementsByTagName("body")[0];!H||(a=w.createElement("div"),a.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",H.insertBefore(a,H.firstChild),u=w.createElement("div"),a.appendChild(u),u.innerHTML="<table><tr><td style='padding:0;border:0;display:none'></td><td>t</td></tr></table>",
p=u.getElementsByTagName("td"),o=0===p[0].offsetHeight,p[0].style.display="",p[1].style.display="none",b.reliableHiddenOffsets=o&&0===p[0].offsetHeight,u.innerHTML="",u.style.width=u.style.paddingLeft="1px",h.boxModel=b.boxModel=2===u.offsetWidth,"undefined"!=typeof u.style.zoom&&(u.style.display="inline",u.style.zoom=1,b.inlineBlockNeedsLayout=2===u.offsetWidth,u.style.display="",u.innerHTML="<div style='width:4px;'></div>",b.shrinkWrapBlocks=2!==u.offsetWidth),u.style.cssText="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;visibility:hidden;border:0;",
u.innerHTML="<div style='position:absolute;top:0;left:0;width:1px;height:1px;margin:0;border:5px solid #000;padding:0;'><div></div></div><table style='position:absolute;top:0;left:0;width:1px;height:1px;margin:0;border:5px solid #000;padding:0;' cellpadding='0' cellspacing='0'><tr><td></td></tr></table>",c=u.firstChild,d=c.firstChild,e=c.nextSibling.firstChild.firstChild,f={doesNotAddBorder:5!==d.offsetTop,doesAddBorderForTableAndCells:5===e.offsetTop},d.style.position="fixed",d.style.top="20px",
f.fixedPosition=20===d.offsetTop||15===d.offsetTop,d.style.position=d.style.top="",c.style.overflow="hidden",c.style.position="relative",f.subtractsBorderForOverflowNotVisible=-5===d.offsetTop,f.doesNotIncludeMarginInBodyOffset=1!==H.offsetTop,H.removeChild(a),u=null,h.extend(b,f))});return b}();var ca=/^(?:\{.*\}|\[.*\])$/,ra=/([A-Z])/g;h.extend({cache:{},uuid:0,expando:"jQuery"+(h.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},
hasData:function(a){a=a.nodeType?h.cache[a[h.expando]]:a[h.expando];return!!a&&!K(a)},data:function(a,c,d,e){if(h.acceptData(a)){var f,g,j=h.expando,k="string"==typeof c,p=a.nodeType,n=p?h.cache:a,q=p?a[j]:a[j]&&j,o="events"===c;if(q&&n[q]&&(o||e||n[q].data)||!(k&&d===b)){q||(p?a[j]=q=++h.uuid:q=j);n[q]||(n[q]={},p||(n[q].toJSON=h.noop));if("object"==typeof c||"function"==typeof c)e?n[q]=h.extend(n[q],c):n[q].data=h.extend(n[q].data,c);a=f=n[q];e||(f.data||(f.data={}),f=f.data);d!==b&&(f[h.camelCase(c)]=
d);if(o&&!f[c])return a.events;k?(g=f[c],null==g&&(g=f[h.camelCase(c)])):g=f;return g}}},removeData:function(a,b,c){if(h.acceptData(a)){var d,e,f,g=h.expando,j=a.nodeType,k=j?h.cache:a,p=j?a[g]:g;if(k[p]){if(b&&(d=c?k[p]:k[p].data)){h.isArray(b)||(b in d?b=[b]:(b=h.camelCase(b),b in d?b=[b]:b=b.split(" ")));for(e=0,f=b.length;e<f;e++)delete d[b[e]];if(!(c?K:h.isEmptyObject)(d))return}if(!c&&(delete k[p].data,!K(k[p])))return;h.support.deleteExpando||!k.setInterval?delete k[p]:k[p]=null;j&&(h.support.deleteExpando?
delete a[g]:a.removeAttribute?a.removeAttribute(g):a[g]=null)}}},_data:function(a,b,c){return h.data(a,b,c,!0)},acceptData:function(a){if(a.nodeName){var b=h.noData[a.nodeName.toLowerCase()];if(b)return!0!==b&&a.getAttribute("classid")===b}return!0}});h.fn.extend({data:function(a,c){var d,e,f,g=null;if("undefined"==typeof a){if(this.length&&(g=h.data(this[0]),1===this[0].nodeType&&!h._data(this[0],"parsedAttrs"))){e=this[0].attributes;for(var j=0,k=e.length;j<k;j++)f=e[j].name,0===f.indexOf("data-")&&
(f=h.camelCase(f.substring(5)),V(this[0],f,g[f]));h._data(this[0],"parsedAttrs",!0)}return g}if("object"==typeof a)return this.each(function(){h.data(this,a)});d=a.split(".");d[1]=d[1]?"."+d[1]:"";return c===b?(g=this.triggerHandler("getData"+d[1]+"!",[d[0]]),g===b&&this.length&&(g=h.data(this[0],a),g=V(this[0],a,g)),g===b&&d[1]?this.data(d[0]):g):this.each(function(){var b=h(this),e=[d[0],c];b.triggerHandler("setData"+d[1]+"!",e);h.data(this,a,c);b.triggerHandler("changeData"+d[1]+"!",e)})},removeData:function(a){return this.each(function(){h.removeData(this,
a)})}});h.extend({_mark:function(a,b){a&&(b=(b||"fx")+"mark",h._data(a,b,(h._data(a,b)||0)+1))},_unmark:function(a,b,c){!0!==a&&(c=b,b=a,a=!1);if(b){var c=c||"fx",d=c+"mark";(a=a?0:(h._data(b,d)||1)-1)?h._data(b,d,a):(h.removeData(b,d,!0),B(b,c,"mark"))}},queue:function(a,b,c){var d;if(a)return b=(b||"fx")+"queue",d=h._data(a,b),c&&(!d||h.isArray(c)?d=h._data(a,b,h.makeArray(c)):d.push(c)),d||[]},dequeue:function(a,b){var b=b||"fx",c=h.queue(a,b),d=c.shift(),e={};"inprogress"===d&&(d=c.shift());d&&
("fx"===b&&c.unshift("inprogress"),h._data(a,b+".run",e),d.call(a,function(){h.dequeue(a,b)},e));c.length||(h.removeData(a,b+"queue "+b+".run",!0),B(a,b,"queue"))}});h.fn.extend({queue:function(a,c){"string"!=typeof a&&(c=a,a="fx");return c===b?h.queue(this[0],a):this.each(function(){var b=h.queue(this,a,c);"fx"===a&&"inprogress"!==b[0]&&h.dequeue(this,a)})},dequeue:function(a){return this.each(function(){h.dequeue(this,a)})},delay:function(a,b){a=h.fx?h.fx.speeds[a]||a:a;b=b||"fx";return this.queue(b,
function(b,c){var d=setTimeout(b,a);c.stop=function(){clearTimeout(d)}})},clearQueue:function(a){return this.queue(a||"fx",[])},promise:function(a){function c(){--g||d.resolveWith(e,[e])}"string"!=typeof a&&(a=b);a=a||"fx";for(var d=h.Deferred(),e=this,f=e.length,g=1,j=a+"defer",k=a+"queue",a=a+"mark",p;f--;)if(p=h.data(e[f],j,b,!0)||(h.data(e[f],k,b,!0)||h.data(e[f],a,b,!0))&&h.data(e[f],j,h.Callbacks("once memory"),!0))g++,p.add(c);c();return d.promise()}});var la=/[\n\t\r]/g,C=/\s+/,I=/\r/g,ha=
/^(?:button|input)$/i,U=/^(?:button|input|object|select|textarea)$/i,ua=/^a(?:rea)?$/i,ma=/^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i,Ea=h.support.getSetAttribute,M,Fa,Ga;h.fn.extend({attr:function(a,b){return h.access(this,a,b,!0,h.attr)},removeAttr:function(a){return this.each(function(){h.removeAttr(this,a)})},prop:function(a,b){return h.access(this,a,b,!0,h.prop)},removeProp:function(a){a=h.propFix[a]||a;return this.each(function(){try{this[a]=
b,delete this[a]}catch(c){}})},addClass:function(a){var b,c,d,e,f,g,j;if(h.isFunction(a))return this.each(function(b){h(this).addClass(a.call(this,b,this.className))});if(a&&"string"==typeof a){b=a.split(C);for(c=0,d=this.length;c<d;c++)if(e=this[c],1===e.nodeType)if(!e.className&&1===b.length)e.className=a;else{f=" "+e.className+" ";for(g=0,j=b.length;g<j;g++)~f.indexOf(" "+b[g]+" ")||(f+=b[g]+" ");e.className=h.trim(f)}}return this},removeClass:function(a){var c,d,e,f,g,j,k;if(h.isFunction(a))return this.each(function(b){h(this).removeClass(a.call(this,
b,this.className))});if(a&&"string"==typeof a||a===b){c=(a||"").split(C);for(d=0,e=this.length;d<e;d++)if(f=this[d],1===f.nodeType&&f.className)if(a){g=(" "+f.className+" ").replace(la," ");for(j=0,k=c.length;j<k;j++)g=g.replace(" "+c[j]+" "," ");f.className=h.trim(g)}else f.className=""}return this},toggleClass:function(a,b){var c=typeof a,d="boolean"==typeof b;return h.isFunction(a)?this.each(function(c){h(this).toggleClass(a.call(this,c,this.className,b),b)}):this.each(function(){if("string"===
c)for(var e,f=0,g=h(this),j=b,k=a.split(C);e=k[f++];)j=d?j:!g.hasClass(e),g[j?"addClass":"removeClass"](e);else if("undefined"===c||"boolean"===c)this.className&&h._data(this,"__className__",this.className),this.className=this.className||!1===a?"":h._data(this,"__className__")||""})},hasClass:function(a){for(var a=" "+a+" ",b=0,c=this.length;b<c;b++)if(1===this[b].nodeType&&-1<(" "+this[b].className+" ").replace(la," ").indexOf(a))return!0;return!1},val:function(a){var c,d,e,f=this[0];if(arguments.length)return e=
h.isFunction(a),this.each(function(d){var f=h(this),g;if(1===this.nodeType&&(e?g=a.call(this,d,f.val()):g=a,null==g?g="":"number"==typeof g?g+="":h.isArray(g)&&(g=h.map(g,function(a){return null==a?"":a+""})),c=h.valHooks[this.nodeName.toLowerCase()]||h.valHooks[this.type],!c||!("set"in c)||c.set(this,g,"value")===b))this.value=g});if(f){if((c=h.valHooks[f.nodeName.toLowerCase()]||h.valHooks[f.type])&&"get"in c&&(d=c.get(f,"value"))!==b)return d;d=f.value;return"string"==typeof d?d.replace(I,""):
null==d?"":d}}});h.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d=a.selectedIndex,e=[],f=a.options,g="select-one"===a.type;if(0>d)return null;for(a=g?d:0,c=g?d+1:f.length;a<c;a++)if(b=f[a],b.selected&&(h.support.optDisabled?!b.disabled:null===b.getAttribute("disabled"))&&(!b.parentNode.disabled||!h.nodeName(b.parentNode,"optgroup"))){b=h(b).val();if(g)return b;e.push(b)}return g&&!e.length&&f.length?h(f[d]).val():
e},set:function(a,b){var c=h.makeArray(b);h(a).find("option").each(function(){this.selected=0<=h.inArray(h(this).val(),c)});c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var f,g,j,k=a.nodeType;if(a&&3!==k&&8!==k&&2!==k){if(e&&c in h.attrFn)return h(a)[c](d);if("undefined"==typeof a.getAttribute)return h.prop(a,c,d);j=1!==k||!h.isXMLDoc(a);j&&(c=c.toLowerCase(),g=h.attrHooks[c]||(ma.test(c)?Fa:M));if(d!==
b){if(null===d){h.removeAttr(a,c);return}if(g&&"set"in g&&j&&(f=g.set(a,d,c))!==b)return f;a.setAttribute(c,""+d);return d}if(g&&"get"in g&&j&&null!==(f=g.get(a,c)))return f;f=a.getAttribute(c);return null===f?b:f}},removeAttr:function(a,b){var c,d,e,f,g=0;if(b&&1===a.nodeType)for(d=b.toLowerCase().split(C),f=d.length;g<f;g++)e=d[g],e&&(c=h.propFix[e]||e,h.attr(a,e,""),a.removeAttribute(Ea?e:c),ma.test(e)&&c in a&&(a[c]=!1))},attrHooks:{type:{set:function(a,b){if(ha.test(a.nodeName)&&a.parentNode)h.error("type property can't be changed");
else if(!h.support.radioValue&&"radio"===b&&h.nodeName(a,"input")){var c=a.value;a.setAttribute("type",b);c&&(a.value=c);return b}}},value:{get:function(a,b){return M&&h.nodeName(a,"button")?M.get(a,b):b in a?a.value:null},set:function(a,b,c){if(M&&h.nodeName(a,"button"))return M.set(a,b,c);a.value=b}}},propFix:{tabindex:"tabIndex",readonly:"readOnly","for":"htmlFor","class":"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",
frameborder:"frameBorder",contenteditable:"contentEditable"},prop:function(a,c,d){var e,f,g,j=a.nodeType;if(a&&3!==j&&8!==j&&2!==j)return g=1!==j||!h.isXMLDoc(a),g&&(c=h.propFix[c]||c,f=h.propHooks[c]),d!==b?f&&"set"in f&&(e=f.set(a,d,c))!==b?e:a[c]=d:f&&"get"in f&&null!==(e=f.get(a,c))?e:a[c]},propHooks:{tabIndex:{get:function(a){var c=a.getAttributeNode("tabindex");return c&&c.specified?parseInt(c.value,10):U.test(a.nodeName)||ua.test(a.nodeName)&&a.href?0:b}}}});h.attrHooks.tabindex=h.propHooks.tabIndex;
Fa={get:function(a,c){var d,e=h.prop(a,c);return!0===e||"boolean"!=typeof e&&(d=a.getAttributeNode(c))&&!1!==d.nodeValue?c.toLowerCase():b},set:function(a,b,c){var d;!1===b?h.removeAttr(a,c):(d=h.propFix[c]||c,d in a&&(a[d]=!0),a.setAttribute(c,c.toLowerCase()));return c}};Ea||(Ga={name:!0,id:!0},M=h.valHooks.button={get:function(a,c){var d;return(d=a.getAttributeNode(c))&&(Ga[c]?""!==d.nodeValue:d.specified)?d.nodeValue:b},set:function(a,b,c){var d=a.getAttributeNode(c);d||(d=w.createAttribute(c),
a.setAttributeNode(d));return d.nodeValue=b+""}},h.attrHooks.tabindex.set=M.set,h.each(["width","height"],function(a,b){h.attrHooks[b]=h.extend(h.attrHooks[b],{set:function(a,c){if(""===c)return a.setAttribute(b,"auto"),c}})}),h.attrHooks.contenteditable={get:M.get,set:function(a,b,c){""===b&&(b="false");M.set(a,b,c)}});h.support.hrefNormalized||h.each(["href","src","width","height"],function(a,c){h.attrHooks[c]=h.extend(h.attrHooks[c],{get:function(a){a=a.getAttribute(c,2);return null===a?b:a}})});
h.support.style||(h.attrHooks.style={get:function(a){return a.style.cssText.toLowerCase()||b},set:function(a,b){return a.style.cssText=""+b}});h.support.optSelected||(h.propHooks.selected=h.extend(h.propHooks.selected,{get:function(){return null}}));h.support.enctype||(h.propFix.enctype="encoding");h.support.checkOn||h.each(["radio","checkbox"],function(){h.valHooks[this]={get:function(a){return null===a.getAttribute("value")?"on":a.value}}});h.each(["radio","checkbox"],function(){h.valHooks[this]=
h.extend(h.valHooks[this],{set:function(a,b){if(h.isArray(b))return a.checked=0<=h.inArray(h(a).val(),b)}})});var va=/^(?:textarea|input|select)$/i,Ha=/^([^\.]*)?(?:\.(.+))?$/,fb=/\bhover(\.\S+)?\b/,gb=/^key/,hb=/^(?:mouse|contextmenu)|click/,Ia=/^(?:focusinfocus|focusoutblur)$/,ib=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,jb=function(a){(a=ib.exec(a))&&(a[1]=(a[1]||"").toLowerCase(),a[3]=a[3]&&RegExp("(?:^|\\s)"+a[3]+"(?:\\s|$)"));return a},Ja=function(a){return h.event.special.hover?a:a.replace(fb,
"mouseenter$1 mouseleave$1")};h.event={add:function(a,c,d,e,f){var g,j,k,p,n,q,o,u,m,C;if(!(3===a.nodeType||8===a.nodeType||!c||!d||!(g=h._data(a)))){d.handler&&(u=d,d=u.handler);d.guid||(d.guid=h.guid++);k=g.events;k||(g.events=k={});j=g.handle;j||(g.handle=j=function(a){return"undefined"!=typeof h&&(!a||h.event.triggered!==a.type)?h.event.dispatch.apply(j.elem,arguments):b},j.elem=a);c=h.trim(Ja(c)).split(" ");for(g=0;g<c.length;g++){p=Ha.exec(c[g])||[];n=p[1];q=(p[2]||"").split(".").sort();C=h.event.special[n]||
{};n=(f?C.delegateType:C.bindType)||n;C=h.event.special[n]||{};o=h.extend({type:n,origType:p[1],data:e,handler:d,guid:d.guid,selector:f,quick:jb(f),namespace:q.join(".")},u);m=k[n];if(!m&&(m=k[n]=[],m.delegateCount=0,!C.setup||!1===C.setup.call(a,e,q,j)))a.addEventListener?a.addEventListener(n,j,!1):a.attachEvent&&a.attachEvent("on"+n,j);C.add&&(C.add.call(a,o),o.handler.guid||(o.handler.guid=d.guid));f?m.splice(m.delegateCount++,0,o):m.push(o);h.event.global[n]=!0}a=null}},global:{},remove:function(a,
b,c,d,e){var f=h.hasData(a)&&h._data(a),g,j,k,p,n,q,o,u,m,C,D,s;if(f&&(u=f.events)){b=h.trim(Ja(b||"")).split(" ");for(g=0;g<b.length;g++)if(j=Ha.exec(b[g])||[],k=p=j[1],n=j[2],k){m=h.event.special[k]||{};k=(d?m.delegateType:m.bindType)||k;D=u[k]||[];q=D.length;n=n?RegExp("(^|\\.)"+n.split(".").sort().join("\\.(?:.*\\.)?")+"(\\.|$)"):null;for(o=0;o<D.length;o++)s=D[o],(e||p===s.origType)&&(!c||c.guid===s.guid)&&(!n||n.test(s.namespace))&&(!d||d===s.selector||"**"===d&&s.selector)&&(D.splice(o--,1),
s.selector&&D.delegateCount--,m.remove&&m.remove.call(a,s));0===D.length&&q!==D.length&&((!m.teardown||!1===m.teardown.call(a,n))&&h.removeEvent(a,k,f.handle),delete u[k])}else for(k in u)h.event.remove(a,k+b[g],c,d,!0);h.isEmptyObject(u)&&(C=f.handle,C&&(C.elem=null),h.removeData(a,["events","handle"],!0))}},customEvent:{getData:!0,setData:!0,changeData:!0},trigger:function(c,d,e,f){if(!e||3!==e.nodeType&&8!==e.nodeType){var g=c.type||c,j=[],k,p,n,q,o,u,m;if(!Ia.test(g+h.event.triggered)&&(0<=g.indexOf("!")&&
(g=g.slice(0,-1),k=!0),0<=g.indexOf(".")&&(j=g.split("."),g=j.shift(),j.sort()),e&&!h.event.customEvent[g]||h.event.global[g]))if(c="object"==typeof c?c[h.expando]?c:new h.Event(g,c):new h.Event(g),c.type=g,c.isTrigger=!0,c.exclusive=k,c.namespace=j.join("."),c.namespace_re=c.namespace?RegExp("(^|\\.)"+j.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,j=0>g.indexOf(":")?"on"+g:"",e){if(c.result=b,c.target||(c.target=e),d=null!=d?h.makeArray(d):[],d.unshift(c),k=h.event.special[g]||{},!(k.trigger&&!1===k.trigger.apply(e,
d))){u=[[e,k.bindType||g]];if(!f&&!k.noBubble&&!h.isWindow(e)){for(m=k.delegateType||g,n=Ia.test(m+g)?e:e.parentNode,q=null;n;n=n.parentNode)u.push([n,m]),q=n;q&&q===e.ownerDocument&&u.push([q.defaultView||q.parentWindow||a,m])}for(p=0;p<u.length&&!c.isPropagationStopped();p++)n=u[p][0],c.type=u[p][1],o=(h._data(n,"events")||{})[c.type]&&h._data(n,"handle"),o&&o.apply(n,d),o=j&&n[j],o&&h.acceptData(n)&&!1===o.apply(n,d)&&c.preventDefault();c.type=g;!f&&!c.isDefaultPrevented()&&(!k._default||!1===
k._default.apply(e.ownerDocument,d))&&("click"!==g||!h.nodeName(e,"a"))&&h.acceptData(e)&&j&&e[g]&&("focus"!==g&&"blur"!==g||0!==c.target.offsetWidth)&&!h.isWindow(e)&&(q=e[j],q&&(e[j]=null),h.event.triggered=g,e[g](),h.event.triggered=b,q&&(e[j]=q));return c.result}}else for(p in e=h.cache,e)e[p].events&&e[p].events[g]&&h.event.trigger(c,d,e[p].handle.elem,!0)}},dispatch:function(c){var c=h.event.fix(c||a.event),d=(h._data(this,"events")||{})[c.type]||[],e=d.delegateCount,f=[].slice.call(arguments,
0),g=!c.exclusive&&!c.namespace,j=[],k,p,n,q,o,u,m,C,D;f[0]=c;c.delegateTarget=this;if(e&&!c.target.disabled&&(!c.button||"click"!==c.type)){n=h(this);n.context=this.ownerDocument||this;for(p=c.target;p!=this;p=p.parentNode||this){o={};m=[];n[0]=p;for(k=0;k<e;k++){C=d[k];D=C.selector;if(o[D]===b){var s=o,w=D,A;if(C.quick){A=C.quick;var x=p.attributes||{};A=(!A[1]||p.nodeName.toLowerCase()===A[1])&&(!A[2]||(x.id||{}).value===A[2])&&(!A[3]||A[3].test((x["class"]||{}).value))}else A=n.is(D);s[w]=A}o[D]&&
m.push(C)}m.length&&j.push({elem:p,matches:m})}}d.length>e&&j.push({elem:this,matches:d.slice(e)});for(k=0;k<j.length&&!c.isPropagationStopped();k++){u=j[k];c.currentTarget=u.elem;for(d=0;d<u.matches.length&&!c.isImmediatePropagationStopped();d++)if(C=u.matches[d],g||!c.namespace&&!C.namespace||c.namespace_re&&c.namespace_re.test(C.namespace))c.data=C.data,c.handleObj=C,q=((h.event.special[C.origType]||{}).handle||C.handler).apply(u.elem,f),q!==b&&(c.result=q,!1===q&&(c.preventDefault(),c.stopPropagation()))}return c.result},
props:"attrChange attrName relatedNode srcElement altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),fixHooks:{},keyHooks:{props:"char charCode key keyCode".split(" "),filter:function(a,b){null==a.which&&(a.which=null!=b.charCode?b.charCode:b.keyCode);return a}},mouseHooks:{props:"button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "),filter:function(a,c){var d,e,f,
g=c.button,h=c.fromElement;null==a.pageX&&null!=c.clientX&&(d=a.target.ownerDocument||w,e=d.documentElement,f=d.body,a.pageX=c.clientX+(e&&e.scrollLeft||f&&f.scrollLeft||0)-(e&&e.clientLeft||f&&f.clientLeft||0),a.pageY=c.clientY+(e&&e.scrollTop||f&&f.scrollTop||0)-(e&&e.clientTop||f&&f.clientTop||0));!a.relatedTarget&&h&&(a.relatedTarget=h===a.target?c.toElement:h);!a.which&&g!==b&&(a.which=g&1?1:g&2?3:g&4?2:0);return a}},fix:function(a){if(a[h.expando])return a;var c,d,e=a,f=h.event.fixHooks[a.type]||
{},g=f.props?this.props.concat(f.props):this.props,a=h.Event(e);for(c=g.length;c;)d=g[--c],a[d]=e[d];a.target||(a.target=e.srcElement||w);3===a.target.nodeType&&(a.target=a.target.parentNode);a.metaKey===b&&(a.metaKey=a.ctrlKey);return f.filter?f.filter(a,e):a},special:{ready:{setup:h.bindReady},load:{noBubble:!0},focus:{delegateType:"focusin"},blur:{delegateType:"focusout"},beforeunload:{setup:function(a,b,c){h.isWindow(this)&&(this.onbeforeunload=c)},teardown:function(a,b){this.onbeforeunload===
b&&(this.onbeforeunload=null)}}},simulate:function(a,b,c,d){a=h.extend(new h.Event,c,{type:a,isSimulated:!0,originalEvent:{}});d?h.event.trigger(a,null,b):h.event.dispatch.call(b,a);a.isDefaultPrevented()&&c.preventDefault()}};h.event.handle=h.event.dispatch;h.removeEvent=w.removeEventListener?function(a,b,c){a.removeEventListener&&a.removeEventListener(b,c,!1)}:function(a,b,c){a.detachEvent&&a.detachEvent("on"+b,c)};h.Event=function(a,b){if(!(this instanceof h.Event))return new h.Event(a,b);a&&a.type?
(this.originalEvent=a,this.type=a.type,this.isDefaultPrevented=a.defaultPrevented||!1===a.returnValue||a.getPreventDefault&&a.getPreventDefault()?x:E):this.type=a;b&&h.extend(this,b);this.timeStamp=a&&a.timeStamp||h.now();this[h.expando]=!0};h.Event.prototype={preventDefault:function(){this.isDefaultPrevented=x;var a=this.originalEvent;!a||(a.preventDefault?a.preventDefault():a.returnValue=!1)},stopPropagation:function(){this.isPropagationStopped=x;var a=this.originalEvent;!a||(a.stopPropagation&&
a.stopPropagation(),a.cancelBubble=!0)},stopImmediatePropagation:function(){this.isImmediatePropagationStopped=x;this.stopPropagation()},isDefaultPrevented:E,isPropagationStopped:E,isImmediatePropagationStopped:E};h.each({mouseenter:"mouseover",mouseleave:"mouseout"},function(a,b){h.event.special[a]={delegateType:b,bindType:b,handle:function(a){var c=a.relatedTarget,d=a.handleObj,e;if(!c||c!==this&&!h.contains(this,c))a.type=d.origType,e=d.handler.apply(this,arguments),a.type=b;return e}}});h.support.submitBubbles||
(h.event.special.submit={setup:function(){if(h.nodeName(this,"form"))return!1;h.event.add(this,"click._submit keypress._submit",function(a){a=a.target;(a=h.nodeName(a,"input")||h.nodeName(a,"button")?a.form:b)&&!a._submit_attached&&(h.event.add(a,"submit._submit",function(a){this.parentNode&&!a.isTrigger&&h.event.simulate("submit",this.parentNode,a,!0)}),a._submit_attached=!0)})},teardown:function(){if(h.nodeName(this,"form"))return!1;h.event.remove(this,"._submit")}});h.support.changeBubbles||(h.event.special.change=
{setup:function(){if(va.test(this.nodeName)){if("checkbox"===this.type||"radio"===this.type)h.event.add(this,"propertychange._change",function(a){"checked"===a.originalEvent.propertyName&&(this._just_changed=!0)}),h.event.add(this,"click._change",function(a){this._just_changed&&!a.isTrigger&&(this._just_changed=!1,h.event.simulate("change",this,a,!0))});return!1}h.event.add(this,"beforeactivate._change",function(a){a=a.target;va.test(a.nodeName)&&!a._change_attached&&(h.event.add(a,"change._change",
function(a){this.parentNode&&!a.isSimulated&&!a.isTrigger&&h.event.simulate("change",this.parentNode,a,!0)}),a._change_attached=!0)})},handle:function(a){var b=a.target;if(this!==b||a.isSimulated||a.isTrigger||"radio"!==b.type&&"checkbox"!==b.type)return a.handleObj.handler.apply(this,arguments)},teardown:function(){h.event.remove(this,"._change");return va.test(this.nodeName)}});h.support.focusinBubbles||h.each({focus:"focusin",blur:"focusout"},function(a,b){var c=0,d=function(a){h.event.simulate(b,
a.target,h.event.fix(a),!0)};h.event.special[b]={setup:function(){0===c++&&w.addEventListener(a,d,!0)},teardown:function(){0===--c&&w.removeEventListener(a,d,!0)}}});h.fn.extend({on:function(a,c,d,e,f){var g,j;if("object"==typeof a){"string"!=typeof c&&(d=c,c=b);for(j in a)this.on(j,c,d,a[j],f);return this}null==d&&null==e?(e=c,d=c=b):null==e&&("string"==typeof c?(e=d,d=b):(e=d,d=c,c=b));if(!1===e)e=E;else if(!e)return this;1===f&&(g=e,e=function(a){h().off(a);return g.apply(this,arguments)},e.guid=
g.guid||(g.guid=h.guid++));return this.each(function(){h.event.add(this,a,e,d,c)})},one:function(a,b,c,d){return this.on.call(this,a,b,c,d,1)},off:function(a,c,d){if(a&&a.preventDefault&&a.handleObj){var e=a.handleObj;h(a.delegateTarget).off(e.namespace?e.type+"."+e.namespace:e.type,e.selector,e.handler);return this}if("object"==typeof a){for(e in a)this.off(e,c,a[e]);return this}if(!1===c||"function"==typeof c)d=c,c=b;!1===d&&(d=E);return this.each(function(){h.event.remove(this,a,d,c)})},bind:function(a,
b,c){return this.on(a,null,b,c)},unbind:function(a,b){return this.off(a,null,b)},live:function(a,b,c){h(this.context).on(a,this.selector,b,c);return this},die:function(a,b){h(this.context).off(a,this.selector||"**",b);return this},delegate:function(a,b,c,d){return this.on(b,a,c,d)},undelegate:function(a,b,c){return 1==arguments.length?this.off(a,"**"):this.off(b,a,c)},trigger:function(a,b){return this.each(function(){h.event.trigger(a,b,this)})},triggerHandler:function(a,b){if(this[0])return h.event.trigger(a,
b,this[0],!0)},toggle:function(a){var b=arguments,c=a.guid||h.guid++,d=0,e=function(c){var e=(h._data(this,"lastToggle"+a.guid)||0)%d;h._data(this,"lastToggle"+a.guid,e+1);c.preventDefault();return b[e].apply(this,arguments)||!1};for(e.guid=c;d<b.length;)b[d++].guid=c;return this.click(e)},hover:function(a,b){return this.mouseenter(a).mouseleave(b||a)}});h.each("blur focus focusin focusout load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup error contextmenu".split(" "),
function(a,b){h.fn[b]=function(a,c){null==c&&(c=a,a=null);return 0<arguments.length?this.on(b,null,a,c):this.trigger(b)};h.attrFn&&(h.attrFn[b]=!0);gb.test(b)&&(h.event.fixHooks[b]=h.event.keyHooks);hb.test(b)&&(h.event.fixHooks[b]=h.event.mouseHooks)});(function(){function a(b,c,d,f,g,h){for(var g=0,j=f.length;g<j;g++){var v=f[g];if(v){for(var k=!1,v=v[b];v;){if(v[e]===d){k=f[v.sizset];break}if(1===v.nodeType)if(h||(v[e]=d,v.sizset=g),"string"!=typeof c){if(v===c){k=!0;break}}else if(0<o.filter(c,
[v]).length){k=v;break}v=v[b]}f[g]=k}}}function c(a,b,d,f,g,h){for(var g=0,j=f.length;g<j;g++){var v=f[g];if(v){for(var k=!1,v=v[a];v;){if(v[e]===d){k=f[v.sizset];break}1===v.nodeType&&!h&&(v[e]=d,v.sizset=g);if(v.nodeName.toLowerCase()===b){k=v;break}v=v[a]}f[g]=k}}}var d=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e="sizcache"+(Math.random()+"").replace(".",""),f=0,g=Object.prototype.toString,j=!1,k=!0,p=/\\/g,
n=/\r\n/g,q=/\W/;[0,0].sort(function(){k=!1;return 0});var o=function(a,b,c,e){c=c||[];b=b||w;var f=b;if(1!==b.nodeType&&9!==b.nodeType)return[];if(!a||"string"!=typeof a)return c;var h,j,v,k,p,n,H,q=!0,N=o.isXML(b),u=[],Aa=a;do if(d.exec(""),h=d.exec(Aa),h&&(Aa=h[3],u.push(h[1]),h[2])){k=h[3];break}while(h);if(1<u.length&&C.exec(a))if(2===u.length&&m.relative[u[0]])j=K(u[0]+u[1],b,e);else for(j=m.relative[u[0]]?[b]:o(u.shift(),b);u.length;)a=u.shift(),m.relative[a]&&(a+=u.shift()),j=K(a,j,e);else if(!e&&
1<u.length&&9===b.nodeType&&!N&&m.match.ID.test(u[0])&&!m.match.ID.test(u[u.length-1])&&(p=o.find(u.shift(),b,N),b=p.expr?o.filter(p.expr,p.set)[0]:p.set[0]),b)for(p=e?{expr:u.pop(),set:A(e)}:o.find(u.pop(),1===u.length&&("~"===u[0]||"+"===u[0])&&b.parentNode?b.parentNode:b,N),j=p.expr?o.filter(p.expr,p.set):p.set,0<u.length?v=A(j):q=!1;u.length;)n=u.pop(),H=n,m.relative[n]?H=u.pop():n="",null==H&&(H=b),m.relative[n](v,H,N);else v=[];v||(v=j);v||o.error(n||a);if("[object Array]"===g.call(v))if(q)if(b&&
1===b.nodeType)for(a=0;null!=v[a];a++)v[a]&&(!0===v[a]||1===v[a].nodeType&&o.contains(b,v[a]))&&c.push(j[a]);else for(a=0;null!=v[a];a++)v[a]&&1===v[a].nodeType&&c.push(j[a]);else c.push.apply(c,v);else A(v,c);k&&(o(k,f,c,e),o.uniqueSort(c));return c};o.uniqueSort=function(a){if(y&&(j=k,a.sort(y),j))for(var b=1;b<a.length;b++)a[b]===a[b-1]&&a.splice(b--,1);return a};o.matches=function(a,b){return o(a,null,null,b)};o.matchesSelector=function(a,b){return 0<o(b,null,null,[a]).length};o.find=function(a,
b,c){var d,e,f,g,h,j;if(!a)return[];for(e=0,f=m.order.length;e<f;e++)if(h=m.order[e],g=m.leftMatch[h].exec(a))if(j=g[1],g.splice(1,1),"\\"!==j.substr(j.length-1)&&(g[1]=(g[1]||"").replace(p,""),d=m.find[h](g,b,c),null!=d)){a=a.replace(m.match[h],"");break}d||(d="undefined"!=typeof b.getElementsByTagName?b.getElementsByTagName("*"):[]);return{set:d,expr:a}};o.filter=function(a,c,d,e){for(var f,g,h,j,v,k,p,n,H=a,q=[],N=c,u=c&&c[0]&&o.isXML(c[0]);a&&c.length;){for(h in m.filter)if(null!=(f=m.leftMatch[h].exec(a))&&
f[2])if(k=m.filter[h],v=f[1],g=!1,f.splice(1,1),"\\"!==v.substr(v.length-1)){N===q&&(q=[]);if(m.preFilter[h])if(f=m.preFilter[h](f,N,d,q,e,u)){if(!0===f)continue}else g=j=!0;if(f)for(p=0;null!=(v=N[p]);p++)v&&(j=k(v,f,p,N),n=e^j,d&&null!=j?n?g=!0:N[p]=!1:n&&(q.push(v),g=!0));if(j!==b){d||(N=q);a=a.replace(m.match[h],"");if(!g)return[];break}}if(a===H)if(null==g)o.error(a);else break;H=a}return N};o.error=function(a){throw Error("Syntax error, unrecognized expression: "+a);};var u=o.getText=function(a){var b,
c;b=a.nodeType;var d="";if(b)if(1===b||9===b){if("string"==typeof a.textContent)return a.textContent;if("string"==typeof a.innerText)return a.innerText.replace(n,"");for(a=a.firstChild;a;a=a.nextSibling)d+=u(a)}else{if(3===b||4===b)return a.nodeValue}else for(b=0;c=a[b];b++)8!==c.nodeType&&(d+=u(c));return d},m=o.selectors={order:["ID","NAME","TAG"],match:{ID:/#((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,CLASS:/\.((?:[\w\u00c0-\uFFFF\-]|\\.)+)/,NAME:/\[name=['"]*((?:[\w\u00c0-\uFFFF\-]|\\.)+)['"]*\]/,ATTR:/\[\s*((?:[\w\u00c0-\uFFFF\-]|\\.)+)\s*(?:(\S?=)\s*(?:(['"])(.*?)\3|(#?(?:[\w\u00c0-\uFFFF\-]|\\.)*)|)|)\s*\]/,
TAG:/^((?:[\w\u00c0-\uFFFF\*\-]|\\.)+)/,CHILD:/:(only|nth|last|first)-child(?:\(\s*(even|odd|(?:[+\-]?\d+|(?:[+\-]?\d*)?n\s*(?:[+\-]\s*\d+)?))\s*\))?/,POS:/:(nth|eq|gt|lt|first|last|even|odd)(?:\((\d*)\))?(?=[^\-]|$)/,PSEUDO:/:((?:[\w\u00c0-\uFFFF\-]|\\.)+)(?:\((['"]?)((?:\([^\)]+\)|[^\(\)]*)+)\2\))?/},leftMatch:{},attrMap:{"class":"className","for":"htmlFor"},attrHandle:{href:function(a){return a.getAttribute("href")},type:function(a){return a.getAttribute("type")}},relative:{"+":function(a,b){var c=
"string"==typeof b,d=c&&!q.test(b),c=c&&!d;d&&(b=b.toLowerCase());for(var d=0,e=a.length,f;d<e;d++)if(f=a[d]){for(;(f=f.previousSibling)&&1!==f.nodeType;);a[d]=c||f&&f.nodeName.toLowerCase()===b?f||!1:f===b}c&&o.filter(b,a,!0)},">":function(a,b){var c,d="string"==typeof b,e=0,f=a.length;if(d&&!q.test(b))for(b=b.toLowerCase();e<f;e++){if(c=a[e])c=c.parentNode,a[e]=c.nodeName.toLowerCase()===b?c:!1}else{for(;e<f;e++)c=a[e],c&&(a[e]=d?c.parentNode:c.parentNode===b);d&&o.filter(b,a,!0)}},"":function(b,
d,e){var g,h=f++,j=a;"string"==typeof d&&!q.test(d)&&(d=d.toLowerCase(),g=d,j=c);j("parentNode",d,h,b,g,e)},"~":function(b,d,e){var g,h=f++,j=a;"string"==typeof d&&!q.test(d)&&(d=d.toLowerCase(),g=d,j=c);j("previousSibling",d,h,b,g,e)}},find:{ID:function(a,b,c){if("undefined"!=typeof b.getElementById&&!c)return(a=b.getElementById(a[1]))&&a.parentNode?[a]:[]},NAME:function(a,b){if("undefined"!=typeof b.getElementsByName){for(var c=[],d=b.getElementsByName(a[1]),e=0,f=d.length;e<f;e++)d[e].getAttribute("name")===
a[1]&&c.push(d[e]);return 0===c.length?null:c}},TAG:function(a,b){if("undefined"!=typeof b.getElementsByTagName)return b.getElementsByTagName(a[1])}},preFilter:{CLASS:function(a,b,c,d,e,f){a=" "+a[1].replace(p,"")+" ";if(f)return a;for(var f=0,g;null!=(g=b[f]);f++)g&&(e^(g.className&&0<=(" "+g.className+" ").replace(/[\t\n\r]/g," ").indexOf(a))?c||d.push(g):c&&(b[f]=!1));return!1},ID:function(a){return a[1].replace(p,"")},TAG:function(a){return a[1].replace(p,"").toLowerCase()},CHILD:function(a){if("nth"===
a[1]){a[2]||o.error(a[0]);a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec("even"===a[2]&&"2n"||"odd"===a[2]&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0;a[3]=b[3]-0}else a[2]&&o.error(a[0]);a[0]=f++;return a},ATTR:function(a,b,c,d,e,f){b=a[1]=a[1].replace(p,"");!f&&m.attrMap[b]&&(a[1]=m.attrMap[b]);a[4]=(a[4]||a[5]||"").replace(p,"");"~="===a[2]&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(a,b,c,e,f){if("not"===a[1])if(1<(d.exec(a[3])||"").length||
/^\w/.test(a[3]))a[3]=o(a[3],null,null,b);else return a=o.filter(a[3],b,c,1^f),c||e.push.apply(e,a),!1;else if(m.match.POS.test(a[0])||m.match.CHILD.test(a[0]))return!0;return a},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return!1===a.disabled&&"hidden"!==a.type},disabled:function(a){return!0===a.disabled},checked:function(a){return!0===a.checked},selected:function(a){return!0===a.selected},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},
has:function(a,b,c){return!!o(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return"input"===a.nodeName.toLowerCase()&&"text"===c&&(b===c||null===b)},radio:function(a){return"input"===a.nodeName.toLowerCase()&&"radio"===a.type},checkbox:function(a){return"input"===a.nodeName.toLowerCase()&&"checkbox"===a.type},file:function(a){return"input"===a.nodeName.toLowerCase()&&"file"===a.type},password:function(a){return"input"===a.nodeName.toLowerCase()&&
"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return("input"===b||"button"===b)&&"submit"===a.type},image:function(a){return"input"===a.nodeName.toLowerCase()&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return("input"===b||"button"===b)&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return"input"===b&&"button"===a.type||"button"===b},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===
a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return 0===b},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return 0===b%2},odd:function(a,b){return 1===b%2},lt:function(a,b,c){return b<c[3]-0},gt:function(a,b,c){return b>c[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=m.filters[e];if(f)return f(a,c,b,d);if("contains"===e)return 0<=(a.textContent||a.innerText||u([a])||"").indexOf(b[3]);
if("not"===e){b=b[3];c=0;for(d=b.length;c<d;c++)if(b[c]===a)return!1;return!0}o.error(e)},CHILD:function(a,b){var c,d,f,g,h,j;c=b[1];j=a;switch(c){case "only":case "first":for(;j=j.previousSibling;)if(1===j.nodeType)return!1;if("first"===c)return!0;j=a;case "last":for(;j=j.nextSibling;)if(1===j.nodeType)return!1;return!0;case "nth":c=b[2];d=b[3];if(1===c&&0===d)return!0;f=b[0];g=a.parentNode;if(g&&(g[e]!==f||!a.nodeIndex)){h=0;for(j=g.firstChild;j;j=j.nextSibling)1===j.nodeType&&(j.nodeIndex=++h);
g[e]=f}j=a.nodeIndex-d;return 0===c?0===j:0===j%c&&0<=j/c}},ID:function(a,b){return 1===a.nodeType&&a.getAttribute("id")===b},TAG:function(a,b){return"*"===b&&1===a.nodeType||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return-1<(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)},ATTR:function(a,b){var c=b[1],c=o.attr?o.attr(a,c):m.attrHandle[c]?m.attrHandle[c](a):null!=a[c]?a[c]:a.getAttribute(c),d=c+"",e=b[2],f=b[4];return null==c?"!="===e:!e&&o.attr?null!=c:"="===e?
d===f:"*="===e?0<=d.indexOf(f):"~="===e?0<=(" "+d+" ").indexOf(f):f?"!="===e?d!==f:"^="===e?0===d.indexOf(f):"$="===e?d.substr(d.length-f.length)===f:"|="===e?d===f||d.substr(0,f.length+1)===f+"-":!1:d&&!1!==c},POS:function(a,b,c,d){var e=m.setFilters[b[2]];if(e)return e(a,c,b,d)}}},C=m.match.POS,D=function(a,b){return"\\"+(b-0+1)},s;for(s in m.match)m.match[s]=RegExp(m.match[s].source+/(?![^\[]*\])(?![^\(]*\))/.source),m.leftMatch[s]=RegExp(/(^(?:.|\r|\n)*?)/.source+m.match[s].source.replace(/\\(\d+)/g,
D));var A=function(a,b){a=Array.prototype.slice.call(a,0);return b?(b.push.apply(b,a),b):a};try{Array.prototype.slice.call(w.documentElement.childNodes,0)}catch(x){A=function(a,b){var c=0,d=b||[];if("[object Array]"===g.call(a))Array.prototype.push.apply(d,a);else if("number"==typeof a.length)for(var e=a.length;c<e;c++)d.push(a[c]);else for(;a[c];c++)d.push(a[c]);return d}}var y,B;w.documentElement.compareDocumentPosition?y=function(a,b){return a===b?(j=!0,0):!a.compareDocumentPosition||!b.compareDocumentPosition?
a.compareDocumentPosition?-1:1:a.compareDocumentPosition(b)&4?-1:1}:(y=function(a,b){if(a===b)return j=!0,0;if(a.sourceIndex&&b.sourceIndex)return a.sourceIndex-b.sourceIndex;var c,d,e=[],f=[];c=a.parentNode;d=b.parentNode;var g=c;if(c===d)return B(a,b);if(!c)return-1;if(!d)return 1;for(;g;)e.unshift(g),g=g.parentNode;for(g=d;g;)f.unshift(g),g=g.parentNode;c=e.length;d=f.length;for(g=0;g<c&&g<d;g++)if(e[g]!==f[g])return B(e[g],f[g]);return g===c?B(a,f[g],-1):B(e[g],b,1)},B=function(a,b,c){if(a===
b)return c;for(a=a.nextSibling;a;){if(a===b)return-1;a=a.nextSibling}return 1});(function(){var a=w.createElement("div"),c="script"+(new Date).getTime(),d=w.documentElement;a.innerHTML="<a name='"+c+"'/>";d.insertBefore(a,d.firstChild);w.getElementById(c)&&(m.find.ID=function(a,c,d){if("undefined"!=typeof c.getElementById&&!d)return(c=c.getElementById(a[1]))?c.id===a[1]||"undefined"!=typeof c.getAttributeNode&&c.getAttributeNode("id").nodeValue===a[1]?[c]:b:[]},m.filter.ID=function(a,b){var c="undefined"!=
typeof a.getAttributeNode&&a.getAttributeNode("id");return 1===a.nodeType&&c&&c.nodeValue===b});d.removeChild(a);d=a=null})();(function(){var a=w.createElement("div");a.appendChild(w.createComment(""));0<a.getElementsByTagName("*").length&&(m.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if("*"===a[1]){for(var d=[],e=0;c[e];e++)1===c[e].nodeType&&d.push(c[e]);c=d}return c});a.innerHTML="<a href='#'></a>";a.firstChild&&"undefined"!=typeof a.firstChild.getAttribute&&"#"!==a.firstChild.getAttribute("href")&&
(m.attrHandle.href=function(a){return a.getAttribute("href",2)});a=null})();w.querySelectorAll&&function(){var a=o,b=w.createElement("div");b.innerHTML="<p class='TEST'></p>";if(!b.querySelectorAll||0!==b.querySelectorAll(".TEST").length){o=function(b,c,d,e){c=c||w;if(!e&&!o.isXML(c)){var f=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(f&&(1===c.nodeType||9===c.nodeType)){if(f[1])return A(c.getElementsByTagName(b),d);if(f[2]&&m.find.CLASS&&c.getElementsByClassName)return A(c.getElementsByClassName(f[2]),
d)}if(9===c.nodeType){if("body"===b&&c.body)return A([c.body],d);if(f&&f[3]){var g=c.getElementById(f[3]);if(!g||!g.parentNode)return A([],d);if(g.id===f[3])return A([g],d)}try{return A(c.querySelectorAll(b),d)}catch(h){}}else if(1===c.nodeType&&"object"!==c.nodeName.toLowerCase()){var f=c,j=(g=c.getAttribute("id"))||"__sizzle__",v=c.parentNode,k=/^\s*[+~]/.test(b);g?j=j.replace(/'/g,"\\$&"):c.setAttribute("id",j);k&&v&&(c=c.parentNode);try{if(!k||v)return A(c.querySelectorAll("[id='"+j+"'] "+b),
d)}catch(p){}finally{g||f.removeAttribute("id")}}}return a(b,c,d,e)};for(var c in a)o[c]=a[c];b=null}}();(function(){var a=w.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var c=!b.call(w.createElement("div"),"div"),d=!1;try{b.call(w.documentElement,"[test!='']:sizzle")}catch(e){d=!0}o.matchesSelector=function(a,e){e=e.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!o.isXML(a))try{if(d||!m.match.PSEUDO.test(e)&&!/!=/.test(e)){var f=b.call(a,
e);if(f||!c||a.document&&11!==a.document.nodeType)return f}}catch(g){}return 0<o(e,null,null,[a]).length}}})();(function(){var a=w.createElement("div");a.innerHTML="<div class='test e'></div><div class='test'></div>";if(a.getElementsByClassName&&0!==a.getElementsByClassName("e").length&&(a.lastChild.className="e",1!==a.getElementsByClassName("e").length))m.order.splice(1,0,"CLASS"),m.find.CLASS=function(a,b,c){if("undefined"!=typeof b.getElementsByClassName&&!c)return b.getElementsByClassName(a[1])},
a=null})();w.documentElement.contains?o.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:w.documentElement.compareDocumentPosition?o.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:o.contains=function(){return!1};o.isXML=function(a){return(a=(a?a.ownerDocument||a:0).documentElement)?"HTML"!==a.nodeName:!1};var K=function(a,b,c){for(var d,e=[],f="",b=b.nodeType?[b]:b;d=m.match.PSEUDO.exec(a);)f+=d[0],a=a.replace(m.match.PSEUDO,"");a=m.relative[a]?a+"*":a;d=0;for(var g=
b.length;d<g;d++)o(a,b[d],e,c);return o.filter(f,e)};o.attr=h.attr;o.selectors.attrMap={};h.find=o;h.expr=o.selectors;h.expr[":"]=h.expr.filters;h.unique=o.uniqueSort;h.text=o.getText;h.isXMLDoc=o.isXML;h.contains=o.contains})();var kb=/Until$/,lb=/^(?:parents|prevUntil|prevAll)/,mb=/,/,db=/^.[^:#\[\.,]*$/,nb=Array.prototype.slice,Ka=h.expr.match.POS,ob={children:!0,contents:!0,next:!0,prev:!0};h.fn.extend({find:function(a){var b=this,c,d;if("string"!=typeof a)return h(a).filter(function(){for(c=
0,d=b.length;c<d;c++)if(h.contains(b[c],this))return!0});var e=this.pushStack("","find",a),f,g,j;for(c=0,d=this.length;c<d;c++)if(f=e.length,h.find(a,this[c],e),0<c)for(g=f;g<e.length;g++)for(j=0;j<f;j++)if(e[j]===e[g]){e.splice(g--,1);break}return e},has:function(a){var b=h(a);return this.filter(function(){for(var a=0,c=b.length;a<c;a++)if(h.contains(this,b[a]))return!0})},not:function(a){return this.pushStack(F(this,a,!1),"not",a)},filter:function(a){return this.pushStack(F(this,a,!0),"filter",
a)},is:function(a){return!!a&&("string"==typeof a?Ka.test(a)?0<=h(a,this.context).index(this[0]):0<h.filter(a,this).length:0<this.filter(a).length)},closest:function(a,b){var c=[],d,e,f=this[0];if(h.isArray(a)){for(e=1;f&&f.ownerDocument&&f!==b;){for(d=0;d<a.length;d++)h(f).is(a[d])&&c.push({selector:a[d],elem:f,level:e});f=f.parentNode;e++}return c}var g=Ka.test(a)||"string"!=typeof a?h(a,b||this.context):0;for(d=0,e=this.length;d<e;d++)for(f=this[d];f;){if(g?-1<g.index(f):h.find.matchesSelector(f,
a)){c.push(f);break}f=f.parentNode;if(!f||!f.ownerDocument||f===b||11===f.nodeType)break}c=1<c.length?h.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){return!a?this[0]&&this[0].parentNode?this.prevAll().length:-1:"string"==typeof a?h.inArray(this[0],h(a)):h.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c="string"==typeof a?h(a,b):h.makeArray(a&&a.nodeType?[a]:a),d=h.merge(this.get(),c);return this.pushStack(!c[0]||!c[0].parentNode||11===c[0].parentNode.nodeType||!d[0]||
!d[0].parentNode||11===d[0].parentNode.nodeType?d:h.unique(d))},andSelf:function(){return this.add(this.prevObject)}});h.each({parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},parents:function(a){return h.dir(a,"parentNode")},parentsUntil:function(a,b,c){return h.dir(a,"parentNode",c)},next:function(a){return h.nth(a,2,"nextSibling")},prev:function(a){return h.nth(a,2,"previousSibling")},nextAll:function(a){return h.dir(a,"nextSibling")},prevAll:function(a){return h.dir(a,"previousSibling")},
nextUntil:function(a,b,c){return h.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return h.dir(a,"previousSibling",c)},siblings:function(a){return h.sibling(a.parentNode.firstChild,a)},children:function(a){return h.sibling(a.firstChild)},contents:function(a){return h.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:h.makeArray(a.childNodes)}},function(a,b){h.fn[a]=function(c,d){var e=h.map(this,b,c);kb.test(a)||(d=c);d&&"string"==typeof d&&(e=h.filter(d,e));e=1<this.length&&!ob[a]?
h.unique(e):e;(1<this.length||mb.test(d))&&lb.test(a)&&(e=e.reverse());return this.pushStack(e,a,nb.call(arguments).join(","))}});h.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return 1===b.length?h.find.matchesSelector(b[0],a)?[b[0]]:[]:h.find.matches(a,b)},dir:function(a,c,d){for(var e=[],a=a[c];a&&9!==a.nodeType&&(d===b||1!==a.nodeType||!h(a).is(d));)1===a.nodeType&&e.push(a),a=a[c];return e},nth:function(a,b,c){for(var b=b||1,d=0;a&&!(1===a.nodeType&&++d===b);a=a[c]);return a},sibling:function(a,
b){for(var c=[];a;a=a.nextSibling)1===a.nodeType&&a!==b&&c.push(a);return c}});var Ca="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",pb=/ jQuery\d+="(?:\d+|null)"/g,wa=/^\s+/,La=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,Ma=/<([\w:]+)/,qb=/<tbody/i,rb=/<|&#?\w+;/,sb=/<(?:script|style)/i,tb=/<(?:script|object|embed|option|style)/i,Na=RegExp("<(?:"+Ca+")","i"),Oa=/checked\s*(?:[^=]|=\s*.checked.)/i,
ub=/\/(java|ecma)script/i,cb=/^\s*<!(?:\[CDATA\[|\-\-)/,P={option:[1,"<select multiple='multiple'>","</select>"],legend:[1,"<fieldset>","</fieldset>"],thead:[1,"<table>","</table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],col:[2,"<table><tbody></tbody><colgroup>","</colgroup></table>"],area:[1,"<map>","</map>"],_default:[0,"",""]},Pa=J(w);P.optgroup=P.option;P.tbody=P.tfoot=P.colgroup=P.caption=P.thead;P.th=P.td;h.support.htmlSerialize||(P._default=
[1,"div<div>","</div>"]);h.fn.extend({text:function(a){return h.isFunction(a)?this.each(function(b){var c=h(this);c.text(a.call(this,b,c.text()))}):"object"!=typeof a&&a!==b?this.empty().append((this[0]&&this[0].ownerDocument||w).createTextNode(a)):h.text(this)},wrapAll:function(a){if(h.isFunction(a))return this.each(function(b){h(this).wrapAll(a.call(this,b))});if(this[0]){var b=h(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]);b.map(function(){for(var a=this;a.firstChild&&
1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return h.isFunction(a)?this.each(function(b){h(this).wrapInner(a.call(this,b))}):this.each(function(){var b=h(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){var b=h.isFunction(a);return this.each(function(c){h(this).wrapAll(b?a.call(this,c):a)})},unwrap:function(){return this.parent().each(function(){h.nodeName(this,"body")||h(this).replaceWith(this.childNodes)}).end()},
append:function(){return this.domManip(arguments,!0,function(a){1===this.nodeType&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){1===this.nodeType&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=h.clean(arguments);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&
this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,h.clean(arguments));return a}},remove:function(a,b){for(var c=0,d;null!=(d=this[c]);c++)if(!a||h.filter(a,[d]).length)!b&&1===d.nodeType&&(h.cleanData(d.getElementsByTagName("*")),h.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;null!=(b=this[a]);a++)for(1===
b.nodeType&&h.cleanData(b.getElementsByTagName("*"));b.firstChild;)b.removeChild(b.firstChild);return this},clone:function(a,b){a=null==a?!1:a;b=null==b?a:b;return this.map(function(){return h.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&1===this[0].nodeType?this[0].innerHTML.replace(pb,""):null;if("string"==typeof a&&!sb.test(a)&&(h.support.leadingWhitespace||!wa.test(a))&&!P[(Ma.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(La,"<$1></$2>");try{for(var c=0,d=this.length;c<d;c++)1===
this[c].nodeType&&(h.cleanData(this[c].getElementsByTagName("*")),this[c].innerHTML=a)}catch(e){this.empty().append(a)}}else h.isFunction(a)?this.each(function(b){var c=h(this);c.html(a.call(this,b,c.html()))}):this.empty().append(a);return this},replaceWith:function(a){if(this[0]&&this[0].parentNode){if(h.isFunction(a))return this.each(function(b){var c=h(this),d=c.html();c.replaceWith(a.call(this,b,d))});"string"!=typeof a&&(a=h(a).detach());return this.each(function(){var b=this.nextSibling,c=
this.parentNode;h(this).remove();b?h(b).before(a):h(c).append(a)})}return this.length?this.pushStack(h(h.isFunction(a)?a():a),"replaceWith",a):this},detach:function(a){return this.remove(a,!0)},domManip:function(a,c,d){var e,f,g,j,k=a[0],p=[];if(!h.support.checkClone&&3===arguments.length&&"string"==typeof k&&Oa.test(k))return this.each(function(){h(this).domManip(a,c,d,!0)});if(h.isFunction(k))return this.each(function(e){var f=h(this);a[0]=k.call(this,e,c?f.html():b);f.domManip(a,c,d)});if(this[0]){j=
k&&k.parentNode;h.support.parentNode&&j&&11===j.nodeType&&j.childNodes.length===this.length?e={fragment:j}:e=h.buildFragment(a,this,p);g=e.fragment;1===g.childNodes.length?f=g=g.firstChild:f=g.firstChild;if(f){c=c&&h.nodeName(f,"tr");f=0;j=this.length;for(var n=j-1;f<j;f++)d.call(c?h.nodeName(this[f],"table")?this[f].getElementsByTagName("tbody")[0]||this[f].appendChild(this[f].ownerDocument.createElement("tbody")):this[f]:this[f],e.cacheable||1<j&&f<n?h.clone(g,!0,!0):g)}p.length&&h.each(p,o)}return this}});
h.buildFragment=function(a,b,c){var d,e,f,g,j=a[0];b&&b[0]&&(g=b[0].ownerDocument||b[0]);g.createDocumentFragment||(g=w);1===a.length&&"string"==typeof j&&512>j.length&&g===w&&"<"===j.charAt(0)&&!tb.test(j)&&(h.support.checkClone||!Oa.test(j))&&(h.support.html5Clone||!Na.test(j))&&(e=!0,f=h.fragments[j],f&&1!==f&&(d=f));d||(d=g.createDocumentFragment(),h.clean(a,g,d,c));e&&(h.fragments[j]=f?d:1);return{fragment:d,cacheable:e}};h.fragments={};h.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",
insertAfter:"after",replaceAll:"replaceWith"},function(a,b){h.fn[a]=function(c){var d=[],c=h(c),e=1===this.length&&this[0].parentNode;if(e&&11===e.nodeType&&1===e.childNodes.length&&1===c.length)return c[b](this[0]),this;for(var e=0,f=c.length;e<f;e++){var g=(0<e?this.clone(!0):this).get();h(c[e])[b](g);d=d.concat(g)}return this.pushStack(d,a,c.selector)}});h.extend({clone:function(a,b,c){var d,e,f;h.support.html5Clone||!Na.test("<"+a.nodeName)?d=a.cloneNode(!0):(d=w.createElement("div"),Pa.appendChild(d),
d.innerHTML=a.outerHTML,d=d.firstChild);var g=d;if((!h.support.noCloneEvent||!h.support.noCloneChecked)&&(1===a.nodeType||11===a.nodeType)&&!h.isXMLDoc(a)){A(a,g);d=D(a);e=D(g);for(f=0;d[f];++f)e[f]&&A(d[f],e[f])}if(b&&(y(a,g),c)){d=D(a);e=D(g);for(f=0;d[f];++f)y(d[f],e[f])}return g},clean:function(a,b,c,d){b=b||w;"undefined"==typeof b.createElement&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||w);for(var e=[],f,g=0,j;null!=(j=a[g]);g++)if("number"==typeof j&&(j+=""),j){if("string"==typeof j)if(rb.test(j)){j=
j.replace(La,"<$1></$2>");f=(Ma.exec(j)||["",""])[1].toLowerCase();var k=P[f]||P._default,n=k[0],q=b.createElement("div");for(b===w?Pa.appendChild(q):J(b).appendChild(q),q.innerHTML=k[1]+j+k[2];n--;)q=q.lastChild;if(!h.support.tbody){n=qb.test(j);k="table"===f&&!n?q.firstChild&&q.firstChild.childNodes:"<table>"===k[1]&&!n?q.childNodes:[];for(f=k.length-1;0<=f;--f)h.nodeName(k[f],"tbody")&&!k[f].childNodes.length&&k[f].parentNode.removeChild(k[f])}!h.support.leadingWhitespace&&wa.test(j)&&q.insertBefore(b.createTextNode(wa.exec(j)[0]),
q.firstChild);j=q.childNodes}else j=b.createTextNode(j);var o;if(!h.support.appendChecked)if(j[0]&&"number"==typeof(o=j.length))for(f=0;f<o;f++)p(j[f]);else p(j);j.nodeType?e.push(j):e=h.merge(e,j)}if(c){a=function(a){return!a.type||ub.test(a.type)};for(g=0;e[g];g++)d&&h.nodeName(e[g],"script")&&(!e[g].type||"text/javascript"===e[g].type.toLowerCase())?d.push(e[g].parentNode?e[g].parentNode.removeChild(e[g]):e[g]):(1===e[g].nodeType&&(b=h.grep(e[g].getElementsByTagName("script"),a),e.splice.apply(e,
[g+1,0].concat(b))),c.appendChild(e[g]))}return e},cleanData:function(a){for(var b,c,d=h.cache,e=h.event.special,f=h.support.deleteExpando,g=0,j;null!=(j=a[g]);g++)if(!j.nodeName||!h.noData[j.nodeName.toLowerCase()])if(c=j[h.expando]){if((b=d[c])&&b.events){for(var k in b.events)e[k]?h.event.remove(j,k):h.removeEvent(j,k,b.handle);b.handle&&(b.handle.elem=null)}f?delete j[h.expando]:j.removeAttribute&&j.removeAttribute(h.expando);delete d[c]}}});var xa=/alpha\([^)]*\)/i,vb=/opacity=([^)]*)/,wb=/([A-Z]|^ms)/g,
Qa=/^-?\d+(?:px)?$/i,xb=/^-?\d/,yb=/^([\-+])=([\-+.\de]+)/,zb={position:"absolute",visibility:"hidden",display:"block"},ab=["Left","Right"],bb=["Top","Bottom"],ba,Ra,Sa;h.fn.css=function(a,c){return 2===arguments.length&&c===b?this:h.access(this,a,c,!0,function(a,c,d){return d!==b?h.style(a,c,d):h.css(a,c)})};h.extend({cssHooks:{opacity:{get:function(a,b){if(b){var c=ba(a,"opacity","opacity");return""===c?"1":c}return a.style.opacity}}},cssNumber:{fillOpacity:!0,fontWeight:!0,lineHeight:!0,opacity:!0,
orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{"float":h.support.cssFloat?"cssFloat":"styleFloat"},style:function(a,c,d,e){if(a&&3!==a.nodeType&&8!==a.nodeType&&a.style){var f,g,j=h.camelCase(c),k=a.style,p=h.cssHooks[j],c=h.cssProps[j]||j;if(d===b)return p&&"get"in p&&(f=p.get(a,!1,e))!==b?f:k[c];g=typeof d;"string"===g&&(f=yb.exec(d))&&(d=+(f[1]+1)*+f[2]+parseFloat(h.css(a,c)),g="number");if(!(null==d||"number"===g&&isNaN(d)))if("number"===g&&!h.cssNumber[j]&&(d+="px"),!p||!("set"in p)||(d=p.set(a,
d))!==b)try{k[c]=d}catch(n){}}},css:function(a,c,d){var e,f;c=h.camelCase(c);f=h.cssHooks[c];c=h.cssProps[c]||c;"cssFloat"===c&&(c="float");if(f&&"get"in f&&(e=f.get(a,!0,d))!==b)return e;if(ba)return ba(a,c)},swap:function(a,b,c){var d={},e;for(e in b)d[e]=a.style[e],a.style[e]=b[e];c.call(a);for(e in b)a.style[e]=d[e]}});h.curCSS=h.css;h.each(["height","width"],function(a,b){h.cssHooks[b]={get:function(a,c,d){var e;if(c){if(0!==a.offsetWidth)return q(a,b,d);h.swap(a,zb,function(){e=q(a,b,d)});return e}},
set:function(a,b){if(!Qa.test(b))return b;b=parseFloat(b);if(0<=b)return b+"px"}}});h.support.opacity||(h.cssHooks.opacity={get:function(a,b){return vb.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=h.isNumeric(b)?"alpha(opacity="+100*b+")":"",f=d&&d.filter||c.filter||"";c.zoom=1;if(1<=b&&""===h.trim(f.replace(xa,""))&&(c.removeAttribute("filter"),d&&!d.filter))return;c.filter=xa.test(f)?
f.replace(xa,e):f+" "+e}});h(function(){h.support.reliableMarginRight||(h.cssHooks.marginRight={get:function(a,b){var c;h.swap(a,{display:"inline-block"},function(){b?c=ba(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})});w.defaultView&&w.defaultView.getComputedStyle&&(Ra=function(a,b){var c,d,e;b=b.replace(wb,"-$1").toLowerCase();(d=a.ownerDocument.defaultView)&&(e=d.getComputedStyle(a,null))&&(c=e.getPropertyValue(b),""===c&&!h.contains(a.ownerDocument.documentElement,a)&&(c=
h.style(a,b)));return c});w.documentElement.currentStyle&&(Sa=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;null===f&&g&&(e=g[b])&&(f=e);!Qa.test(f)&&xb.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left="fontSize"===b?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return""===f?"auto":f});ba=Ra||Sa;h.expr&&h.expr.filters&&(h.expr.filters.hidden=function(a){var b=a.offsetHeight;return 0===a.offsetWidth&&
0===b||!h.support.reliableHiddenOffsets&&"none"===(a.style&&a.style.display||h.css(a,"display"))},h.expr.filters.visible=function(a){return!h.expr.filters.hidden(a)});var Ab=/%20/g,$a=/\[\]$/,Ta=/\r?\n/g,Bb=/#.*$/,Cb=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,Db=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,Eb=/^(?:GET|HEAD)$/,Fb=/^\/\//,Ua=/\?/,Gb=/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi,Hb=/^(?:select|textarea)/i,Ba=/\s+/,Ib=
/([?&])_=[^&]*/,Va=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,Wa=h.fn.load,qa={},Xa={},Y,Z,Ya=["*/"]+["*"];try{Y=Q.href}catch(Ob){Y=w.createElement("a"),Y.href="",Y=Y.href}Z=Va.exec(Y.toLowerCase())||[];h.fn.extend({load:function(a,c,d){if("string"!=typeof a&&Wa)return Wa.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(0<=e)var f=a.slice(e,a.length),a=a.slice(0,e);e="GET";c&&(h.isFunction(c)?(d=c,c=b):"object"==typeof c&&(c=h.param(c,h.ajaxSettings.traditional),e="POST"));
var g=this;h.ajax({url:a,type:e,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText;a.isResolved()&&(a.done(function(a){c=a}),g.html(f?h("<div>").append(c.replace(Gb,"")).find(f):c));d&&g.each(d,[c,b,a])}});return this},serialize:function(){return h.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?h.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||Hb.test(this.nodeName)||Db.test(this.type))}).map(function(a,
b){var c=h(this).val();return null==c?null:h.isArray(c)?h.map(c,function(a){return{name:b.name,value:a.replace(Ta,"\r\n")}}):{name:b.name,value:c.replace(Ta,"\r\n")}}).get()}});h.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){h.fn[b]=function(a){return this.on(b,a)}});h.each(["get","post"],function(a,c){h[c]=function(a,d,e,f){h.isFunction(d)&&(f=f||e,e=d,d=b);return h.ajax({type:c,url:a,data:d,success:e,dataType:f})}});h.extend({getScript:function(a,
c){return h.get(a,b,c,"script")},getJSON:function(a,b,c){return h.get(a,b,c,"json")},ajaxSetup:function(a,b){b?m(a,h.ajaxSettings):(b=a,a=h.ajaxSettings);m(a,b);return a},ajaxSettings:{url:Y,isLocal:/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/.test(Z[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":Ya},contents:{xml:/xml/,
html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":h.parseJSON,"text xml":h.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:n(qa),ajaxTransport:n(Xa),ajax:function(a,c){function d(a,c,q,o){if(2!==A){A=2;D&&clearTimeout(D);C=b;u=o||"";B.readyState=0<a?4:0;var v,m,H,o=c;if(q){var s=e,w=B,G=s.contents,y=s.dataTypes,K=s.responseFields,E,I,U,ha;for(I in K)I in q&&(w[K[I]]=q[I]);for(;"*"===y[0];)y.shift(),E===
b&&(E=s.mimeType||w.getResponseHeader("content-type"));if(E)for(I in G)if(G[I]&&G[I].test(E)){y.unshift(I);break}if(y[0]in q)U=y[0];else{for(I in q){if(!y[0]||s.converters[I+" "+y[0]]){U=I;break}ha||(ha=I)}U=U||ha}U?(U!==y[0]&&y.unshift(U),q=q[U]):q=void 0}else q=b;if(200<=a&&300>a||304===a){if(e.ifModified){if(E=B.getResponseHeader("Last-Modified"))h.lastModified[n]=E;if(E=B.getResponseHeader("Etag"))h.etag[n]=E}if(304===a)o="notmodified",v=!0;else try{E=e;E.dataFilter&&(q=E.dataFilter(q,E.dataType));
var V=E.dataTypes;I={};var J,O,ua=V.length,T,M=V[0],S,Q,X,F,da;for(J=1;J<ua;J++){if(1===J)for(O in E.converters)"string"==typeof O&&(I[O.toLowerCase()]=E.converters[O]);S=M;M=V[J];if("*"===M)M=S;else if("*"!==S&&S!==M){Q=S+" "+M;X=I[Q]||I["* "+M];if(!X)for(F in da=b,I)if(T=F.split(" "),T[0]===S||"*"===T[0])if(da=I[T[1]+" "+M]){F=I[F];!0===F?X=da:!0===da&&(X=F);break}!X&&!da&&h.error("No conversion from "+Q.replace(" "," to "));!0!==X&&(q=X?X(q):da(F(q)))}}m=q;o="success";v=!0}catch(ma){o="parsererror",
H=ma}}else if(H=o,!o||a)o="error",0>a&&(a=0);B.status=a;B.statusText=""+(c||o);v?j.resolveWith(f,[m,o,B]):j.rejectWith(f,[B,o,H]);B.statusCode(p);p=b;x&&g.trigger("ajax"+(v?"Success":"Error"),[B,e,v?m:H]);k.fireWith(f,[B,o]);x&&(g.trigger("ajaxComplete",[B,e]),--h.active||h.event.trigger("ajaxStop"))}}"object"==typeof a&&(c=a,a=b);c=c||{};var e=h.ajaxSetup({},c),f=e.context||e,g=f!==e&&(f.nodeType||f instanceof h)?h(f):h.event,j=h.Deferred(),k=h.Callbacks("once memory"),p=e.statusCode||{},n,q={},
o={},u,m,C,D,w,A=0,x,y,B={readyState:0,setRequestHeader:function(a,b){if(!A){var c=a.toLowerCase();a=o[c]=o[c]||a;q[a]=b}return this},getAllResponseHeaders:function(){return 2===A?u:null},getResponseHeader:function(a){var c;if(2===A){if(!m)for(m={};c=Cb.exec(u);)m[c[1].toLowerCase()]=c[2];c=m[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){A||(e.mimeType=a);return this},abort:function(a){a=a||"abort";C&&C.abort(a);d(0,a);return this}};j.promise(B);B.success=B.done;B.error=B.fail;
B.complete=k.add;B.statusCode=function(a){if(a){var b;if(2>A)for(b in a)p[b]=[p[b],a[b]];else b=a[B.status],B.then(b,b)}return this};e.url=((a||e.url)+"").replace(Bb,"").replace(Fb,Z[1]+"//");e.dataTypes=h.trim(e.dataType||"*").toLowerCase().split(Ba);null==e.crossDomain&&(w=Va.exec(e.url.toLowerCase()),e.crossDomain=!(!w||w[1]==Z[1]&&w[2]==Z[2]&&(w[3]||("http:"===w[1]?80:443))==(Z[3]||("http:"===Z[1]?80:443))));e.data&&e.processData&&"string"!=typeof e.data&&(e.data=h.param(e.data,e.traditional));
s(qa,e,c,B);if(2===A)return!1;x=e.global;e.type=e.type.toUpperCase();e.hasContent=!Eb.test(e.type);x&&0===h.active++&&h.event.trigger("ajaxStart");if(!e.hasContent&&(e.data&&(e.url+=(Ua.test(e.url)?"&":"?")+e.data,delete e.data),n=e.url,!1===e.cache)){w=h.now();var K=e.url.replace(Ib,"$1_="+w);e.url=K+(K===e.url?(Ua.test(e.url)?"&":"?")+"_="+w:"")}(e.data&&e.hasContent&&!1!==e.contentType||c.contentType)&&B.setRequestHeader("Content-Type",e.contentType);e.ifModified&&(n=n||e.url,h.lastModified[n]&&
B.setRequestHeader("If-Modified-Since",h.lastModified[n]),h.etag[n]&&B.setRequestHeader("If-None-Match",h.etag[n]));B.setRequestHeader("Accept",e.dataTypes[0]&&e.accepts[e.dataTypes[0]]?e.accepts[e.dataTypes[0]]+("*"!==e.dataTypes[0]?", "+Ya+"; q=0.01":""):e.accepts["*"]);for(y in e.headers)B.setRequestHeader(y,e.headers[y]);if(e.beforeSend&&(!1===e.beforeSend.call(f,B,e)||2===A))return B.abort(),!1;for(y in{success:1,error:1,complete:1})B[y](e[y]);if(C=s(Xa,e,c,B)){B.readyState=1;x&&g.trigger("ajaxSend",
[B,e]);e.async&&0<e.timeout&&(D=setTimeout(function(){B.abort("timeout")},e.timeout));try{A=1,C.send(q,d)}catch(E){if(2>A)d(-1,E);else throw E;}}else d(-1,"No Transport");return B},param:function(a,c){var d=[],e=function(a,b){b=h.isFunction(b)?b():b;d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=h.ajaxSettings.traditional);if(h.isArray(a)||a.jquery&&!h.isPlainObject(a))h.each(a,function(){e(this.name,this.value)});else for(var f in a)k(f,a[f],c,e);return d.join("&").replace(Ab,
"+")}});h.extend({active:0,lastModified:{},etag:{}});var Jb=h.now(),na=/(\=)\?(&|$)|\?\?/i;h.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return h.expando+"_"+Jb++}});h.ajaxPrefilter("json jsonp",function(b,c,d){c="application/x-www-form-urlencoded"===b.contentType&&"string"==typeof b.data;if("jsonp"===b.dataTypes[0]||!1!==b.jsonp&&(na.test(b.url)||c&&na.test(b.data))){var e,f=b.jsonpCallback=h.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,g=a[f],j=b.url,k=b.data,p="$1"+f+
"$2";!1!==b.jsonp&&(j=j.replace(na,p),b.url===j&&(c&&(k=k.replace(na,p)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+f)));b.url=j;b.data=k;a[f]=function(a){e=[a]};d.always(function(){a[f]=g;e&&h.isFunction(g)&&a[f](e[0])});b.converters["script json"]=function(){e||h.error(f+" was not called");return e[0]};b.dataTypes[0]="json";return"script"}});h.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},
converters:{"text script":function(a){h.globalEval(a);return a}}});h.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1);a.crossDomain&&(a.type="GET",a.global=!1)});h.ajaxTransport("script",function(a){if(a.crossDomain){var c,d=w.head||w.getElementsByTagName("head")[0]||w.documentElement;return{send:function(e,f){c=w.createElement("script");c.async="async";a.scriptCharset&&(c.charset=a.scriptCharset);c.src=a.url;c.onload=c.onreadystatechange=function(a,e){if(e||!c.readyState||/loaded|complete/.test(c.readyState))c.onload=
c.onreadystatechange=null,d&&c.parentNode&&d.removeChild(c),c=b,e||f(200,"success")};d.insertBefore(c,d.firstChild)},abort:function(){c&&c.onload(0,1)}}}});var ya=a.ActiveXObject?function(){for(var a in fa)fa[a](0,1)}:!1,Kb=0,fa;h.ajaxSettings.xhr=a.ActiveXObject?function(){var b;if(!(b=!this.isLocal&&j()))a:{try{b=new a.ActiveXObject("Microsoft.XMLHTTP");break a}catch(c){}b=void 0}return b}:j;(function(a){h.extend(h.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})})(h.ajaxSettings.xhr());h.support.ajax&&
h.ajaxTransport(function(c){if(!c.crossDomain||h.support.cors){var d;return{send:function(e,f){var g=c.xhr(),j,k;c.username?g.open(c.type,c.url,c.async,c.username,c.password):g.open(c.type,c.url,c.async);if(c.xhrFields)for(k in c.xhrFields)g[k]=c.xhrFields[k];c.mimeType&&g.overrideMimeType&&g.overrideMimeType(c.mimeType);!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(k in e)g.setRequestHeader(k,e[k])}catch(p){}g.send(c.hasContent&&c.data||null);d=function(a,
e){var k,p,n,q,o;try{if(d&&(e||4===g.readyState))if(d=b,j&&(g.onreadystatechange=h.noop,ya&&delete fa[j]),e)4!==g.readyState&&g.abort();else{k=g.status;n=g.getAllResponseHeaders();q={};o=g.responseXML;o&&o.documentElement&&(q.xml=o);q.text=g.responseText;try{p=g.statusText}catch(u){p=""}!k&&c.isLocal&&!c.crossDomain?k=q.text?200:404:1223===k&&(k=204)}}catch(m){e||f(-1,m)}q&&f(k,p,q,n)};!c.async||4===g.readyState?d():(j=++Kb,ya&&(fa||(fa={},h(a).unload(ya)),fa[j]=d),g.onreadystatechange=d)},abort:function(){d&&
d(0,1)}}}});var pa={},R,aa,Lb=/^(?:toggle|show|hide)$/,Mb=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,oa,za=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],ia;h.fn.extend({show:function(a,b,c){var f,g;if(a||0===a)return this.animate(e("show",3),a,b,c);a=0;for(b=this.length;a<b;a++)f=this[a],f.style&&(g=f.style.display,!h._data(f,"olddisplay")&&"none"===g&&(g=f.style.display=""),""===g&&"none"===h.css(f,"display")&&
h._data(f,"olddisplay",d(f.nodeName)));for(a=0;a<b;a++)if(f=this[a],f.style&&(g=f.style.display,""===g||"none"===g))f.style.display=h._data(f,"olddisplay")||"";return this},hide:function(a,b,c){if(a||0===a)return this.animate(e("hide",3),a,b,c);for(var d,f,a=0,b=this.length;a<b;a++)d=this[a],d.style&&(f=h.css(d,"display"),"none"!==f&&!h._data(d,"olddisplay")&&h._data(d,"olddisplay",f));for(a=0;a<b;a++)this[a].style&&(this[a].style.display="none");return this},_toggle:h.fn.toggle,toggle:function(a,
b,c){var d="boolean"==typeof a;h.isFunction(a)&&h.isFunction(b)?this._toggle.apply(this,arguments):null==a||d?this.each(function(){var b=d?a:h(this).is(":hidden");h(this)[b?"show":"hide"]()}):this.animate(e("toggle",3),a,b,c);return this},fadeTo:function(a,b,c,d){return this.filter(":hidden").css("opacity",0).show().end().animate({opacity:b},a,c,d)},animate:function(a,b,c,e){function f(){var v;!1===g.queue&&h._mark(this);var b=h.extend({},g),c=1===this.nodeType,e=c&&h(this).is(":hidden"),j,k,p,n,
q,o,u,m,C;b.animatedProperties={};for(p in a){j=h.camelCase(p);p!==j&&(a[j]=a[p],delete a[p]);k=a[j];h.isArray(k)?(b.animatedProperties[j]=k[1],v=a[j]=k[0],k=v):b.animatedProperties[j]=b.specialEasing&&b.specialEasing[j]||b.easing||"swing";if("hide"===k&&e||"show"===k&&!e)return b.complete.call(this);c&&("height"===j||"width"===j)&&(b.overflow=[this.style.overflow,this.style.overflowX,this.style.overflowY],"inline"===h.css(this,"display")&&"none"===h.css(this,"float")&&(!h.support.inlineBlockNeedsLayout||
"inline"===d(this.nodeName)?this.style.display="inline-block":this.style.zoom=1))}null!=b.overflow&&(this.style.overflow="hidden");for(p in a)n=new h.fx(this,b,p),k=a[p],Lb.test(k)?(C=h._data(this,"toggle"+p)||("toggle"===k?e?"show":"hide":0),C?(h._data(this,"toggle"+p,"show"===C?"hide":"show"),n[C]()):n[k]()):(q=Mb.exec(k),o=n.cur(),q?(u=parseFloat(q[2]),m=q[3]||(h.cssNumber[p]?"":"px"),"px"!==m&&(h.style(this,p,(u||1)+m),o*=(u||1)/n.cur(),h.style(this,p,o+m)),q[1]&&(u=("-="===q[1]?-1:1)*u+o),n.custom(o,
u,m)):n.custom(o,k,""));return!0}var g=h.speed(b,c,e);if(h.isEmptyObject(a))return this.each(g.complete,[!1]);a=h.extend({},a);return!1===g.queue?this.each(f):this.queue(g.queue,f)},stop:function(a,c,d){"string"!=typeof a&&(d=c,c=a,a=b);c&&!1!==a&&this.queue(a||"fx",[]);return this.each(function(){var b,c=!1,e=h.timers,f=h._data(this);d||h._unmark(!0,this);if(null==a)for(b in f){if(f[b]&&f[b].stop&&b.indexOf(".run")===b.length-4){var g=f[b];h.removeData(this,b,!0);g.stop(d)}}else if(f[b=a+".run"]&&
f[b].stop)f=f[b],h.removeData(this,b,!0),f.stop(d);for(b=e.length;b--;)e[b].elem===this&&(null==a||e[b].queue===a)&&(d?e[b](!0):e[b].saveState(),c=!0,e.splice(b,1));(!d||!c)&&h.dequeue(this,a)})}});h.each({slideDown:e("show",1),slideUp:e("hide",1),slideToggle:e("toggle",1),fadeIn:{opacity:"show"},fadeOut:{opacity:"hide"},fadeToggle:{opacity:"toggle"}},function(a,b){h.fn[a]=function(a,c,d){return this.animate(b,a,c,d)}});h.extend({speed:function(a,b,c){var d=a&&"object"==typeof a?h.extend({},a):{complete:c||
!c&&b||h.isFunction(a)&&a,duration:a,easing:c&&b||b&&!h.isFunction(b)&&b};d.duration=h.fx.off?0:"number"==typeof d.duration?d.duration:d.duration in h.fx.speeds?h.fx.speeds[d.duration]:h.fx.speeds._default;if(null==d.queue||!0===d.queue)d.queue="fx";d.old=d.complete;d.complete=function(a){h.isFunction(d.old)&&d.old.call(this);d.queue?h.dequeue(this,d.queue):!1!==a&&h._unmark(this)};return d},easing:{linear:function(a,b,c,d){return c+d*a},swing:function(a,b,c,d){return(-Math.cos(a*Math.PI)/2+0.5)*
d+c}},timers:[],fx:function(a,b,c){this.options=b;this.elem=a;this.prop=c;b.orig=b.orig||{}}});h.fx.prototype={update:function(){this.options.step&&this.options.step.call(this.elem,this.now,this);(h.fx.step[this.prop]||h.fx.step._default)(this)},cur:function(){if(null!=this.elem[this.prop]&&(!this.elem.style||null==this.elem.style[this.prop]))return this.elem[this.prop];var a,b=h.css(this.elem,this.prop);return isNaN(a=parseFloat(b))?!b||"auto"===b?0:b:a},custom:function(a,c,d){function e(a){return f.step(a)}
var f=this,j=h.fx;this.startTime=ia||g();this.end=c;this.now=this.start=a;this.pos=this.state=0;this.unit=d||this.unit||(h.cssNumber[this.prop]?"":"px");e.queue=this.options.queue;e.elem=this.elem;e.saveState=function(){f.options.hide&&h._data(f.elem,"fxshow"+f.prop)===b&&h._data(f.elem,"fxshow"+f.prop,f.start)};e()&&h.timers.push(e)&&!oa&&(oa=setInterval(j.tick,j.interval))},show:function(){var a=h._data(this.elem,"fxshow"+this.prop);this.options.orig[this.prop]=a||h.style(this.elem,this.prop);this.options.show=
!0;a!==b?this.custom(this.cur(),a):this.custom("width"===this.prop||"height"===this.prop?1:0,this.cur());h(this.elem).show()},hide:function(){this.options.orig[this.prop]=h._data(this.elem,"fxshow"+this.prop)||h.style(this.elem,this.prop);this.options.hide=!0;this.custom(this.cur(),0)},step:function(a){var b,c,d,e=ia||g(),f=!0,j=this.elem,k=this.options;if(a||e>=k.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();k.animatedProperties[this.prop]=!0;for(b in k.animatedProperties)!0!==
k.animatedProperties[b]&&(f=!1);if(f){null!=k.overflow&&!h.support.shrinkWrapBlocks&&h.each(["","X","Y"],function(a,b){j.style["overflow"+b]=k.overflow[a]});k.hide&&h(j).hide();if(k.hide||k.show)for(b in k.animatedProperties)h.style(j,b,k.orig[b]),h.removeData(j,"fxshow"+b,!0),h.removeData(j,"toggle"+b,!0);d=k.complete;d&&(k.complete=!1,d.call(j))}return!1}Infinity==k.duration?this.now=e:(c=e-this.startTime,this.state=c/k.duration,this.pos=h.easing[k.animatedProperties[this.prop]](this.state,c,0,
1,k.duration),this.now=this.start+(this.end-this.start)*this.pos);this.update();return!0}};h.extend(h.fx,{tick:function(){for(var a,b=h.timers,c=0;c<b.length;c++)a=b[c],!a()&&b[c]===a&&b.splice(c--,1);b.length||h.fx.stop()},interval:13,stop:function(){clearInterval(oa);oa=null},speeds:{slow:600,fast:200,_default:400},step:{opacity:function(a){h.style(a.elem,"opacity",a.now)},_default:function(a){a.elem.style&&null!=a.elem.style[a.prop]?a.elem.style[a.prop]=a.now+a.unit:a.elem[a.prop]=a.now}}});h.each(["width",
"height"],function(a,b){h.fx.step[b]=function(a){h.style(a.elem,b,Math.max(0,a.now)+a.unit)}});h.expr&&h.expr.filters&&(h.expr.filters.animated=function(a){return h.grep(h.timers,function(b){return a===b.elem}).length});var Nb=/^t(?:able|d|h)$/i,Za=/^(?:body|html)$/i;"getBoundingClientRect"in w.documentElement?h.fn.offset=function(a){var b=this[0],d;if(a)return this.each(function(b){h.offset.setOffset(this,a,b)});if(!b||!b.ownerDocument)return null;if(b===b.ownerDocument.body)return h.offset.bodyOffset(b);
try{d=b.getBoundingClientRect()}catch(e){}var f=b.ownerDocument,g=f.documentElement;if(!d||!h.contains(g,b))return d?{top:d.top,left:d.left}:{top:0,left:0};b=f.body;f=c(f);return{top:d.top+(f.pageYOffset||h.support.boxModel&&g.scrollTop||b.scrollTop)-(g.clientTop||b.clientTop||0),left:d.left+(f.pageXOffset||h.support.boxModel&&g.scrollLeft||b.scrollLeft)-(g.clientLeft||b.clientLeft||0)}}:h.fn.offset=function(a){var b=this[0];if(a)return this.each(function(b){h.offset.setOffset(this,a,b)});if(!b||
!b.ownerDocument)return null;if(b===b.ownerDocument.body)return h.offset.bodyOffset(b);for(var c,d=b.offsetParent,e=b.ownerDocument,f=e.documentElement,g=e.body,j=(e=e.defaultView)?e.getComputedStyle(b,null):b.currentStyle,k=b.offsetTop,p=b.offsetLeft;(b=b.parentNode)&&b!==g&&b!==f&&!(h.support.fixedPosition&&"fixed"===j.position);){c=e?e.getComputedStyle(b,null):b.currentStyle;k-=b.scrollTop;p-=b.scrollLeft;b===d&&(k+=b.offsetTop,p+=b.offsetLeft,h.support.doesNotAddBorder&&(!h.support.doesAddBorderForTableAndCells||
!Nb.test(b.nodeName))&&(k+=parseFloat(c.borderTopWidth)||0,p+=parseFloat(c.borderLeftWidth)||0),d=b.offsetParent);h.support.subtractsBorderForOverflowNotVisible&&"visible"!==c.overflow&&(k+=parseFloat(c.borderTopWidth)||0,p+=parseFloat(c.borderLeftWidth)||0);j=c}if("relative"===j.position||"static"===j.position)k+=g.offsetTop,p+=g.offsetLeft;h.support.fixedPosition&&"fixed"===j.position&&(k+=Math.max(f.scrollTop,g.scrollTop),p+=Math.max(f.scrollLeft,g.scrollLeft));return{top:k,left:p}};h.offset={bodyOffset:function(a){var b=
a.offsetTop,c=a.offsetLeft;h.support.doesNotIncludeMarginInBodyOffset&&(b+=parseFloat(h.css(a,"marginTop"))||0,c+=parseFloat(h.css(a,"marginLeft"))||0);return{top:b,left:c}},setOffset:function(a,b,c){var d=h.css(a,"position");"static"===d&&(a.style.position="relative");var e=h(a),f=e.offset(),g=h.css(a,"top"),j=h.css(a,"left"),k={},p={},n,q;("absolute"===d||"fixed"===d)&&-1<h.inArray("auto",[g,j])?(p=e.position(),n=p.top,q=p.left):(n=parseFloat(g)||0,q=parseFloat(j)||0);h.isFunction(b)&&(b=b.call(a,
c,f));null!=b.top&&(k.top=b.top-f.top+n);null!=b.left&&(k.left=b.left-f.left+q);"using"in b?b.using.call(a,k):e.css(k)}};h.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=Za.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(h.css(a,"marginTop"))||0;c.left-=parseFloat(h.css(a,"marginLeft"))||0;d.top+=parseFloat(h.css(b[0],"borderTopWidth"))||0;d.left+=parseFloat(h.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-
d.left}},offsetParent:function(){return this.map(function(){for(var a=this.offsetParent||w.body;a&&!Za.test(a.nodeName)&&"static"===h.css(a,"position");)a=a.offsetParent;return a})}});h.each(["Left","Top"],function(a,d){var e="scroll"+d;h.fn[e]=function(d){var f,g;if(d===b){f=this[0];return!f?null:(g=c(f))?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:h.support.boxModel&&g.document.documentElement[e]||g.document.body[e]:f[e]}return this.each(function(){g=c(this);g?g.scrollTo(a?h(g).scrollLeft():
d,a?d:h(g).scrollTop()):this[e]=d})}});h.each(["Height","Width"],function(a,c){var d=c.toLowerCase();h.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(h.css(a,d,"padding")):this[d]():null};h.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(h.css(b,d,a?"margin":"border")):this[d]():null};h.fn[d]=function(a){var e=this[0];if(!e)return null==a?null:this;if(h.isFunction(a))return this.each(function(b){var c=h(this);c[d](a.call(this,b,c[d]()))});if(h.isWindow(e)){var f=
e.document.documentElement["client"+c],g=e.document.body;return"CSS1Compat"===e.document.compatMode&&f||g&&g["client"+c]||f}if(9===e.nodeType)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);return a===b?(e=h.css(e,d),f=parseFloat(e),h.isNumeric(f)?f:e):this.css(d,"string"==typeof a?a:a+"px")}});a.jQuery=a.$=h;"function"==typeof define&&define.amd&&define.amd.jQuery&&define("jquery",[],function(){return h})})(window);(function(a){a.L={VERSION:"0.3",ROOT_URL:a.L_ROOT_URL||function(){var a=document.getElementsByTagName("script"),c=/\/?leaflet\-?([\w\-]*)\.js\??/,d,e,f,g;d=0;for(e=a.length;d<e;d++)if(f=a[d].src,g=f.match(c))return"include"===g[1]?"../../dist/":f.replace(c,"")+"/";return""}(),noConflict:function(){a.L=this._originalL;return this},_originalL:a.L}})(this);
L.Util={extend:function(a){for(var b=Array.prototype.slice.call(arguments,1),c=0,d=b.length,e;c<d;c++){e=b[c]||{};for(var f in e)e.hasOwnProperty(f)&&(a[f]=e[f])}return a},bind:function(a,b){return function(){return a.apply(b,arguments)}},stamp:function(){var a=0;return function(b){b._leaflet_id=b._leaflet_id||++a;return b._leaflet_id}}(),requestAnimFrame:function(){function a(a){window.setTimeout(a,1E3/60)}var b=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||
window.oRequestAnimationFrame||window.msRequestAnimationFrame||a;return function(c,d,e,f){c=d?L.Util.bind(c,d):c;e&&b===a?c():b(c,f)}}(),limitExecByInterval:function(a,b,c){function d(){e=!1;f&&(g.callee.apply(c,g),f=!1)}var e,f,g;return function(){g=arguments;e?f=!0:(e=!0,setTimeout(d,b),a.apply(c,g))}},falseFn:function(){return!1},formatNum:function(a,b){var c=Math.pow(10,b||5);return Math.round(a*c)/c},setOptions:function(a,b){a.options=L.Util.extend({},a.options,b)},getParamString:function(a){var b=
[],c;for(c in a)a.hasOwnProperty(c)&&b.push(c+"="+a[c]);return"?"+b.join("&")},template:function(a,b){return a.replace(/\{ *([^} ]+) *\}/g,function(a,d){var e=b[d];if(!b.hasOwnProperty(d))throw Error("No value provided for variable "+a);return e})}};L.Class=function(){};
L.Class.extend=function(a){var b=function(){this.initialize&&this.initialize.apply(this,arguments)},c=function(){};c.prototype=this.prototype;c=new c;c.constructor=b;b.prototype=c;b.superclass=this.prototype;for(var d in this)this.hasOwnProperty(d)&&"prototype"!=d&&"superclass"!=d&&(b[d]=this[d]);a.statics&&(L.Util.extend(b,a.statics),delete a.statics);a.includes&&(L.Util.extend.apply(null,[c].concat(a.includes)),delete a.includes);if(a.options&&c.options)a.options=L.Util.extend({},c.options,a.options);
L.Util.extend(c,a);b.extend=arguments.callee;b.include=function(a){L.Util.extend(this.prototype,a)};return b};L.Mixin={};
L.Mixin.Events={addEventListener:function(a,b,c){var d=this._leaflet_events=this._leaflet_events||{};d[a]=d[a]||[];d[a].push({action:b,context:c||this});return this},hasEventListeners:function(a){return"_leaflet_events"in this&&a in this._leaflet_events&&0<this._leaflet_events[a].length},removeEventListener:function(a,b,c){if(!this.hasEventListeners(a))return this;for(var d=0,e=this._leaflet_events,f=e[a].length;d<f;d++)if(e[a][d].action===b&&(!c||e[a][d].context===c)){e[a].splice(d,1);break}return this},
fireEvent:function(a,b){if(this.hasEventListeners(a)){for(var c=L.Util.extend({type:a,target:this},b),d=this._leaflet_events[a].slice(),e=0,f=d.length;e<f;e++)d[e].action.call(d[e].context||this,c);return this}}};L.Mixin.Events.on=L.Mixin.Events.addEventListener;L.Mixin.Events.off=L.Mixin.Events.removeEventListener;L.Mixin.Events.fire=L.Mixin.Events.fireEvent;
(function(){var a=navigator.userAgent.toLowerCase(),b=!!window.ActiveXObject,c=-1!=a.indexOf("webkit"),d="undefined"!=typeof orientation?!0:!1,e=-1!=a.indexOf("android"),f=window.opera;L.Browser={ie:b,ie6:b&&!window.XMLHttpRequest,webkit:c,webkit3d:c&&"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix,gecko:-1!=a.indexOf("gecko"),opera:f,android:e,mobileWebkit:d&&c,mobileOpera:d&&f,mobile:d,touch:function(){var a=!1;if("ontouchstart"in document.documentElement)return!0;var b=document.createElement("div");
if(!b.setAttribute||!b.removeAttribute)return!1;b.setAttribute("ontouchstart","return;");"function"==typeof b.ontouchstart&&(a=!0);b.removeAttribute("ontouchstart");return a}()}})();L.Point=function(a,b,c){this.x=c?Math.round(a):a;this.y=c?Math.round(b):b};
L.Point.prototype={add:function(a){return this.clone()._add(a)},_add:function(a){this.x+=a.x;this.y+=a.y;return this},subtract:function(a){return this.clone()._subtract(a)},_subtract:function(a){this.x-=a.x;this.y-=a.y;return this},divideBy:function(a,b){return new L.Point(this.x/a,this.y/a,b)},multiplyBy:function(a){return new L.Point(this.x*a,this.y*a)},distanceTo:function(a){var b=a.x-this.x,a=a.y-this.y;return Math.sqrt(b*b+a*a)},round:function(){return this.clone()._round()},_round:function(){this.x=
Math.round(this.x);this.y=Math.round(this.y);return this},clone:function(){return new L.Point(this.x,this.y)},toString:function(){return"Point("+L.Util.formatNum(this.x)+", "+L.Util.formatNum(this.y)+")"}};
L.Bounds=L.Class.extend({initialize:function(a,b){if(a)for(var c=a instanceof Array?a:[a,b],d=0,e=c.length;d<e;d++)this.extend(c[d])},extend:function(a){!this.min&&!this.max?(this.min=new L.Point(a.x,a.y),this.max=new L.Point(a.x,a.y)):(this.min.x=Math.min(a.x,this.min.x),this.max.x=Math.max(a.x,this.max.x),this.min.y=Math.min(a.y,this.min.y),this.max.y=Math.max(a.y,this.max.y))},getCenter:function(a){return new L.Point((this.min.x+this.max.x)/2,(this.min.y+this.max.y)/2,a)},contains:function(a){var b;
a instanceof L.Bounds?(b=a.min,a=a.max):b=a;return b.x>=this.min.x&&a.x<=this.max.x&&b.y>=this.min.y&&a.y<=this.max.y}});L.Transformation=L.Class.extend({initialize:function(a,b,c,d){this._a=a;this._b=b;this._c=c;this._d=d},transform:function(a,b){return this._transform(a.clone(),b)},_transform:function(a,b){b=b||1;a.x=b*(this._a*a.x+this._b);a.y=b*(this._c*a.y+this._d);return a},untransform:function(a,b){b=b||1;return new L.Point((a.x/b-this._b)/this._a,(a.y/b-this._d)/this._c)}});
L.LineUtil={simplify:function(a,b){if(!b||!a.length)return a.slice();a=this.reducePoints(a,b);return this.simplifyDP(a,b)},pointToSegmentDistance:function(a,b,c){return Math.sqrt(this._sqPointToSegmentDist(a,b,c))},closestPointOnSegment:function(a,b,c){a=this._sqClosestPointOnSegment(a,b,c);a.distance=Math.sqrt(a._sqDist);return a},simplifyDP:function(a,b){for(var c=0,d=0,e=b*b,f=1,g=a.length,j;f<g-1;f++)j=this._sqPointToSegmentDist(a[f],a[0],a[g-1]),j>c&&(d=f,c=j);return c>=e?(c=a.slice(0,d),d=a.slice(d),
g=this.simplifyDP(c,b).slice(0,g-2),d=this.simplifyDP(d,b),g.concat(d)):[a[0],a[g-1]]},reducePoints:function(a,b){for(var c=[a[0]],d=b*b,e=1,f=0,g=a.length;e<g;e++)this._sqDist(a[e],a[f])<d||(c.push(a[e]),f=e);f<g-1&&c.push(a[g-1]);return c},clipSegment:function(a,b,c,d){var d=d?this._lastCode:this._getBitCode(a,c),e=this._getBitCode(b,c);for(this._lastCode=e;;)if(d|e){if(d&e)return!1;var f=d||e,g=this._getEdgeIntersection(a,b,f,c),j=this._getBitCode(g,c);f==d?(a=g,d=j):(b=g,e=j)}else return[a,b]},
_getEdgeIntersection:function(a,b,c,d){var e=b.x-a.x,b=b.y-a.y,f=d.min,d=d.max;if(c&8)return new L.Point(a.x+e*(d.y-a.y)/b,d.y);if(c&4)return new L.Point(a.x+e*(f.y-a.y)/b,f.y);if(c&2)return new L.Point(d.x,a.y+b*(d.x-a.x)/e);if(c&1)return new L.Point(f.x,a.y+b*(f.x-a.x)/e)},_getBitCode:function(a,b){var c=0;a.x<b.min.x?c|=1:a.x>b.max.x&&(c|=2);a.y<b.min.y?c|=4:a.y>b.max.y&&(c|=8);return c},_sqDist:function(a,b){var c=b.x-a.x,d=b.y-a.y;return c*c+d*d},_sqClosestPointOnSegment:function(a,b,c){var d=
c.x-b.x,e=c.y-b.y,f=b;if(d||e){var g=((a.x-b.x)*d+(a.y-b.y)*e)/this._sqDist(b,c);1<g?f=c:0<g&&(f=new L.Point(b.x+d*g,b.y+e*g))}f._sqDist=this._sqDist(a,f);return f},_sqPointToSegmentDist:function(a,b,c){return this._sqClosestPointOnSegment(a,b,c)._sqDist}};L.PolyUtil={};
L.PolyUtil.clipPolygon=function(a,b){var c,d=[1,4,2,8],e,f,g,j,k,m,s=L.LineUtil;e=0;for(k=a.length;e<k;e++)a[e]._code=s._getBitCode(a[e],b);for(g=0;4>g;g++){m=d[g];c=[];e=0;k=a.length;for(f=k-1;e<k;f=e++)if(j=a[e],f=a[f],j._code&m){if(!(f._code&m))f=s._getEdgeIntersection(f,j,m,b),f._code=s._getBitCode(f,b),c.push(f)}else{if(f._code&m)f=s._getEdgeIntersection(f,j,m,b),f._code=s._getBitCode(f,b),c.push(f);c.push(j)}a=c}return a};
L.DomEvent={addListener:function(a,b,c,d){function e(b){return c.call(d||a,b||L.DomEvent._getEvent())}var f=L.Util.stamp(c),g="_leaflet_"+b+f;if(!a[g]){if(L.Browser.touch&&"dblclick"==b&&this.addDoubleTapListener)this.addDoubleTapListener(a,e,f);else if("addEventListener"in a)if("mousewheel"==b)a.addEventListener("DOMMouseScroll",e,!1),a.addEventListener(b,e,!1);else if("mouseenter"==b||"mouseleave"==b){var j=e,e=function(b){if(L.DomEvent._checkMouse(a,b))return j(b)};a.addEventListener("mouseenter"==
b?"mouseover":"mouseout",e,!1)}else a.addEventListener(b,e,!1);else"attachEvent"in a&&a.attachEvent("on"+b,e);a[g]=e}},removeListener:function(a,b,c){var c=L.Util.stamp(c),d="_leaflet_"+b+c;if(handler=a[d])L.Browser.touch&&"dblclick"==b&&this.removeDoubleTapListener?this.removeDoubleTapListener(a,c):"removeEventListener"in a?"mousewheel"==b?(a.removeEventListener("DOMMouseScroll",handler,!1),a.removeEventListener(b,handler,!1)):"mouseenter"==b||"mouseleave"==b?a.removeEventListener("mouseenter"==
b?"mouseover":"mouseout",handler,!1):a.removeEventListener(b,handler,!1):"detachEvent"in a&&a.detachEvent("on"+b,handler),a[d]=null},_checkMouse:function(a,b){var c=b.relatedTarget;if(!c)return!0;try{for(;c&&c!=a;)c=c.parentNode}catch(d){return!1}return c!=a},_getEvent:function(){var a=window.event;if(!a)for(var b=arguments.callee.caller;b&&!((a=b.arguments[0])&&Event==a.constructor);)b=b.caller;return a},stopPropagation:function(a){a.stopPropagation?a.stopPropagation():a.cancelBubble=!0},disableClickPropagation:function(a){L.DomEvent.addListener(a,
"mousedown",L.DomEvent.stopPropagation);L.DomEvent.addListener(a,"click",L.DomEvent.stopPropagation);L.DomEvent.addListener(a,"dblclick",L.DomEvent.stopPropagation)},preventDefault:function(a){a.preventDefault?a.preventDefault():a.returnValue=!1},stop:function(a){L.DomEvent.preventDefault(a);L.DomEvent.stopPropagation(a)},getMousePosition:function(a,b){var c=new L.Point(a.pageX?a.pageX:a.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,a.pageY?a.pageY:a.clientY+document.body.scrollTop+
document.documentElement.scrollTop);return b?c.subtract(L.DomUtil.getViewportOffset(b)):c},getWheelDelta:function(a){var b=0;a.wheelDelta&&(b=a.wheelDelta/120);a.detail&&(b=-a.detail/3);return b}};
L.Util.extend(L.DomEvent,{addDoubleTapListener:function(a,b,c){function d(a){if(1==a.touches.length){var b=Date.now(),c=b-(f||b);k=a.touches[0];g=0<c&&c<=j;f=b}}function e(){if(g)k.type="dblclick",b(k),f=null}var f,g=!1,j=250,k;a["_leaflet_touchstart"+c]=d;a["_leaflet_touchend"+c]=e;a.addEventListener("touchstart",d,!1);a.addEventListener("touchend",e,!1)},removeDoubleTapListener:function(a,b){a.removeEventListener(a,a["_leaflet_touchstart"+b],!1);a.removeEventListener(a,a["_leaflet_touchend"+b],
!1)}});
L.DomUtil={get:function(a){return"string"==typeof a?document.getElementById(a):a},getStyle:function(a,b){var c=a.style[b];!c&&a.currentStyle&&(c=a.currentStyle[b]);if(!c||"auto"==c)c=(c=document.defaultView.getComputedStyle(a,null))?c[b]:null;return"auto"==c?null:c},getViewportOffset:function(a){var b=0,c=0,d=a,e=document.body;do if(b+=d.offsetTop||0,c+=d.offsetLeft||0,d.offsetParent==e&&"absolute"==L.DomUtil.getStyle(d,"position"))break;while(d=d.offsetParent);d=a;do{if(d===e)break;b-=d.scrollTop||0;
c-=d.scrollLeft||0}while(d=d.parentNode);return new L.Point(c,b)},create:function(a,b,c){a=document.createElement(a);a.className=b;c&&c.appendChild(a);return a},disableTextSelection:function(){document.selection&&document.selection.empty&&document.selection.empty();if(!this._onselectstart)this._onselectstart=document.onselectstart,document.onselectstart=L.Util.falseFn},enableTextSelection:function(){document.onselectstart=this._onselectstart;this._onselectstart=null},hasClass:function(a,b){return 0<
a.className.length&&RegExp("(^|\\s)"+b+"(\\s|$)").test(a.className)},addClass:function(a,b){L.DomUtil.hasClass(a,b)||(a.className+=(a.className?" ":"")+b)},removeClass:function(a,b){a.className=a.className.replace(/(\S+)\s*/g,function(a,d){return d==b?"":a}).replace(/^\s+/,"")},setOpacity:function(a,b){L.Browser.ie?a.style.filter="alpha(opacity="+Math.round(100*b)+")":a.style.opacity=b},testProp:function(a){for(var b=document.documentElement.style,c=0;c<a.length;c++)if(a[c]in b)return a[c];return!1},
getTranslateString:function(a){return L.DomUtil.TRANSLATE_OPEN+a.x+"px,"+a.y+"px"+L.DomUtil.TRANSLATE_CLOSE},getScaleString:function(a,b){return L.DomUtil.getTranslateString(b)+" scale("+a+") "+L.DomUtil.getTranslateString(b.multiplyBy(-1))},setPosition:function(a,b){a._leaflet_pos=b;L.Browser.webkit?a.style[L.DomUtil.TRANSFORM]=L.DomUtil.getTranslateString(b):(a.style.left=b.x+"px",a.style.top=b.y+"px")},getPosition:function(a){return a._leaflet_pos}};
L.Util.extend(L.DomUtil,{TRANSITION:L.DomUtil.testProp(["transition","webkitTransition","OTransition","MozTransition","msTransition"]),TRANSFORM:L.DomUtil.testProp(["transformProperty","WebkitTransform","OTransform","MozTransform","msTransform"]),TRANSLATE_OPEN:"translate"+(L.Browser.webkit3d?"3d(":"("),TRANSLATE_CLOSE:L.Browser.webkit3d?",0)":")"});
L.Draggable=L.Class.extend({includes:L.Mixin.Events,statics:{START:L.Browser.touch?"touchstart":"mousedown",END:L.Browser.touch?"touchend":"mouseup",MOVE:L.Browser.touch?"touchmove":"mousemove",TAP_TOLERANCE:15},initialize:function(a,b){this._element=a;this._dragStartTarget=b||a},enable:function(){if(!this._enabled)L.DomEvent.addListener(this._dragStartTarget,L.Draggable.START,this._onDown,this),this._enabled=!0},disable:function(){if(this._enabled)L.DomEvent.removeListener(this._dragStartTarget,
L.Draggable.START,this._onDown),this._enabled=!1},_onDown:function(a){if(!(!L.Browser.touch&&a.shiftKey||1!=a.which&&1!=a.button&&!a.touches)&&!(a.touches&&1<a.touches.length)){var b=a.touches&&1==a.touches.length?a.touches[0]:a,c=b.target;L.DomEvent.preventDefault(a);L.Browser.touch&&"a"===c.tagName.toLowerCase()&&(c.className+=" leaflet-active");this._moved=!1;if(!this._moving)L.Browser.touch||(L.DomUtil.disableTextSelection(),this._setMovingCursor()),this._startPos=this._newPos=L.DomUtil.getPosition(this._element),
this._startPoint=new L.Point(b.clientX,b.clientY),L.DomEvent.addListener(document,L.Draggable.MOVE,this._onMove,this),L.DomEvent.addListener(document,L.Draggable.END,this._onUp,this)}},_onMove:function(a){if(!(a.touches&&1<a.touches.length)){L.DomEvent.preventDefault(a);a=a.touches&&1==a.touches.length?a.touches[0]:a;if(!this._moved)this.fire("dragstart"),this._moved=!0;this._moving=!0;this._newPos=this._startPos.add(new L.Point(a.clientX,a.clientY)).subtract(this._startPoint);L.Util.requestAnimFrame(this._updatePosition,
this,!0,this._dragStartTarget)}},_updatePosition:function(){this.fire("predrag");L.DomUtil.setPosition(this._element,this._newPos);this.fire("drag")},_onUp:function(a){if(a.changedTouches){var a=a.changedTouches[0],b=a.target,c=this._newPos&&this._newPos.distanceTo(this._startPos)||0;if("a"===b.tagName.toLowerCase())b.className=b.className.replace(" leaflet-active","");c<L.Draggable.TAP_TOLERANCE&&this._simulateEvent("click",a)}L.Browser.touch||(L.DomUtil.enableTextSelection(),this._restoreCursor());
L.DomEvent.removeListener(document,L.Draggable.MOVE,this._onMove);L.DomEvent.removeListener(document,L.Draggable.END,this._onUp);this._moved&&this.fire("dragend");this._moving=!1},_setMovingCursor:function(){this._bodyCursor=document.body.style.cursor;document.body.style.cursor="move"},_restoreCursor:function(){document.body.style.cursor=this._bodyCursor},_simulateEvent:function(a,b){var c=document.createEvent("MouseEvents");c.initMouseEvent(a,!0,!0,window,1,b.screenX,b.screenY,b.clientX,b.clientY,
!1,!1,!1,!1,0,null);b.target.dispatchEvent(c)}});L.Transition=L.Class.extend({includes:L.Mixin.Events,statics:{CUSTOM_PROPS_SETTERS:{position:L.DomUtil.setPosition},implemented:function(){return L.Transition.NATIVE||L.Transition.TIMER}},options:{easing:"ease",duration:0.5},_setProperty:function(a,b){var c=L.Transition.CUSTOM_PROPS_SETTERS;if(a in c)c[a](this._el,b);else this._el.style[a]=b}});
L.Transition=L.Transition.extend({statics:function(){var a=L.DomUtil.TRANSITION;return{NATIVE:!!a,TRANSITION:a,PROPERTY:a+"Property",DURATION:a+"Duration",EASING:a+"TimingFunction",END:"webkitTransition"==a||"OTransition"==a?a+"End":"transitionend",CUSTOM_PROPS_PROPERTIES:{position:L.Browser.webkit?L.DomUtil.TRANSFORM:"top, left"}}}(),options:{fakeStepInterval:100},initialize:function(a,b){this._el=a;L.Util.setOptions(this,b);L.DomEvent.addListener(a,L.Transition.END,this._onTransitionEnd,this);this._onFakeStep=
L.Util.bind(this._onFakeStep,this)},run:function(a){var b,c=[],d=L.Transition.CUSTOM_PROPS_PROPERTIES;for(b in a)a.hasOwnProperty(b)&&(b=d[b]?d[b]:b,b=b.replace(/([A-Z])/g,function(a){return"-"+a.toLowerCase()}),c.push(b));this._el.style[L.Transition.DURATION]=this.options.duration+"s";this._el.style[L.Transition.EASING]=this.options.easing;this._el.style[L.Transition.PROPERTY]=c.join(", ");for(b in a)a.hasOwnProperty(b)&&this._setProperty(b,a[b]);this._inProgress=!0;this.fire("start");L.Transition.NATIVE?
(clearInterval(this._timer),this._timer=setInterval(this._onFakeStep,this.options.fakeStepInterval)):this._onTransitionEnd()},_onFakeStep:function(){this.fire("step")},_onTransitionEnd:function(){if(this._inProgress)this._inProgress=!1,clearInterval(this._timer),this._el.style[L.Transition.PROPERTY]="none",this.fire("step"),this.fire("end")}});
L.Transition=L.Transition.NATIVE?L.Transition:L.Transition.extend({statics:{getTime:Date.now||function(){return+new Date},TIMER:!0,EASINGS:{ease:[0.25,0.1,0.25,1],linear:[0,0,1,1],"ease-in":[0.42,0,1,1],"ease-out":[0,0,0.58,1],"ease-in-out":[0.42,0,0.58,1]},CUSTOM_PROPS_GETTERS:{position:L.DomUtil.getPosition},UNIT_RE:/^[\d\.]+(\D*)$/},options:{fps:50},initialize:function(a,b){this._el=a;L.Util.extend(this.options,b);var c=L.Transition.EASINGS[this.options.easing]||L.Transition.EASINGS.ease;this._p1=
new L.Point(0,0);this._p2=new L.Point(c[0],c[1]);this._p3=new L.Point(c[2],c[3]);this._p4=new L.Point(1,1);this._step=L.Util.bind(this._step,this);this._interval=Math.round(1E3/this.options.fps)},run:function(a){this._props={};var b=L.Transition.CUSTOM_PROPS_GETTERS,c=L.Transition.UNIT_RE;this.fire("start");for(var d in a)if(a.hasOwnProperty(d)){var e={};if(d in b)e.from=b[d](this._el);else{var f=this._el.style[d].match(c);e.from=parseFloat(f[0]);e.unit=f[1]}e.to=a[d];this._props[d]=e}clearInterval(this._timer);
this._timer=setInterval(this._step,this._interval);this._startTime=L.Transition.getTime()},_step:function(){var a=L.Transition.getTime()-this._startTime,b=1E3*this.options.duration;a<b?this._runFrame(this._cubicBezier(a/b)):(this._runFrame(1),this._complete())},_runFrame:function(a){var b=L.Transition.CUSTOM_PROPS_SETTERS,c,d;for(c in this._props)this._props.hasOwnProperty(c)&&(d=this._props[c],c in b?(d=d.to.subtract(d.from).multiplyBy(a).add(d.from),b[c](this._el,d)):this._el.style[c]=(d.to-d.from)*
a+d.from+d.unit);this.fire("step")},_complete:function(){clearInterval(this._timer);this.fire("end")},_cubicBezier:function(a){var b=3*Math.pow(1-a,2)*a,c=3*(1-a)*Math.pow(a,2),d=Math.pow(a,3),a=this._p1.multiplyBy(Math.pow(1-a,3)),b=this._p2.multiplyBy(b),c=this._p3.multiplyBy(c),d=this._p4.multiplyBy(d);return a.add(b).add(c).add(d).y}});
L.LatLng=function(a,b,c){var d=parseFloat(a),e=parseFloat(b);if(isNaN(d)||isNaN(e))throw Error("Invalid LatLng object: ("+a+", "+b+")");!0!==c&&(d=Math.max(Math.min(d,90),-90),e=(e+180)%360+(-180>e?180:-180));this.lat=d;this.lng=e};L.Util.extend(L.LatLng,{DEG_TO_RAD:Math.PI/180,RAD_TO_DEG:180/Math.PI,MAX_MARGIN:1.0E-9});
L.LatLng.prototype={equals:function(a){return!(a instanceof L.LatLng)?!1:Math.max(Math.abs(this.lat-a.lat),Math.abs(this.lng-a.lng))<=L.LatLng.MAX_MARGIN},toString:function(){return"LatLng("+L.Util.formatNum(this.lat)+", "+L.Util.formatNum(this.lng)+")"}};
L.LatLngBounds=L.Class.extend({initialize:function(a,b){if(a)for(var c=a instanceof Array?a:[a,b],d=0,e=c.length;d<e;d++)this.extend(c[d])},extend:function(a){!this._southWest&&!this._northEast?(this._southWest=new L.LatLng(a.lat,a.lng),this._northEast=new L.LatLng(a.lat,a.lng)):(this._southWest.lat=Math.min(a.lat,this._southWest.lat),this._southWest.lng=Math.min(a.lng,this._southWest.lng),this._northEast.lat=Math.max(a.lat,this._northEast.lat),this._northEast.lng=Math.max(a.lng,this._northEast.lng))},
getCenter:function(){return new L.LatLng((this._southWest.lat+this._northEast.lat)/2,(this._southWest.lng+this._northEast.lng)/2)},getSouthWest:function(){return this._southWest},getNorthEast:function(){return this._northEast},getNorthWest:function(){return new L.LatLng(this._northEast.lat,this._southWest.lng)},getSouthEast:function(){return new L.LatLng(this._southWest.lat,this._northEast.lng)},contains:function(a){var b=this._southWest,c=this._northEast,d;a instanceof L.LatLngBounds?(d=a.getSouthWest(),
a=a.getNorthEast()):d=a;return d.lat>=b.lat&&a.lat<=c.lat&&d.lng>=b.lng&&a.lng<=c.lng},toBBoxString:function(){var a=this._southWest,b=this._northEast;return[a.lng,a.lat,b.lng,b.lat].join()}});L.Projection={};
L.Projection.SphericalMercator={MAX_LATITUDE:85.0511287798,project:function(a){var b=L.LatLng.DEG_TO_RAD,c=this.MAX_LATITUDE,d=a.lng*b,a=Math.max(Math.min(c,a.lat),-c)*b,a=Math.log(Math.tan(Math.PI/4+a/2));return new L.Point(d,a)},unproject:function(a,b){var c=L.LatLng.RAD_TO_DEG;return new L.LatLng((2*Math.atan(Math.exp(a.y))-Math.PI/2)*c,a.x*c,b)}};L.Projection.LonLat={project:function(a){return new L.Point(a.lng,a.lat)},unproject:function(a,b){return new L.LatLng(a.y,a.x,b)}};
L.Projection.Mercator={MAX_LATITUDE:85.0840591556,R_MINOR:6356752.3142,R_MAJOR:6378137,project:function(a){var b=L.LatLng.DEG_TO_RAD,c=this.MAX_LATITUDE,d=this.R_MAJOR,e=a.lng*b*d,a=Math.max(Math.min(c,a.lat),-c)*b,b=this.R_MINOR/d,b=Math.sqrt(1-b*b),c=b*Math.sin(a),c=Math.pow((1-c)/(1+c),0.5*b),a=-d*Math.log(Math.tan(0.5*(0.5*Math.PI-a))/c);return new L.Point(e,a)},unproject:function(a,b){for(var c=L.LatLng.RAD_TO_DEG,d=this.R_MAJOR,e=a.x*c/d,f=this.R_MINOR/d,f=Math.sqrt(1-f*f),d=Math.exp(-a.y/d),
g=Math.PI/2-2*Math.atan(d),j=15,k=0.1;1.0E-7<Math.abs(k)&&0<--j;)k=f*Math.sin(g),k=Math.PI/2-2*Math.atan(d*Math.pow((1-k)/(1+k),0.5*f))-g,g+=k;return new L.LatLng(g*c,e,b)}};L.CRS={latLngToPoint:function(a,b){return this.transformation._transform(this.projection.project(a),b)},pointToLatLng:function(a,b,c){return this.projection.unproject(this.transformation.untransform(a,b),c)},project:function(a){return this.projection.project(a)}};
L.CRS.EPSG3857=L.Util.extend({},L.CRS,{code:"EPSG:3857",projection:L.Projection.SphericalMercator,transformation:new L.Transformation(0.5/Math.PI,0.5,-0.5/Math.PI,0.5),project:function(a){return this.projection.project(a).multiplyBy(6378137)}});L.CRS.EPSG900913=L.Util.extend({},L.CRS.EPSG3857,{code:"EPSG:900913"});L.CRS.EPSG4326=L.Util.extend({},L.CRS,{code:"EPSG:4326",projection:L.Projection.LonLat,transformation:new L.Transformation(1/360,0.5,-1/360,0.5)});
L.CRS.EPSG3395=L.Util.extend({},L.CRS,{code:"EPSG:3395",projection:L.Projection.Mercator,transformation:function(){var a=L.Projection.Mercator;return new L.Transformation(0.5/(Math.PI*a.R_MAJOR),0.5,-0.5/(Math.PI*a.R_MINOR),0.5)}()});
L.Map=L.Class.extend({includes:L.Mixin.Events,options:{crs:L.CRS.EPSG3857||L.CRS.EPSG4326,scale:function(a){return 256*Math.pow(2,a)},center:null,zoom:null,layers:[],dragging:!0,touchZoom:L.Browser.touch&&!L.Browser.android,scrollWheelZoom:!L.Browser.touch,doubleClickZoom:!0,shiftDragZoom:!0,zoomControl:!0,attributionControl:!0,fadeAnimation:L.DomUtil.TRANSITION&&!L.Browser.android,zoomAnimation:L.DomUtil.TRANSITION&&!L.Browser.android&&!L.Browser.mobileOpera,trackResize:!0,closePopupOnClick:!0,worldCopyJump:!0},
initialize:function(a,b){L.Util.setOptions(this,b);this._container=L.DomUtil.get(a);if(this._container._leaflet)throw Error("Map container is already initialized.");this._container._leaflet=!0;this._initLayout();L.DomEvent&&(this._initEvents(),L.Handler&&this._initInteraction(),L.Control&&this._initControls());var c=this.options.center,d=this.options.zoom;null!==c&&null!==d&&this.setView(c,d,!0);c=this.options.layers;c=c instanceof Array?c:[c];this._tileLayersNum=0;this._initLayers(c)},setView:function(a,
b){this._resetView(a,this._limitZoom(b));return this},setZoom:function(a){return this.setView(this.getCenter(),a)},zoomIn:function(){return this.setZoom(this._zoom+1)},zoomOut:function(){return this.setZoom(this._zoom-1)},fitBounds:function(a){var b=this.getBoundsZoom(a);return this.setView(a.getCenter(),b)},fitWorld:function(){var a=new L.LatLng(-60,-170),b=new L.LatLng(85,179);return this.fitBounds(new L.LatLngBounds(a,b))},panTo:function(a){return this.setView(a,this._zoom)},panBy:function(a){this.fire("movestart");
this._rawPanBy(a);this.fire("move");this.fire("moveend");return this},addLayer:function(a,b){var c=L.Util.stamp(a);if(this._layers[c])return this;this._layers[c]=a;if(a.options&&!isNaN(a.options.maxZoom))this._layersMaxZoom=Math.max(this._layersMaxZoom||0,a.options.maxZoom);if(a.options&&!isNaN(a.options.minZoom))this._layersMinZoom=Math.min(this._layersMinZoom||Infinity,a.options.minZoom);this.options.zoomAnimation&&L.TileLayer&&a instanceof L.TileLayer&&(this._tileLayersNum++,a.on("load",this._onTileLayerLoad,
this));this.attributionControl&&a.getAttribution&&this.attributionControl.addAttribution(a.getAttribution());c=function(){a.onAdd(this,b);this.fire("layeradd",{layer:a})};if(this._loaded)c.call(this);else this.on("load",c,this);return this},removeLayer:function(a){var b=L.Util.stamp(a);this._layers[b]&&(a.onRemove(this),delete this._layers[b],this.options.zoomAnimation&&L.TileLayer&&a instanceof L.TileLayer&&(this._tileLayersNum--,a.off("load",this._onTileLayerLoad,this)),this.attributionControl&&
a.getAttribution&&this.attributionControl.removeAttribution(a.getAttribution()),this.fire("layerremove",{layer:a}));return this},hasLayer:function(a){return this._layers.hasOwnProperty(L.Util.stamp(a))},invalidateSize:function(){if(!this._loaded)return this;var a=this.getSize();this._sizeChanged=!0;this._rawPanBy(a.subtract(this.getSize()).divideBy(2));this.fire("move");clearTimeout(this._sizeTimer);this._sizeTimer=setTimeout(L.Util.bind(function(){this.fire("moveend")},this),200);return this},getCenter:function(a){var b=
this.getSize().divideBy(2);return this.unproject(this._getTopLeftPoint().add(b),this._zoom,a)},getZoom:function(){return this._zoom},getBounds:function(){var a=this.getPixelBounds(),b=this.unproject(new L.Point(a.min.x,a.max.y)),a=this.unproject(new L.Point(a.max.x,a.min.y));return new L.LatLngBounds(b,a)},getMinZoom:function(){return isNaN(this.options.minZoom)?this._layersMinZoom||0:this.options.minZoom},getMaxZoom:function(){return isNaN(this.options.maxZoom)?this._layersMaxZoom||Infinity:this.options.maxZoom},
getBoundsZoom:function(a){var b=this.getSize(),c=this.getMinZoom(),d=this.getMaxZoom(),e=a.getNorthEast(),a=a.getSouthWest(),f,g;do c++,f=this.project(e,c),g=this.project(a,c),f=new L.Point(f.x-g.x,g.y-f.y);while(f.x<=b.x&&f.y<=b.y&&c<=d);return c-1},getSize:function(){if(!this._size||this._sizeChanged)this._size=new L.Point(this._container.clientWidth,this._container.clientHeight),this._sizeChanged=!1;return this._size},getPixelBounds:function(){var a=this._getTopLeftPoint(),b=this.getSize();return new L.Bounds(a,
a.add(b))},getPixelOrigin:function(){return this._initialTopLeftPoint},getPanes:function(){return this._panes},mouseEventToContainerPoint:function(a){return L.DomEvent.getMousePosition(a,this._container)},mouseEventToLayerPoint:function(a){return this.containerPointToLayerPoint(this.mouseEventToContainerPoint(a))},mouseEventToLatLng:function(a){return this.layerPointToLatLng(this.mouseEventToLayerPoint(a))},containerPointToLayerPoint:function(a){return a.subtract(L.DomUtil.getPosition(this._mapPane))},
layerPointToContainerPoint:function(a){return a.add(L.DomUtil.getPosition(this._mapPane))},layerPointToLatLng:function(a){return this.unproject(a.add(this._initialTopLeftPoint))},latLngToLayerPoint:function(a){return this.project(a)._round()._subtract(this._initialTopLeftPoint)},project:function(a,b){b="undefined"===typeof b?this._zoom:b;return this.options.crs.latLngToPoint(a,this.options.scale(b))},unproject:function(a,b,c){b="undefined"===typeof b?this._zoom:b;return this.options.crs.pointToLatLng(a,
this.options.scale(b),c)},_initLayout:function(){var a=this._container;a.innerHTML="";a.className+=" leaflet-container";this.options.fadeAnimation&&(a.className+=" leaflet-fade-anim");var b=L.DomUtil.getStyle(a,"position");if("absolute"!==b&&"relative"!==b)a.style.position="relative";this._initPanes();this._initControlPos&&this._initControlPos()},_initPanes:function(){var a=this._panes={};this._mapPane=a.mapPane=this._createPane("leaflet-map-pane",this._container);this._tilePane=a.tilePane=this._createPane("leaflet-tile-pane",
this._mapPane);this._objectsPane=a.objectsPane=this._createPane("leaflet-objects-pane",this._mapPane);a.shadowPane=this._createPane("leaflet-shadow-pane");a.overlayPane=this._createPane("leaflet-overlay-pane");a.markerPane=this._createPane("leaflet-marker-pane");a.popupPane=this._createPane("leaflet-popup-pane")},_createPane:function(a,b){return L.DomUtil.create("div",a,b||this._objectsPane)},_resetView:function(a,b,c){var d=this._zoom!==b;this.fire("movestart");this._zoom=b;this._initialTopLeftPoint=
this._getNewTopLeftPoint(a);c?this._initialTopLeftPoint._add(L.DomUtil.getPosition(this._mapPane)):L.DomUtil.setPosition(this._mapPane,new L.Point(0,0));this._tileLayersToLoad=this._tileLayersNum;this.fire("viewreset",{hard:!c});this.fire("move");d&&this.fire("zoomend");this.fire("moveend");if(!this._loaded)this._loaded=!0,this.fire("load")},_initLayers:function(a){this._layers={};var b,c;b=0;for(c=a.length;b<c;b++)this.addLayer(a[b])},_initControls:function(){this.options.zoomControl&&this.addControl(new L.Control.Zoom);
if(this.options.attributionControl)this.attributionControl=new L.Control.Attribution,this.addControl(this.attributionControl)},_rawPanBy:function(a){var b=L.DomUtil.getPosition(this._mapPane);L.DomUtil.setPosition(this._mapPane,b.subtract(a))},_initEvents:function(){L.DomEvent.addListener(this._container,"click",this._onMouseClick,this);var a=["dblclick","mousedown","mouseenter","mouseleave","mousemove"],b,c;b=0;for(c=a.length;b<c;b++)L.DomEvent.addListener(this._container,a[b],this._fireMouseEvent,
this);this.options.trackResize&&L.DomEvent.addListener(window,"resize",this._onResize,this)},_onResize:function(){L.Util.requestAnimFrame(this.invalidateSize,this,!1,this._container)},_onMouseClick:function(a){if(this._loaded&&(!this.dragging||!this.dragging.moved()))this.fire("pre"+a.type),this._fireMouseEvent(a)},_fireMouseEvent:function(a){if(this._loaded){var b=a.type,b="mouseenter"===b?"mouseover":"mouseleave"===b?"mouseout":b;this.hasEventListeners(b)&&this.fire(b,{latlng:this.mouseEventToLatLng(a),
layerPoint:this.mouseEventToLayerPoint(a)})}},_initInteraction:function(){var a={dragging:L.Handler.MapDrag,touchZoom:L.Handler.TouchZoom,doubleClickZoom:L.Handler.DoubleClickZoom,scrollWheelZoom:L.Handler.ScrollWheelZoom,shiftDragZoom:L.Handler.ShiftDragZoom},b;for(b in a)a.hasOwnProperty(b)&&a[b]&&(this[b]=new a[b](this),this.options[b]&&this[b].enable())},_onTileLayerLoad:function(){this._tileLayersToLoad--;if(this._tileLayersNum&&!this._tileLayersToLoad&&this._tileBg)clearTimeout(this._clearTileBgTimer),
this._clearTileBgTimer=setTimeout(L.Util.bind(this._clearTileBg,this),500)},_getTopLeftPoint:function(){if(!this._loaded)throw Error("Set map center and zoom first.");return this._initialTopLeftPoint.subtract(L.DomUtil.getPosition(this._mapPane))},_getNewTopLeftPoint:function(a){var b=this.getSize().divideBy(2);return this.project(a).subtract(b).round()},_limitZoom:function(a){var b=this.getMinZoom(),c=this.getMaxZoom();return Math.max(b,Math.min(c,a))}});
L.Map.include({locate:function(a){this._locationOptions=a=L.Util.extend({watch:!1,setView:!1,maxZoom:Infinity,timeout:1E4,maximumAge:0,enableHighAccuracy:!1},a);if(!navigator.geolocation)return this.fire("locationerror",{code:0,message:"Geolocation not supported."});var b=L.Util.bind(this._handleGeolocationResponse,this),c=L.Util.bind(this._handleGeolocationError,this);a.watch?this._locationWatchId=navigator.geolocation.watchPosition(b,c,a):navigator.geolocation.getCurrentPosition(b,c,a);return this},
stopLocate:function(){navigator.geolocation&&navigator.geolocation.clearWatch(this._locationWatchId)},locateAndSetView:function(a,b){b=L.Util.extend({maxZoom:a||Infinity,setView:!0});return this.locate(b)},_handleGeolocationError:function(a){var a=a.code,b=1==a?"permission denied":2==a?"position unavailable":"timeout";this._locationOptions.setView&&!this._loaded&&this.fitWorld();this.fire("locationerror",{code:a,message:"Geolocation error: "+b+"."})},_handleGeolocationResponse:function(a){var b=180*
a.coords.accuracy/4E7,c=2*b,d=a.coords.latitude,e=a.coords.longitude,f=new L.LatLng(d,e),g=new L.LatLng(d-b,e-c),b=new L.LatLng(d+b,e+c),g=new L.LatLngBounds(g,b);this._locationOptions.setView&&(b=Math.min(this.getBoundsZoom(g),this._locationOptions.maxZoom),this.setView(f,b));this.fire("locationfound",{latlng:f,bounds:g,accuracy:a.coords.accuracy})}});
L.Map.include({openPopup:function(a){this.closePopup();this._popup=a;return this.addLayer(a)},closePopup:function(){this._popup&&this.removeLayer(this._popup);return this}});
L.Map.include(!L.Transition||!L.Transition.implemented()?{}:{setView:function(a,b,c){var b=this._limitZoom(b),d=this._zoom!=b;if(this._loaded&&!c&&this._layers&&(c=this._getNewTopLeftPoint(a).subtract(this._getTopLeftPoint()),a=new L.LatLng(a.lat,a.lng),d?this._zoomToIfCenterInView&&this._zoomToIfCenterInView(a,b,c):this._panByIfClose(c)))return this;this._resetView(a,b);return this},panBy:function(a){if(!a.x&&!a.y)return this;if(!this._panTransition)this._panTransition=new L.Transition(this._mapPane,
{duration:0.3}),this._panTransition.on("step",this._onPanTransitionStep,this),this._panTransition.on("end",this._onPanTransitionEnd,this);this.fire(this,"movestart");this._panTransition.run({position:L.DomUtil.getPosition(this._mapPane).subtract(a)});return this},_onPanTransitionStep:function(){this.fire("move")},_onPanTransitionEnd:function(){this.fire("moveend")},_panByIfClose:function(a){return this._offsetIsWithinView(a)?(this.panBy(a),!0):!1},_offsetIsWithinView:function(a,b){var c=b||1,d=this.getSize();
return Math.abs(a.x)<=d.x*c&&Math.abs(a.y)<=d.y*c}});
L.Map.include(!L.DomUtil.TRANSITION?{}:{_zoomToIfCenterInView:function(a,b,c){if(this._animatingZoom)return!0;if(!this.options.zoomAnimation)return!1;var d=Math.pow(2,b-this._zoom),c=c.divideBy(1-1/d);if(!this._offsetIsWithinView(c,1))return!1;this._mapPane.className+=" leaflet-zoom-anim";c=this.containerPointToLayerPoint(this.getSize().divideBy(2)).add(c);this._prepareTileBg();this._runAnimation(a,b,d,c);return!0},_runAnimation:function(a,b,c,d){this._animatingZoom=!0;this._animateToCenter=a;this._animateToZoom=
b;a=L.DomUtil.TRANSFORM;if(L.Browser.gecko||window.opera)this._tileBg.style[a]+=" translate(0,0)";L.Browser.android?(this._tileBg.style[a+"Origin"]=d.x+"px "+d.y+"px",c="scale("+c+")"):c=L.DomUtil.getScaleString(c,d);L.Util.falseFn(this._tileBg.offsetWidth);d={};d[a]=this._tileBg.style[a]+" "+c;this._tileBg.transition.run(d)},_prepareTileBg:function(){if(!this._tileBg)this._tileBg=this._createPane("leaflet-tile-pane",this._mapPane),this._tileBg.style.zIndex=1;var a=this._tilePane,b=this._tileBg;b.style[L.DomUtil.TRANSFORM]=
"";b.style.visibility="hidden";b.empty=!0;a.empty=!1;this._tilePane=this._panes.tilePane=b;this._tileBg=a;if(!this._tileBg.transition)this._tileBg.transition=new L.Transition(this._tileBg,{duration:0.3,easing:"cubic-bezier(0.25,0.1,0.25,0.75)"}),this._tileBg.transition.on("end",this._onZoomTransitionEnd,this);this._stopLoadingBgTiles()},_stopLoadingBgTiles:function(){for(var a=[].slice.call(this._tileBg.getElementsByTagName("img")),b=0,c=a.length;b<c;b++)a[b].complete||(a[b].parentNode.removeChild(a[b]),
a[b]=null)},_onZoomTransitionEnd:function(){this._restoreTileFront();L.Util.falseFn(this._tileBg.offsetWidth);this._resetView(this._animateToCenter,this._animateToZoom,!0);this._mapPane.className=this._mapPane.className.replace(" leaflet-zoom-anim","");this._animatingZoom=!1},_restoreTileFront:function(){this._tilePane.innerHTML="";this._tilePane.style.visibility="";this._tilePane.style.zIndex=2;this._tileBg.style.zIndex=1},_clearTileBg:function(){if(!this._animatingZoom&&!this.touchZoom._zooming)this._tileBg.innerHTML=
""}});
L.Map.include({addControl:function(a){a.onAdd(this);var b=a.getPosition(),c=this._controlCorners[b],a=a.getContainer();L.DomUtil.addClass(a,"leaflet-control");-1!=b.indexOf("bottom")?c.insertBefore(a,c.firstChild):c.appendChild(a);return this},removeControl:function(a){var b=this._controlCorners[a.getPosition()],c=a.getContainer();b.removeChild(c);if(a.onRemove)a.onRemove(this);return this},_initControlPos:function(){var a=this._controlCorners={},b=L.DomUtil.create("div","leaflet-control-container",this._container);
L.Browser.touch&&(b.className+=" leaflet-big-buttons");a.topLeft=L.DomUtil.create("div","leaflet-top leaflet-left",b);a.topRight=L.DomUtil.create("div","leaflet-top leaflet-right",b);a.bottomLeft=L.DomUtil.create("div","leaflet-bottom leaflet-left",b);a.bottomRight=L.DomUtil.create("div","leaflet-bottom leaflet-right",b)}});
L.LayerGroup=L.Class.extend({initialize:function(a){this._layers={};if(a)for(var b=0,c=a.length;b<c;b++)this.addLayer(a[b])},addLayer:function(a){this._layers[L.Util.stamp(a)]=a;this._map&&this._map.addLayer(a);return this},removeLayer:function(a){delete this._layers[L.Util.stamp(a)];this._map&&this._map.removeLayer(a);return this},clearLayers:function(){this._iterateLayers(this.removeLayer,this);return this},onAdd:function(a){this._map=a;this._iterateLayers(a.addLayer,a)},onRemove:function(a){this._iterateLayers(a.removeLayer,
a);delete this._map},_iterateLayers:function(a,b){for(var c in this._layers)this._layers.hasOwnProperty(c)&&a.call(b,this._layers[c])}});
L.FeatureGroup=L.LayerGroup.extend({includes:L.Mixin.Events,addLayer:function(a){this._initEvents(a);L.LayerGroup.prototype.addLayer.call(this,a);this._popupContent&&a.bindPopup&&a.bindPopup(this._popupContent)},bindPopup:function(a){this._popupContent=a;for(var b in this._layers)this._layers.hasOwnProperty(b)&&this._layers[b].bindPopup&&this._layers[b].bindPopup(a)},_events:["click","dblclick","mouseover","mouseout"],_initEvents:function(a){for(var b=0,c=this._events.length;b<c;b++)a.on(this._events[b],
this._propagateEvent,this)},_propagateEvent:function(a){a.layer=a.target;a.target=this;this.fire(a.type,a)}});
L.TileLayer=L.Class.extend({includes:L.Mixin.Events,options:{minZoom:0,maxZoom:18,tileSize:256,subdomains:"abc",errorTileUrl:"",attribution:"",opacity:1,scheme:"xyz",continuousWorld:!1,noWrap:!1,zoomOffset:0,unloadInvisibleTiles:L.Browser.mobile,updateWhenIdle:L.Browser.mobile},initialize:function(a,b,c){L.Util.setOptions(this,b);this._url=a;this._urlParams=c;if("string"==typeof this.options.subdomains)this.options.subdomains=this.options.subdomains.split("")},onAdd:function(a,b){this._map=a;this._insertAtTheBottom=
b;this._initContainer();this._createTileProto();a.on("viewreset",this._resetCallback,this);if(this.options.updateWhenIdle)a.on("moveend",this._update,this);else this._limitedUpdate=L.Util.limitExecByInterval(this._update,150,this),a.on("move",this._limitedUpdate,this);this._reset();this._update()},onRemove:function(){this._map.getPanes().tilePane.removeChild(this._container);this._container=null;this._map.off("viewreset",this._resetCallback,this);this.options.updateWhenIdle?this._map.off("moveend",
this._update,this):this._map.off("move",this._limitedUpdate,this)},getAttribution:function(){return this.options.attribution},setOpacity:function(a){this.options.opacity=a;this._setOpacity(a);if(L.Browser.webkit)for(i in this._tiles)this._tiles[i].style.webkitTransform+=" translate(0,0)"},_setOpacity:function(a){1>a&&L.DomUtil.setOpacity(this._container,a)},_initContainer:function(){var a=this._map.getPanes().tilePane,b=a.firstChild;if(!this._container||a.empty)this._container=L.DomUtil.create("div",
"leaflet-layer"),this._insertAtTheBottom&&b?a.insertBefore(this._container,b):a.appendChild(this._container),this._setOpacity(this.options.opacity)},_resetCallback:function(a){this._reset(a.hard)},_reset:function(a){for(var b in this._tiles)this._tiles.hasOwnProperty(b)&&this.fire("tileunload",{tile:this._tiles[b]});this._tiles={};if(a&&this._container)this._container.innerHTML="";this._initContainer();this._container.innerHTML=""},_update:function(){var a=this._map.getPixelBounds(),b=this.options.tileSize,
c=new L.Point(Math.floor(a.min.x/b),Math.floor(a.min.y/b)),a=new L.Point(Math.floor(a.max.x/b),Math.floor(a.max.y/b)),c=new L.Bounds(c,a);this._addTilesFromCenterOut(c);this.options.unloadInvisibleTiles&&this._removeOtherTiles(c)},_addTilesFromCenterOut:function(a){for(var b=[],c=a.getCenter(),d=a.min.y;d<=a.max.y;d++)for(var e=a.min.x;e<=a.max.x;e++)e+":"+d in this._tiles||b.push(new L.Point(e,d));b.sort(function(a,b){return a.distanceTo(c)-b.distanceTo(c)});a=document.createDocumentFragment();this._tilesToLoad=
b.length;d=0;for(e=this._tilesToLoad;d<e;d++)this._addTile(b[d],a);this._container.appendChild(a)},_removeOtherTiles:function(a){var b,c,d;for(d in this._tiles)if(this._tiles.hasOwnProperty(d)&&(b=d.split(":"),c=parseInt(b[0],10),b=parseInt(b[1],10),c<a.min.x||c>a.max.x||b<a.min.y||b>a.max.y))c=this._tiles[d],this.fire("tileunload",{tile:c,url:c.src}),c.parentNode==this._container&&this._container.removeChild(c),delete this._tiles[d]},_addTile:function(a,b){var c=this._getTilePos(a),d=this._map.getZoom(),
e=a.x+":"+a.y,f=1<<d+this.options.zoomOffset;if(!this.options.continuousWorld){if(this.options.noWrap){if(0>a.x||a.x>=f){this._tilesToLoad--;return}}else a.x=(a.x%f+f)%f;if(0>a.y||a.y>=f){this._tilesToLoad--;return}}var g=this._createTile();L.DomUtil.setPosition(g,c);this._tiles[e]=g;if("tms"==this.options.scheme)a.y=f-a.y-1;this._loadTile(g,a,d);b.appendChild(g)},_getTilePos:function(a){var b=this._map.getPixelOrigin();return a.multiplyBy(this.options.tileSize).subtract(b)},getTileUrl:function(a,
b){return L.Util.template(this._url,L.Util.extend({s:this.options.subdomains[(a.x+a.y)%this.options.subdomains.length],z:b+this.options.zoomOffset,x:a.x,y:a.y},this._urlParams))},_createTileProto:function(){this._tileImg=L.DomUtil.create("img","leaflet-tile");this._tileImg.galleryimg="no";var a=this.options.tileSize;this._tileImg.style.width=a+"px";this._tileImg.style.height=a+"px"},_createTile:function(){var a=this._tileImg.cloneNode(!1);a.onselectstart=a.onmousemove=L.Util.falseFn;return a},_loadTile:function(a,
b,c){a._layer=this;a.onload=this._tileOnLoad;a.onerror=this._tileOnError;a.src=this.getTileUrl(b,c)},_tileOnLoad:function(){var a=this._layer;this.className+=" leaflet-tile-loaded";a.fire("tileload",{tile:this,url:this.src});a._tilesToLoad--;a._tilesToLoad||a.fire("load")},_tileOnError:function(){var a=this._layer;a.fire("tileerror",{tile:this,url:this.src});if(a=a.options.errorTileUrl)this.src=a}});
L.TileLayer.WMS=L.TileLayer.extend({defaultWmsParams:{service:"WMS",request:"GetMap",version:"1.1.1",layers:"",styles:"",format:"image/jpeg",transparent:!1},initialize:function(a,b){this._url=a;this.wmsParams=L.Util.extend({},this.defaultWmsParams);this.wmsParams.width=this.wmsParams.height=this.options.tileSize;for(var c in b)this.options.hasOwnProperty(c)||(this.wmsParams[c]=b[c]);L.Util.setOptions(this,b)},onAdd:function(a){this.wmsParams[1.3<=parseFloat(this.wmsParams.version)?"crs":"srs"]=a.options.crs.code;
L.TileLayer.prototype.onAdd.call(this,a)},getTileUrl:function(a){var b=this.options.tileSize,a=a.multiplyBy(b),b=a.add(new L.Point(b,b)),a=this._map.unproject(a,this._zoom,!0),b=this._map.unproject(b,this._zoom,!0),a=this._map.options.crs.project(a),b=this._map.options.crs.project(b),b=[a.x,b.y,b.x,a.y].join();return this._url+L.Util.getParamString(this.wmsParams)+"&bbox="+b}});
L.TileLayer.Canvas=L.TileLayer.extend({options:{async:!1},initialize:function(a){L.Util.setOptions(this,a)},_createTileProto:function(){this._canvasProto=L.DomUtil.create("canvas","leaflet-tile");var a=this.options.tileSize;this._canvasProto.width=a;this._canvasProto.height=a},_createTile:function(){var a=this._canvasProto.cloneNode(!1);a.onselectstart=a.onmousemove=L.Util.falseFn;return a},_loadTile:function(a,b,c){a._layer=this;this.drawTile(a,b,c);this.options.async||this.tileDrawn(a)},drawTile:function(){},
tileDrawn:function(a){this._tileOnLoad.call(a)}});
L.ImageOverlay=L.Class.extend({includes:L.Mixin.Events,initialize:function(a,b){this._url=a;this._bounds=b},onAdd:function(a){this._map=a;this._image||this._initImage();a.getPanes().overlayPane.appendChild(this._image);a.on("viewreset",this._reset,this);this._reset()},onRemove:function(a){a.getPanes().overlayPane.removeChild(this._image);a.off("viewreset",this._reset,this)},_initImage:function(){this._image=L.DomUtil.create("img","leaflet-image-layer");this._image.style.visibility="hidden";L.Util.extend(this._image,
{galleryimg:"no",onselectstart:L.Util.falseFn,onmousemove:L.Util.falseFn,onload:this._onImageLoad,src:this._url})},_reset:function(){var a=this._map.latLngToLayerPoint(this._bounds.getNorthWest()),b=this._map.latLngToLayerPoint(this._bounds.getSouthEast()).subtract(a);L.DomUtil.setPosition(this._image,a);this._image.style.width=b.x+"px";this._image.style.height=b.y+"px"},_onImageLoad:function(){this.style.visibility=""}});
L.Popup=L.Class.extend({includes:L.Mixin.Events,options:{minWidth:50,maxWidth:300,autoPan:!0,closeButton:!0,offset:new L.Point(0,2),autoPanPadding:new L.Point(5,5)},initialize:function(a){L.Util.setOptions(this,a)},onAdd:function(a){this._map=a;this._container||this._initLayout();this._updateContent();this._container.style.opacity="0";this._map._panes.popupPane.appendChild(this._container);this._map.on("viewreset",this._updatePosition,this);if(this._map.options.closePopupOnClick)this._map.on("preclick",
this._close,this);this._update();this._container.style.opacity="1";this._opened=!0},onRemove:function(a){a._panes.popupPane.removeChild(this._container);a.off("viewreset",this._updatePosition,this);a.off("click",this._close,this);this._container.style.opacity="0";this._opened=!1},setLatLng:function(a){this._latlng=a;this._opened&&this._update();return this},setContent:function(a){this._content=a;this._opened&&this._update();return this},_close:function(){this._opened&&this._map.removeLayer(this)},
_initLayout:function(){this._container=L.DomUtil.create("div","leaflet-popup");if(this.options.closeButton)this._closeButton=L.DomUtil.create("a","leaflet-popup-close-button",this._container),this._closeButton.href="#close",L.DomEvent.addListener(this._closeButton,"click",this._onCloseButtonClick,this);this._wrapper=L.DomUtil.create("div","leaflet-popup-content-wrapper",this._container);L.DomEvent.disableClickPropagation(this._wrapper);this._contentNode=L.DomUtil.create("div","leaflet-popup-content",
this._wrapper);this._tipContainer=L.DomUtil.create("div","leaflet-popup-tip-container",this._container);this._tip=L.DomUtil.create("div","leaflet-popup-tip",this._tipContainer)},_update:function(){this._container.style.visibility="hidden";this._updateContent();this._updateLayout();this._updatePosition();this._container.style.visibility="";this._adjustPan()},_updateContent:function(){if(this._content)"string"==typeof this._content?this._contentNode.innerHTML=this._content:(this._contentNode.innerHTML=
"",this._contentNode.appendChild(this._content))},_updateLayout:function(){this._container.style.width="";this._container.style.whiteSpace="nowrap";var a=this._container.offsetWidth;this._container.style.width=(a>this.options.maxWidth?this.options.maxWidth:a<this.options.minWidth?this.options.minWidth:a)+"px";this._container.style.whiteSpace="";this._containerWidth=this._container.offsetWidth},_updatePosition:function(){var a=this._map.latLngToLayerPoint(this._latlng);this._containerBottom=-a.y-this.options.offset.y;
this._containerLeft=a.x-Math.round(this._containerWidth/2)+this.options.offset.x;this._container.style.bottom=this._containerBottom+"px";this._container.style.left=this._containerLeft+"px"},_adjustPan:function(){if(this.options.autoPan){var a=this._container.offsetHeight,b=this._map.layerPointToContainerPoint(new L.Point(this._containerLeft,-a-this._containerBottom)),c=new L.Point(0,0),d=this.options.autoPanPadding,e=this._map.getSize();if(0>b.x)c.x=b.x-d.x;if(b.x+this._containerWidth>e.x)c.x=b.x+
this._containerWidth-e.x+d.x;if(0>b.y)c.y=b.y-d.y;if(b.y+a>e.y)c.y=b.y+a-e.y+d.y;(c.x||c.y)&&this._map.panBy(c)}},_onCloseButtonClick:function(a){this._close();L.DomEvent.stop(a)}});
L.Icon=L.Class.extend({iconUrl:L.ROOT_URL+"images/marker.png",shadowUrl:L.ROOT_URL+"images/marker-shadow.png",iconSize:new L.Point(25,41),shadowSize:new L.Point(41,41),iconAnchor:new L.Point(13,41),popupAnchor:new L.Point(0,-33),initialize:function(a){if(a)this.iconUrl=a},createIcon:function(){return this._createIcon("icon")},createShadow:function(){return this._createIcon("shadow")},_createIcon:function(a){var b=this[a+"Size"],c=this[a+"Url"],d=this._createImg(c);if(!c)return null;d.className="leaflet-marker-"+
a;d.style.marginLeft=-this.iconAnchor.x+"px";d.style.marginTop=-this.iconAnchor.y+"px";if(b)d.style.width=b.x+"px",d.style.height=b.y+"px";return d},_createImg:function(a){var b;L.Browser.ie6?(b=document.createElement("div"),b.style.filter='progid:DXImageTransform.Microsoft.AlphaImageLoader(src="'+a+'")'):(b=document.createElement("img"),b.src=a);return b}});
L.Marker=L.Class.extend({includes:L.Mixin.Events,options:{icon:new L.Icon,title:"",clickable:!0,draggable:!1},initialize:function(a,b){L.Util.setOptions(this,b);this._latlng=a},onAdd:function(a){this._map=a;this._initIcon();a.on("viewreset",this._reset,this);this._reset()},onRemove:function(a){this._removeIcon();this._map=null;this.closePopup&&this.closePopup();a.off("viewreset",this._reset,this)},getLatLng:function(){return this._latlng},setLatLng:function(a){this._latlng=a;this._icon&&this._reset()},
setIcon:function(a){this._map&&this._removeIcon();this.options.icon=a;this._map&&(this._initIcon(),this._reset())},_initIcon:function(){if(!this._icon){this._icon=this.options.icon.createIcon();if(this.options.title)this._icon.title=this.options.title;this._initInteraction()}if(!this._shadow)this._shadow=this.options.icon.createShadow();this._map._panes.markerPane.appendChild(this._icon);this._shadow&&this._map._panes.shadowPane.appendChild(this._shadow)},_removeIcon:function(){this._map._panes.markerPane.removeChild(this._icon);
this._shadow&&this._map._panes.shadowPane.removeChild(this._shadow);this._icon=this._shadow=null},_reset:function(){var a=this._map.latLngToLayerPoint(this._latlng).round();L.DomUtil.setPosition(this._icon,a);this._shadow&&L.DomUtil.setPosition(this._shadow,a);this._icon.style.zIndex=a.y},_initInteraction:function(){if(this.options.clickable){this._icon.className+=" leaflet-clickable";L.DomEvent.addListener(this._icon,"click",this._onMouseClick,this);for(var a=["dblclick","mousedown","mouseover",
"mouseout"],b=0;b<a.length;b++)L.DomEvent.addListener(this._icon,a[b],this._fireMouseEvent,this)}if(L.Handler.MarkerDrag)this.dragging=new L.Handler.MarkerDrag(this),this.options.draggable&&this.dragging.enable()},_onMouseClick:function(a){L.DomEvent.stopPropagation(a);(!this.dragging||!this.dragging.moved())&&this.fire(a.type)},_fireMouseEvent:function(a){this.fire(a.type);L.DomEvent.stopPropagation(a)}});
L.Marker.include({openPopup:function(){this._popup.setLatLng(this._latlng);this._map.openPopup(this._popup);return this},closePopup:function(){this._popup&&this._popup._close();return this},bindPopup:function(a,b){b=L.Util.extend({offset:this.options.icon.popupAnchor},b);if(!this._popup)this.on("click",this.openPopup,this);this._popup=new L.Popup(b);this._popup.setContent(a);return this},unbindPopup:function(){if(this._popup)this._popup=null,this.off("click",this.openPopup);return this}});
L.Path=L.Class.extend({includes:[L.Mixin.Events],statics:{CLIP_PADDING:0.5},options:{stroke:!0,color:"#0033ff",weight:5,opacity:0.5,fill:!1,fillColor:null,fillOpacity:0.2,clickable:!0,updateOnMoveEnd:!0},initialize:function(a){L.Util.setOptions(this,a)},onAdd:function(a){this._map=a;this._initElements();this._initEvents();this.projectLatlngs();this._updatePath();a.on("viewreset",this.projectLatlngs,this);this._updateTrigger=this.options.updateOnMoveEnd?"moveend":"viewreset";a.on(this._updateTrigger,
this._updatePath,this)},onRemove:function(a){this._map=null;a._pathRoot.removeChild(this._container);a.off("viewreset",this.projectLatlngs,this);a.off(this._updateTrigger,this._updatePath,this)},projectLatlngs:function(){},setStyle:function(a){L.Util.setOptions(this,a);this._container&&this._updateStyle();return this},_redraw:function(){this._map&&(this.projectLatlngs(),this._updatePath())}});
L.Map.include({_updatePathViewport:function(){var a=L.Path.CLIP_PADDING,b=this.getSize(),c=L.DomUtil.getPosition(this._mapPane).multiplyBy(-1).subtract(b.multiplyBy(a)),a=c.add(b.multiplyBy(1+2*a));this._pathViewport=new L.Bounds(c,a)}});
L.Path.include({bindPopup:function(a,b){if(!this._popup||this._popup.options!==b)this._popup=new L.Popup(b);this._popup.setContent(a);if(!this._openPopupAdded)this.on("click",this._openPopup,this),this._openPopupAdded=!0;return this},_openPopup:function(a){this._popup.setLatLng(a.latlng);this._map.openPopup(this._popup)}});L.Path.SVG_NS="http://www.w3.org/2000/svg";L.Browser.svg=!(!document.createElementNS||!document.createElementNS(L.Path.SVG_NS,"svg").createSVGRect);
L.Path=L.Path.extend({statics:{SVG:L.Browser.svg,_createElement:function(a){return document.createElementNS(L.Path.SVG_NS,a)}},getPathString:function(){},_initElements:function(){this._map._initPathRoot();this._initPath();this._initStyle()},_initPath:function(){this._container=L.Path._createElement("g");this._path=L.Path._createElement("path");this._container.appendChild(this._path);this._map._pathRoot.appendChild(this._container)},_initStyle:function(){this.options.stroke&&(this._path.setAttribute("stroke-linejoin",
"round"),this._path.setAttribute("stroke-linecap","round"));this.options.fill?this._path.setAttribute("fill-rule","evenodd"):this._path.setAttribute("fill","none");this._updateStyle()},_updateStyle:function(){this.options.stroke&&(this._path.setAttribute("stroke",this.options.color),this._path.setAttribute("stroke-opacity",this.options.opacity),this._path.setAttribute("stroke-width",this.options.weight));this.options.fill&&(this._path.setAttribute("fill",this.options.fillColor||this.options.color),
this._path.setAttribute("fill-opacity",this.options.fillOpacity))},_updatePath:function(){var a=this.getPathString();a||(a="M0 0");this._path.setAttribute("d",a)},_initEvents:function(){if(this.options.clickable){L.Browser.vml||this._path.setAttribute("class","leaflet-clickable");L.DomEvent.addListener(this._container,"click",this._onMouseClick,this);for(var a=["dblclick","mousedown","mouseover","mouseout","mousemove"],b=0;b<a.length;b++)L.DomEvent.addListener(this._container,a[b],this._fireMouseEvent,
this)}},_onMouseClick:function(a){(!this._map.dragging||!this._map.dragging.moved())&&this._fireMouseEvent(a)},_fireMouseEvent:function(a){this.hasEventListeners(a.type)&&(this.fire(a.type,{latlng:this._map.mouseEventToLatLng(a),layerPoint:this._map.mouseEventToLayerPoint(a)}),L.DomEvent.stopPropagation(a))}});
L.Map.include({_initPathRoot:function(){if(!this._pathRoot)this._pathRoot=L.Path._createElement("svg"),this._panes.overlayPane.appendChild(this._pathRoot),this.on("moveend",this._updateSvgViewport),this._updateSvgViewport()},_updateSvgViewport:function(){this._updatePathViewport();var a=this._pathViewport,b=a.min,c=a.max,a=c.x-b.x,c=c.y-b.y,d=this._pathRoot,e=this._panes.overlayPane;L.Browser.webkit&&e.removeChild(d);L.DomUtil.setPosition(d,b);d.setAttribute("width",a);d.setAttribute("height",c);
d.setAttribute("viewBox",[b.x,b.y,a,c].join(" "));L.Browser.webkit&&e.appendChild(d)}});L.Browser.vml=function(){var a=document.createElement("div");a.innerHTML='<v:shape adj="1"/>';a=a.firstChild;a.style.behavior="url(#default#VML)";return a&&"object"==typeof a.adj}();
L.Path=L.Browser.svg||!L.Browser.vml?L.Path:L.Path.extend({statics:{VML:!0,CLIP_PADDING:0.02,_createElement:function(){try{return document.namespaces.add("lvml","urn:schemas-microsoft-com:vml"),function(a){return document.createElement("<lvml:"+a+' class="lvml">')}}catch(a){return function(a){return document.createElement("<"+a+' xmlns="urn:schemas-microsoft.com:vml" class="lvml">')}}}()},_initPath:function(){this._container=L.Path._createElement("shape");this._container.className+=" leaflet-vml-shape"+
(this.options.clickable?" leaflet-clickable":"");this._container.coordsize="1 1";this._path=L.Path._createElement("path");this._container.appendChild(this._path);this._map._pathRoot.appendChild(this._container)},_initStyle:function(){this.options.stroke?(this._stroke=L.Path._createElement("stroke"),this._stroke.endcap="round",this._container.appendChild(this._stroke)):this._container.stroked=!1;this.options.fill?(this._container.filled=!0,this._fill=L.Path._createElement("fill"),this._container.appendChild(this._fill)):
this._container.filled=!1;this._updateStyle()},_updateStyle:function(){if(this.options.stroke)this._stroke.weight=this.options.weight+"px",this._stroke.color=this.options.color,this._stroke.opacity=this.options.opacity;if(this.options.fill)this._fill.color=this.options.fillColor||this.options.color,this._fill.opacity=this.options.fillOpacity},_updatePath:function(){this._container.style.display="none";this._path.v=this.getPathString()+" ";this._container.style.display=""}});
L.Map.include(L.Browser.svg||!L.Browser.vml?{}:{_initPathRoot:function(){if(!this._pathRoot)this._pathRoot=document.createElement("div"),this._pathRoot.className="leaflet-vml-container",this._panes.overlayPane.appendChild(this._pathRoot),this.on("moveend",this._updatePathViewport),this._updatePathViewport()}});L.Browser.canvas=function(){return!!document.createElement("canvas").getContext}();
L.Path=L.Path.SVG&&!window.L_PREFER_CANVAS||!L.Browser.canvas?L.Path:L.Path.extend({statics:{CANVAS:!0,SVG:!1},options:{updateOnMoveEnd:!0},_initElements:function(){this._map._initPathRoot();this._ctx=this._map._canvasCtx},_updateStyle:function(){if(this.options.stroke)this._ctx.lineWidth=this.options.weight,this._ctx.strokeStyle=this.options.color;if(this.options.fill)this._ctx.fillStyle=this.options.fillColor||this.options.color},_drawPath:function(){var a,b,c,d,e,f;this._ctx.beginPath();a=0;for(c=
this._parts.length;a<c;a++){b=0;for(d=this._parts[a].length;b<d;b++)e=this._parts[a][b],f=(0===b?"move":"line")+"To",this._ctx[f](e.x,e.y);this instanceof L.Polygon&&this._ctx.closePath()}},_checkIfEmpty:function(){return!this._parts.length},_updatePath:function(){if(!this._checkIfEmpty()){this._drawPath();this._ctx.save();this._updateStyle();var a=this.options.opacity,b=this.options.fillOpacity;if(this.options.fill){if(1>b)this._ctx.globalAlpha=b;this._ctx.fill()}if(this.options.stroke){if(1>a)this._ctx.globalAlpha=
a;this._ctx.stroke()}this._ctx.restore()}},_initEvents:function(){if(this.options.clickable)this._map.on("click",this._onClick,this)},_onClick:function(a){this._containsPoint(a.layerPoint)&&this.fire("click",a)},onRemove:function(a){a.off("viewreset",this._projectLatlngs,this);a.off(this._updateTrigger,this._updatePath,this);a.fire(this._updateTrigger)}});
L.Map.include(L.Path.SVG&&!window.L_PREFER_CANVAS||!L.Browser.canvas?{}:{_initPathRoot:function(){var a=this._pathRoot,b;if(!a)a=this._pathRoot=document.createElement("canvas"),a.style.position="absolute",b=this._canvasCtx=a.getContext("2d"),b.lineCap="round",b.lineJoin="round",this._panes.overlayPane.appendChild(a),this.on("moveend",this._updateCanvasViewport),this._updateCanvasViewport()},_updateCanvasViewport:function(){this._updatePathViewport();var a=this._pathViewport,b=a.min,a=a.max.subtract(b),
c=this._pathRoot;L.DomUtil.setPosition(c,b);c.width=a.x;c.height=a.y;c.getContext("2d").translate(-b.x,-b.y)}});
L.Polyline=L.Path.extend({initialize:function(a,b){L.Path.prototype.initialize.call(this,b);this._latlngs=a},options:{smoothFactor:1,noClip:!1,updateOnMoveEnd:!0},projectLatlngs:function(){this._originalPoints=[];for(var a=0,b=this._latlngs.length;a<b;a++)this._originalPoints[a]=this._map.latLngToLayerPoint(this._latlngs[a])},getPathString:function(){for(var a=0,b=this._parts.length,c="";a<b;a++)c+=this._getPathPartStr(this._parts[a]);return c},getLatLngs:function(){return this._latlngs},setLatLngs:function(a){this._latlngs=
a;this._redraw();return this},addLatLng:function(a){this._latlngs.push(a);this._redraw();return this},spliceLatLngs:function(){var a=[].splice.apply(this._latlngs,arguments);this._redraw();return a},closestLayerPoint:function(a){for(var b=Infinity,c=this._parts,d,e,f=null,g=0,j=c.length;g<j;g++)for(var k=c[g],m=1,s=k.length;m<s;m++)if(d=k[m-1],e=k[m],d=L.LineUtil._sqClosestPointOnSegment(a,d,e),d._sqDist<b)b=d._sqDist,f=d;if(f)f.distance=Math.sqrt(b);return f},getBounds:function(){for(var a=new L.LatLngBounds,
b=this.getLatLngs(),c=0,d=b.length;c<d;c++)a.extend(b[c]);return a},_getPathPartStr:function(a){for(var b=L.Path.VML,c=0,d=a.length,e="",f;c<d;c++)f=a[c],b&&f._round(),e+=(c?"L":"M")+f.x+" "+f.y;return e},_clipPoints:function(){var a=this._originalPoints,b=a.length,c,d,e;if(this.options.noClip)this._parts=[a];else{var f=this._parts=[],g=this._map._pathViewport,j=L.LineUtil;for(d=c=0;c<b-1;c++)if(e=j.clipSegment(a[c],a[c+1],g,c))if(f[d]=f[d]||[],f[d].push(e[0]),e[1]!=a[c+1]||c==b-2)f[d].push(e[1]),
d++}},_simplifyPoints:function(){for(var a=this._parts,b=L.LineUtil,c=0,d=a.length;c<d;c++)a[c]=b.simplify(a[c],this.options.smoothFactor)},_updatePath:function(){this._clipPoints();this._simplifyPoints();L.Path.prototype._updatePath.call(this)}});
L.Polyline.include(!L.Path.CANVAS?{}:{_containsPoint:function(a,b){var c,d,e,f,g,j,k=this.options.weight/2;L.Browser.touch&&(k+=10);c=0;for(f=this._parts.length;c<f;c++){j=this._parts[c];d=0;g=j.length;for(e=g-1;d<g;e=d++)if(b||0!==d)if(e=L.LineUtil.pointToSegmentDistance(a,j[e],j[d]),e<=k)return!0}return!1}});
L.Polygon=L.Polyline.extend({options:{fill:!0},initialize:function(a,b){L.Polyline.prototype.initialize.call(this,a,b);if(a[0]instanceof Array)this._latlngs=a[0],this._holes=a.slice(1)},projectLatlngs:function(){L.Polyline.prototype.projectLatlngs.call(this);this._holePoints=[];if(this._holes)for(var a=0,b=this._holes.length;a<b;a++){this._holePoints[a]=[];for(var c=0,d=this._holes[a].length;c<d;c++)this._holePoints[a][c]=this._map.latLngToLayerPoint(this._holes[a][c])}},_clipPoints:function(){var a=
[];this._parts=[this._originalPoints].concat(this._holePoints);if(!this.options.noClip){for(var b=0,c=this._parts.length;b<c;b++){var d=L.PolyUtil.clipPolygon(this._parts[b],this._map._pathViewport);d.length&&a.push(d)}this._parts=a}},_getPathPartStr:function(a){return L.Polyline.prototype._getPathPartStr.call(this,a)+(L.Browser.svg?"z":"x")}});
L.Polygon.include(!L.Path.CANVAS?{}:{_containsPoint:function(a){var b=!1,c,d,e,f,g,j,k;if(L.Polyline.prototype._containsPoint.call(this,a,!0))return!0;f=0;for(j=this._parts.length;f<j;f++){c=this._parts[f];g=0;k=c.length;for(e=k-1;g<k;e=g++)d=c[g],e=c[e],d.y>a.y!=e.y>a.y&&a.x<(e.x-d.x)*(a.y-d.y)/(e.y-d.y)+d.x&&(b=!b)}return b}});
(function(){function a(a){return L.FeatureGroup.extend({initialize:function(a,b){this._layers={};this._options=b;this.setLatLngs(a)},setStyle:function(a){for(var b in this._layers)this._layers.hasOwnProperty(b)&&this._layers[b].setStyle&&this._layers[b].setStyle(a)},setLatLngs:function(c){var d=0,e=c.length;for(this._iterateLayers(function(a){d<e?a.setLatLngs(c[d++]):this.removeLayer(a)},this);d<e;)this.addLayer(new a(c[d++],this._options))}})}L.MultiPolyline=a(L.Polyline);L.MultiPolygon=a(L.Polygon)})();
L.Circle=L.Path.extend({initialize:function(a,b,c){L.Path.prototype.initialize.call(this,c);this._latlng=a;this._mRadius=b},options:{fill:!0},setLatLng:function(a){this._latlng=a;this._redraw();return this},setRadius:function(a){this._mRadius=a;this._redraw();return this},projectLatlngs:function(){var a=this._map.latLngToLayerPoint(new L.LatLng(this._latlng.lat,this._latlng.lng-360*(this._mRadius/(40075017*Math.cos(L.LatLng.DEG_TO_RAD*this._latlng.lat))),!0));this._point=this._map.latLngToLayerPoint(this._latlng);
this._radius=Math.round(this._point.x-a.x)},getPathString:function(){var a=this._point,b=this._radius;return this._checkIfEmpty()?"":L.Browser.svg?"M"+a.x+","+(a.y-b)+"A"+b+","+b+",0,1,1,"+(a.x-0.1)+","+(a.y-b)+" z":(a._round(),b=Math.round(b),"AL "+a.x+","+a.y+" "+b+","+b+" 0,23592600")},_checkIfEmpty:function(){var a=this._map._pathViewport,b=this._radius,c=this._point;return c.x-b>a.max.x||c.y-b>a.max.y||c.x+b<a.min.x||c.y+b<a.min.y}});
L.Circle.include(!L.Path.CANVAS?{}:{_drawPath:function(){var a=this._point;this._ctx.beginPath();this._ctx.arc(a.x,a.y,this._radius,0,2*Math.PI)},_containsPoint:function(a){var b=this.options.stroke?this.options.weight/2:0;return a.distanceTo(this._point)<=this._radius+b}});
L.CircleMarker=L.Circle.extend({options:{radius:10,weight:2},initialize:function(a,b){L.Circle.prototype.initialize.call(this,a,null,b);this._radius=this.options.radius},projectLatlngs:function(){this._point=this._map.latLngToLayerPoint(this._latlng)},setRadius:function(a){this._radius=a;this._redraw();return this}});
L.GeoJSON=L.FeatureGroup.extend({initialize:function(a,b){L.Util.setOptions(this,b);this._geojson=a;this._layers={};a&&this.addGeoJSON(a)},addGeoJSON:function(a){if(a.features)for(var b=0,c=a.features.length;b<c;b++)this.addGeoJSON(a.features[b]);else b="Feature"==a.type?a.geometry:a,c=L.GeoJSON.geometryToLayer(b,this.options.pointToLayer),this.fire("featureparse",{layer:c,properties:a.properties,geometryType:b.type,bbox:a.bbox,id:a.id}),this.addLayer(c)}});
L.Util.extend(L.GeoJSON,{geometryToLayer:function(a,b){var c=a.coordinates,d,e,f,g=[];switch(a.type){case "Point":return d=this.coordsToLatLng(c),b?b(d):new L.Marker(d);case "MultiPoint":e=0;for(f=c.length;e<f;e++)d=this.coordsToLatLng(c[e]),d=b?b(d):new L.Marker(d),g.push(d);return new L.FeatureGroup(g);case "LineString":return c=this.coordsToLatLngs(c),new L.Polyline(c);case "Polygon":return c=this.coordsToLatLngs(c,1),new L.Polygon(c);case "MultiLineString":return c=this.coordsToLatLngs(c,1),new L.MultiPolyline(c);
case "MultiPolygon":return c=this.coordsToLatLngs(c,2),new L.MultiPolygon(c);case "GeometryCollection":e=0;for(f=a.geometries.length;e<f;e++)d=this.geometryToLayer(a.geometries[e]),g.push(d);return new L.FeatureGroup(g);default:throw Error("Invalid GeoJSON object.");}},coordsToLatLng:function(a,b){var c=parseFloat(a[b?0:1]),d=parseFloat(a[b?1:0]);return new L.LatLng(c,d)},coordsToLatLngs:function(a,b,c){var d,e=[],f,g=a.length;for(f=0;f<g;f++)d=b?this.coordsToLatLngs(a[f],b-1,c):this.coordsToLatLng(a[f],
c),e.push(d);return e}});L.Handler=L.Class.extend({initialize:function(a){this._map=a},enabled:function(){return!!this._enabled}});
L.Handler.MapDrag=L.Handler.extend({enable:function(){if(!this._enabled){if(!this._draggable){this._draggable=new L.Draggable(this._map._mapPane,this._map._container);this._draggable.on("dragstart",this._onDragStart,this);this._draggable.on("drag",this._onDrag,this);this._draggable.on("dragend",this._onDragEnd,this);var a=this._map.options;a.worldCopyJump&&!a.continuousWorld&&(this._draggable.on("predrag",this._onPreDrag,this),this._map.on("viewreset",this._onViewReset,this))}this._draggable.enable();
this._enabled=!0}},disable:function(){if(this._enabled)this._draggable.disable(),this._enabled=!1},moved:function(){return this._draggable&&this._draggable._moved},_onDragStart:function(){this._map.fire("movestart");this._map.fire("dragstart")},_onDrag:function(){this._map.fire("move");this._map.fire("drag")},_onViewReset:function(){var a=this._map.getSize().divideBy(2);this._initialWorldOffset=this._map.latLngToLayerPoint(new L.LatLng(0,0)).subtract(a)},_onPreDrag:function(){var a=this._map,b=a.options.scale(a.getZoom()),
c=Math.round(b/2),a=this._initialWorldOffset.x,d=this._draggable._newPos.x,e=(d-c+a)%b+c-a,b=(d+c+a)%b-c-a;this._draggable._newPos.x=Math.abs(e+a)<Math.abs(b+a)?e:b},_onDragEnd:function(){this._map.fire("moveend");this._map.fire("dragend")}});
L.Handler.TouchZoom=L.Handler.extend({enable:function(){if(L.Browser.touch&&!this._enabled)L.DomEvent.addListener(this._map._container,"touchstart",this._onTouchStart,this),this._enabled=!0},disable:function(){if(this._enabled)L.DomEvent.removeListener(this._map._container,"touchstart",this._onTouchStart,this),this._enabled=!1},_onTouchStart:function(a){if(a.touches&&!(2!=a.touches.length||this._map._animatingZoom)){var b=this._map.mouseEventToLayerPoint(a.touches[0]),c=this._map.mouseEventToLayerPoint(a.touches[1]),
d=this._map.containerPointToLayerPoint(this._map.getSize().divideBy(2));this._startCenter=b.add(c).divideBy(2,!0);this._startDist=b.distanceTo(c);this._moved=!1;this._zooming=!0;this._centerOffset=d.subtract(this._startCenter);L.DomEvent.addListener(document,"touchmove",this._onTouchMove,this);L.DomEvent.addListener(document,"touchend",this._onTouchEnd,this);L.DomEvent.preventDefault(a)}},_onTouchMove:function(a){if(a.touches&&2==a.touches.length){if(!this._moved)this._map._mapPane.className+=" leaflet-zoom-anim",
this._map._prepareTileBg(),this._moved=!0;var b=this._map.mouseEventToLayerPoint(a.touches[0]),c=this._map.mouseEventToLayerPoint(a.touches[1]);this._scale=b.distanceTo(c)/this._startDist;this._delta=b.add(c).divideBy(2,!0).subtract(this._startCenter);this._map._tileBg.style.webkitTransform=[L.DomUtil.getTranslateString(this._delta),L.DomUtil.getScaleString(this._scale,this._startCenter)].join(" ");L.DomEvent.preventDefault(a)}},_onTouchEnd:function(){if(this._moved&&this._zooming){this._zooming=
!1;var a=this._map.getZoom(),b=Math.log(this._scale)/Math.LN2,b=this._map._limitZoom(a+(0<b?Math.ceil(b):Math.floor(b))),a=b-a,c=this._centerOffset.subtract(this._delta).divideBy(this._scale),d=this._map.unproject(this._map.getPixelOrigin().add(this._startCenter).add(c));L.DomEvent.removeListener(document,"touchmove",this._onTouchMove);L.DomEvent.removeListener(document,"touchend",this._onTouchEnd);this._map._runAnimation(d,b,Math.pow(2,a)/this._scale,this._startCenter.add(c))}}});
L.Handler.ScrollWheelZoom=L.Handler.extend({enable:function(){if(!this._enabled)L.DomEvent.addListener(this._map._container,"mousewheel",this._onWheelScroll,this),this._delta=0,this._enabled=!0},disable:function(){if(this._enabled)L.DomEvent.removeListener(this._map._container,"mousewheel",this._onWheelScroll),this._enabled=!1},_onWheelScroll:function(a){this._delta+=L.DomEvent.getWheelDelta(a);this._lastMousePos=this._map.mouseEventToContainerPoint(a);clearTimeout(this._timer);this._timer=setTimeout(L.Util.bind(this._performZoom,
this),50);L.DomEvent.preventDefault(a)},_performZoom:function(){var a=Math.round(this._delta),a=Math.max(Math.min(a,4),-4);this._delta=0;if(a){var b=this._getCenterForScrollWheelZoom(this._lastMousePos,a),a=this._map.getZoom()+a;this._map._limitZoom(a)!=this._map._zoom&&this._map.setView(b,a)}},_getCenterForScrollWheelZoom:function(a,b){var c=this._map.getPixelBounds().getCenter(),d=this._map.getSize().divideBy(2),d=a.subtract(d).multiplyBy(1-Math.pow(2,-b));return this._map.unproject(c.add(d),this._map._zoom,
!0)}});L.Handler.DoubleClickZoom=L.Handler.extend({enable:function(){if(!this._enabled)this._map.on("dblclick",this._onDoubleClick,this._map),this._enabled=!0},disable:function(){if(this._enabled)this._map.off("dblclick",this._onDoubleClick,this._map),this._enabled=!1},_onDoubleClick:function(a){this.setView(a.latlng,this._zoom+1)}});
L.Handler.ShiftDragZoom=L.Handler.extend({initialize:function(a){this._map=a;this._container=a._container;this._pane=a._panes.overlayPane},enable:function(){if(!this._enabled)L.DomEvent.addListener(this._container,"mousedown",this._onMouseDown,this),this._enabled=!0},disable:function(){if(this._enabled)L.DomEvent.removeListener(this._container,"mousedown",this._onMouseDown),this._enabled=!1},_onMouseDown:function(a){if(!a.shiftKey||1!=a.which&&1!=a.button)return!1;L.DomUtil.disableTextSelection();
this._startLayerPoint=this._map.mouseEventToLayerPoint(a);this._box=L.DomUtil.create("div","leaflet-zoom-box",this._pane);L.DomUtil.setPosition(this._box,this._startLayerPoint);this._container.style.cursor="crosshair";L.DomEvent.addListener(document,"mousemove",this._onMouseMove,this);L.DomEvent.addListener(document,"mouseup",this._onMouseUp,this);L.DomEvent.preventDefault(a)},_onMouseMove:function(a){var b=this._map.mouseEventToLayerPoint(a),a=b.x-this._startLayerPoint.x,c=b.y-this._startLayerPoint.y,
b=new L.Point(Math.min(b.x,this._startLayerPoint.x),Math.min(b.y,this._startLayerPoint.y));L.DomUtil.setPosition(this._box,b);this._box.style.width=Math.abs(a)-4+"px";this._box.style.height=Math.abs(c)-4+"px"},_onMouseUp:function(a){this._pane.removeChild(this._box);this._container.style.cursor="";L.DomUtil.enableTextSelection();L.DomEvent.removeListener(document,"mousemove",this._onMouseMove);L.DomEvent.removeListener(document,"mouseup",this._onMouseUp);a=this._map.mouseEventToLayerPoint(a);this._map.fitBounds(new L.LatLngBounds(this._map.layerPointToLatLng(this._startLayerPoint),
this._map.layerPointToLatLng(a)))}});
L.Handler.MarkerDrag=L.Handler.extend({initialize:function(a){this._marker=a},enable:function(){if(!this._enabled){if(!this._draggable)this._draggable=new L.Draggable(this._marker._icon,this._marker._icon),this._draggable.on("dragstart",this._onDragStart,this),this._draggable.on("drag",this._onDrag,this),this._draggable.on("dragend",this._onDragEnd,this);this._draggable.enable();this._enabled=!0}},disable:function(){if(this._enabled)this._draggable.disable(),this._enabled=!1},moved:function(){return this._draggable&&
this._draggable._moved},_onDragStart:function(){this._marker.closePopup();this._marker.fire("movestart");this._marker.fire("dragstart")},_onDrag:function(){var a=L.DomUtil.getPosition(this._marker._icon);this._marker._shadow&&L.DomUtil.setPosition(this._marker._shadow,a);this._marker._latlng=this._marker._map.layerPointToLatLng(a);this._marker.fire("move");this._marker.fire("drag")},_onDragEnd:function(){this._marker.fire("moveend");this._marker.fire("dragend")}});L.Control={};
L.Control.Position={TOP_LEFT:"topLeft",TOP_RIGHT:"topRight",BOTTOM_LEFT:"bottomLeft",BOTTOM_RIGHT:"bottomRight"};
L.Control.Zoom=L.Class.extend({onAdd:function(a){this._map=a;this._container=L.DomUtil.create("div","leaflet-control-zoom");this._zoomInButton=this._createButton("Zoom in","leaflet-control-zoom-in",this._map.zoomIn,this._map);this._zoomOutButton=this._createButton("Zoom out","leaflet-control-zoom-out",this._map.zoomOut,this._map);this._container.appendChild(this._zoomInButton);this._container.appendChild(this._zoomOutButton)},getContainer:function(){return this._container},getPosition:function(){return L.Control.Position.TOP_LEFT},
_createButton:function(a,b,c,d){var e=document.createElement("a");e.href="#";e.title=a;e.className=b;L.DomEvent.disableClickPropagation(e);L.DomEvent.addListener(e,"click",L.DomEvent.preventDefault);L.DomEvent.addListener(e,"click",c,d);return e}});
L.Control.Attribution=L.Class.extend({onAdd:function(a){this._container=L.DomUtil.create("div","leaflet-control-attribution");L.DomEvent.disableClickPropagation(this._container);this._map=a;this._prefix='Powered by <a href="http://leaflet.cloudmade.com">Leaflet</a>';this._attributions={};this._update()},getPosition:function(){return L.Control.Position.BOTTOM_RIGHT},getContainer:function(){return this._container},setPrefix:function(a){this._prefix=a;this._update()},addAttribution:function(a){a&&(this._attributions[a]=
!0,this._update())},removeAttribution:function(a){a&&(delete this._attributions[a],this._update())},_update:function(){if(this._map){var a=[],b;for(b in this._attributions)this._attributions.hasOwnProperty(b)&&a.push(b);b=[];this._prefix&&b.push(this._prefix);a.length&&b.push(a.join(", "));this._container.innerHTML=b.join(" — ")}}});
L.Control.Layers=L.Class.extend({options:{collapsed:!L.Browser.touch},initialize:function(a,b,c){L.Util.setOptions(this,c);this._layers={};for(var d in a)a.hasOwnProperty(d)&&this._addLayer(a[d],d);for(d in b)b.hasOwnProperty(d)&&this._addLayer(b[d],d,!0)},onAdd:function(a){this._map=a;this._initLayout();this._update()},getContainer:function(){return this._container},getPosition:function(){return L.Control.Position.TOP_RIGHT},addBaseLayer:function(a,b){this._addLayer(a,b);this._update();return this},
addOverlay:function(a,b){this._addLayer(a,b,!0);this._update();return this},removeLayer:function(a){delete this._layers[L.Util.stamp(a)];this._update();return this},_initLayout:function(){this._container=L.DomUtil.create("div","leaflet-control-layers");L.DomEvent.disableClickPropagation(this._container);this._form=L.DomUtil.create("form","leaflet-control-layers-list");if(this.options.collapsed){L.DomEvent.addListener(this._container,"mouseover",this._expand,this);L.DomEvent.addListener(this._container,
"mouseout",this._collapse,this);var a=this._layersLink=L.DomUtil.create("a","leaflet-control-layers-toggle");a.href="#";a.title="Layers";L.DomEvent.addListener(a,"focus",this._expand,this);L.DomEvent.addListener(this._map,L.Draggable.START,this._collapse,this);this._container.appendChild(a)}else this._expand();this._baseLayersList=L.DomUtil.create("div","leaflet-control-layers-base",this._form);this._separator=L.DomUtil.create("div","leaflet-control-layers-separator",this._form);this._overlaysList=
L.DomUtil.create("div","leaflet-control-layers-overlays",this._form);this._container.appendChild(this._form)},_addLayer:function(a,b,c){this._layers[L.Util.stamp(a)]={layer:a,name:b,overlay:c}},_update:function(){if(this._container){this._baseLayersList.innerHTML="";this._overlaysList.innerHTML="";var a=!1,b=!1,c;for(c in this._layers)if(this._layers.hasOwnProperty(c)){var d=this._layers[c];this._addItem(d);b=b||d.overlay;a=a||!d.overlay}this._separator.style.display=b&&a?"":"none"}},_addItem:function(a){var b=
document.createElement("label"),c=document.createElement("input");if(!a.overlay)c.name="leaflet-base-layers";c.type=a.overlay?"checkbox":"radio";c.checked=this._map.hasLayer(a.layer);c.layerId=L.Util.stamp(a.layer);L.DomEvent.addListener(c,"click",this._onInputClick,this);var d=document.createTextNode(" "+a.name);b.appendChild(c);b.appendChild(d);(a.overlay?this._overlaysList:this._baseLayersList).appendChild(b)},_onInputClick:function(){var a,b,c,d=this._form.getElementsByTagName("input"),e=d.length;
for(a=0;a<e;a++)b=d[a],c=this._layers[b.layerId],b.checked?this._map.addLayer(c.layer,!c.overlay):this._map.removeLayer(c.layer)},_expand:function(){L.DomUtil.addClass(this._container,"leaflet-control-layers-expanded")},_collapse:function(){this._container.className=this._container.className.replace(" leaflet-control-layers-expanded","")}});if("undefined"==typeof fleegix)var fleegix={};if("undefined"==typeof $)var $=function(a){return document.getElementById(a)};var $elem=function(a,b){var c=b||{},d=document.createElement(a),e;for(e in c)d[e]=c[e];return d},$text=function(a){return document.createTextNode(a)};fleegix.extend=function(a,b){return function(){a.apply(this,arguments);a.prototype.constructor.apply(this,arguments);b.apply(this,arguments);this.superClass=a;this.subClass=b}};
fleegix.mixin=function(a,b){var c;c="function"==typeof b?new b:b;var d={},e;for(e in c)if("undefined"==typeof d[e]||baseObjj[e]!=c[e])a[e]=c[e];return a};fleegix.clone=function(a){if("object"==typeof a){var b;b="function"==typeof a.constructor?new a.constructor:{};for(var c in a)b[c]="object"==typeof a[c]&&null!=a[c]?fleegix.clone(a[c]):a[c]}else b=a;return b};
fleegix.agentSniffing=new function(){var a=fleegix,b=navigator,c=b.userAgent,b=b.appVersion;a.isOpera=-1<c.indexOf("Opera");a.isKhtml=-1<b.indexOf("Konqueror")||-1<b.indexOf("Safari");a.isSafari=-1<b.indexOf("Safari");a.isMoz=-1<c.indexOf("Gecko")&&!a.isKhtml;a.isFF=!1;a.isIE=!1;try{if(a.isMoz)a.isFF=-1<c.indexOf("Firefox");if(document.all&&!a.isOpera)a.isIE=-1<c.indexOf("MSIE ")}catch(d){}a.isMac=-1<c.indexOf("Mac");a.isUnix=-1<c.indexOf("Linux")||-1<c.indexOf("BSD")||-1<c.indexOf("SunOS");a.isLinux=
-1<c.indexOf("Linux");a.isWindows=-1<c.indexOf("Windows")};
fleegix.fx=new function(){function a(a,b,e){var f={},g=0,j=0;"clip"==b.blindType?(g="down"==e?0:a.offsetHeight,j="down"==e?a.offsetHeight:0,g=[0,a.offsetWidth,g,0],j=[0,a.offsetWidth,j,0],f.props={clip:[g,j]}):("down"==e?(b.endHeight?j=b.endHeight:(a.style.height="",e=document.createElement("div"),e.position="absolute",e.style.top="-9999999999px",e.style.left="-9999999999px",g=a.parentNode,a=g.removeChild(a),e.appendChild(a),document.body.appendChild(e),j=a.offsetHeight,a=e.removeChild(a),document.body.removeChild(e),
a.style.height="0px",g.appendChild(a)),g=0):(g=a.offsetHeight,j=0),f.props={height:[g,j]});for(var k in b)f[k]=b[k];f.trans="lightEaseIn";return new fleegix.fx.Effecter(a,f)}function b(a,b,e){var e={props:{opacity:["in"==e?0:100,"in"==e?100:0]},trans:"lightEaseIn"},f;for(f in b)e[f]=b[f];return new fleegix.fx.Effecter(a,e)}this.fadeOut=function(a,d){return b(a,d,"out")};this.fadeIn=function(a,d){this.setCssProp(a,"opacity",0);a.style.visibility="visible";return b(a,d,"in")};this.blindUp=function(b,
d){var e=d||{};e.blindType=e.blindType||"height";return a(b,e,"up")};this.blindDown=function(b,d){var e=d||{};e.blindType=e.blindType||"height";return a(b,e,"down")};this.setCssProp=this.setCSSProp=function(a,b,e){"opacity"==b?document.all?a.style.filter="alpha(opacity="+e+")":a.style.opacity=e/100:a.style[b]="clip"==b||-1<b.toLowerCase().indexOf("color")?e:document.all?parseInt(e,10)+"px":e+"px";return!0};this.hexPat=/^[#]{0,1}([\w]{1,2})([\w]{1,2})([\w]{1,2})$/;this.hex2rgb=function(a){var b=[],
e=a.match(this.hexPat);if(e){for(a=1;a<e.length;a++){var f=e[a],f=1==f.length?f+f:f;b.push(parseInt(f,16))}return b}throw'"'+a+'" not a valid hex value.';}};
fleegix.fx.Effecter=function(a,b){var c=this;this.props=b.props;this.trans=b.trans||"lightEaseIn";this.duration=b.duration||500;this.fps=30;this.startTime=(new Date).getTime();this.timeSpent=0;this.doBeforeStart=b.doBeforeStart||null;this.doAfterFinish=b.doAfterFinish||null;this.autoStart=!1===b.autoStart?!1:!0;if("function"!=typeof this.transitions[this.trans])throw'"'+this.trans+'" is not a valid transition.';this.start=function(){c.id=setInterval(function(){c.doStep.apply(c,[a])},Math.round(1E3/
c.fps));"function"==typeof b.doBeforeStart&&c.doBeforeStart()};this.autoStart&&this.start();return this};
fleegix.fx.Effecter.prototype.doStep=function(a){var b=(new Date).getTime(),c=this.props;if(b<this.startTime+this.duration){this.timeSpent=b-this.startTime;for(var d in c)fleegix.fx.setCSSProp(a,d,this.calcCurrVal(d))}else{for(d in c)"clip"==d?fleegix.fx.setCSSProp(a,d,"rect("+c[d][1].join("px,")+"px)"):fleegix.fx.setCSSProp(a,d,c[d][1]);clearInterval(this.id);"function"==typeof this.doAfterFinish&&this.doAfterFinish()}};
fleegix.fx.Effecter.prototype.calcCurrVal=function(a){var b=this.props[a][0],c=this.props[a][1],d=this.transitions[this.trans],e,f;if(-1<a.toLowerCase().indexOf("color")){for(var a=fleegix.fx.hex2rgb(b),c=fleegix.fx.hex2rgb(c),b=[],g=0;g<a.length;g++)e=a[g],f=c[g],b.push(parseInt(d(this.timeSpent,e,f-e,this.duration),10));return"rgb("+b.join()+")"}if("clip"==a){a=b;b=[];for(g=0;g<a.length;g++)e=a[g],f=c[g],b.push(parseInt(d(this.timeSpent,e,f-e,this.duration),10));return"rect("+b.join("px,")+"px)"}return d(this.timeSpent,
b,c-b,this.duration)};fleegix.fx.Effecter.prototype.transitions={linear:function(a,b,c,d){return c*(a/d)+b},lightEaseIn:function(a,b,c,d){return c*(a/=d)*a+b},lightEaseOut:function(a,b,c,d){return-c*(a/=d)*(a-2)+b},lightEaseInOut:function(a,b,c,d){return 1>(a/=d/2)?c/2*a*a+b:-c/2*(--a*(a-2)-1)+b},heavyEaseIn:function(a,b,c,d){return c*(a/=d)*a*a+b},heavyEaseOut:function(a,b,c,d){return c*((a=a/d-1)*a*a+1)+b},heavyEaseInOut:function(a,b,c,d){return 1>(a/=d/2)?c/2*a*a*a+b:c/2*((a-=2)*a*a+2)+b}};
fleegix.dom=new function(){var a=function(a){return document.all?document.documentElement&&document.documentElement["client"+a]?document.documentElement["client"+a]:document.body["client"+a]:window["inner"+a]};this.getViewportWidth=function(){return a("Width")};this.getViewportHeight=function(){return a("Height")};this.center=function(a){var c=a.offsetWidth,d=a.offsetHeight,e=fleegix.dom.getViewportWidth(),f=fleegix.dom.getViewportHeight(),c=parseInt(e/2-c/2,10),d=parseInt(f/2-d/2,10),d=d+document.documentElement.scrollTop;
a.style.left=c+"px";a.style.top=d+"px";return!0};this.getOffset=function(a){var c=null;if(fleegix.isIE||fleegix.isMoz)a=a.getBoundingClientRect();else{var d=c=0;if(a.offsetParent){do c+=a.offsetLeft,d+=a.offsetTop;while(a=a.offsetParent)}a={left:c,top:d}}return a}};
fleegix.css=new function(){this.addClass=function(a,b){fleegix.css.removeClass(a,b);var c=a.className,c=fleegix.string.trim(c+(" "+b));a.className=c};this.removeClass=function(a,b){var c=a.className,c=c.replace(RegExp("\\b"+b+"\\b","g"),""),c=c.replace(" "," "),c=fleegix.string.trim(c);a.className=c};this.replaceClass=function(a,b,c){this.removeClass(a,b);this.addClass(a,c)}};
fleegix.event=new function(){var a=[],b={};this.compatibilityMode=!1;this.listen=function(b,d,e,f){var g=this.compatibilityMode,j={};"function"==typeof e?j.method=e:(j.context=e,j.method=f);if(!b)throw Error("fleegix.listen called on an object ("+b+") that does not exist.");if("onmousewheel"==d&&window.addEventListener&&"undefined"==typeof b.onmousewheel)b.onmousewheel=null;e=this.compatibilityMode?b[d]&&b._fleegixEventListenReg?b._fleegixEventListenReg[d]:null:b[d]?b[d].listenReg:null;if(!e){e={orig:{}};
e.orig.obj=b;e.orig.methName=d;if(b[d])e.orig.methCode=b[d];e.after=[];b[d]=function(){var a=g?b._fleegixEventListenReg[d]:b[d].listenReg;if(!a){if(b["_"+d+"_suppressErrors"])return!1;throw Error("Cannot execute handlers for "+b+' "'+d+'". Something (likely another JavaScript library) has removed the fleegix.event.listen handler registry.');}for(var e=[],f=0;f<arguments.length;f++)e.push(arguments[f]);a.orig.methCode&&a.orig.methCode.apply(a.orig.obj,e);var j=null;if(b.attachEvent||b.nodeType||b.addEventListener){if(e.length)j=
e[0];else try{switch(!0){case !!b.ownerDocument:j=b.ownerDocument.parentWindow.event;break;case !!b.documentElement:j=b.documentElement.ownerDocument.parentWindow.event;break;case !!b.event:j=b.event;break;default:j=window.event}}catch(q){j=window.event}if(j){if("undefined"==typeof j.target)j.target=j.srcElement;if("undefined"==typeof j.srcElement)j.srcElement=j.target;if("DOMMouseScroll"==j.type||"mousewheel"==j.type)if(j.wheelDelta)j.delta=j.wheelDelta/120;else if(j.detail)j.delta=-j.detail/3;e[0]=
j}}for(f=0;f<a.after.length;f++){var o=a.after[f],p=j=null;o.context?(j=o.context[o.method],p=o.context):(j=o.method,p=window);if("function"!=typeof j)throw j+" is not an executable function.";j.apply(p,e);j=e[0];o.stopPropagation&&this.stopPropagation(j);o.preventDefault&&this.preventDefault(j)}};if(this.compatibilityMode){if(!b._fleegixEventListenReg)b._fleegixEventListenReg={};b._fleegixEventListenReg[d]=e}else b[d].listenReg=e;a.push(e);"onmousewheel"==d&&window.addEventListener&&b.addEventListener("DOMMouseScroll",
b.onmousewheel,!1)}e.after.push(j);if(this.compatibilityMode){if(!b._fleegixEventListenReg)b._fleegixEventListenReg={};b._fleegixEventListenReg[d]=e}else b[d].listenReg=e};this.unlisten=function(a,b,e,f){var g;g=this.compatibilityMode?a[b]&&a._fleegixEventListenReg?a._fleegixEventListenReg[b]:null:a[b]?a[b].listenReg:null;if(!g)return!1;for(var j=0;j<g.after.length;j++){var k=g.after[j];if("function"==typeof e){if(k.method==e){g.after.splice(j,1);break}}else if(k.context==e&&k.method==f){g.after.splice(j,
1);break}}this.compatibilityMode?a._fleegixEventListenReg[b]=g:a[b].listenReg=g};this.flush=function(){for(var b=0;b<a.length;b++){var d=a[b];removeObj=d.orig.obj;removeMethod=d.orig.methName;removeObj[removeMethod]=null}};this.subscribe=function(a,d,e){if(d)b[a]?this.unsubscribe(a,d):(b[a]={},b[a].audience=[]),b[a].audience.push([d,e])};this.unsubscribe=function(a,d){if(d){if(b[a])for(var e=b[a].audience,f=0;f<e.length;f++)e[f][0]==d&&e.splice(f,1)}else b[a]=null};this.publish=function(a,d){if(b[a])for(var e=
b[a].audience,f=0;f<e.length;f++)e[f][0][e[f][1]](d)};this.getSrcElementByAttribute=function(a,b){var e;if(a.srcElement)e=a.srcElement;else if(a.target)e=a.target;if(!e||"undefined"==typeof e[b])return null;for(;!e[b]||3==e.nodeType;)if(e.parentNode)e=e.parentNode;else return null;return e};this.getSrcElementId=function(a){return(this.getSrcElementByAttribute(a,"id")||null).id||null};this.annihilate=function(a){this.stopPropagation(a);this.preventDefault(a)};this.stopPropagation=function(a){a.stopPropagation?
a.stopPropagation():a.cancelBubble=!0;return a};this.preventDefault=function(a){a.preventDefault?a.preventDefault():a.returnValue=!1;return a};this.suppressHandlerErrors=function(a,b){a["_"+b+"_suppressErrors"]=!0}};fleegix.event.listen(window,"onunload",fleegix.event,"flush");
fleegix.uri=new function(){var a=this;this.params={};this.getParamHash=function(b){var c=b||a.getQuery(),b={};if(c)for(var c=c.split("&"),d=0;d<c.length;d++){var e=c[d].split("="),f=e[0],e=e[1];if("undefined"==typeof b[f])b[f]=e;else{if(!(b[f]instanceof Array)){var g=b[f];b[f]=[];b[f].push(g)}b[f].push(e)}}return b};this.getParam=function(a,c){var d=null;return d=c?this.getParamHash(c)[a]:this.params[a]};this.setParam=function(a,c,d){var e=null;e=d?(e=d.match(RegExp("(^|&)("+a+"=[^&]*)(&|$)")))?d.replace(e[0],
e[1]+a+"="+c+e[3]):d+"&"+a+"="+c:a+"="+c;return e};this.getQuery=function(a){return(a?a:location.href).split("?")[1]};this.getBase=function(a){return(a?a:location.href).split("?")[0]};this.params=this.getParamHash()};
fleegix.xhr=new function(){this.maxXhrs=5;this.lastReqId=0;this.debug=!1;this.defaultTimeoutSeconds=300;this.useDefaultErrHandlerForSync=!0;this.responseFormats={TXT:"text",XML:"xml",OBJ:"object"};this.get=function(){var a={},b=null,c=Array.prototype.slice.apply(arguments);"function"==typeof c[0]?(a.async=!0,b=c.shift()):a.async=!1;var d=c.shift();if("object"==typeof c[0]){var c=c.shift(),e;for(e in c)a[e]=c[e]}else a.responseFormat=c.shift()||"text";a.handleSuccess=b;a.url=d;return this.doReq(a)};
this.doGet=function(){return this.get.apply(this,arguments)};this.post=function(){var a={},b=null,c=Array.prototype.slice.apply(arguments);"function"==typeof c[0]?(a.async=!0,b=c.shift()):a.async=!1;var d=c.shift(),e=c.shift();if("object"==typeof c[0]){var c=c.shift(),f;for(f in c)a[f]=c[f]}else a.responseFormat=c.shift()||"text";a.handleSuccess=b;a.url=d;a.data=e;a.method="POST";return this.doReq(a)};this.doPost=function(){return this.post.apply(this,arguments)};this.doReq=function(a){return this.send(a)};
this.send=function(a){var a=a||{},b=new fleegix.xhr.Request,f=null,g;for(g in a)a.hasOwnProperty(g)&&(b[g]=a[g]);b.method=b.method.toUpperCase();b.id=this.lastReqId;this.lastReqId++;return b.async?(e.length?f=e.shift():c.length<this.maxXhrs&&(f=m()),null!==f?s(b,f):b.uber?d.unshift(b):d.push(b),b.id):s(b)};this.abort=function(a){var a=f[a],b=c[a.xhrId];return b?(b.onreadystatechange=function(){},b.abort(),a.aborted=!0,o(a),!0):!1};this.isReqSuccessful=function(a){a=a.status;if(!a)return!1;document.all&&
1223==a&&(a=204);return 199<a&&300>a||304==a?!0:!1};var a=this,b=null,c=[],d=[],e=[],f={},g=[],j=null,k=null;_processingWatcherId=null;var m=function(a){var d=0,e=["Msxml2.XMLHTTP.6.0","MSXML2.XMLHTTP.3.0","Microsoft.XMLHTTP"],f=null;if(window.XMLHttpRequest)f=new XMLHttpRequest;else if(window.ActiveXObject)if(b)f=new ActiveXObject(b);else for(d=0;d<e.length;d++)try{f=new ActiveXObject(e[d]);b=e[d];break}catch(g){}if(f){if(a)return f;c.push(f);return c.length-1}throw Error("Could not create XMLHttpRequest object.");
},s=function(a,b){var d=null,e=null,d="";a.async?(d=b,e=c[d],f[a.id]=a,g.unshift(a),a.xhrId=d):(j||(j=m(!0)),e=j,k=a);a.preventCache?(d=(new Date).getTime(),d=-1<a.url.indexOf("?")?a.url+"&preventCache="+d:a.url+"?preventCache="+d):d=a.url;document.all&&e.abort();a.username&&a.password?e.open(a.method,d,a.async,a.username,a.password):e.open(a.method,d,a.async);a.mimeType&&-1==navigator.userAgent.indexOf("MSIE")&&e.overrideMimeType(a.mimeType);var d=a.headers,o;for(o in d)d.hasOwnProperty(o)&&e.setRequestHeader(o,
d[o]);if("POST"==a.method||"PUT"==a.method){a.data=a.data||a.dataPayload;if(!a.data)a.data="";e.setRequestHeader("Content-Length","string"==typeof a.data?a.data.length:0);"undefined"==typeof a.headers["Content-Type"]&&e.setRequestHeader("Content-Type","application/x-www-form-urlencoded")}e.send(a.data);null===_processingWatcherId&&(_processingWatcherId=setTimeout(n,10));if(!a.async)return e=q(e,a),k=null,_processingWatcherId=g.length?setTimeout(n,10):null,e},n=function(){var b=(new Date).getTime();
if(null===k){for(var d=0;d<g.length;d++){var e=g[d],f=c[e.xhrId],j=b-e.startTime>1E3*e.timeoutSeconds;switch(!0){case e.aborted||!f.readyState:g.splice(d,1);break;case j:g.splice(d,1);a.abort.apply(a,[e.id])&&("function"==typeof e.handleTimeout?e.handleTimeout():alert("XMLHttpRequest to "+e.url+" timed out."));break;case 4==f.readyState:g.splice(d,1),q.call(a,f,e)}}clearTimeout(_processingWatcherId);_processingWatcherId=g.length?setTimeout(n,10):null}},q=function(b,c){var d;switch(c.responseFormat){case "xml":d=
b.responseXML;break;case "object":d=b;break;default:d=b.responseText}if(c.handleAll)c.handleAll(d,c.id);else try{switch(!0){case a.isReqSuccessful(b):if(c.async)if(c.handleSuccess)c.handleSuccess(d,c.id);else throw Error("No response handler defined for this request");else return d;break;case 0==b.status:if(a.debug)throw Error("XMLHttpRequest HTTP status is zero.");break;case void 0==b.status:if(a.debug)throw Error("XMLHttpRequest HTTP status not set.");break;default:if(!c.async&&!a.useDefaultErrHandlerForSync)return d;
if(c.handleErr)c.handleErr(d,c.id);else{var e;try{e=window.open("","errorWin"),e.document.body.innerHTML=b.responseText}catch(f){alert("An error occurred, but the error message cannot be displayed because of your browser's pop-up blocker.\nPlease allow pop-ups from this Web site.")}}}}catch(g){throw g;}c.async&&o(c);return!0},o=function(a){delete f[a.id];if(d.length){var b=d.shift();b.startTime=(new Date).getTime();s(b,a.xhrId)}else e.push(a.xhrId)}};
fleegix.xhr.Request=function(){this.id=0;this.status=this.url=this.xhrId=null;this.statusText="";this.method="GET";this.async=!0;this.handleTimeout=this.handleAll=this.handleErr=this.handleSuccess=this.responseXML=this.responseText=this.readyState=this.data=null;this.responseFormat=fleegix.xhr.responseFormats.TXT;this.mimeType=null;this.password=this.username="";this.headers=[];this.preventCache=!1;this.startTime=(new Date).getTime();this.timeoutSeconds=fleegix.xhr.defaultTimeoutSeconds;this.aborted=
this.uber=!1};fleegix.xhr.Request.prototype.setRequestHeader=function(a,b){this.headers.push(a+": "+b)};
fleegix.json=new function(){this.serialize=function(a){var b="";switch(typeof a){case "object":if(null===a)return"null";if(a instanceof Array){for(var c=0;c<a.length;c++)b&&(b+=","),b+=fleegix.json.serialize(a[c]);return"["+b+"]"}if("undefined"!=typeof a.toString){for(c in a)b&&(b+=","),b+='"'+c+'":',b="undefined"==typeof a[c]?b+'"undefined"':b+fleegix.json.serialize(a[c]);return"{"+b+"}"}return b;case "unknown":case "undefined":case "function":return'"undefined"';case "string":return b+='"'+a.replace(/(["\\])/g,
"\\$1").replace(/\r/g,"").replace(/\n/g,"\\n")+'"';default:return""+a}}};
fleegix.string=new function(){var a=/^\s+/,b=/\s+$/,c=/^\s+|\s+$/g;this.toArray=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a.substr(c,1);return b};this.reverse=function(a){return this.toArray(a).reverse().join("")};this.ltrim=function(b,c){return b.replace(c?RegExp("^"+c+"+"):a,"")};this.rtrim=function(a,c){return a.replace(c?RegExp(c+"+$"):b,"")};this.trim=function(a,b){return a.replace(b?RegExp("^"+b+"+|"+b+"+$","g"):c,"")};this.toLowerCaseWithUnderscores=function(a){return a.replace(/([A-Z]+)/g,
"_$1").toLowerCase().replace(/^_/,"")};this.deCamelize=function(a){return this.toLowerCaseWithUnderscores(a)};this.toCamelCase=function(a){return a.replace(/_[a-z]{1}/g,function(a){return a.replace("_","").toUpperCase()})};this.camelize=function(a){return this.toCamelCase(a)};this.capitalize=function(a){return a.substr(0,1).toUpperCase()+a.substr(1)};this.escapeXML=function(a){return a.replace(/&/gm,"&").replace(/</gm,"<").replace(/>/gm,">").replace(/"/gm,""")};this.unescapeXML=function(a){return a.replace(/&/gm,
"&").replace(/</gm,"<").replace(/>/gm,">").replace(/"/gm,'"')}};
fleegix.cookie=new function(){this.set=function(a,b,c){var d=c||{},e="/",f=0,g=0,j=0,k="";"object"==typeof c?(e=d.path||"/",f=d.days||0,g=d.hours||0,j=d.minutes||0):e=c||"/";(c=0+(f?864E5*f:0)+(g?36E5*g:0)+(j?6E4*j:0))?(d=new Date,d.setTime(d.getTime()+c),k="; expires="+d.toGMTString()):k="";document.cookie=a+"="+b+k+"; path="+e};this.get=function(a){for(var a=a+"=",b=document.cookie.split(";"),c=0;c<b.length;c++){for(var d=b[c];" "==d.charAt(0);)d=d.substring(1,d.length);if(0===d.indexOf(a))return d.substring(a.length,
d.length)}return null};this.create=this.set;this.destroy=function(a,b){var c={minutes:-1};if(b)c.path=b;this.set(a,"",c)}};fleegix.form={};
fleegix.form.serialize=function(a,b){var c=fleegix.form.toObject(a,b),d=b||{},e="",f=null;d.stripTags&&(f=/<[^>]*>/g);for(var g in c){var j="",k=c[g];if(k){if("string"==typeof k)j=d.stripTags?k.replace(f,""):k,e+=g+"="+encodeURIComponent(j);else{var m="";d.collapseMulti?(m=",",e+=g+"="):m="&";for(var s=0;s<k.length;s++)j=d.stripTags?k[s].replace(f,""):k[s],j=!d.collapseMulti?g+"="+encodeURIComponent(j):encodeURIComponent(j),e+=j+m;e=e.substr(0,e.length-1)}e+="&"}else d.includeEmpty&&(e+=g+"=&")}if(d.deCamelize){if(!fleegix.string)throw Error("deCamelize option depends on fleegix.string module.");
c=e.split("&");e="";for(f=0;f<c.length;f++)d=c[f].split("="),d[0]&&(e+=fleegix.string.deCamelize(d[0])+"="+d[1]+"&")}return e=e.substr(0,e.length-1)};
fleegix.form.toObject=function(a,b){function c(a,b){if(a){var c=null;"string"==typeof a?(c=[],c.push(a)):c=a;c.push(b);return c}return b}for(var d=b||{},e={},f=0;f<a.elements.length;f++){var g=a.elements[f];if(g.name){var j=g.name.indexOf("["),k=g.name.indexOf("]"),m="",s="";d.hierarchical&&0<j&&2<k?(m=g.name.substring(0,j),s=g.name.substring(j+1,k),"undefined"==typeof e[m]&&(e[m]={}),j=e[m]):(j=e,s=g.name);switch(g.type){case "text":case "hidden":case "password":case "textarea":case "select-one":j[s]=
g.value;break;case "select-multiple":for(k=0;k<g.options.length;k++)m=g.options[k],m.selected&&(j[s]=c(j[s],m.value));break;case "radio":if(g.checked)j[s]=g.value;break;case "checkbox":g.checked&&(j[s]=c(j[s],g.value));break;case "submit":case "reset":case "file":case "image":case "button":if(d.pedantic)j[s]=g.value}}}return e};fleegix.form.toHash=fleegix.form.toObject;"undefined"==typeof fleegix&&(fleegix={});"undefined"==typeof timezoneJS&&(timezoneJS={});
timezoneJS.Date=function(){var a=Array.prototype.slice.apply(arguments),b=null,c=b=null,d=!1;if(0===a.length)b=new Date;else if(1==a.length)b=new Date(a[0]);else{b=a[a.length-1];if("boolean"==typeof b)d=a.pop(),c=a.pop();else if("string"==typeof b&&(c=a.pop(),"Etc/UTC"==c||"Etc/GMT"==c))d=!0;b=a[a.length-1];if("string"==typeof b)b=new Date(a[0]);else{for(var b=[],e=0;8>e;e++)b[e]=a[e]||0;b=new Date(b[0],b[1],b[2],b[3],b[4],b[5],b[6],b[7])}}this._useCache=!1;this._tzInfo={};this._tzAbbr="";this.milliseconds=
this.seconds=this.minutes=this.hours=this.date=this.month=this.year=this._day=0;this.timezone=c||null;this.utc=d||!1;this.setFromDateObjProxy(b)};
timezoneJS.Date.prototype={getDate:function(){return this.date},getDay:function(){return this._day},getFullYear:function(){return this.year},getMonth:function(){return this.month},getYear:function(){return this.year},getHours:function(){return this.hours},getMilliseconds:function(){return this.milliseconds},getMinutes:function(){return this.minutes},getSeconds:function(){return this.seconds},getTime:function(){return Date.UTC(this.year,this.month,this.date,this.hours,this.minutes,this.seconds,this.milliseconds)+
6E4*this.getTimezoneOffset()},getTimezone:function(){return this.timezone},getTimezoneOffset:function(){return this.getTimezoneInfo().tzOffset},getTimezoneAbbreviation:function(){return this.getTimezoneInfo().tzAbbr},getTimezoneInfo:function(){var a;this.utc?a={tzOffset:0,tzAbbr:"UTC"}:this._useCache?a=this._tzInfo:(this.timezone?(a=new Date(Date.UTC(this.year,this.month,this.date,this.hours,this.minutes,this.seconds,this.milliseconds)),a=timezoneJS.timezone.getTzInfo(a,this.timezone)):a={tzOffset:this.getLocalOffset(),
tzAbbr:null},this._tzInfo=a,this._useCache=!0);return a},getUTCDate:function(){return this.getUTCDateProxy().getUTCDate()},getUTCDay:function(){return this.getUTCDateProxy().getUTCDay()},getUTCFullYear:function(){return this.getUTCDateProxy().getUTCFullYear()},getUTCHours:function(){return this.getUTCDateProxy().getUTCHours()},getUTCMilliseconds:function(){return this.getUTCDateProxy().getUTCMilliseconds()},getUTCMinutes:function(){return this.getUTCDateProxy().getUTCMinutes()},getUTCMonth:function(){return this.getUTCDateProxy().getUTCMonth()},
getUTCSeconds:function(){return this.getUTCDateProxy().getUTCSeconds()},setDate:function(a){this.setAttribute("date",a)},setFullYear:function(a){this.setAttribute("year",a)},setMonth:function(a){this.setAttribute("month",a)},setYear:function(a){this.setUTCAttribute("year",a)},setHours:function(a){this.setAttribute("hours",a)},setMilliseconds:function(a){this.setAttribute("milliseconds",a)},setMinutes:function(a){this.setAttribute("minutes",a)},setSeconds:function(a){this.setAttribute("seconds",a)},
setTime:function(a){if(isNaN(a))throw Error("Units must be a number.");var b=new Date(0);b.setUTCMilliseconds(a-6E4*this.getTimezoneOffset());this.setFromDateObjProxy(b,!0)},setUTCDate:function(a){this.setUTCAttribute("date",a)},setUTCFullYear:function(a){this.setUTCAttribute("year",a)},setUTCHours:function(a){this.setUTCAttribute("hours",a)},setUTCMilliseconds:function(a){this.setUTCAttribute("milliseconds",a)},setUTCMinutes:function(a){this.setUTCAttribute("minutes",a)},setUTCMonth:function(a){this.setUTCAttribute("month",
a)},setUTCSeconds:function(a){this.setUTCAttribute("seconds",a)},toGMTString:function(){},toLocaleString:function(){},toLocaleDateString:function(){},toLocaleTimeString:function(){},toSource:function(){},toString:function(a){return(new Date(this.getYear(),this.getMonth(),this.getDate(),this.getHours(),this.getMinutes(),this.getSeconds())).toString(a)},toUTCString:function(){},valueOf:function(){return this.getTime()},clone:function(){return new timezoneJS.Date(this.year,this.month,this.date,this.hours,
this.minutes,this.seconds,this.milliseconds,this.timezone)},setFromDateObjProxy:function(a,b){this.year=b?a.getUTCFullYear():a.getFullYear();this.month=b?a.getUTCMonth():a.getMonth();this.date=b?a.getUTCDate():a.getDate();this.hours=b?a.getUTCHours():a.getHours();this.minutes=b?a.getUTCMinutes():a.getMinutes();this.seconds=b?a.getUTCSeconds():a.getSeconds();this.milliseconds=b?a.getUTCMilliseconds():a.getMilliseconds();this._day=b?a.getUTCDay():a.getDay();this._useCache=!1},getUTCDateProxy:function(){var a=
new Date(Date.UTC(this.year,this.month,this.date,this.hours,this.minutes,this.seconds,this.milliseconds));a.setUTCMinutes(a.getUTCMinutes()+this.getTimezoneOffset());return a},setAttribute:function(a,b){if(isNaN(b))throw Error("Units must be a number.");var c=new Date(this.year,this.month,this.date,this.hours,this.minutes,this.seconds,this.milliseconds),d="year"==a?"FullYear":a.substr(0,1).toUpperCase()+a.substr(1);c["set"+d](b);this.setFromDateObjProxy(c)},setUTCAttribute:function(a,b){if(isNaN(b))throw Error("Units must be a number.");
var c="year"==a?"FullYear":a.substr(0,1).toUpperCase()+a.substr(1),d=this.getUTCDateProxy();d["setUTC"+c](b);d.setUTCMinutes(d.getUTCMinutes()-this.getTimezoneOffset());this.setFromDateObjProxy(d,!0)},setTimezone:function(a){if("Etc/UTC"==a||"Etc/GMT"==a)this.utc=!0;this.timezone=a;this._useCache=!1},removeTimezone:function(){this.utc=!1;this.timezone=null;this._useCache=!1},civilToJulianDayNumber:function(a,b,c){var d;b++;12<b&&(d=parseInt(b/12,10),b%=12,a+=d);2>=b&&(a-=1,b+=12);d=Math.floor(a/100);
return jDt=Math.floor(365.25*(a+4716))+Math.floor(30.6001*(b+1))+c+(2-d+Math.floor(d/4))-1524},getLocalOffset:function(){return(new Date(this.getYear(),this.getMonth(),this.getDate(),this.getHours(),this.getMinutes(),this.getSeconds())).getTimezoneOffset()}};
timezoneJS.timezone=new function(){function a(a){throw Error('Timezone "'+a+'" is either incorrect, or not loaded in the timezone registry.');}function b(a,b){if("undefined"==typeof fleegix.xhr)throw Error("Please use the Fleegix.js XHR module, or define your own transport mechanism for downloading zone files.");var c=k.zoneFileBasePath+"/"+a;if(b.async)return fleegix.xhr.send({url:c,method:"get",handleSuccess:function(a){k.parseZones(a)&&"function"==typeof b.callback&&b.callback();return!0},handleErr:function(){throw Error('Error retrieving "'+
c+'" zoneinfo file.');}});var d=fleegix.xhr.doReq({url:c,async:!1});return k.parseZones(d)}function c(b){var d=n[b];if(d)return d;reg=b.split("/")[0];d=s[reg];if(!d){var e=k.zones[b];if("string"==typeof e)return c(e);if(k.loadedZones.backward)a(b);else return k.loadZoneFile("backward",!0),c(b)}return d}function d(a){a=a.match(/(\d+)(?::0*(\d*))?(?::0*(\d*))?([wsugz])?$/);a[1]=parseInt(a[1],10);a[2]=a[2]?parseInt(a[2],10):0;a[3]=a[3]?parseInt(a[3],10):0;return a}function e(b,c){for(var f=c,g=k.zones[f];"string"==
typeof g;)f=g,g=k.zones[f];if(!g){if(!k.loadedZones.backward)return k.loadZoneFile("backward",!0),e(b,c);a(f)}for(var j=0;j<g.length;j++){f=g[j];if(!f[3])break;var n=parseInt(f[3],10),s=11,J=31;f[4]&&(s=m[f[4].substr(0,3).toLowerCase()],J=parseInt(f[5],10));f=f[6]?f[6]:"23:59:59";f=d(f);n=Date.UTC(n,s,J,f[1],f[2],f[3]);if(b.getTime()<n)break}if(j==g.length)throw Error('No Zone found for "'+timezone+'" on '+b);return g[j]}function f(a){var b=d(a[0]),b=(0==a[0].indexOf("-")?-1:1)*1E3*(60*(60*b[1]+b[2])+
b[3]);return-b/60/1E3}function g(a,b,c){var e=b[1],g=f(b),n=function(a,b,c){var d=0;if("u"==b||"g"==b||"z"==b)d=0;else if("s"==b)d=g;else if("w"==b||!b)d=j(g,c);else throw"unknown type "+b;return new Date(a.getTime()+6E4*d)},m=function(a,b){var c=a[0],e=a[1],f={Jan:0,Feb:1,Mar:2,Apr:3,May:4,Jun:5,Jul:6,Aug:7,Sep:8,Oct:9,Nov:10,Dec:11},g={sun:0,mon:1,tue:2,wed:3,thu:4,fri:5,sat:6},j=d(e[5]);isNaN(e[4])?("last"===e[4].substr(0,4)?(c=new Date(Date.UTC(c,f[e[3]]+1,1,j[1]-24,j[2],j[3],0)),g=g[e[4].substr(4,
3).toLowerCase()],e="<="):(c=new Date(Date.UTC(c,f[e[3]],e[4].substr(5),j[1],j[2],j[3],0)),g=g[e[4].substr(0,3).toLowerCase()],e=e[4].substr(3,2)),f=c.getUTCDay(),">="===e?c.setUTCDate(c.getUTCDate()+(g-f+(g<f?7:0))):c.setUTCDate(c.getUTCDate()+(g-f-(g>f?7:0)))):c=new Date(Date.UTC(c,f[e[3]],e[4],j[1],j[2],j[3],0));b&&(c=n(c,j[4],b));return c},s=function(a,b){var c=[],d;for(d in b)Number(b[d][0])<=a&&(Number(b[d][1])>=a||Number(b[d][0])===a&&"only"===b[d][1]||"max"===b[d][1])&&c.push([a,b[d]]);return c},
b=function(a,b,d){a.constructor!==Date?a=m(a,d):d&&(a=n(a,c?"u":"w",d));b.constructor!==Date?b=m(b,d):d&&(b=n(b,c?"u":"w",d));return Number(a)-Number(b)},F=a.getUTCFullYear(),x;x=s(F,k.rules[e]);x.push(a);x.sort(b);2>x.indexOf(a)&&(x=x.concat(s(F-1,k.rules[e])),x.sort(b));e=x.indexOf(a);return 1<e&&0>b(a,x[e-1],x[e-2][1])?x[e-2][1]:0<e&&e<x.length-1&&0<b(a,x[e+1],x[e-1][1])?x[e+1][1]:0===e?null:x[e-1][1]}function j(a,b){var c=b[6],e=d(c),c=(0==c.indexOf("-")?-1:1)*1E3*(60*(60*e[1]+e[2])+e[3]);return c=
-Math.ceil(c/60/1E3-a)}var k=this,m={jan:0,feb:1,mar:2,apr:3,may:4,jun:5,jul:6,aug:7,sep:8,oct:9,nov:10,dec:11},s={EST:"northamerica",MST:"northamerica",HST:"northamerica",EST5EDT:"northamerica",CST6CDT:"northamerica",MST7MDT:"northamerica",PST8PDT:"northamerica",America:"northamerica",Pacific:"australasia",Atlantic:"europe",Africa:"africa",Indian:"africa",Antarctica:"antarctica",Asia:"asia",Australia:"australasia",Europe:"europe",WET:"europe",CET:"europe",MET:"europe",EET:"europe"},n={"Pacific/Honolulu":"northamerica",
"Atlantic/Bermuda":"northamerica","Atlantic/Cape_Verde":"africa","Atlantic/St_Helena":"africa","Indian/Kerguelen":"antarctica","Indian/Chagos":"asia","Indian/Maldives":"asia","Indian/Christmas":"australasia","Indian/Cocos":"australasia","America/Danmarkshavn":"europe","America/Scoresbysund":"europe","America/Godthab":"europe","America/Thule":"europe","Asia/Yekaterinburg":"europe","Asia/Omsk":"europe","Asia/Novosibirsk":"europe","Asia/Krasnoyarsk":"europe","Asia/Irkutsk":"europe","Asia/Yakutsk":"europe",
"Asia/Vladivostok":"europe","Asia/Sakhalin":"europe","Asia/Magadan":"europe","Asia/Kamchatka":"europe","Asia/Anadyr":"europe","Africa/Ceuta":"europe","America/Argentina/Buenos_Aires":"southamerica","America/Argentina/Cordoba":"southamerica","America/Argentina/Tucuman":"southamerica","America/Argentina/La_Rioja":"southamerica","America/Argentina/San_Juan":"southamerica","America/Argentina/Jujuy":"southamerica","America/Argentina/Catamarca":"southamerica","America/Argentina/Mendoza":"southamerica",
"America/Argentina/Rio_Gallegos":"southamerica","America/Argentina/Ushuaia":"southamerica","America/Aruba":"southamerica","America/La_Paz":"southamerica","America/Noronha":"southamerica","America/Belem":"southamerica","America/Fortaleza":"southamerica","America/Recife":"southamerica","America/Araguaina":"southamerica","America/Maceio":"southamerica","America/Bahia":"southamerica","America/Sao_Paulo":"southamerica","America/Campo_Grande":"southamerica","America/Cuiaba":"southamerica","America/Porto_Velho":"southamerica",
"America/Boa_Vista":"southamerica","America/Manaus":"southamerica","America/Eirunepe":"southamerica","America/Rio_Branco":"southamerica","America/Santiago":"southamerica","Pacific/Easter":"southamerica","America/Bogota":"southamerica","America/Curacao":"southamerica","America/Guayaquil":"southamerica","Pacific/Galapagos":"southamerica","Atlantic/Stanley":"southamerica","America/Cayenne":"southamerica","America/Guyana":"southamerica","America/Asuncion":"southamerica","America/Lima":"southamerica",
"Atlantic/South_Georgia":"southamerica","America/Paramaribo":"southamerica","America/Port_of_Spain":"southamerica","America/Montevideo":"southamerica","America/Caracas":"southamerica"};this.zoneFiles="africa,antarctica,asia,australasia,backward,etcetera,europe,northamerica,pacificnew,southamerica".split(",");this.loadingSchemes={PRELOAD_ALL:"preloadAll",LAZY_LOAD:"lazyLoad",MANUAL_LOAD:"manualLoad"};this.loadingScheme=this.loadingSchemes.LAZY_LOAD;this.defaultZoneFile=this.loadingScheme==this.loadingSchemes.PRELOAD_ALL?
this.zoneFiles:"northamerica";this.loadedZones={};this.zones={};this.rules={};this.init=function(a){var b={async:!0},c=this.defaultZoneFile,d;for(d in a)b[d]=a[d];if("string"==typeof c)this.loadZoneFile(c,b);else{if(b.callback)throw Error("Async load with callback is not supported for multiple default zonefiles.");for(a=0;a<c.length;a++)this.loadZoneFile(c[a],b)}};this.loadZoneFile=function(a,c){if("undefined"==typeof this.zoneFileBasePath)throw Error("Please define a base path to your zone file directory -- timezoneJS.timezone.zoneFileBasePath.");
this.loadedZones[a]=!0;return b(a,c)};this.loadZoneJSONData=function(a,b){var c=function(a){var a=eval("("+a+")"),b;for(b in a.zones)k.zones[b]=a.zones[b];for(var c in a.rules)k.rules[c]=a.rules[c]};if(b){var d=fleegix.xhr.doGet(a);c(d)}else fleegix.xhr.doGet(c,a)};this.loadZoneDataFromObject=function(a){if(a){for(var b in a.zones)k.zones[b]=a.zones[b];for(var c in a.rules)k.rules[c]=a.rules[c]}};this.getAllZones=function(){var a=[];for(z in this.zones)a.push(z);return a.sort()};this.parseZones=function(a){for(var a=
a.split("\n"),b=[],c="",d=null,c=null,e=0;e<a.length;e++)if(l=a[e],l.match(/^\s/)&&(l="Zone "+d+l),l=l.split("#")[0],3<l.length)switch(b=l.split(/\s+/),c=b.shift(),c){case "Zone":d=b.shift();k.zones[d]||(k.zones[d]=[]);k.zones[d].push(b);break;case "Rule":c=b.shift();k.rules[c]||(k.rules[c]=[]);k.rules[c].push(b);break;case "Link":if(k.zones[b[1]])throw Error("Error with Link "+b[1]);k.zones[b[1]]=b[0]}return!0};this.getTzInfo=function(a,b,k){if(this.loadingScheme==this.loadingSchemes.LAZY_LOAD){var n=
c(b);if(n)this.loadedZones[n]||this.loadZoneFile(n,!0);else throw Error("Not a valid timezone ID.");}n=e(a,b);b=f(n);(k=g(a,n,k))&&(b=j(b,k));a=n[2];-1<a.indexOf("%s")?a=a.replace("%s",k?"-"==k[7]?"":k[7]:"S"):-1<a.indexOf("/")&&(k=d(k[6]),k=k[1]||k[2]||k[3],a=a.split("/",2)[k?1:0]);return{tzOffset:b,tzAbbr:a}}};Date.CultureInfo={name:"en-US",englishName:"English (United States)",nativeName:"English (United States)",dayNames:"Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),abbreviatedDayNames:"Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(","),shortestDayNames:"Su,Mo,Tu,We,Th,Fr,Sa".split(","),firstLetterDayNames:"S,M,T,W,T,F,S".split(","),monthNames:"January,February,March,April,May,June,July,August,September,October,November,December".split(","),abbreviatedMonthNames:"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
amDesignator:"AM",pmDesignator:"PM",firstDayOfWeek:0,twoDigitYearMax:2029,dateElementOrder:"mdy",formatPatterns:{shortDate:"M/d/yyyy",longDate:"dddd, MMMM dd, yyyy",shortTime:"h:mm tt",longTime:"h:mm:ss tt",fullDateTime:"dddd, MMMM dd, yyyy h:mm:ss tt",sortableDateTime:"yyyy-MM-ddTHH:mm:ss",universalSortableDateTime:"yyyy-MM-dd HH:mm:ssZ",rfc1123:"ddd, dd MMM yyyy HH:mm:ss GMT",monthDay:"MMMM dd",yearMonth:"MMMM, yyyy"},regexPatterns:{jan:/^jan(uary)?/i,feb:/^feb(ruary)?/i,mar:/^mar(ch)?/i,apr:/^apr(il)?/i,
may:/^may/i,jun:/^jun(e)?/i,jul:/^jul(y)?/i,aug:/^aug(ust)?/i,sep:/^sep(t(ember)?)?/i,oct:/^oct(ober)?/i,nov:/^nov(ember)?/i,dec:/^dec(ember)?/i,sun:/^su(n(day)?)?/i,mon:/^mo(n(day)?)?/i,tue:/^tu(e(s(day)?)?)?/i,wed:/^we(d(nesday)?)?/i,thu:/^th(u(r(s(day)?)?)?)?/i,fri:/^fr(i(day)?)?/i,sat:/^sa(t(urday)?)?/i,future:/^next/i,past:/^last|past|prev(ious)?/i,add:/^(\+|after|from)/i,subtract:/^(\-|before|ago)/i,yesterday:/^yesterday/i,today:/^t(oday)?/i,tomorrow:/^tomorrow/i,now:/^n(ow)?/i,millisecond:/^ms|milli(second)?s?/i,
second:/^sec(ond)?s?/i,minute:/^min(ute)?s?/i,hour:/^h(ou)?rs?/i,week:/^w(ee)?k/i,month:/^m(o(nth)?s?)?/i,day:/^d(ays?)?/i,year:/^y((ea)?rs?)?/i,shortMeridian:/^(a|p)/i,longMeridian:/^(a\.?m?\.?|p\.?m?\.?)/i,timezone:/^((e(s|d)t|c(s|d)t|m(s|d)t|p(s|d)t)|((gmt)?\s*(\+|\-)\s*\d\d\d\d?)|gmt)/i,ordinalSuffix:/^\s*(st|nd|rd|th)/i,timeContext:/^\s*(\:|a|p)/i},abbreviatedTimeZoneStandard:{GMT:"-000",EST:"-0400",CST:"-0500",MST:"-0600",PST:"-0700"},abbreviatedTimeZoneDST:{GMT:"-000",EDT:"-0500",CDT:"-0600",
MDT:"-0700",PDT:"-0800"}};Date.getMonthNumberFromName=function(a){for(var b=Date.CultureInfo.monthNames,c=Date.CultureInfo.abbreviatedMonthNames,a=a.toLowerCase(),d=0;d<b.length;d++)if(b[d].toLowerCase()==a||c[d].toLowerCase()==a)return d;return-1};Date.getDayNumberFromName=function(a){for(var b=Date.CultureInfo.dayNames,c=Date.CultureInfo.abbreviatedDayNames,a=a.toLowerCase(),d=0;d<b.length;d++)if(b[d].toLowerCase()==a||c[d].toLowerCase()==a)return d;return-1};
Date.isLeapYear=function(a){return 0===a%4&&0!==a%100||0===a%400};Date.getDaysInMonth=function(a,b){return[31,Date.isLeapYear(a)?29:28,31,30,31,30,31,31,30,31,30,31][b]};Date.getTimezoneOffset=function(a,b){return b?Date.CultureInfo.abbreviatedTimeZoneDST[a.toUpperCase()]:Date.CultureInfo.abbreviatedTimeZoneStandard[a.toUpperCase()]};
Date.getTimezoneAbbreviation=function(a,b){var c=b?Date.CultureInfo.abbreviatedTimeZoneDST:Date.CultureInfo.abbreviatedTimeZoneStandard,d;for(d in c)if(c[d]===a)return d;return null};Date.prototype.clone=function(){return new Date(this.getTime())};Date.prototype.compareTo=function(a){if(isNaN(this))throw Error(this);if(a instanceof Date&&!isNaN(a))return this>a?1:this<a?-1:0;throw new TypeError(a);};Date.prototype.equals=function(a){return 0===this.compareTo(a)};
Date.prototype.between=function(a,b){var c=this.getTime();return c>=a.getTime()&&c<=b.getTime()};Date.prototype.addMilliseconds=function(a){this.setMilliseconds(this.getMilliseconds()+a);return this};Date.prototype.addSeconds=function(a){return this.addMilliseconds(1E3*a)};Date.prototype.addMinutes=function(a){return this.addMilliseconds(6E4*a)};Date.prototype.addHours=function(a){return this.addMilliseconds(36E5*a)};Date.prototype.addDays=function(a){return this.addMilliseconds(864E5*a)};
Date.prototype.addWeeks=function(a){return this.addMilliseconds(6048E5*a)};Date.prototype.addMonths=function(a){var b=this.getDate();this.setDate(1);this.setMonth(this.getMonth()+a);this.setDate(Math.min(b,this.getDaysInMonth()));return this};Date.prototype.addYears=function(a){return this.addMonths(12*a)};
Date.prototype.add=function(a){if("number"==typeof a)return this._orient=a,this;if(a.millisecond||a.milliseconds)this.addMilliseconds(a.millisecond||a.milliseconds);if(a.second||a.seconds)this.addSeconds(a.second||a.seconds);if(a.minute||a.minutes)this.addMinutes(a.minute||a.minutes);if(a.hour||a.hours)this.addHours(a.hour||a.hours);if(a.month||a.months)this.addMonths(a.month||a.months);if(a.year||a.years)this.addYears(a.year||a.years);if(a.day||a.days)this.addDays(a.day||a.days);return this};
Date._validate=function(a,b,c,d){if("number"!=typeof a)throw new TypeError(a+" is not a Number.");if(a<b||a>c)throw new RangeError(a+" is not a valid value for "+d+".");return!0};Date.validateMillisecond=function(a){return Date._validate(a,0,999,"milliseconds")};Date.validateSecond=function(a){return Date._validate(a,0,59,"seconds")};Date.validateMinute=function(a){return Date._validate(a,0,59,"minutes")};Date.validateHour=function(a){return Date._validate(a,0,23,"hours")};
Date.validateDay=function(a,b,c){return Date._validate(a,1,Date.getDaysInMonth(b,c),"days")};Date.validateMonth=function(a){return Date._validate(a,0,11,"months")};Date.validateYear=function(a){return Date._validate(a,1,9999,"seconds")};
Date.prototype.set=function(a){if(!a.millisecond&&0!==a.millisecond)a.millisecond=-1;if(!a.second&&0!==a.second)a.second=-1;if(!a.minute&&0!==a.minute)a.minute=-1;if(!a.hour&&0!==a.hour)a.hour=-1;if(!a.day&&0!==a.day)a.day=-1;if(!a.month&&0!==a.month)a.month=-1;if(!a.year&&0!==a.year)a.year=-1;-1!=a.millisecond&&Date.validateMillisecond(a.millisecond)&&this.addMilliseconds(a.millisecond-this.getMilliseconds());-1!=a.second&&Date.validateSecond(a.second)&&this.addSeconds(a.second-this.getSeconds());
-1!=a.minute&&Date.validateMinute(a.minute)&&this.addMinutes(a.minute-this.getMinutes());-1!=a.hour&&Date.validateHour(a.hour)&&this.addHours(a.hour-this.getHours());-1!==a.month&&Date.validateMonth(a.month)&&this.addMonths(a.month-this.getMonth());-1!=a.year&&Date.validateYear(a.year)&&this.addYears(a.year-this.getFullYear());-1!=a.day&&Date.validateDay(a.day,this.getFullYear(),this.getMonth())&&this.addDays(a.day-this.getDate());a.timezone&&this.setTimezone(a.timezone);a.timezoneOffset&&this.setTimezoneOffset(a.timezoneOffset);
return this};Date.prototype.clearTime=function(){this.setHours(0);this.setMinutes(0);this.setSeconds(0);this.setMilliseconds(0);return this};Date.prototype.isLeapYear=function(){var a=this.getFullYear();return 0===a%4&&0!==a%100||0===a%400};Date.prototype.isWeekday=function(){return!(this.is().sat()||this.is().sun())};Date.prototype.getDaysInMonth=function(){return Date.getDaysInMonth(this.getFullYear(),this.getMonth())};Date.prototype.moveToFirstDayOfMonth=function(){return this.set({day:1})};
Date.prototype.moveToLastDayOfMonth=function(){return this.set({day:this.getDaysInMonth()})};Date.prototype.moveToDayOfWeek=function(a,b){var c=(a-this.getDay()+7*(b||1))%7;return this.addDays(0===c?c+7*(b||1):c)};Date.prototype.moveToMonth=function(a,b){var c=(a-this.getMonth()+12*(b||1))%12;return this.addMonths(0===c?c+12*(b||1):c)};Date.prototype.getDayOfYear=function(){return Math.floor((this-new Date(this.getFullYear(),0,1))/864E5)};
Date.prototype.getWeekOfYear=function(a){var b=this.getFullYear(),c=this.getMonth(),d=this.getDate(),a=a||Date.CultureInfo.firstDayOfWeek,e=8-(new Date(b,0,1)).getDay();8==e&&(e=1);c=(Date.UTC(b,c,d,0,0,0)-Date.UTC(b,0,1,0,0,0))/864E5+1;c=Math.floor((c-e+7)/7);c===a&&(b--,b=8-(new Date(b,0,1)).getDay(),c=2==b||8==b?53:52);return c};Date.prototype.isDST=function(){console.log("isDST");return"D"==this.toString().match(/(E|C|M|P)(S|D)T/)[2]};
Date.prototype.getTimezone=function(){return Date.getTimezoneAbbreviation(this.getUTCOffset,this.isDST())};Date.prototype.setTimezoneOffset=function(a){var b=this.getTimezoneOffset();this.addMinutes(-6*Number(a)/10-b);return this};Date.prototype.setTimezone=function(a){return this.setTimezoneOffset(Date.getTimezoneOffset(a))};Date.prototype.getUTCOffset=function(){var a=-10*this.getTimezoneOffset()/6;if(0>a)return a=(a-1E4).toString(),a[0]+a.substr(2);a=(a+1E4).toString();return"+"+a.substr(1)};
Date.prototype.getDayName=function(a){return a?Date.CultureInfo.abbreviatedDayNames[this.getDay()]:Date.CultureInfo.dayNames[this.getDay()]};Date.prototype.getMonthName=function(a){return a?Date.CultureInfo.abbreviatedMonthNames[this.getMonth()]:Date.CultureInfo.monthNames[this.getMonth()]};Date.prototype._toString=Date.prototype.toString;
Date.prototype.toString=function(a){var b=this,c=function(a){return 1==a.toString().length?"0"+a:a};return a?a.replace(/dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?/g,function(a){switch(a){case "hh":return c(13>b.getHours()?b.getHours():b.getHours()-12);case "h":return 13>b.getHours()?b.getHours():b.getHours()-12;case "HH":return c(b.getHours());case "H":return b.getHours();case "mm":return c(b.getMinutes());case "m":return b.getMinutes();case "ss":return c(b.getSeconds());case "s":return b.getSeconds();
case "yyyy":return b.getFullYear();case "yy":return b.getFullYear().toString().substring(2,4);case "dddd":return b.getDayName();case "ddd":return b.getDayName(!0);case "dd":return c(b.getDate());case "d":return b.getDate().toString();case "MMMM":return b.getMonthName();case "MMM":return b.getMonthName(!0);case "MM":return c(b.getMonth()+1);case "M":return b.getMonth()+1;case "t":return 12>b.getHours()?Date.CultureInfo.amDesignator.substring(0,1):Date.CultureInfo.pmDesignator.substring(0,1);case "tt":return 12>
b.getHours()?Date.CultureInfo.amDesignator:Date.CultureInfo.pmDesignator;case "zzz":case "zz":case "z":return""}}):this._toString()};Date.now=function(){return new Date};Date.today=function(){return Date.now().clearTime()};Date.prototype._orient=1;Date.prototype.next=function(){this._orient=1;return this};Date.prototype.last=Date.prototype.prev=Date.prototype.previous=function(){this._orient=-1;return this};Date.prototype._is=!1;Date.prototype.is=function(){this._is=!0;return this};
Number.prototype._dateElement="day";Number.prototype.fromNow=function(){var a={};a[this._dateElement]=this;return Date.now().add(a)};Number.prototype.ago=function(){var a={};a[this._dateElement]=-1*this;return Date.now().add(a)};
(function(){for(var a=Date.prototype,b=Number.prototype,c="sunday monday tuesday wednesday thursday friday saturday".split(/\s/),d="january february march april may june july august september october november december".split(/\s/),e="Millisecond Second Minute Hour Day Week Month Year".split(/\s/),f=function(a){return function(){return this._is?(this._is=!1,this.getDay()==a):this.moveToDayOfWeek(a,this._orient)}},g=0;g<c.length;g++)a[c[g]]=a[c[g].substring(0,3)]=f(g);c=function(a){return function(){return this._is?
(this._is=!1,this.getMonth()===a):this.moveToMonth(a,this._orient)}};for(f=0;f<d.length;f++)a[d[f]]=a[d[f].substring(0,3)]=c(f);c=function(a){return function(){"s"!=a.substring(a.length-1)&&(a+="s");return this["add"+a](this._orient)}};f=function(a){return function(){this._dateElement=a;return this}};for(g=0;g<e.length;g++)d=e[g].toLowerCase(),a[d]=a[d+"s"]=c(e[g]),b[d]=b[d+"s"]=f(d)})();Date.prototype.toJSONString=function(){return this.toString("yyyy-MM-ddThh:mm:ssZ")};
Date.prototype.toShortDateString=function(){return this.toString(Date.CultureInfo.formatPatterns.shortDatePattern)};Date.prototype.toLongDateString=function(){return this.toString(Date.CultureInfo.formatPatterns.longDatePattern)};Date.prototype.toShortTimeString=function(){return this.toString(Date.CultureInfo.formatPatterns.shortTimePattern)};Date.prototype.toLongTimeString=function(){return this.toString(Date.CultureInfo.formatPatterns.longTimePattern)};
Date.prototype.getOrdinal=function(){switch(this.getDate()){case 1:case 21:case 31:return"st";case 2:case 22:return"nd";case 3:case 23:return"rd";default:return"th"}};
(function(){Date.Parsing={Exception:function(a){this.message="Parse error at '"+a.substring(0,10)+" ...'"}};for(var a=Date.Parsing,b=a.Operators={rtoken:function(b){return function(c){var d=c.match(b);if(d)return[d[0],c.substring(d[0].length)];throw new a.Exception(c);}},token:function(){return function(a){return b.rtoken(RegExp("^s*"+a+"s*"))(a)}},stoken:function(a){return b.rtoken(RegExp("^"+a))},until:function(a){return function(b){for(var c=[],d=null;b.length;){try{d=a.call(this,b)}catch(e){c.push(d[0]);
b=d[1];continue}break}return[c,b]}},many:function(a){return function(b){for(var c=[],d=null;b.length;){try{d=a.call(this,b)}catch(e){break}c.push(d[0]);b=d[1]}return[c,b]}},optional:function(a){return function(b){var c=null;try{c=a.call(this,b)}catch(d){return[null,b]}return[c[0],c[1]]}},not:function(b){return function(c){try{b.call(this,c)}catch(d){return[null,c]}throw new a.Exception(c);}},ignore:function(a){return a?function(b){var c=null,c=a.call(this,b);return[null,c[1]]}:null},product:function(){for(var a=
arguments[0],c=Array.prototype.slice.call(arguments,1),d=[],e=0;e<a.length;e++)d.push(b.each(a[e],c));return d},cache:function(b){var c={},d=null;return function(e){try{d=c[e]=c[e]||b.call(this,e)}catch(m){d=c[e]=m}if(d instanceof a.Exception)throw d;return d}},any:function(){var b=arguments;return function(c){for(var d=null,e=0;e<b.length;e++)if(null!=b[e]){try{d=b[e].call(this,c)}catch(m){d=null}if(d)return d}throw new a.Exception(c);}},each:function(){var b=arguments;return function(c){for(var d=
[],e=null,m=0;m<b.length;m++)if(null!=b[m]){try{e=b[m].call(this,c)}catch(s){throw new a.Exception(c);}d.push(e[0]);c=e[1]}return[d,c]}},all:function(){var a=a;return a.each(a.optional(arguments))},sequence:function(c,d,e){d=d||b.rtoken(/^\s*/);e=e||null;return 1==c.length?c[0]:function(b){for(var m=null,s=null,n=[],q=0;q<c.length;q++){try{m=c[q].call(this,b)}catch(o){break}n.push(m[0]);try{s=d.call(this,m[1])}catch(p){s=null;break}b=s[1]}if(!m)throw new a.Exception(b);if(s)throw new a.Exception(s[1]);
if(e)try{m=e.call(this,m[1])}catch(u){throw new a.Exception(m[1]);}return[n,m?m[1]:b]}},between:function(a,c,d){var d=d||a,e=b.each(b.ignore(a),c,b.ignore(d));return function(a){a=e.call(this,a);return[[a[0][0],r[0][2]],a[1]]}},list:function(a,c,d){c=c||b.rtoken(/^\s*/);d=d||null;return a instanceof Array?b.each(b.product(a.slice(0,-1),b.ignore(c)),a.slice(-1),b.ignore(d)):b.each(b.many(b.each(a,b.ignore(c))),px,b.ignore(d))},set:function(c,d,e){d=d||b.rtoken(/^\s*/);e=e||null;return function(k){for(var m=
null,s=m=null,n=null,q=[[],k],o=!1,p=0;p<c.length;p++){m=s=null;o=1==c.length;try{m=c[p].call(this,k)}catch(u){continue}n=[[m[0]],m[1]];if(0<m[1].length&&!o)try{s=d.call(this,m[1])}catch(D){o=!0}else o=!0;!o&&0===s[1].length&&(o=!0);if(!o){m=[];for(o=0;o<c.length;o++)p!=o&&m.push(c[o]);m=b.set(m,d).call(this,s[1]);0<m[0].length&&(n[0]=n[0].concat(m[0]),n[1]=m[1])}n[1].length<q[1].length&&(q=n);if(0===q[1].length)break}if(0===q[0].length)return q;if(e){try{s=e.call(this,q[1])}catch(A){throw new a.Exception(q[1]);
}q[1]=s[1]}return q}},forward:function(a,b){return function(c){return a[b].call(this,c)}},replace:function(a,b){return function(c){c=a.call(this,c);return[b,c[1]]}},process:function(a,b){return function(c){c=a.call(this,c);return[b.call(this,c[0]),c[1]]}},min:function(b,c){return function(d){var e=c.call(this,d);if(e[0].length<b)throw new a.Exception(d);return e}}},c=function(a){return function(){var b=null,c=[];1<arguments.length?b=Array.prototype.slice.call(arguments):arguments[0]instanceof Array&&
(b=arguments[0]);if(b)for(var d=b.shift();0<d.length;)return b.unshift(d[0]),c.push(a.apply(null,b)),b.shift(),c;else return a.apply(null,arguments)}},d="optional not ignore cache".split(/\s/),e=0;e<d.length;e++)b[d[e]]=c(b[d[e]]);c=function(a){return function(){return arguments[0]instanceof Array?a.apply(null,arguments[0]):a.apply(null,arguments)}};d="each any all".split(/\s/);for(e=0;e<d.length;e++)b[d[e]]=c(b[d[e]])})();
(function(){var a=function(b){for(var c=[],d=0;d<b.length;d++)b[d]instanceof Array?c=c.concat(a(b[d])):b[d]&&c.push(b[d]);return c};Date.Grammar={};Date.Translator={hour:function(a){return function(){this.hour=Number(a)}},minute:function(a){return function(){this.minute=Number(a)}},second:function(a){return function(){this.second=Number(a)}},meridian:function(a){return function(){this.meridian=a.slice(0,1).toLowerCase()}},timezone:function(a){return function(){var b=a.replace(/[^\d\+\-]/g,"");b.length?
this.timezoneOffset=Number(b):this.timezone=a.toLowerCase()}},day:function(a){var b=a[0];return function(){this.day=Number(b.match(/\d+/)[0])}},month:function(a){return function(){this.month=3==a.length?Date.getMonthNumberFromName(a):Number(a)-1}},year:function(a){return function(){var b=Number(a);this.year=2<a.length?b:b+(b+2E3<Date.CultureInfo.twoDigitYearMax?2E3:1900)}},rday:function(a){return function(){switch(a){case "yesterday":this.days=-1;break;case "tomorrow":this.days=1;break;case "today":this.days=
0;break;case "now":this.days=0,this.now=!0}}},finishExact:function(a){var a=a instanceof Array?a:[a],b=new Date;this.year=b.getFullYear();this.month=b.getMonth();this.day=1;for(b=this.second=this.minute=this.hour=0;b<a.length;b++)a[b]&&a[b].call(this);this.hour="p"==this.meridian&&13>this.hour?this.hour+12:this.hour;if(this.day>Date.getDaysInMonth(this.year,this.month))throw new RangeError(this.day+" is not a valid value for days.");a=new Date(this.year,this.month,this.day,this.hour,this.minute,this.second);
this.timezone?a.set({timezone:this.timezone}):this.timezoneOffset&&a.set({timezoneOffset:this.timezoneOffset});return a},finish:function(b){b=b instanceof Array?a(b):[b];if(0===b.length)return null;for(var c=0;c<b.length;c++)"function"==typeof b[c]&&b[c].call(this);if(this.now)return new Date;b=Date.today();if(null!=this.days||this.orient||this.operator){var d,e;e="past"==this.orient||"subtract"==this.operator?-1:1;if(this.weekday)this.unit="day",c=Date.getDayNumberFromName(this.weekday)-b.getDay(),
d=7,this.days=c?(c+e*d)%d:e*d;if(this.month)this.unit="month",c=this.month-b.getMonth(),d=12,this.months=c?(c+e*d)%d:e*d,this.month=null;if(!this.unit)this.unit="day";if(null==this[this.unit+"s"]||null!=this.operator){if(!this.value)this.value=1;if("week"==this.unit)this.unit="day",this.value*=7;this[this.unit+"s"]=this.value*e}return b.add(this)}if(this.meridian&&this.hour)this.hour=13>this.hour&&"p"==this.meridian?this.hour+12:this.hour;if(this.weekday&&!this.day)this.day=b.addDays(Date.getDayNumberFromName(this.weekday)-
b.getDay()).getDate();if(this.month&&!this.day)this.day=1;return b.set(this)}};var b=Date.Parsing.Operators,c=Date.Grammar,d=Date.Translator,e;c.datePartDelimiter=b.rtoken(/^([\s\-\.\,\/\x27]+)/);c.timePartDelimiter=b.stoken(":");c.whiteSpace=b.rtoken(/^\s*/);c.generalDelimiter=b.rtoken(/^(([\s\,]|at|on)+)/);var f={};c.ctoken=function(a){var c=f[a];if(!c){for(var c=Date.CultureInfo.regexPatterns,d=a.split(/\s+/),e=[],g=0;g<d.length;g++)e.push(b.replace(b.rtoken(c[d[g]]),d[g]));c=f[a]=b.any.apply(null,
e)}return c};c.ctoken2=function(a){return b.rtoken(Date.CultureInfo.regexPatterns[a])};c.h=b.cache(b.process(b.rtoken(/^(0[0-9]|1[0-2]|[1-9])/),d.hour));c.hh=b.cache(b.process(b.rtoken(/^(0[0-9]|1[0-2])/),d.hour));c.H=b.cache(b.process(b.rtoken(/^([0-1][0-9]|2[0-3]|[0-9])/),d.hour));c.HH=b.cache(b.process(b.rtoken(/^([0-1][0-9]|2[0-3])/),d.hour));c.m=b.cache(b.process(b.rtoken(/^([0-5][0-9]|[0-9])/),d.minute));c.mm=b.cache(b.process(b.rtoken(/^[0-5][0-9]/),d.minute));c.s=b.cache(b.process(b.rtoken(/^([0-5][0-9]|[0-9])/),
d.second));c.ss=b.cache(b.process(b.rtoken(/^[0-5][0-9]/),d.second));c.hms=b.cache(b.sequence([c.H,c.mm,c.ss],c.timePartDelimiter));c.t=b.cache(b.process(c.ctoken2("shortMeridian"),d.meridian));c.tt=b.cache(b.process(c.ctoken2("longMeridian"),d.meridian));c.z=b.cache(b.process(b.rtoken(/^(\+|\-)?\s*\d\d\d\d?/),d.timezone));c.zz=b.cache(b.process(b.rtoken(/^(\+|\-)\s*\d\d\d\d/),d.timezone));c.zzz=b.cache(b.process(c.ctoken2("timezone"),d.timezone));c.timeSuffix=b.each(b.ignore(c.whiteSpace),b.set([c.tt,
c.zzz]));c.time=b.each(b.optional(b.ignore(b.stoken("T"))),c.hms,c.timeSuffix);c.d=b.cache(b.process(b.each(b.rtoken(/^([0-2]\d|3[0-1]|\d)/),b.optional(c.ctoken2("ordinalSuffix"))),d.day));c.dd=b.cache(b.process(b.each(b.rtoken(/^([0-2]\d|3[0-1])/),b.optional(c.ctoken2("ordinalSuffix"))),d.day));c.ddd=c.dddd=b.cache(b.process(c.ctoken("sun mon tue wed thu fri sat"),function(a){return function(){this.weekday=a}}));c.M=b.cache(b.process(b.rtoken(/^(1[0-2]|0\d|\d)/),d.month));c.MM=b.cache(b.process(b.rtoken(/^(1[0-2]|0\d)/),
d.month));c.MMM=c.MMMM=b.cache(b.process(c.ctoken("jan feb mar apr may jun jul aug sep oct nov dec"),d.month));c.y=b.cache(b.process(b.rtoken(/^(\d\d?)/),d.year));c.yy=b.cache(b.process(b.rtoken(/^(\d\d)/),d.year));c.yyy=b.cache(b.process(b.rtoken(/^(\d\d?\d?\d?)/),d.year));c.yyyy=b.cache(b.process(b.rtoken(/^(\d\d\d\d)/),d.year));e=function(){return b.each(b.any.apply(null,arguments),b.not(c.ctoken2("timeContext")))};c.day=e(c.d,c.dd);c.month=e(c.M,c.MMM);c.year=e(c.yyyy,c.yy);c.orientation=b.process(c.ctoken("past future"),
function(a){return function(){this.orient=a}});c.operator=b.process(c.ctoken("add subtract"),function(a){return function(){this.operator=a}});c.rday=b.process(c.ctoken("yesterday tomorrow today now"),d.rday);c.unit=b.process(c.ctoken("minute hour day week month year"),function(a){return function(){this.unit=a}});c.value=b.process(b.rtoken(/^\d\d?(st|nd|rd|th)?/),function(a){return function(){this.value=a.replace(/\D/g,"")}});c.expression=b.set([c.rday,c.operator,c.value,c.unit,c.orientation,c.ddd,
c.MMM]);e=function(){return b.set(arguments,c.datePartDelimiter)};c.mdy=e(c.ddd,c.month,c.day,c.year);c.ymd=e(c.ddd,c.year,c.month,c.day);c.dmy=e(c.ddd,c.day,c.month,c.year);c.date=function(a){return(c[Date.CultureInfo.dateElementOrder]||c.mdy).call(this,a)};c.format=b.process(b.many(b.any(b.process(b.rtoken(/^(dd?d?d?|MM?M?M?|yy?y?y?|hh?|HH?|mm?|ss?|tt?|zz?z?)/),function(a){if(c[a])return c[a];throw Date.Parsing.Exception(a);}),b.process(b.rtoken(/^[^dMyhHmstz]+/),function(a){return b.ignore(b.stoken(a))}))),
function(a){return b.process(b.each.apply(null,a),d.finishExact)});var g={};c.formats=function(a){if(a instanceof Array){for(var d=[],e=0;e<a.length;e++)d.push(g[a[e]]=g[a[e]]||c.format(a[e])[0]);return b.any.apply(null,d)}return g[a]=g[a]||c.format(a)[0]};c._formats=c.formats(["yyyy-MM-ddTHH:mm:ss","ddd, MMM dd, yyyy H:mm:ss tt","ddd MMM d yyyy HH:mm:ss zzz","d"]);c._start=b.process(b.set([c.date,c.time,c.expression],c.generalDelimiter,c.whiteSpace),d.finish);c.start=function(a){try{var b=c._formats.call({},
a);if(0===b[1].length)return b}catch(d){}return c._start.call({},a)}})();Date._parse=Date.parse;Date.parse=function(a){var b=null;if(!a)return null;try{b=Date.Grammar.start.call({},a)}catch(c){return null}return 0===b[1].length?b[0]:null};Date.getParseFunction=function(a){var b=Date.Grammar.formats(a);return function(a){var d=null;try{d=b.call({},a)}catch(e){return null}return 0===d[1].length?d[0]:null}};Date.parseExact=function(a,b){return Date.getParseFunction(b)(a)};function populated(a){return""!=a&&"undefined"!=a&&void 0!=a}function dump(a,b){var c="";if("function"!=typeof a){b||(b=0);for(var d="",e=0;e<b+1;e++)d+=" ";if("object"==typeof a)for(var f in a)e=a[f],"object"==typeof e?(c+=d+"'"+f+"' ...\n",c+=dump(e,b+1)):c+=d+"'"+f+"' => \""+e+'"\n';else c="===>"+a+"<===("+typeof a+")"}return c}function debug_alert(a){alert("<PRE>"+dump(a)+"</PRE>")}
function getParameterByName(a){a=a.replace(/[\[]/,"\\[").replace(/[\]]/,"\\]");a=RegExp("[\\?&]"+a+"=([^&#]*)").exec(window.location.href);return null==a?"":decodeURIComponent(a[1].replace(/\+/g," "))}function createUUID(){for(var a=[],b=0;32>b;b++)a[b]="0123456789ABCDEF".substr(Math.floor(16*Math.random()),1);a[12]="4";a[16]="0123456789ABCDEF".substr(a[16]&3|8,1);return a.join("")}
Date.prototype.setISO8601=function(a){var b=/(\d\d\d\d)(-)?(\d\d)(-)?(\d\d)(T)?(\d\d)(:)?(\d\d)(:)?(\d\d)(\.\d+)?(Z|([+-])(\d\d)(:)?(\d\d))/;a.toString().match(RegExp(b))?(a=a.match(RegExp(b)),b=0,this.setUTCDate(1),this.setUTCFullYear(parseInt(a[1],10)),this.setUTCMonth(parseInt(a[3],10)-1),this.setUTCDate(parseInt(a[5],10)),this.setUTCHours(parseInt(a[7],10)),this.setUTCMinutes(parseInt(a[9],10)),this.setUTCSeconds(parseInt(a[11],10)),a[12]?this.setUTCMilliseconds(1E3*parseFloat(a[12])):this.setUTCMilliseconds(0),
"Z"!=a[13]&&(b=60*a[15]+parseInt(a[17],10),b*="-"==a[14]?-1:1,this.setTime(this.getTime()-6E4*b))):this.setTime(Date.parse(a));return this};function trStopCache(){if(!(this instanceof trStopCache))return new trStopCache;if("object"===typeof trStopCache.instance)return trStopCache.instance;trStopCache.instance=this;this.cache={};this.addToCache=function(a,b,c){void 0==this.cache[a]&&(this.cache[a]={});this.cache[a][b]=c};this.checkCached=function(a,b,c){var d=this.nextUncachedStop(b);this.getCacheItem(a,b,d,c)};this.getCacheItem=function(a,b,c,d){var e="transit_stops_production";"dev"==document.domain.substring(0,3)&&(e="transit_stops_loading");
var f="http://transitappliance.couchone.com/"+e+"/_design/get/_view/by_id?key=%22"+c.agency+":"+c.stop_id+"%22",e="https://transitappliance.cloudant.com/"+e+"/_design/get/_view/by_id?key=%22"+c.agency+":"+c.stop_id+"%22";0.5<Math.random()&&(f=e);trArrLog("Loading info for "+c.agency+" stop "+c.stop_id+"<br>");jQuery.when(jQuery.ajax({type:"GET",url:f,timeout:2E3,dataType:"jsonp",success:function(a){void 0!=a.rows&&1==a.rows.length?(trStopCache.instance.addToCache(a.rows[0].value.agency,a.rows[0].value.stop_id,
a.rows[0].value),trArrLog("success<br>")):(trStopCache().cache[c.agency][c.stop_id]=!1,trArrLog("<font color='orange'>"+c.agency+" stop "+c.stop_id+" is not defined - no arrivals will be reported for this stop.</font><br>"))},error:function(a){trArrLog("<font color='red'>error "+dump(a.status)+"</font><br>")}})).done(function(){next_stop=trStopCache().nextUncachedStop(b);void 0==next_stop.agency?(trArrLog("Stop cache built.<br><br>"),d(a)):trStopCache().getCacheItem(a,b,next_stop,d)}).fail(function(){next_stop=
trStopCache().nextUncachedStop(b);void 0==next_stop.agency?(trArrLog("Stop cache built.<br><br>"),d(a)):trStopCache().getCacheItem(a,b,next_stop,d)})};this.nextUncachedStop=function(a){for(var b in a){void 0==this.cache[b]&&(this.cache[b]={});for(var c in a[b])if(void 0==this.cache[b][c])return{agency:b,stop_id:c}}return{}};this.stopData=function(a,b){if(this.cache[a]&&this.cache[a][b])return this.cache[a][b]}};function trAgencyCache(){if(!(this instanceof trAgencyCache))return new trAgencyCache;if("object"===typeof trAgencyCache.instance)return trAgencyCache.instance;trAgencyCache.instance=this;this.cache={};this.addToCache=function(a,b){this.cache[a]=b};this.checkCached=function(a,b,c){var d=this.nextUncachedAgency(b);this.getCacheItem(a,b,d,c)};this.getCacheItem=function(a,b,c,d){var e="http://transitappliance.couchone.com/agencies_production/"+c,f="https://transitappliance.cloudant.com/agencies_production/"+
c;0.5<Math.random()&&(e=f);trArrLog("Loading info for "+c+"<br>");jQuery.when(jQuery.ajax({type:"GET",url:e,timeout:2E3,dataType:"jsonp",success:function(a){trAgencyCache.instance.addToCache(c,a);trArrLog("success<br>")},error:function(){trArrLog("<font color='red'>error</font><br>")}})).done(function(){next_agency=trAgencyCache().nextUncachedAgency(b);void 0==next_agency?(trArrLog("Agency cache built.<br><br>"),d(a)):trAgencyCache().getCacheItem(a,b,next_agency,d)}).fail(function(){next_agency=trAgencyCache().nextUncachedAgency(b);
void 0==next_agency?(trArrLog("Agency cache built.<br><br>"),d(a)):trAgencyCache().getCacheItem(a,b,next_agency,d)})};this.nextUncachedAgency=function(a){for(var b in a)if(void 0==this.cache[b])return b};this.agencyData=function(a){if(this.cache[a])return this.cache[a]}};timezoneJS.timezone.zoneFileBasePath="assets/tz";timezoneJS.timezone.init();tzDate=timezoneJS.Date;function localTime(a){"object"==typeof a&&(a=a.getTime());void 0==a&&(a=(new Date).getTime());var b=new timezoneJS.Date;b.setTimezone(timezone);b.setTime(a);return b}function timeInZone(a,b){"object"==typeof b&&(b=b.getTime());void 0==b&&(b=(new Date).getTime());var c=new tzDate;c.setTimezone(a);c.setTime(b);return c}
function trArrLog(a){var b=document.createElement("div");b.innerHTML=a;jQuery("#arrivals_log_area").append(b);jQuery(document).scrollTop(jQuery(b).position().top)}function transitArrival(){}transitArrival.prototype={};transitArrival.prototype.minutes=function(){var a=localTime();return Math.floor((this.arrivalTime-a.getTime())/6E4)};function arrivalsQueue(){}arrivalsQueue.prototype=[];
arrivalsQueue.prototype.byLine=function(){var a={};this.forEach(function(b){void 0==a[b.route_id]&&(a[b.route_id]=new arrivalsQueue);a[b.route_id].push(b)});return a};arrivalsQueue.prototype.byDest=function(){var a={};this.forEach(function(b){void 0==a[b.headsign]&&(a[b.headsign]=new arrivalsQueue);a[b.headsign].push(b)});return a};
arrivalsQueue.prototype.byStop=function(){var a={};this.forEach(function(b){void 0==a[b.agency+":"+b.stop_id]&&(a[b.agency+":"+b.stop_id]=new arrivalsQueue);a[b.agency+":"+b.stop_id].push(b)});return a};arrivalsQueue.prototype.paginate=function(a){var b=new arrivalsQueue,c=[],d=0;this.forEach(function(e){d<a?(b.push(e),d++):(c.push(b),b=new arrivalsQueue,d=0)});0<d&&c.push(b);return c};arrivalsQueue.prototype.toArray=function(){var a=[];this.forEach(function(b){a.push(b)});return a};
arrivalsQueue.prototype.minutes=function(a){var b=localTime().getTime()+6E4*a,c=new arrivalsQueue;this.forEach(function(a){a.arrivalTime<b&&c.push(a)});return c};arrivalsQueue.prototype.current=function(){var a=new arrivalsQueue,b=localTime().getTime();this.forEach(function(c){c.arrivalTime>b&&a.push(c)});return a};arrivalsQueue.prototype.lastUpdated=function(){var a=this.toArray()[0].last_updated;this.forEach(function(b){if(b.last_updated<a)a=b.last_updated});return new Date(a)};
function trArr(a){trArrParseQuery=function(a){var b={};jQuery.each(("string"===typeof a?a:window.location.search).match(/^\??(.*)$/)[1].split("&"),function(a,c){var c=unescape(c).replace(/\+/g," ").replace(/\]/g,""),c=c.split("="),d=c[0].split("["),k=c[1],m=d.length;1==m&&(void 0==b[d[0]]&&(b[d[0]]={}),b[d[0]][k]=!0);2==m&&(void 0==b[d[0]]&&(b[d[0]]={}),void 0==b[d[0]][d[1]]&&(b[d[0]][d[1]]={}),b[d[0]][d[1]][k]=!0);3==m&&(void 0==b[d[0]]&&(b[d[0]]={}),void 0==b[d[0]][d[1]]&&(b[d[0]][d[1]]={}),void 0==
b[d[0]][d[1]][d[2]]&&(b[d[0]][d[1]][d[2]]={}),b[d[0]][d[1]][d[2]][k]=!0)});return b};if(!(this instanceof trArr))return new trArr(a);0==jQuery("#arrivals_display_area").length&&jQuery("body").prepend('<div id="arrivals_display_area"></div>');0==jQuery("#arrivals_log_area").length&&jQuery("body").prepend('<div id="arrivals_log_area"></div>');this.version="1.01";this.start_time=(new Date).getTime();this.input_params=a;this.configString=this.input_params.configString;this.query_params=trArrParseQuery(this.configString);
this.options={};for(var b in this.query_params.option){var a=[],c;for(c in this.query_params.option[b])a.push(c);this.options[b]=a}this.appl={};for(b in this.query_params.appl){a=[];for(c in this.query_params.appl[b])a.push(c);this.appl[b]=a}timezone=void 0!=this.appl.timezone?this.appl.timezone[0]:"America/Los_Angeles";this.id=void 0;if(void 0!=this.appl&&void 0!=this.appl.id&&void 0!=this.appl.id[0])this.id=this.appl.id[0];this.ready=new jQuery.Deferred;this.is_ready=function(){return this.ready};
this.updaters=function(){return this.updater_array};this.update_health_status=function(a){jQuery.ajax({url:"http://transitappliance.com/cgi-bin/health_update.pl",data:{timestamp:(new Date).getTime(),start_time:a.start_time,version:a.version,id:a.id}});setTimeout(a.update_health_status(a),432E5)};this.processAgencyRequests=function(a,b,c){var g=b.replace("-","");jQuery.when(jQuery.ajax({url:"assets/js/trArrAgency"+g+".js",dataType:"script",async:!1,success:function(){trArrLog("Processing requests for "+
b+"<br>");window["trArrAgency"+g+"MakeServiceRequests"](a.query_params.stop[b],a.query_params.options,trStopCache(),a.service_requests)},error:function(){trArrLog("<font color='red'>Error processing requests for "+b+", reloading page</font><br>");window.location.reload()}})).done(function(){var b=a.nextServiceRequestAgency(a);void 0==b?c(a):a.processAgencyRequests(a,b,c)}).fail(function(){var b=a.nextServiceRequestAgency(a);void 0==b?c(a):a.processAgencyRequests(a,b,c)})};this.nextServiceRequestAgency=
function(a){for(var b in a.query_params.stop)if(void 0==a.service_request_agencies_pending[b])return a.service_request_agencies_pending[b]=!0,b};this.nextUpdaterRequest=function(a){for(var b in a.service_requests)if(void 0==a.updater_creation_pending[b])return a.updater_creation_pending[b]=!0,b};this.createUpdaterObjects=function(a,b,c){jQuery.when(jQuery.ajax({url:"assets/js/trArrService"+b+".js",dataType:"script",async:!1,success:function(){trArrLog("Creating updaters for "+b+"<br>");window["trArrService"+
b+"CreateUpdaters"](a,a.service_requests[b],a.updater_array)},error:function(){trArrLog("<font color='red'>Error creating updaters for "+b+", reloading page</font><br>");window.location.reload()}})).done(function(){var b=a.nextUpdaterRequest(a);void 0==b?c(a):a.createUpdaterObjects(a,b,c)}).fail(function(){var b=a.nextUpdaterRequest(a);void 0==b?c(a):a.createUpdaterObjects(a,b,c)})};this.mergeArrivals=function(){for(var a=new Date,a=a.getTime(),b=new arrivalsQueue,c=0;c<this.updater_array.length;c++)for(var g=
this.updater_array[c].arrivals(),j=0;j<g.length;j++)0<=g[j].arrivalTime-a&&b.push(g[j]);b.sort(function(a,b){return a.arrivalTime-b.arrivalTime});if(void 0!=this.options.arrivals_limit_number&&""!=this.options.arrivals_limit_number&&0!=this.options.arrivals_limit_number&&this.options.arrivals_limit_number<b.length)b.length=this.options.arrivals_limit_number;void 0!=this.options.arrivals_limit_minutes&&""!=this.options.arrivals_limit_minutes&&0!=this.options.arrivals_limit_minutes&&(b=this.filter_queue_minutes(b,
this.options.arrivals_limit_minutes));return b};this.mergeMessages=function(){for(var a=[],b=0;b<this.updater_array.length;b++)for(var c=this.updater_array[b].messages(),g=0;g<c.length;g++)a.push(c[g]);return a};this.mergeConnectionHealth=function(){for(var a=[],b=(new Date).getTime(),c=0,g=0,j=0;j<this.updater_array.length;j++)for(var k=this.updater_array[j].connection(),m=0;m<k.length;m++){var s=1E6/Math.pow(b-k[m].timestamp,1.05),c=c+s;k[m].success&&(g+=s);a.push(k[m])}return Math.floor(1E3*g/
c)/1E3};this.filter_queue_minutes=function(a,b){for(var c=new Date,c=c.getTime(),g=[],j=0;j<a.length;j++)a[j].arrivalTime-c<=6E4*b&&g.push(a[j]);return g};trAgencyCache().checkCached(this,this.query_params.stop,function(a){trStopCache().checkCached(a,a.query_params.stop,function(a){a.service_requests={};a.updater_array=[];a.service_request_agencies_pending={};a.updater_creation_pending={};for(var b in a.query_params.stop)a.service_request_agencies_pending[b]=void 0;b=a.nextServiceRequestAgency(a);
void 0!=b&&a.processAgencyRequests(a,b,function(a){trArrLog("Request processing complete.<br><br>");trArrLog("Create arrivals updater objects<br>");for(var b in a.service_requests)a.updater_creation_pending[b]=void 0;b=a.nextUpdaterRequest(a);a.createUpdaterObjects(a,b,function(a){trArrLog("<br>Wait 10 seconds for first set of arrivals<br><br>");setTimeout(function(){var b=0;jQuery("#arrivals_log_area").css("display","none");jQuery(document).scrollTop(0);jQuery.ajax({url:"http://transitappliance.com/cgi-bin/health_update.pl",
data:{timestamp:a.start_time,start_time:a.start_time,version:a.version,id:a.id,application_id:a.input_params.applicationId,application_name:a.input_params.applicationName,application_version:a.input_params.applicationVersion}});setInterval(function(){jQuery.ajax({url:"http://transitappliance.com/cgi-bin/health_update.pl",data:{timestamp:(new Date).getTime(),start_time:a.start_time,version:a.version,id:a.id,application_id:a.input_params.applicationId,application_name:a.input_params.applicationName,
application_version:a.input_params.applicationVersion}})},432E5);void 0!=a.input_params.initializeCallback&&a.input_params.initializeCallback({arrivalsQueue:a.mergeArrivals(),displayCallCount:b,optionsConfig:a.options,applianceConfig:a.appl,stopsConfig:a.query_params.stop,agencyCache:trAgencyCache(),serviceMessages:a.mergeMessages(),connectionHealth:a.mergeConnectionHealth()});updateQueueNextTime=a.input_params.displayCallback({arrivalsQueue:a.mergeArrivals(),displayCallCount:b,optionsConfig:a.options,
applianceConfig:a.appl,stopsConfig:a.query_params.stop,agencyCache:trAgencyCache(),serviceMessages:a.mergeMessages(),connectionHealth:a.mergeConnectionHealth()});var c=void 0,c=void 0!=a.options.refresh_interval?1E3*a.options.refresh_interval:a.input_params.displayInterval;setInterval(function(){b++;updateQueueNextTime=a.input_params.displayCallback({arrivalsQueue:a.mergeArrivals(),displayCallCount:b,optionsConfig:a.options,applianceConfig:a.appl,stopsConfig:a.query_params.stop,agencyCache:trAgencyCache(),
serviceMessages:a.mergeMessages(),connectionHealth:a.mergeConnectionHealth()})},c)},1E4)})})})})};(function(a){a.fn.textfill=function(b){var c=jQuery.extend({maxFontPixels:256,innerTag:"span"},b);return this.each(function(){var b=c.maxFontPixels,e=a(c.innerTag+":visible:first",this),f=a(this).height(),g=a(this).width(),j,k;do e.css("font-size",b),j=e.height(),k=e.width(),b-=1;while((j>f||k>g)&&3<b)})}})(jQuery);$(document).ready(function(){$(".jtextfill").textfill({maxFontPixels:36,innerTag:"h1"})});Proj4js={defaultDatum:"WGS84",transform:function(a,b,c){if(!a.readyToUse)return this.reportError("Proj4js initialization for:"+a.srsCode+" not yet complete"),c;if(!b.readyToUse)return this.reportError("Proj4js initialization for:"+b.srsCode+" not yet complete"),c;if("900913"==a.srsProjNumber&&"WGS84"!=b.datumCode&&!b.datum_params||"900913"==b.srsProjNumber&&"WGS84"!=a.datumCode&&!a.datum_params){var d=Proj4js.WGS84;this.transform(a,d,c);a=d}"enu"!=a.axis&&this.adjust_axis(a,!1,c);"longlat"==a.projName?
(c.x*=Proj4js.common.D2R,c.y*=Proj4js.common.D2R):(a.to_meter&&(c.x*=a.to_meter,c.y*=a.to_meter),a.inverse(c));a.from_greenwich&&(c.x+=a.from_greenwich);c=this.datum_transform(a.datum,b.datum,c);b.from_greenwich&&(c.x-=b.from_greenwich);"longlat"==b.projName?(c.x*=Proj4js.common.R2D,c.y*=Proj4js.common.R2D):(b.forward(c),b.to_meter&&(c.x/=b.to_meter,c.y/=b.to_meter));"enu"!=b.axis&&this.adjust_axis(b,!0,c);return c},datum_transform:function(a,b,c){if(a.compare_datums(b)||a.datum_type==Proj4js.common.PJD_NODATUM||
b.datum_type==Proj4js.common.PJD_NODATUM)return c;if(a.es!=b.es||a.a!=b.a||a.datum_type==Proj4js.common.PJD_3PARAM||a.datum_type==Proj4js.common.PJD_7PARAM||b.datum_type==Proj4js.common.PJD_3PARAM||b.datum_type==Proj4js.common.PJD_7PARAM)a.geodetic_to_geocentric(c),(a.datum_type==Proj4js.common.PJD_3PARAM||a.datum_type==Proj4js.common.PJD_7PARAM)&&a.geocentric_to_wgs84(c),(b.datum_type==Proj4js.common.PJD_3PARAM||b.datum_type==Proj4js.common.PJD_7PARAM)&&b.geocentric_from_wgs84(c),b.geocentric_to_geodetic(c);
return c},adjust_axis:function(a,b,c){for(var d=c.x,e=c.y,f=c.z||0,g,j,k=0;3>k;k++)if(!b||!(2==k&&void 0===c.z))switch(0==k?(g=d,j="x"):1==k?(g=e,j="y"):(g=f,j="z"),a.axis[k]){case "e":c[j]=g;break;case "w":c[j]=-g;break;case "n":c[j]=g;break;case "s":c[j]=-g;break;case "u":if(void 0!==c[j])c.z=g;break;case "d":if(void 0!==c[j])c.z=-g;break;default:return alert("ERROR: unknow axis ("+a.axis[k]+") - check definition of "+a.projName),null}return c},reportError:function(){},extend:function(a,b){a=a||
{};if(b)for(var c in b){var d=b[c];void 0!==d&&(a[c]=d)}return a},Class:function(){for(var a=function(){this.initialize.apply(this,arguments)},b={},c,d=0;d<arguments.length;++d)c="function"==typeof arguments[d]?arguments[d].prototype:arguments[d],Proj4js.extend(b,c);a.prototype=b;return a},bind:function(a,b){var c=Array.prototype.slice.apply(arguments,[2]);return function(){var d=c.concat(Array.prototype.slice.apply(arguments,[0]));return a.apply(b,d)}},scriptName:"proj4js-compressed.js",defsLookupService:"http://spatialreference.org/ref",
libPath:null,getScriptLocation:function(){if(this.libPath)return this.libPath;for(var a=this.scriptName,b=a.length,c=document.getElementsByTagName("script"),d=0;d<c.length;d++){var e=c[d].getAttribute("src");if(e){var f=e.lastIndexOf(a);if(-1<f&&f+b==e.length){this.libPath=e.slice(0,-b);break}}}return this.libPath||""},loadScript:function(a,b,c,d){var e=document.createElement("script");e.defer=!1;e.type="text/javascript";e.id=a;e.src=a;e.onload=b;e.onerror=c;e.loadCheck=d;if(/MSIE/.test(navigator.userAgent))e.onreadystatechange=
this.checkReadyState;document.getElementsByTagName("head")[0].appendChild(e)},checkReadyState:function(){if("loaded"==this.readyState)if(this.loadCheck())this.onload();else this.onerror()}};
Proj4js.Proj=Proj4js.Class({readyToUse:!1,title:null,projName:null,units:null,datum:null,x0:0,y0:0,localCS:!1,queue:null,initialize:function(a,b){this.srsCodeInput=a;this.queue=[];b&&this.queue.push(b);if(0<=a.indexOf("GEOGCS")||0<=a.indexOf("GEOCCS")||0<=a.indexOf("PROJCS")||0<=a.indexOf("LOCAL_CS"))this.parseWKT(a),this.deriveConstants(),this.loadProjCode(this.projName);else{if(0==a.indexOf("urn:")){var c=a.split(":");if(("ogc"==c[1]||"x-ogc"==c[1])&&"def"==c[2]&&"crs"==c[3])a=c[4]+":"+c[c.length-
1]}else 0==a.indexOf("http://")&&(c=a.split("#"),c[0].match(/epsg.org/)?a="EPSG:"+c[1]:c[0].match(/RIG.xml/)&&(a="IGNF:"+c[1]));this.srsCode=a.toUpperCase();0==this.srsCode.indexOf("EPSG")?(this.srsCode=this.srsCode,this.srsAuth="epsg",this.srsProjNumber=this.srsCode.substring(5)):0==this.srsCode.indexOf("IGNF")?(this.srsCode=this.srsCode,this.srsAuth="IGNF",this.srsProjNumber=this.srsCode.substring(5)):0==this.srsCode.indexOf("CRS")?(this.srsCode=this.srsCode,this.srsAuth="CRS",this.srsProjNumber=
this.srsCode.substring(4)):(this.srsAuth="",this.srsProjNumber=this.srsCode);this.loadProjDefinition()}},loadProjDefinition:function(){if(Proj4js.defs[this.srsCode])this.defsLoaded();else{var a=Proj4js.getScriptLocation()+"defs/"+this.srsAuth.toUpperCase()+this.srsProjNumber+".js";Proj4js.loadScript(a,Proj4js.bind(this.defsLoaded,this),Proj4js.bind(this.loadFromService,this),Proj4js.bind(this.checkDefsLoaded,this))}},loadFromService:function(){Proj4js.loadScript(Proj4js.defsLookupService+"/"+this.srsAuth+
"/"+this.srsProjNumber+"/proj4js/",Proj4js.bind(this.defsLoaded,this),Proj4js.bind(this.defsFailed,this),Proj4js.bind(this.checkDefsLoaded,this))},defsLoaded:function(){this.parseDefs();this.loadProjCode(this.projName)},checkDefsLoaded:function(){return Proj4js.defs[this.srsCode]?!0:!1},defsFailed:function(){Proj4js.reportError("failed to load projection definition for: "+this.srsCode);Proj4js.defs[this.srsCode]=Proj4js.defs.WGS84;this.defsLoaded()},loadProjCode:function(a){if(Proj4js.Proj[a])this.initTransforms();
else{var b=Proj4js.getScriptLocation()+"projCode/"+a+".js";Proj4js.loadScript(b,Proj4js.bind(this.loadProjCodeSuccess,this,a),Proj4js.bind(this.loadProjCodeFailure,this,a),Proj4js.bind(this.checkCodeLoaded,this,a))}},loadProjCodeSuccess:function(a){Proj4js.Proj[a].dependsOn?this.loadProjCode(Proj4js.Proj[a].dependsOn):this.initTransforms()},loadProjCodeFailure:function(a){Proj4js.reportError("failed to find projection file for: "+a)},checkCodeLoaded:function(a){return Proj4js.Proj[a]?!0:!1},initTransforms:function(){Proj4js.extend(this,
Proj4js.Proj[this.projName]);this.init();this.readyToUse=!0;if(this.queue)for(var a;a=this.queue.shift();)a.call(this,this)},wktRE:/^(\w+)\[(.*)\]$/,parseWKT:function(a){if(a=a.match(this.wktRE)){var b=a[1],c=a[2].split(","),d;d="TOWGS84"==b.toUpperCase()?b:c.shift();d=d.replace(/^\"/,"");d=d.replace(/\"$/,"");for(var a=[],e=0,f="",g=0;g<c.length;++g){for(var j=c[g],k=0;k<j.length;++k)"["==j.charAt(k)&&++e,"]"==j.charAt(k)&&--e;f+=j;0===e?(a.push(f),f=""):f+=","}switch(b){case "LOCAL_CS":this.projName=
"identity";this.localCS=!0;this.srsCode=d;break;case "GEOGCS":this.projName="longlat";this.geocsCode=d;if(!this.srsCode)this.srsCode=d;break;case "PROJCS":this.srsCode=d;break;case "PROJECTION":this.projName=Proj4js.wktProjections[d];break;case "DATUM":this.datumName=d;break;case "LOCAL_DATUM":this.datumCode="none";break;case "SPHEROID":this.ellps=d;this.a=parseFloat(a.shift());this.rf=parseFloat(a.shift());break;case "PRIMEM":this.from_greenwich=parseFloat(a.shift());break;case "UNIT":this.units=
d;this.unitsPerMeter=parseFloat(a.shift());break;case "PARAMETER":b=d.toLowerCase();c=parseFloat(a.shift());switch(b){case "false_easting":this.x0=c;break;case "false_northing":this.y0=c;break;case "scale_factor":this.k0=c;break;case "central_meridian":this.long0=c*Proj4js.common.D2R;break;case "latitude_of_origin":this.lat0=c*Proj4js.common.D2R}break;case "TOWGS84":this.datum_params=a;break;case "AXIS":b=d.toLowerCase();c=a.shift();switch(c){case "EAST":c="e";break;case "WEST":c="w";break;case "NORTH":c=
"n";break;case "SOUTH":c="s";break;case "UP":c="u";break;case "DOWN":c="d";break;default:c=" "}if(!this.axis)this.axis="enu";switch(b){case "X":this.axis=c+this.axis.substr(1,2);break;case "Y":this.axis=this.axis.substr(0,1)+c+this.axis.substr(2,1);break;case "Z":this.axis=this.axis.substr(0,2)+c}}for(g=0;g<a.length;++g)this.parseWKT(a[g])}},parseDefs:function(){this.defData=Proj4js.defs[this.srsCode];var a,b;if(this.defData){for(var c=this.defData.split("+"),d=0;d<c.length;d++)switch(b=c[d].split("="),
a=b[0].toLowerCase(),b=b[1],a.replace(/\s/gi,"")){case "title":this.title=b;break;case "proj":this.projName=b.replace(/\s/gi,"");break;case "units":this.units=b.replace(/\s/gi,"");break;case "datum":this.datumCode=b.replace(/\s/gi,"");break;case "nadgrids":this.nagrids=b.replace(/\s/gi,"");break;case "ellps":this.ellps=b.replace(/\s/gi,"");break;case "a":this.a=parseFloat(b);break;case "b":this.b=parseFloat(b);break;case "rf":this.rf=parseFloat(b);break;case "lat_0":this.lat0=b*Proj4js.common.D2R;
break;case "lat_1":this.lat1=b*Proj4js.common.D2R;break;case "lat_2":this.lat2=b*Proj4js.common.D2R;break;case "lat_ts":this.lat_ts=b*Proj4js.common.D2R;break;case "lon_0":this.long0=b*Proj4js.common.D2R;break;case "alpha":this.alpha=parseFloat(b)*Proj4js.common.D2R;break;case "lonc":this.longc=b*Proj4js.common.D2R;break;case "x_0":this.x0=parseFloat(b);break;case "y_0":this.y0=parseFloat(b);break;case "k_0":this.k0=parseFloat(b);break;case "k":this.k0=parseFloat(b);break;case "r_a":this.R_A=!0;break;
case "zone":this.zone=parseInt(b);break;case "south":this.utmSouth=!0;break;case "towgs84":this.datum_params=b.split(",");break;case "to_meter":this.to_meter=parseFloat(b);break;case "from_greenwich":this.from_greenwich=b*Proj4js.common.D2R;break;case "pm":b=b.replace(/\s/gi,"");this.from_greenwich=Proj4js.PrimeMeridian[b]?Proj4js.PrimeMeridian[b]:parseFloat(b);this.from_greenwich*=Proj4js.common.D2R;break;case "axis":if(b=b.replace(/\s/gi,""),3==b.length&&-1!="ewnsud".indexOf(b.substr(0,1))&&-1!=
"ewnsud".indexOf(b.substr(1,1))&&-1!="ewnsud".indexOf(b.substr(2,1)))this.axis=b}this.deriveConstants()}},deriveConstants:function(){if("@null"==this.nagrids)this.datumCode="none";if(this.datumCode&&"none"!=this.datumCode){var a=Proj4js.Datum[this.datumCode];if(a)this.datum_params=a.towgs84?a.towgs84.split(","):null,this.ellps=a.ellipse,this.datumName=a.datumName?a.datumName:this.datumCode}this.a||Proj4js.extend(this,Proj4js.Ellipsoid[this.ellps]?Proj4js.Ellipsoid[this.ellps]:Proj4js.Ellipsoid.WGS84);
if(this.rf&&!this.b)this.b=(1-1/this.rf)*this.a;if(Math.abs(this.a-this.b)<Proj4js.common.EPSLN)this.sphere=!0,this.b=this.a;this.a2=this.a*this.a;this.b2=this.b*this.b;this.es=(this.a2-this.b2)/this.a2;this.e=Math.sqrt(this.es);if(this.R_A)this.a*=1-this.es*(Proj4js.common.SIXTH+this.es*(Proj4js.common.RA4+this.es*Proj4js.common.RA6)),this.a2=this.a*this.a,this.b2=this.b*this.b,this.es=0;this.ep2=(this.a2-this.b2)/this.b2;if(!this.k0)this.k0=1;if(!this.axis)this.axis="enu";this.datum=new Proj4js.datum(this)}});
Proj4js.Proj.longlat={init:function(){},forward:function(a){return a},inverse:function(a){return a}};Proj4js.Proj.identity=Proj4js.Proj.longlat;Proj4js.defs={WGS84:"+title=long/lat:WGS84 +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees","EPSG:4326":"+title=long/lat:WGS84 +proj=longlat +a=6378137.0 +b=6356752.31424518 +ellps=WGS84 +datum=WGS84 +units=degrees","EPSG:4269":"+title=long/lat:NAD83 +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees","EPSG:3785":"+title= Google Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"};
Proj4js.defs.GOOGLE=Proj4js.defs["EPSG:3785"];Proj4js.defs["EPSG:900913"]=Proj4js.defs["EPSG:3785"];Proj4js.defs["EPSG:102113"]=Proj4js.defs["EPSG:3785"];
Proj4js.common={PI:3.141592653589793,HALF_PI:1.5707963267948966,TWO_PI:6.283185307179586,FORTPI:0.7853981633974483,R2D:57.29577951308232,D2R:0.017453292519943295,SEC_TO_RAD:4.84813681109536E-6,EPSLN:1.0E-10,MAX_ITER:20,COS_67P5:0.3826834323650898,AD_C:1.0026,PJD_UNKNOWN:0,PJD_3PARAM:1,PJD_7PARAM:2,PJD_GRIDSHIFT:3,PJD_WGS84:4,PJD_NODATUM:5,SRS_WGS84_SEMIMAJOR:6378137,SIXTH:0.16666666666666666,RA4:0.04722222222222222,RA6:0.022156084656084655,RV4:0.06944444444444445,RV6:0.04243827160493827,msfnz:function(a,
b,c){a*=b;return c/Math.sqrt(1-a*a)},tsfnz:function(a,b,c){c*=a;c=Math.pow((1-c)/(1+c),0.5*a);return Math.tan(0.5*(this.HALF_PI-b))/c},phi2z:function(a,b){for(var c=0.5*a,d,e=this.HALF_PI-2*Math.atan(b),f=0;15>=f;f++)if(d=a*Math.sin(e),d=this.HALF_PI-2*Math.atan(b*Math.pow((1-d)/(1+d),c))-e,e+=d,1.0E-10>=Math.abs(d))return e;alert("phi2z has NoConvergence");return-9999},qsfnz:function(a,b){var c;return 1.0E-7<a?(c=a*b,(1-a*a)*(b/(1-c*c)-0.5/a*Math.log((1-c)/(1+c)))):2*b},asinz:function(a){1<Math.abs(a)&&
(a=1<a?1:-1);return Math.asin(a)},e0fn:function(a){return 1-0.25*a*(1+a/16*(3+1.25*a))},e1fn:function(a){return 0.375*a*(1+0.25*a*(1+0.46875*a))},e2fn:function(a){return 0.05859375*a*a*(1+0.75*a)},e3fn:function(a){return a*a*a*(35/3072)},mlfn:function(a,b,c,d,e){return a*e-b*Math.sin(2*e)+c*Math.sin(4*e)-d*Math.sin(6*e)},srat:function(a,b){return Math.pow((1-a)/(1+a),b)},sign:function(a){return 0>a?-1:1},adjust_lon:function(a){return a=Math.abs(a)<this.PI?a:a-this.sign(a)*this.TWO_PI},adjust_lat:function(a){return a=
Math.abs(a)<this.HALF_PI?a:a-this.sign(a)*this.PI},latiso:function(a,b,c){if(Math.abs(b)>this.HALF_PI)return+Number.NaN;if(b==this.HALF_PI)return Number.POSITIVE_INFINITY;if(b==-1*this.HALF_PI)return-1*Number.POSITIVE_INFINITY;c*=a;return Math.log(Math.tan((this.HALF_PI+b)/2))+a*Math.log((1-c)/(1+c))/2},fL:function(a,b){return 2*Math.atan(a*Math.exp(b))-this.HALF_PI},invlatiso:function(a,b){var c=this.fL(1,b),d=0,e=0;do d=c,e=a*Math.sin(d),c=this.fL(Math.exp(a*Math.log((1+e)/(1-e))/2),b);while(1.0E-12<
Math.abs(c-d));return c},sinh:function(a){a=Math.exp(a);return(a-1/a)/2},cosh:function(a){a=Math.exp(a);return(a+1/a)/2},tanh:function(a){a=Math.exp(a);return(a-1/a)/(a+1/a)},asinh:function(a){return(0<=a?1:-1)*Math.log(Math.abs(a)+Math.sqrt(a*a+1))},acosh:function(a){return 2*Math.log(Math.sqrt((a+1)/2)+Math.sqrt((a-1)/2))},atanh:function(a){return Math.log((a-1)/(a+1))/2},gN:function(a,b,c){b*=c;return a/Math.sqrt(1-b*b)}};
Proj4js.datum=Proj4js.Class({initialize:function(a){this.datum_type=Proj4js.common.PJD_WGS84;if(a.datumCode&&"none"==a.datumCode)this.datum_type=Proj4js.common.PJD_NODATUM;if(a&&a.datum_params){for(var b=0;b<a.datum_params.length;b++)a.datum_params[b]=parseFloat(a.datum_params[b]);if(0!=a.datum_params[0]||0!=a.datum_params[1]||0!=a.datum_params[2])this.datum_type=Proj4js.common.PJD_3PARAM;if(3<a.datum_params.length&&(0!=a.datum_params[3]||0!=a.datum_params[4]||0!=a.datum_params[5]||0!=a.datum_params[6]))this.datum_type=
Proj4js.common.PJD_7PARAM,a.datum_params[3]*=Proj4js.common.SEC_TO_RAD,a.datum_params[4]*=Proj4js.common.SEC_TO_RAD,a.datum_params[5]*=Proj4js.common.SEC_TO_RAD,a.datum_params[6]=a.datum_params[6]/1E6+1}if(a)this.a=a.a,this.b=a.b,this.es=a.es,this.ep2=a.ep2,this.datum_params=a.datum_params},compare_datums:function(a){if(this.datum_type!=a.datum_type||this.a!=a.a||5.0E-11<Math.abs(this.es-a.es))return!1;if(this.datum_type==Proj4js.common.PJD_3PARAM)return this.datum_params[0]==a.datum_params[0]&&this.datum_params[1]==
a.datum_params[1]&&this.datum_params[2]==a.datum_params[2];if(this.datum_type==Proj4js.common.PJD_7PARAM)return this.datum_params[0]==a.datum_params[0]&&this.datum_params[1]==a.datum_params[1]&&this.datum_params[2]==a.datum_params[2]&&this.datum_params[3]==a.datum_params[3]&&this.datum_params[4]==a.datum_params[4]&&this.datum_params[5]==a.datum_params[5]&&this.datum_params[6]==a.datum_params[6];return this.datum_type==Proj4js.common.PJD_GRIDSHIFT||a.datum_type==Proj4js.common.PJD_GRIDSHIFT?(alert("ERROR: Grid shift transformations are not implemented."),
!1):!0},geodetic_to_geocentric:function(a){var b=a.x,c=a.y,d=a.z?a.z:0,e,f,g;if(c<-Proj4js.common.HALF_PI&&c>-1.001*Proj4js.common.HALF_PI)c=-Proj4js.common.HALF_PI;else if(c>Proj4js.common.HALF_PI&&c<1.001*Proj4js.common.HALF_PI)c=Proj4js.common.HALF_PI;else if(c<-Proj4js.common.HALF_PI||c>Proj4js.common.HALF_PI)return Proj4js.reportError("geocent:lat out of range:"+c),null;b>Proj4js.common.PI&&(b-=2*Proj4js.common.PI);f=Math.sin(c);g=Math.cos(c);e=this.a/Math.sqrt(1-this.es*f*f);c=(e+d)*g*Math.cos(b);
b=(e+d)*g*Math.sin(b);d=(e*(1-this.es)+d)*f;a.x=c;a.y=b;a.z=d;return 0},geocentric_to_geodetic:function(a){var b,c,d,e,f,g,j,k,m,s,n=a.x;d=a.y;var q=a.z?a.z:0;b=Math.sqrt(n*n+d*d);c=Math.sqrt(n*n+d*d+q*q);if(1.0E-12>b/this.a){if(n=0,1.0E-12>c/this.a)return}else n=Math.atan2(d,n);d=q/c;e=b/c;f=1/Math.sqrt(1-this.es*(2-this.es)*e*e);j=e*(1-this.es)*f;k=d*f;s=0;do s++,g=this.a/Math.sqrt(1-this.es*k*k),c=b*j+q*k-g*(1-this.es*k*k),g=this.es*g/(g+c),f=1/Math.sqrt(1-g*(2-g)*e*e),g=e*(1-g)*f,f*=d,m=f*j-g*
k,j=g,k=f;while(1.0E-24<m*m&&30>s);b=Math.atan(f/Math.abs(g));a.x=n;a.y=b;a.z=c;return a},geocentric_to_geodetic_noniter:function(a){var b=a.x,c=a.y,d=a.z?a.z:0,e,f,g,j,k,b=parseFloat(b),c=parseFloat(c),d=parseFloat(d);k=!1;if(0!=b)e=Math.atan2(c,b);else if(0<c)e=Proj4js.common.HALF_PI;else if(0>c)e=-Proj4js.common.HALF_PI;else if(k=!0,e=0,0<d)f=Proj4js.common.HALF_PI;else if(0>d)f=-Proj4js.common.HALF_PI;else return;g=b*b+c*c;b=Math.sqrt(g);c=d*Proj4js.common.AD_C;g=Math.sqrt(c*c+g);c/=g;g=b/g;c=
d+this.b*this.ep2*c*c*c;j=b-this.a*this.es*g*g*g;g=Math.sqrt(c*c+j*j);c/=g;g=j/g;j=this.a/Math.sqrt(1-this.es*c*c);d=g>=Proj4js.common.COS_67P5?b/g-j:g<=-Proj4js.common.COS_67P5?b/-g-j:d/c+j*(this.es-1);!1==k&&(f=Math.atan(c/g));a.x=e;a.y=f;a.z=d;return a},geocentric_to_wgs84:function(a){if(this.datum_type==Proj4js.common.PJD_3PARAM)a.x+=this.datum_params[0],a.y+=this.datum_params[1],a.z+=this.datum_params[2];else if(this.datum_type==Proj4js.common.PJD_7PARAM){var b=this.datum_params[3],c=this.datum_params[4],
d=this.datum_params[5],e=this.datum_params[6],f=e*(d*a.x+a.y-b*a.z)+this.datum_params[1],b=e*(-c*a.x+b*a.y+a.z)+this.datum_params[2];a.x=e*(a.x-d*a.y+c*a.z)+this.datum_params[0];a.y=f;a.z=b}},geocentric_from_wgs84:function(a){if(this.datum_type==Proj4js.common.PJD_3PARAM)a.x-=this.datum_params[0],a.y-=this.datum_params[1],a.z-=this.datum_params[2];else if(this.datum_type==Proj4js.common.PJD_7PARAM){var b=this.datum_params[3],c=this.datum_params[4],d=this.datum_params[5],e=this.datum_params[6],f=(a.x-
this.datum_params[0])/e,g=(a.y-this.datum_params[1])/e,e=(a.z-this.datum_params[2])/e;a.x=f+d*g-c*e;a.y=-d*f+g+b*e;a.z=c*f-b*g+e}}});
Proj4js.Point=Proj4js.Class({initialize:function(a,b,c){"object"==typeof a?(this.x=a[0],this.y=a[1],this.z=a[2]||0):"string"==typeof a&&"undefined"==typeof b?(a=a.split(","),this.x=parseFloat(a[0]),this.y=parseFloat(a[1]),this.z=parseFloat(a[2])||0):(this.x=a,this.y=b,this.z=c||0)},clone:function(){return new Proj4js.Point(this.x,this.y,this.z)},toString:function(){return"x="+this.x+",y="+this.y},toShortString:function(){return this.x+", "+this.y}});
Proj4js.PrimeMeridian={greenwich:0,lisbon:-9.131906111111,paris:2.337229166667,bogota:-74.080916666667,madrid:-3.687938888889,rome:12.452333333333,bern:7.439583333333,jakarta:106.807719444444,ferro:-17.666666666667,brussels:4.367975,stockholm:18.058277777778,athens:23.7163375,oslo:10.722916666667};
Proj4js.Ellipsoid={MERIT:{a:6378137,rf:298.257,ellipseName:"MERIT 1983"},SGS85:{a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},GRS80:{a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},IAU76:{a:6378140,rf:298.257,ellipseName:"IAU 1976"},airy:{a:6377563.396,b:6356256.91,ellipseName:"Airy 1830"},"APL4.":{a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},NWL9D:{a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},mod_airy:{a:6377340.189,b:6356034.446,ellipseName:"Modified Airy"},
andrae:{a:6377104.43,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},aust_SA:{a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},GRS67:{a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},bessel:{a:6377397.155,rf:299.1528128,ellipseName:"Bessel 1841"},bess_nam:{a:6377483.865,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},clrk66:{a:6378206.4,b:6356583.8,ellipseName:"Clarke 1866"},clrk80:{a:6378249.145,rf:293.4663,ellipseName:"Clarke 1880 mod."},CPM:{a:6375738.7,rf:334.29,
ellipseName:"Comm. des Poids et Mesures 1799"},delmbr:{a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},engelis:{a:6378136.05,rf:298.2566,ellipseName:"Engelis 1985"},evrst30:{a:6377276.345,rf:300.8017,ellipseName:"Everest 1830"},evrst48:{a:6377304.063,rf:300.8017,ellipseName:"Everest 1948"},evrst56:{a:6377301.243,rf:300.8017,ellipseName:"Everest 1956"},evrst69:{a:6377295.664,rf:300.8017,ellipseName:"Everest 1969"},evrstSS:{a:6377298.556,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},
fschr60:{a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},fschr60m:{a:6378155,rf:298.3,ellipseName:"Fischer 1960"},fschr68:{a:6378150,rf:298.3,ellipseName:"Fischer 1968"},helmert:{a:6378200,rf:298.3,ellipseName:"Helmert 1906"},hough:{a:6378270,rf:297,ellipseName:"Hough"},intl:{a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},kaula:{a:6378163,rf:298.24,ellipseName:"Kaula 1961"},lerch:{a:6378139,rf:298.257,ellipseName:"Lerch 1979"},mprts:{a:6397300,rf:191,ellipseName:"Maupertius 1738"},
new_intl:{a:6378157.5,b:6356772.2,ellipseName:"New International 1967"},plessis:{a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},krass:{a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},SEasia:{a:6378155,b:6356773.3205,ellipseName:"Southeast Asia"},walbeck:{a:6376896,b:6355834.8467,ellipseName:"Walbeck"},WGS60:{a:6378165,rf:298.3,ellipseName:"WGS 60"},WGS66:{a:6378145,rf:298.25,ellipseName:"WGS 66"},WGS72:{a:6378135,rf:298.26,ellipseName:"WGS 72"},WGS84:{a:6378137,rf:298.257223563,ellipseName:"WGS 84"},
sphere:{a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"}};
Proj4js.Datum={WGS84:{towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},GGRS87:{towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},NAD83:{towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},NAD27:{nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},potsdam:{towgs84:"606.0,23.0,413.0",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},carthage:{towgs84:"-263.0,6.0,431.0",
ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},hermannskogel:{towgs84:"653.0,-212.0,449.0",ellipse:"bessel",datumName:"Hermannskogel"},ire65:{towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},nzgd49:{towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},OSGB36:{towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Airy 1830"}};
Proj4js.WGS84=new Proj4js.Proj("WGS84");Proj4js.Datum.OSB36=Proj4js.Datum.OSGB36;Proj4js.wktProjections={"Lambert Tangential Conformal Conic Projection":"lcc",Mercator:"merc","Popular Visualisation Pseudo Mercator":"merc",Transverse_Mercator:"tmerc","Transverse Mercator":"tmerc","Lambert Azimuthal Equal Area":"laea","Universal Transverse Mercator System":"utm"};
Proj4js.Proj.sterea={dependsOn:"gauss",init:function(){Proj4js.Proj.gauss.init.apply(this);if(this.rc){if(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,!this.title)this.title="Oblique Stereographic Alternative"}else Proj4js.reportError("sterea:init:E_ERROR_0")},forward:function(a){var b,c,d,e;a.x=Proj4js.common.adjust_lon(a.x-this.long0);Proj4js.Proj.gauss.forward.apply(this,[a]);b=Math.sin(a.y);c=Math.cos(a.y);d=Math.cos(a.x);e=this.k0*this.R2/(1+this.sinc0*b+
this.cosc0*c*d);a.x=e*c*Math.sin(a.x);a.y=e*(this.cosc0*b-this.sinc0*c*d);a.x=this.a*a.x+this.x0;a.y=this.a*a.y+this.y0;return a},inverse:function(a){var b,c,d,e;a.x=(a.x-this.x0)/this.a;a.y=(a.y-this.y0)/this.a;a.x/=this.k0;a.y/=this.k0;(e=Math.sqrt(a.x*a.x+a.y*a.y))?(d=2*Math.atan2(e,this.R2),b=Math.sin(d),c=Math.cos(d),d=Math.asin(c*this.sinc0+a.y*b*this.cosc0/e),b=Math.atan2(a.x*b,e*this.cosc0*c-a.y*this.sinc0*b)):(d=this.phic0,b=0);a.x=b;a.y=d;Proj4js.Proj.gauss.inverse.apply(this,[a]);a.x=Proj4js.common.adjust_lon(a.x+
this.long0);return a}};
Proj4js.Proj.aea={init:function(){Math.abs(this.lat1+this.lat2)<Proj4js.common.EPSLN?Proj4js.reportError("aeaInitEqualLatitudes"):(this.temp=this.b/this.a,this.es=1-Math.pow(this.temp,2),this.e3=Math.sqrt(this.es),this.sin_po=Math.sin(this.lat1),this.cos_po=Math.cos(this.lat1),this.con=this.t1=this.sin_po,this.ms1=Proj4js.common.msfnz(this.e3,this.sin_po,this.cos_po),this.qs1=Proj4js.common.qsfnz(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat2),this.cos_po=Math.cos(this.lat2),this.t2=
this.sin_po,this.ms2=Proj4js.common.msfnz(this.e3,this.sin_po,this.cos_po),this.qs2=Proj4js.common.qsfnz(this.e3,this.sin_po,this.cos_po),this.sin_po=Math.sin(this.lat0),this.cos_po=Math.cos(this.lat0),this.t3=this.sin_po,this.qs0=Proj4js.common.qsfnz(this.e3,this.sin_po,this.cos_po),this.ns0=Math.abs(this.lat1-this.lat2)>Proj4js.common.EPSLN?(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/
this.ns0)},forward:function(a){var b=a.x,c=a.y;this.sin_phi=Math.sin(c);this.cos_phi=Math.cos(c);var c=Proj4js.common.qsfnz(this.e3,this.sin_phi,this.cos_phi),c=this.a*Math.sqrt(this.c-this.ns0*c)/this.ns0,d=this.ns0*Proj4js.common.adjust_lon(b-this.long0),b=c*Math.sin(d)+this.x0,c=this.rh-c*Math.cos(d)+this.y0;a.x=b;a.y=c;return a},inverse:function(a){var b,c,d;a.x-=this.x0;a.y=this.rh-a.y+this.y0;0<=this.ns0?(b=Math.sqrt(a.x*a.x+a.y*a.y),c=1):(b=-Math.sqrt(a.x*a.x+a.y*a.y),c=-1);d=0;0!=b&&(d=Math.atan2(c*
a.x,c*a.y));c=b*this.ns0/this.a;b=(this.c-c*c)/this.ns0;1.0E-10<=this.e3?(c=1-0.5*(1-this.es)*Math.log((1-this.e3)/(1+this.e3))/this.e3,c=1.0E-10<Math.abs(Math.abs(c)-Math.abs(b))?this.phi1z(this.e3,b):0<=b?0.5*Proj4js.common.PI:-0.5*Proj4js.common.PI):c=this.phi1z(this.e3,b);d=Proj4js.common.adjust_lon(d/this.ns0+this.long0);a.x=d;a.y=c;return a},phi1z:function(a,b){var c,d,e,f,g=Proj4js.common.asinz(0.5*b);if(a<Proj4js.common.EPSLN)return g;for(var j=a*a,k=1;25>=k;k++)if(c=Math.sin(g),d=Math.cos(g),
e=a*c,f=1-e*e,c=0.5*f*f/d*(b/(1-j)-c/f+0.5/a*Math.log((1-e)/(1+e))),g+=c,1.0E-7>=Math.abs(c))return g;Proj4js.reportError("aea:phi1z:Convergence error");return null}};
function phi4z(a,b,c,d,e,f,g,j,k){var m,s,n,q,o,p,k=f;for(p=1;15>=p;p++)if(m=Math.sin(k),n=Math.tan(k),j=n*Math.sqrt(1-a*m*m),s=Math.sin(2*k),q=b*k-c*s+d*Math.sin(4*k)-e*Math.sin(6*k),o=b-2*c*Math.cos(2*k)+4*d*Math.cos(4*k)-6*e*Math.cos(6*k),m=2*q+j*(q*q+g)-2*f*(j*q+1),n=a*s*(q*q+g-2*f*q)/(2*j),j=2*(f-q)*(j*o-2/s)-2*o,m/=n+j,k+=m,1.0E-10>=Math.abs(m))return k;Proj4js.reportError("phi4z: No convergence");return null}function e4fn(a){var b;b=1+a;a=1-a;return Math.sqrt(Math.pow(b,b)*Math.pow(a,a))}
Proj4js.Proj.poly={init:function(){if(0==this.lat0)this.lat0=90;this.temp=this.b/this.a;this.es=1-Math.pow(this.temp,2);this.e=Math.sqrt(this.es);this.e0=Proj4js.common.e0fn(this.es);this.e1=Proj4js.common.e1fn(this.es);this.e2=Proj4js.common.e2fn(this.es);this.e3=Proj4js.common.e3fn(this.es);this.ml0=Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat0)},forward:function(a){var b,c,d,e,f;d=a.y;c=Proj4js.common.adjust_lon(a.x-this.long0);1.0E-7>=Math.abs(d)?(f=this.x0+this.a*c,b=this.y0-
this.a*this.ml0):(b=Math.sin(d),c=Math.cos(d),d=Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,d),e=Proj4js.common.msfnz(this.e,b,c),c=b,f=this.x0+this.a*e*Math.sin(c)/b,b=this.y0+this.a*(d-this.ml0+e*(1-Math.cos(c))/b));a.x=f;a.y=b;return a},inverse:function(a){var b,c;a.x-=this.x0;a.y-=this.y0;b=this.ml0+a.y/this.a;if(1.0E-7>=Math.abs(b))b=a.x/this.a+this.long0,c=0;else{b=b*b+a.x/this.a*(a.x/this.a);b=phi4z(this.es,this.e0,this.e1,this.e2,this.e3,this.al,b,void 0,c);if(1!=b)return b;b=Proj4js.common.adjust_lon(Proj4js.common.asinz(NaN*
a.x/this.a)/Math.sin(c)+this.long0)}a.x=b;a.y=c;return a}};
Proj4js.Proj.equi={init:function(){if(!this.x0)this.x0=0;if(!this.y0)this.y0=0;if(!this.lat0)this.lat0=0;if(!this.long0)this.long0=0},forward:function(a){var b=a.y,c=this.x0+this.a*Proj4js.common.adjust_lon(a.x-this.long0)*Math.cos(this.lat0),b=this.y0+this.a*b;this.t1=c;this.t2=Math.cos(this.lat0);a.x=c;a.y=b;return a},inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=a.y/this.a;Math.abs(b)>Proj4js.common.HALF_PI&&Proj4js.reportError("equi:Inv:DataError");var c=Proj4js.common.adjust_lon(this.long0+
a.x/(this.a*Math.cos(this.lat0)));a.x=c;a.y=b}};
Proj4js.Proj.merc={init:function(){if(this.lat_ts)this.k0=this.sphere?Math.cos(this.lat_ts):Proj4js.common.msfnz(this.es,Math.sin(this.lat_ts),Math.cos(this.lat_ts))},forward:function(a){var b=a.x,c=a.y;if(90<c*Proj4js.common.R2D&&-90>c*Proj4js.common.R2D&&180<b*Proj4js.common.R2D&&-180>b*Proj4js.common.R2D)return Proj4js.reportError("merc:forward: llInputOutOfRange: "+b+" : "+c),null;if(Math.abs(Math.abs(c)-Proj4js.common.HALF_PI)<=Proj4js.common.EPSLN)return Proj4js.reportError("merc:forward: ll2mAtPoles"),null;
if(this.sphere)b=this.x0+this.a*this.k0*Proj4js.common.adjust_lon(b-this.long0),c=this.y0+this.a*this.k0*Math.log(Math.tan(Proj4js.common.FORTPI+0.5*c));else var d=Math.sin(c),c=Proj4js.common.tsfnz(this.e,c,d),b=this.x0+this.a*this.k0*Proj4js.common.adjust_lon(b-this.long0),c=this.y0-this.a*this.k0*Math.log(c);a.x=b;a.y=c;return a},inverse:function(a){var b=a.x-this.x0,c=a.y-this.y0;if(this.sphere)c=Proj4js.common.HALF_PI-2*Math.atan(Math.exp(-c/this.a*this.k0));else if(c=Math.exp(-c/(this.a*this.k0)),
c=Proj4js.common.phi2z(this.e,c),-9999==c)return Proj4js.reportError("merc:inverse: lat = -9999"),null;b=Proj4js.common.adjust_lon(this.long0+b/(this.a*this.k0));a.x=b;a.y=c;return a}};Proj4js.Proj.utm={dependsOn:"tmerc",init:function(){this.zone?(this.lat0=0,this.long0=(6*Math.abs(this.zone)-183)*Proj4js.common.D2R,this.x0=5E5,this.y0=this.utmSouth?1E7:0,this.k0=0.9996,Proj4js.Proj.tmerc.init.apply(this),this.forward=Proj4js.Proj.tmerc.forward,this.inverse=Proj4js.Proj.tmerc.inverse):Proj4js.reportError("utm:init: zone must be specified for UTM")}};
Proj4js.Proj.eqdc={init:function(){if(!this.mode)this.mode=0;this.temp=this.b/this.a;this.es=1-Math.pow(this.temp,2);this.e=Math.sqrt(this.es);this.e0=Proj4js.common.e0fn(this.es);this.e1=Proj4js.common.e1fn(this.es);this.e2=Proj4js.common.e2fn(this.es);this.e3=Proj4js.common.e3fn(this.es);this.sinphi=Math.sin(this.lat1);this.cosphi=Math.cos(this.lat1);this.ms1=Proj4js.common.msfnz(this.e,this.sinphi,this.cosphi);this.ml1=Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat1);0!=this.mode?
(Math.abs(this.lat1+this.lat2)<Proj4js.common.EPSLN&&Proj4js.reportError("eqdc:Init:EqualLatitudes"),this.sinphi=Math.sin(this.lat2),this.cosphi=Math.cos(this.lat2),this.ms2=Proj4js.common.msfnz(this.e,this.sinphi,this.cosphi),this.ml2=Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat2),this.ns=Math.abs(this.lat1-this.lat2)>=Proj4js.common.EPSLN?(this.ms1-this.ms2)/(this.ml2-this.ml1):this.sinphi):this.ns=this.sinphi;this.g=this.ml1+this.ms1/this.ns;this.ml0=Proj4js.common.mlfn(this.e0,
this.e1,this.e2,this.e3,this.lat0);this.rh=this.a*(this.g-this.ml0)},forward:function(a){var b=a.x,c=this.a*(this.g-Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,a.y)),d=this.ns*Proj4js.common.adjust_lon(b-this.long0),b=this.x0+c*Math.sin(d),c=this.y0+this.rh-c*Math.cos(d);a.x=b;a.y=c;return a},inverse:function(a){a.x-=this.x0;a.y=this.rh-a.y+this.y0;var b,c;0<=this.ns?(c=Math.sqrt(a.x*a.x+a.y*a.y),b=1):(c=-Math.sqrt(a.x*a.x+a.y*a.y),b=-1);var d=0;0!=c&&(d=Math.atan2(b*a.x,b*a.y));b=this.phi3z(this.g-
c/this.a,this.e0,this.e1,this.e2,this.e3);d=Proj4js.common.adjust_lon(this.long0+d/this.ns);a.x=d;a.y=b;return a},phi3z:function(a,b,c,d,e){var f,g;f=a;for(var j=0;15>j;j++)if(g=(a+c*Math.sin(2*f)-d*Math.sin(4*f)+e*Math.sin(6*f))/b-f,f+=g,1.0E-10>=Math.abs(g))return f;Proj4js.reportError("PHI3Z-CONV:Latitude failed to converge after 15 iterations");return null}};
Proj4js.Proj.tmerc={init:function(){this.e0=Proj4js.common.e0fn(this.es);this.e1=Proj4js.common.e1fn(this.es);this.e2=Proj4js.common.e2fn(this.es);this.e3=Proj4js.common.e3fn(this.es);this.ml0=this.a*Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat0)},forward:function(a){var b=a.y,c=Proj4js.common.adjust_lon(a.x-this.long0),d,e;d=Math.sin(b);var f=Math.cos(b);if(this.sphere){var g=f*Math.sin(c);if(1.0E-10>Math.abs(Math.abs(g)-1))return Proj4js.reportError("tmerc:forward: Point projects into infinity"),
93;e=0.5*this.a*this.k0*Math.log((1+g)/(1-g));d=Math.acos(f*Math.cos(c)/Math.sqrt(1-g*g));0>b&&(d=-d);b=this.a*this.k0*(d-this.lat0)}else{e=f*c;var c=Math.pow(e,2),f=this.ep2*Math.pow(f,2),g=Math.tan(b),j=Math.pow(g,2);d=1-this.es*Math.pow(d,2);d=this.a/Math.sqrt(d);b=this.a*Proj4js.common.mlfn(this.e0,this.e1,this.e2,this.e3,b);e=this.k0*d*e*(1+c/6*(1-j+f+c/20*(5-18*j+Math.pow(j,2)+72*f-58*this.ep2)))+this.x0;b=this.k0*(b-this.ml0+d*g*c*(0.5+c/24*(5-j+9*f+4*Math.pow(f,2)+c/30*(61-58*j+Math.pow(j,
2)+600*f-330*this.ep2))))+this.y0}a.x=e;a.y=b;return a},inverse:function(a){var b,c,d,e;if(this.sphere){c=Math.exp(a.x/(this.a*this.k0));var f=0.5*(c-1/c);d=this.lat0+a.y/(this.a*this.k0);e=Math.cos(d);b=Math.sqrt((1-e*e)/(1+f*f));c=Proj4js.common.asinz(b);0>d&&(c=-c);b=0==f&&0==e?this.long0:Proj4js.common.adjust_lon(Math.atan2(f,e)+this.long0)}else{var f=a.x-this.x0,g=a.y-this.y0;c=b=(this.ml0+g/this.k0)/this.a;for(e=0;;e++){d=(b+this.e1*Math.sin(2*c)-this.e2*Math.sin(4*c)+this.e3*Math.sin(6*c))/
this.e0-c;c+=d;if(Math.abs(d)<=Proj4js.common.EPSLN)break;if(6<=e)return Proj4js.reportError("tmerc:inverse: Latitude failed to converge"),95}if(Math.abs(c)<Proj4js.common.HALF_PI){b=Math.sin(c);d=Math.cos(c);var j=Math.tan(c);e=this.ep2*Math.pow(d,2);var g=Math.pow(e,2),k=Math.pow(j,2),m=Math.pow(k,2);b=1-this.es*Math.pow(b,2);var s=this.a/Math.sqrt(b);b=s*(1-this.es)/b;var f=f/(s*this.k0),n=Math.pow(f,2);c-=s*j*n/b*(0.5-n/24*(5+3*k+10*e-4*g-9*this.ep2-n/30*(61+90*k+298*e+45*m-252*this.ep2-3*g)));
b=Proj4js.common.adjust_lon(this.long0+f*(1-n/6*(1+2*k+e-n/20*(5-2*e+28*k-3*g+8*this.ep2+24*m)))/d)}else c=Proj4js.common.HALF_PI*Proj4js.common.sign(g),b=this.long0}a.x=b;a.y=c;return a}};
Proj4js.Proj.gstmerc={init:function(){var a=this.b/this.a;this.e=Math.sqrt(1-a*a);this.lc=this.long0;this.rs=Math.sqrt(1+this.e*this.e*Math.pow(Math.cos(this.lat0),4)/(1-this.e*this.e));var a=Math.sin(this.lat0),b=Math.asin(a/this.rs),c=Math.sin(b);this.cp=Proj4js.common.latiso(0,b,c)-this.rs*Proj4js.common.latiso(this.e,this.lat0,a);this.n2=this.k0*this.a*Math.sqrt(1-this.e*this.e)/(1-this.e*this.e*a*a);this.xs=this.x0;this.ys=this.y0-this.n2*b;if(!this.title)this.title="Gauss Schreiber transverse mercator"},
forward:function(a){var b=a.y,c=this.rs*(a.x-this.lc),b=this.cp+this.rs*Proj4js.common.latiso(this.e,b,Math.sin(b)),d=Math.asin(Math.sin(c)/Proj4js.common.cosh(b)),d=Proj4js.common.latiso(0,d,Math.sin(d));a.x=this.xs+this.n2*d;a.y=this.ys+this.n2*Math.atan(Proj4js.common.sinh(b)/Math.cos(c));return a},inverse:function(a){var b=a.x,c=a.y,d=Math.atan(Proj4js.common.sinh((b-this.xs)/this.n2)/Math.cos((c-this.ys)/this.n2)),b=Math.asin(Math.sin((c-this.ys)/this.n2)/Proj4js.common.cosh((b-this.xs)/this.n2)),
b=Proj4js.common.latiso(0,b,Math.sin(b));a.x=this.lc+d/this.rs;a.y=Proj4js.common.invlatiso(this.e,(b-this.cp)/this.rs);return a}};
Proj4js.Proj.ortho={init:function(){this.sin_p14=Math.sin(this.lat0);this.cos_p14=Math.cos(this.lat0)},forward:function(a){var b,c,d,e,f;c=a.y;d=Proj4js.common.adjust_lon(a.x-this.long0);b=Math.sin(c);c=Math.cos(c);e=Math.cos(d);f=this.sin_p14*b+this.cos_p14*c*e;if(0<f||Math.abs(f)<=Proj4js.common.EPSLN)var g=1*this.a*c*Math.sin(d),j=this.y0+1*this.a*(this.cos_p14*b-this.sin_p14*c*e);else Proj4js.reportError("orthoFwdPointError");a.x=g;a.y=j;return a},inverse:function(a){var b,c,d,e;a.x-=this.x0;
a.y-=this.y0;b=Math.sqrt(a.x*a.x+a.y*a.y);b>this.a+1.0E-7&&Proj4js.reportError("orthoInvDataError");c=Proj4js.common.asinz(b/this.a);d=Math.sin(c);e=Math.cos(c);c=this.long0;Math.abs(b);d=Proj4js.common.asinz(e*this.sin_p14+a.y*d*this.cos_p14/b);b=Math.abs(this.lat0)-Proj4js.common.HALF_PI;Math.abs(b)<=Proj4js.common.EPSLN&&(c=0<=this.lat0?Proj4js.common.adjust_lon(this.long0+Math.atan2(a.x,-a.y)):Proj4js.common.adjust_lon(this.long0-Math.atan2(-a.x,a.y)));Math.sin(d);a.x=c;a.y=d;return a}};
Proj4js.Proj.somerc={init:function(){var a=this.lat0;this.lambda0=this.long0;var b=Math.sin(a),c=this.a,d=1/this.rf,d=2*d-Math.pow(d,2),e=this.e=Math.sqrt(d);this.R=this.k0*c*Math.sqrt(1-d)/(1-d*Math.pow(b,2));this.alpha=Math.sqrt(1+d/(1-d)*Math.pow(Math.cos(a),4));this.b0=Math.asin(b/this.alpha);this.K=Math.log(Math.tan(Math.PI/4+this.b0/2))-this.alpha*Math.log(Math.tan(Math.PI/4+a/2))+this.alpha*e/2*Math.log((1+e*b)/(1-e*b))},forward:function(a){var b=Math.log(Math.tan(Math.PI/4-a.y/2)),c=this.e/
2*Math.log((1+this.e*Math.sin(a.y))/(1-this.e*Math.sin(a.y))),c=2*(Math.atan(Math.exp(-this.alpha*(b+c)+this.K))-Math.PI/4),d=this.alpha*(a.x-this.lambda0),b=Math.atan(Math.sin(d)/(Math.sin(this.b0)*Math.tan(c)+Math.cos(this.b0)*Math.cos(d))),c=Math.asin(Math.cos(this.b0)*Math.sin(c)-Math.sin(this.b0)*Math.cos(c)*Math.cos(d));a.y=this.R/2*Math.log((1+Math.sin(c))/(1-Math.sin(c)))+this.y0;a.x=this.R*b+this.x0;return a},inverse:function(a){for(var b=(a.x-this.x0)/this.R,c=2*(Math.atan(Math.exp((a.y-
this.y0)/this.R))-Math.PI/4),d=Math.asin(Math.cos(this.b0)*Math.sin(c)+Math.sin(this.b0)*Math.cos(c)*Math.cos(b)),b=this.lambda0+Math.atan(Math.sin(b)/(Math.cos(this.b0)*Math.cos(b)-Math.sin(this.b0)*Math.tan(c)))/this.alpha,c=0,e=d,f=-1E3,g=0;1.0E-7<Math.abs(e-f);){if(20<++g){Proj4js.reportError("omercFwdInfinity");return}c=1/this.alpha*(Math.log(Math.tan(Math.PI/4+d/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(e))/2));f=e;e=2*Math.atan(Math.exp(c))-Math.PI/2}a.x=b;a.y=
e;return a}};
Proj4js.Proj.stere={ssfn_:function(a,b,c){b*=c;return Math.tan(0.5*(Proj4js.common.HALF_PI+a))*Math.pow((1-b)/(1+b),0.5*c)},TOL:1.0E-8,NITER:8,CONV:1.0E-10,S_POLE:0,N_POLE:1,OBLIQ:2,EQUIT:3,init:function(){this.phits=this.lat_ts?this.lat_ts:Proj4js.common.HALF_PI;var a=Math.abs(this.lat0);this.mode=Math.abs(a)-Proj4js.common.HALF_PI<Proj4js.common.EPSLN?0>this.lat0?this.S_POLE:this.N_POLE:a>Proj4js.common.EPSLN?this.OBLIQ:this.EQUIT;this.phits=Math.abs(this.phits);if(this.es){var b;switch(this.mode){case this.N_POLE:case this.S_POLE:Math.abs(this.phits-Proj4js.common.HALF_PI)<
Proj4js.common.EPSLN?this.akm1=2*this.k0/Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)):(a=Math.sin(this.phits),this.akm1=Math.cos(this.phits)/Proj4js.common.tsfnz(this.e,this.phits,a),a*=this.e,this.akm1/=Math.sqrt(1-a*a));break;case this.EQUIT:this.akm1=2*this.k0;break;case this.OBLIQ:a=Math.sin(this.lat0),b=2*Math.atan(this.ssfn_(this.lat0,a,this.e))-Proj4js.common.HALF_PI,a*=this.e,this.akm1=2*this.k0*Math.cos(this.lat0)/Math.sqrt(1-a*a),this.sinX1=Math.sin(b),this.cosX1=Math.cos(b)}}else switch(this.mode){case this.OBLIQ:this.sinph0=
Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0);case this.EQUIT:this.akm1=2*this.k0;break;case this.S_POLE:case this.N_POLE:this.akm1=Math.abs(this.phits-Proj4js.common.HALF_PI)>=Proj4js.common.EPSLN?Math.cos(this.phits)/Math.tan(Proj4js.common.FORTPI-0.5*this.phits):2*this.k0}},forward:function(a){var b=a.x,b=Proj4js.common.adjust_lon(b-this.long0),c=a.y,d,e;if(this.sphere){var f,g,j;f=Math.sin(c);g=Math.cos(c);j=Math.cos(b);b=Math.sin(b);switch(this.mode){case this.EQUIT:e=this.akm1/(1+g*j);
d=e*g*b;e*=f;break;case this.OBLIQ:e=1+this.sinph0*f+this.cosph0*g*j;e=this.akm1/e;d=e*g*b;e*=this.cosph0*f-this.sinph0*g*j;break;case this.N_POLE:j=-j,c=-c;case this.S_POLE:Math.abs(c-Proj4js.common.HALF_PI),e=this.akm1*Math.tan(Proj4js.common.FORTPI+0.5*c),d=b*e,e*=j}}else{j=Math.cos(b);b=Math.sin(b);f=Math.sin(c);var k;if(this.mode==this.OBLIQ||this.mode==this.EQUIT)k=2*Math.atan(this.ssfn_(c,f,this.e)),g=Math.sin(k-Proj4js.common.HALF_PI),k=Math.cos(k);switch(this.mode){case this.OBLIQ:c=this.akm1/
(this.cosX1*(1+this.sinX1*g+this.cosX1*k*j));e=c*(this.cosX1*g-this.sinX1*k*j);d=c*k;break;case this.EQUIT:c=2*this.akm1/(1+k*j);e=c*g;d=c*k;break;case this.S_POLE:c=-c,j=-j,f=-f;case this.N_POLE:d=this.akm1*Proj4js.common.tsfnz(this.e,c,f),e=-d*j}d*=b}a.x=d*this.a+this.x0;a.y=e*this.a+this.y0;return a},inverse:function(a){var b=(a.x-this.x0)/this.a,c=(a.y-this.y0)/this.a,d,e,f,g=d=0,j,k=f=0;if(this.sphere){g=Math.sqrt(b*b+c*c);k=2*Math.atan(g/this.akm1);f=Math.sin(k);k=Math.cos(k);d=0;switch(this.mode){case this.EQUIT:e=
Math.abs(g)<=Proj4js.common.EPSLN?0:Math.asin(c*f/g);if(0!=k||0!=b)d=Math.atan2(b*f,k*g);break;case this.OBLIQ:e=Math.abs(g)<=Proj4js.common.EPSLN?this.phi0:Math.asin(k*sinph0+c*f*cosph0/g);k-=sinph0*Math.sin(e);if(0!=k||0!=b)d=Math.atan2(b*f*cosph0,k*g);break;case this.N_POLE:c=-c;case this.S_POLE:e=Math.abs(g)<=Proj4js.common.EPSLN?this.phi0:Math.asin(this.mode==this.S_POLE?-k:k),d=0==b&&0==c?0:Math.atan2(b,c)}a.x=Proj4js.common.adjust_lon(d+this.long0);a.y=e}else{j=Math.sqrt(b*b+c*c);switch(this.mode){case this.OBLIQ:case this.EQUIT:d=
2*Math.atan2(j*this.cosX1,this.akm1);f=Math.cos(d);e=Math.sin(d);g=0==j?Math.asin(f*this.sinX1):Math.asin(f*this.sinX1+c*e*this.cosX1/j);d=Math.tan(0.5*(Proj4js.common.HALF_PI+g));b*=e;c=j*this.cosX1*f-c*this.sinX1*e;k=Proj4js.common.HALF_PI;f=0.5*this.e;break;case this.N_POLE:c=-c;case this.S_POLE:d=-j/this.akm1,g=Proj4js.common.HALF_PI-2*Math.atan(d),k=-Proj4js.common.HALF_PI,f=-0.5*this.e}for(j=this.NITER;j--;g=e)if(e=this.e*Math.sin(g),e=2*Math.atan(d*Math.pow((1+e)/(1-e),f))-k,Math.abs(g-e)<
this.CONV)return this.mode==this.S_POLE&&(e=-e),d=0==b&&0==c?0:Math.atan2(b,c),a.x=Proj4js.common.adjust_lon(d+this.long0),a.y=e,a}}};
Proj4js.Proj.nzmg={iterations:1,init:function(){this.A=[];this.A[1]=0.6399175073;this.A[2]=-0.1358797613;this.A[3]=0.063294409;this.A[4]=-0.02526853;this.A[5]=0.0117879;this.A[6]=-0.0055161;this.A[7]=0.0026906;this.A[8]=-0.001333;this.A[9]=6.7E-4;this.A[10]=-3.4E-4;this.B_re=[];this.B_im=[];this.B_re[1]=0.7557853228;this.B_im[1]=0;this.B_re[2]=0.249204646;this.B_im[2]=0.003371507;this.B_re[3]=-0.001541739;this.B_im[3]=0.04105856;this.B_re[4]=-0.10162907;this.B_im[4]=0.01727609;this.B_re[5]=-0.26623489;
this.B_im[5]=-0.36249218;this.B_re[6]=-0.6870983;this.B_im[6]=-1.1651967;this.C_re=[];this.C_im=[];this.C_re[1]=1.3231270439;this.C_im[1]=0;this.C_re[2]=-0.577245789;this.C_im[2]=-0.007809598;this.C_re[3]=0.508307513;this.C_im[3]=-0.112208952;this.C_re[4]=-0.15094762;this.C_im[4]=0.18200602;this.C_re[5]=1.01418179;this.C_im[5]=1.64497696;this.C_re[6]=1.9660549;this.C_im[6]=2.5127645;this.D=[];this.D[1]=1.5627014243;this.D[2]=0.5185406398;this.D[3]=-0.03333098;this.D[4]=-0.1052906;this.D[5]=-0.0368594;
this.D[6]=0.007317;this.D[7]=0.0122;this.D[8]=0.00394;this.D[9]=-0.0013},forward:function(a){for(var b=1.0E-5*((a.y-this.lat0)/Proj4js.common.SEC_TO_RAD),c=a.x-this.long0,d=1,e=0,f=1;10>=f;f++)d*=b,e+=this.A[f]*d;for(var b=e,d=1,g=0,j=0,k=0,f=1;6>=f;f++)e=d*b-g*c,g=g*b+d*c,d=e,j=j+this.B_re[f]*d-this.B_im[f]*g,k=k+this.B_im[f]*d+this.B_re[f]*g;a.x=k*this.a+this.x0;a.y=j*this.a+this.y0;return a},inverse:function(a){for(var b=(a.y-this.y0)/this.a,c=(a.x-this.x0)/this.a,d=1,e=0,f,g=0,j=0,k=1;6>=k;k++)f=
d*b-e*c,e=e*b+d*c,d=f,g=g+this.C_re[k]*d-this.C_im[k]*e,j=j+this.C_im[k]*d+this.C_re[k]*e;for(d=0;d<this.iterations;d++){var m=g,s=j,n;f=b;e=c;for(k=2;6>=k;k++)n=m*g-s*j,s=s*g+m*j,m=n,f+=(k-1)*(this.B_re[k]*m-this.B_im[k]*s),e+=(k-1)*(this.B_im[k]*m+this.B_re[k]*s);for(var m=1,s=0,q=this.B_re[1],o=this.B_im[1],k=2;6>=k;k++)n=m*g-s*j,s=s*g+m*j,m=n,q+=k*(this.B_re[k]*m-this.B_im[k]*s),o+=k*(this.B_im[k]*m+this.B_re[k]*s);j=q*q+o*o;g=(f*q+e*o)/j;j=(e*q-f*o)/j}b=g;c=1;g=0;for(k=1;9>=k;k++)c*=b,g+=this.D[k]*
c;k=this.lat0+1E5*g*Proj4js.common.SEC_TO_RAD;a.x=this.long0+j;a.y=k;return a}};Proj4js.Proj.mill={init:function(){},forward:function(a){var b=a.y,c=this.x0+this.a*Proj4js.common.adjust_lon(a.x-this.long0),b=this.y0+1.25*this.a*Math.log(Math.tan(Proj4js.common.PI/4+b/2.5));a.x=c;a.y=b;return a},inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=Proj4js.common.adjust_lon(this.long0+a.x/this.a),c=2.5*(Math.atan(Math.exp(0.8*a.y/this.a))-Proj4js.common.PI/4);a.x=b;a.y=c;return a}};
Proj4js.Proj.gnom={init:function(){this.sin_p14=Math.sin(this.lat0);this.cos_p14=Math.cos(this.lat0);this.infinity_dist=1E3*this.a;this.rc=1},forward:function(a){var b,c,d,e,f;c=a.y;d=Proj4js.common.adjust_lon(a.x-this.long0);b=Math.sin(c);c=Math.cos(c);e=Math.cos(d);f=this.sin_p14*b+this.cos_p14*c*e;0<f||Math.abs(f)<=Proj4js.common.EPSLN?(d=this.x0+1*this.a*c*Math.sin(d)/f,b=this.y0+1*this.a*(this.cos_p14*b-this.sin_p14*c*e)/f):(Proj4js.reportError("orthoFwdPointError"),d=this.x0+this.infinity_dist*
c*Math.sin(d),b=this.y0+this.infinity_dist*(this.cos_p14*b-this.sin_p14*c*e));a.x=d;a.y=b;return a},inverse:function(a){var b,c,d,e;a.x=(a.x-this.x0)/this.a;a.y=(a.y-this.y0)/this.a;a.x/=this.k0;a.y/=this.k0;(b=Math.sqrt(a.x*a.x+a.y*a.y))?(e=Math.atan2(b,this.rc),c=Math.sin(e),d=Math.cos(e),e=Proj4js.common.asinz(d*this.sin_p14+a.y*c*this.cos_p14/b),b=Math.atan2(a.x*c,b*this.cos_p14*d-a.y*this.sin_p14*c),b=Proj4js.common.adjust_lon(this.long0+b)):(e=this.phic0,b=0);a.x=b;a.y=e;return a}};
Proj4js.defs["EPSG:4326"]="+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs +towgs84=0,0,0";
Proj4js.Proj.sinu={init:function(){this.R=6370997},forward:function(a){var b,c;c=a.y;b=this.R*Proj4js.common.adjust_lon(a.x-this.long0)*Math.cos(c)+this.x0;c=this.R*c+this.y0;a.x=b;a.y=c;return a},inverse:function(a){var b,c;a.x-=this.x0;a.y-=this.y0;b=a.y/this.R;Math.abs(b)>Proj4js.common.HALF_PI&&Proj4js.reportError("sinu:Inv:DataError");c=Math.abs(b)-Proj4js.common.HALF_PI;Math.abs(c)>Proj4js.common.EPSLN?(c=this.long0+a.x/(this.R*Math.cos(b)),c=Proj4js.common.adjust_lon(c)):c=this.long0;a.x=c;
a.y=b;return a}};Proj4js.defs["EPSG:2913"]="+proj=lcc +lat_1=46 +lat_2=44.33333333333334 +lat_0=43.66666666666666 +lon_0=-120.5 +x_0=2500000.0001424 +y_0=0 +ellps=GRS80 +to_meter=0.3048 +no_defs";
Proj4js.Proj.vandg={init:function(){this.R=6370997},forward:function(a){var b=a.y,c=Proj4js.common.adjust_lon(a.x-this.long0);Math.abs(b);var d=Proj4js.common.asinz(2*Math.abs(b/Proj4js.common.PI));if(Math.abs(c)<=Proj4js.common.EPSLN||Math.abs(Math.abs(b)-Proj4js.common.HALF_PI)<=Proj4js.common.EPSLN)0<=b?Math.tan(0.5*d):Math.tan(0.5*d);var e=0.5*Math.abs(Proj4js.common.PI/c-c/Proj4js.common.PI),f=e*e,g=Math.sin(d),d=Math.cos(d),d=d/(g+d-1),g=d*(2/g-1),g=g*g,f=Proj4js.common.PI*this.R*(e*(d-g)+Math.sqrt(f*
(d-g)*(d-g)-(g+f)*(d*d-g)))/(g+f);0>c&&(f=-f);c=this.x0+f;f=Math.abs(f/(Proj4js.common.PI*this.R));b=0<=b?this.y0+Proj4js.common.PI*this.R*Math.sqrt(1-f*f-2*e*f):this.y0-Proj4js.common.PI*this.R*Math.sqrt(1-f*f-2*e*f);a.x=c;a.y=b;return a},inverse:function(a){var b,c,d,e,f,g,j,k;a.x-=this.x0;a.y-=this.y0;k=Proj4js.common.PI*this.R;b=a.x/k;d=a.y/k;e=b*b+d*d;f=-Math.abs(d)*(1+e);c=f-2*d*d+b*b;g=-2*f+1+2*d*d+e*e;k=d*d/g+(2*c*c*c/g/g/g-9*f*c/g/g)/27;j=(f-c*c/3/g)/g;f=2*Math.sqrt(-j/3);k=3*k/j/f;1<Math.abs(k)&&
(k=0<=k?1:-1);k=Math.acos(k)/3;c=0<=a.y?(-f*Math.cos(k+Proj4js.common.PI/3)-c/3/g)*Proj4js.common.PI:-(-f*Math.cos(k+Proj4js.common.PI/3)-c/3/g)*Proj4js.common.PI;Math.abs(b);b=Proj4js.common.adjust_lon(this.long0+Proj4js.common.PI*(e-1+Math.sqrt(1+2*(b*b-d*d)+e*e))/2/b);a.x=b;a.y=c;return a}};
Proj4js.Proj.cea={init:function(){},forward:function(a){var b=a.y,c=this.x0+this.a*Proj4js.common.adjust_lon(a.x-this.long0)*Math.cos(this.lat_ts),b=this.y0+this.a*Math.sin(b)/Math.cos(this.lat_ts);a.x=c;a.y=b;return a},inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=Proj4js.common.adjust_lon(this.long0+a.x/this.a/Math.cos(this.lat_ts)),c=Math.asin(a.y/this.a*Math.cos(this.lat_ts));a.x=b;a.y=c;return a}};
Proj4js.Proj.eqc={init:function(){if(!this.x0)this.x0=0;if(!this.y0)this.y0=0;if(!this.lat0)this.lat0=0;if(!this.long0)this.long0=0;if(!this.lat_ts)this.lat_ts=0;if(!this.title)this.title="Equidistant Cylindrical (Plate Carre)";this.rc=Math.cos(this.lat_ts)},forward:function(a){var b=a.y,c=Proj4js.common.adjust_lon(a.x-this.long0),b=Proj4js.common.adjust_lat(b-this.lat0);a.x=this.x0+this.a*c*this.rc;a.y=this.y0+this.a*b;return a},inverse:function(a){var b=a.y;a.x=Proj4js.common.adjust_lon(this.long0+
(a.x-this.x0)/(this.a*this.rc));a.y=Proj4js.common.adjust_lat(this.lat0+(b-this.y0)/this.a);return a}};
Proj4js.Proj.cass={init:function(){if(!this.sphere)this.en=this.pj_enfn(this.es),this.m0=this.pj_mlfn(this.lat0,Math.sin(this.lat0),Math.cos(this.lat0),this.en)},C1:0.16666666666666666,C2:0.008333333333333333,C3:0.041666666666666664,C4:0.3333333333333333,C5:0.06666666666666667,forward:function(a){var b,c,d=a.x,e=a.y,d=Proj4js.common.adjust_lon(d-this.long0);this.sphere?(b=Math.asin(Math.cos(e)*Math.sin(d)),c=Math.atan2(Math.tan(e),Math.cos(d))-this.phi0):(this.n=Math.sin(e),this.c=Math.cos(e),c=this.pj_mlfn(e,
this.n,this.c,this.en),this.n=1/Math.sqrt(1-this.es*this.n*this.n),this.tn=Math.tan(e),this.t=this.tn*this.tn,this.a1=d*this.c,this.c*=this.es*this.c/(1-this.es),this.a2=this.a1*this.a1,b=this.n*this.a1*(1-this.a2*this.t*(this.C1-(8-this.t+8*this.c)*this.a2*this.C2)),c-=this.m0-this.n*this.tn*this.a2*(0.5+(5-this.t+6*this.c)*this.a2*this.C3));a.x=this.a*b+this.x0;a.y=this.a*c+this.y0;return a},inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=a.x/this.a,c=a.y/this.a;if(this.sphere)this.dd=c+this.lat0,
c=Math.asin(Math.sin(this.dd)*Math.cos(b)),b=Math.atan2(Math.tan(b),Math.cos(this.dd));else{var d=this.pj_inv_mlfn(this.m0+c,this.es,this.en);this.tn=Math.tan(d);this.t=this.tn*this.tn;this.n=Math.sin(d);this.r=1/(1-this.es*this.n*this.n);this.n=Math.sqrt(this.r);this.r*=(1-this.es)*this.n;this.dd=b/this.n;this.d2=this.dd*this.dd;c=d-this.n*this.tn/this.r*this.d2*(0.5-(1+3*this.t)*this.d2*this.C3);b=this.dd*(1+this.t*this.d2*(-this.C4+(1+3*this.t)*this.d2*this.C5))/Math.cos(d)}a.x=Proj4js.common.adjust_lon(this.long0+
b);a.y=c;return a},pj_enfn:function(a){var b=[];b[0]=this.C00-a*(this.C02+a*(this.C04+a*(this.C06+a*this.C08)));b[1]=a*(this.C22-a*(this.C04+a*(this.C06+a*this.C08)));var c=a*a;b[2]=c*(this.C44-a*(this.C46+a*this.C48));c*=a;b[3]=c*(this.C66-a*this.C68);b[4]=c*a*this.C88;return b},pj_mlfn:function(a,b,c,d){c*=b;b*=b;return d[0]*a-c*(d[1]+b*(d[2]+b*(d[3]+b*d[4])))},pj_inv_mlfn:function(a,b,c){for(var d=1/(1-b),e=a,f=Proj4js.common.MAX_ITER;f;--f){var g=Math.sin(e);t=1-b*g*g;t=(this.pj_mlfn(e,g,Math.cos(e),
c)-a)*t*Math.sqrt(t)*d;e-=t;if(Math.abs(t)<Proj4js.common.EPSLN)return e}Proj4js.reportError("cass:pj_inv_mlfn: Convergence error");return e},C00:1,C02:0.25,C04:0.046875,C06:0.01953125,C08:0.01068115234375,C22:0.75,C44:0.46875,C46:0.013020833333333334,C48:0.007120768229166667,C66:0.3645833333333333,C68:0.005696614583333333,C88:0.3076171875};
Proj4js.Proj.gauss={init:function(){var a=Math.sin(this.lat0),b=Math.cos(this.lat0),b=b*b;this.rc=Math.sqrt(1-this.es)/(1-this.es*a*a);this.C=Math.sqrt(1+this.es*b*b/(1-this.es));this.phic0=Math.asin(a/this.C);this.ratexp=0.5*this.C*this.e;this.K=Math.tan(0.5*this.phic0+Proj4js.common.FORTPI)/(Math.pow(Math.tan(0.5*this.lat0+Proj4js.common.FORTPI),this.C)*Proj4js.common.srat(this.e*a,this.ratexp))},forward:function(a){var b=a.x,c=a.y;a.y=2*Math.atan(this.K*Math.pow(Math.tan(0.5*c+Proj4js.common.FORTPI),
this.C)*Proj4js.common.srat(this.e*Math.sin(c),this.ratexp))-Proj4js.common.HALF_PI;a.x=this.C*b;return a},inverse:function(a){for(var b=a.x/this.C,c=a.y,d=Math.pow(Math.tan(0.5*c+Proj4js.common.FORTPI)/this.K,1/this.C),e=Proj4js.common.MAX_ITER;0<e;--e){c=2*Math.atan(d*Proj4js.common.srat(this.e*Math.sin(a.y),-0.5*this.e))-Proj4js.common.HALF_PI;if(1.0E-14>Math.abs(c-a.y))break;a.y=c}if(!e)return Proj4js.reportError("gauss:inverse:convergence failed"),null;a.x=b;a.y=c;return a}};
Proj4js.Proj.omerc={init:function(){if(!this.mode)this.mode=0;if(!this.lon1)this.lon1=0,this.mode=1;if(!this.lon2)this.lon2=0;if(!this.lat2)this.lat2=0;var a=1-Math.pow(this.b/this.a,2);Math.sqrt(a);this.sin_p20=Math.sin(this.lat0);this.cos_p20=Math.cos(this.lat0);this.con=1-this.es*this.sin_p20*this.sin_p20;this.com=Math.sqrt(1-a);this.bl=Math.sqrt(1+this.es*Math.pow(this.cos_p20,4)/(1-a));this.al=this.a*this.bl*this.k0*this.com/this.con;Math.abs(this.lat0)<Proj4js.common.EPSLN?this.el=this.d=this.ts=
1:(this.ts=Proj4js.common.tsfnz(this.e,this.lat0,this.sin_p20),this.con=Math.sqrt(this.con),this.d=this.bl*this.com/(this.cos_p20*this.con),this.f=0<this.d*this.d-1?0<=this.lat0?this.d+Math.sqrt(this.d*this.d-1):this.d-Math.sqrt(this.d*this.d-1):this.d,this.el=this.f*Math.pow(this.ts,this.bl));0!=this.mode?(this.g=0.5*(this.f-1/this.f),this.gama=Proj4js.common.asinz(Math.sin(this.alpha)/this.d),this.longc-=Proj4js.common.asinz(this.g*Math.tan(this.gama))/this.bl,this.con=Math.abs(this.lat0),this.con>
Proj4js.common.EPSLN&&Math.abs(this.con-Proj4js.common.HALF_PI)>Proj4js.common.EPSLN?(this.singam=Math.sin(this.gama),this.cosgam=Math.cos(this.gama),this.sinaz=Math.sin(this.alpha),this.cosaz=Math.cos(this.alpha),this.u=0<=this.lat0?this.al/this.bl*Math.atan(Math.sqrt(this.d*this.d-1)/this.cosaz):-(this.al/this.bl)*Math.atan(Math.sqrt(this.d*this.d-1)/this.cosaz)):Proj4js.reportError("omerc:Init:DataError")):(this.sinphi=Math.sin(this.at1),this.ts1=Proj4js.common.tsfnz(this.e,this.lat1,this.sinphi),
this.sinphi=Math.sin(this.lat2),this.ts2=Proj4js.common.tsfnz(this.e,this.lat2,this.sinphi),this.h=Math.pow(this.ts1,this.bl),this.l=Math.pow(this.ts2,this.bl),this.f=this.el/this.h,this.g=0.5*(this.f-1/this.f),this.j=(this.el*this.el-this.l*this.h)/(this.el*this.el+this.l*this.h),this.p=(this.l-this.h)/(this.l+this.h),this.dlon=this.lon1-this.lon2,this.dlon<-Proj4js.common.PI&&(this.lon2-=2*Proj4js.common.PI),this.dlon>Proj4js.common.PI&&(this.lon2+=2*Proj4js.common.PI),this.dlon=this.lon1-this.lon2,
this.longc=0.5*(this.lon1+this.lon2)-Math.atan(this.j*Math.tan(0.5*this.bl*this.dlon)/this.p)/this.bl,this.dlon=Proj4js.common.adjust_lon(this.lon1-this.longc),this.gama=Math.atan(Math.sin(this.bl*this.dlon)/this.g),this.alpha=Proj4js.common.asinz(this.d*Math.sin(this.gama)),Math.abs(this.lat1-this.lat2)<=Proj4js.common.EPSLN?Proj4js.reportError("omercInitDataError"):this.con=Math.abs(this.lat1),this.con<=Proj4js.common.EPSLN||Math.abs(this.con-Proj4js.common.HALF_PI)<=Proj4js.common.EPSLN?Proj4js.reportError("omercInitDataError"):
Math.abs(Math.abs(this.lat0)-Proj4js.common.HALF_PI)<=Proj4js.common.EPSLN&&Proj4js.reportError("omercInitDataError"),this.singam=Math.sin(this.gam),this.cosgam=Math.cos(this.gam),this.sinaz=Math.sin(this.alpha),this.cosaz=Math.cos(this.alpha),this.u=0<=this.lat0?this.al/this.bl*Math.atan(Math.sqrt(this.d*this.d-1)/this.cosaz):-(this.al/this.bl)*Math.atan(Math.sqrt(this.d*this.d-1)/this.cosaz))},forward:function(a){var b,c,d,e,f;d=a.x;c=a.y;b=Math.sin(c);e=Proj4js.common.adjust_lon(d-this.longc);
d=Math.sin(this.bl*e);Math.abs(Math.abs(c)-Proj4js.common.HALF_PI)>Proj4js.common.EPSLN?(b=Proj4js.common.tsfnz(this.e,c,b),b=this.el/Math.pow(b,this.bl),f=0.5*(b-1/b),b=(f*this.singam-d*this.cosgam)/(0.5*(b+1/b)),c=Math.cos(this.bl*e),1.0E-7>Math.abs(c)?d=this.al*this.bl*e:(d=this.al*Math.atan((f*this.cosgam+d*this.singam)/c)/this.bl,0>c&&(d+=Proj4js.common.PI*this.al/this.bl))):(b=0<=c?this.singam:-this.singam,d=this.al*c/this.bl);Math.abs(Math.abs(b)-1)<=Proj4js.common.EPSLN&&Proj4js.reportError("omercFwdInfinity");
e=0.5*this.al*Math.log((1-b)/(1+b))/this.bl;d-=this.u;b=this.y0+d*this.cosaz-e*this.sinaz;a.x=this.x0+e*this.cosaz+d*this.sinaz;a.y=b;return a},inverse:function(a){var b,c,d,e;a.x-=this.x0;a.y-=this.y0;b=a.x*this.cosaz-a.y*this.sinaz;d=a.y*this.cosaz+a.x*this.sinaz;d+=this.u;c=Math.exp(-this.bl*b/this.al);b=0.5*(c-1/c);c=0.5*(c+1/c);d=Math.sin(this.bl*d/this.al);e=(d*this.cosgam+b*this.singam)/c;Math.abs(Math.abs(e)-1)<=Proj4js.common.EPSLN?(b=this.longc,e=0<=e?Proj4js.common.HALF_PI:-Proj4js.common.HALF_PI):
(c=1/this.bl,e=Math.pow(this.el/Math.sqrt((1+e)/(1-e)),c),e=Proj4js.common.phi2z(this.e,e),b=this.longc-Math.atan2(b*this.cosgam-d*this.singam,c)/this.bl,b=Proj4js.common.adjust_lon(b));a.x=b;a.y=e;return a}};
Proj4js.Proj.lcc={init:function(){if(!this.lat2)this.lat2=this.lat0;if(!this.k0)this.k0=1;if(Math.abs(this.lat1+this.lat2)<Proj4js.common.EPSLN)Proj4js.reportError("lcc:init: Equal Latitudes");else{var a=this.b/this.a;this.e=Math.sqrt(1-a*a);var a=Math.sin(this.lat1),b=Math.cos(this.lat1),b=Proj4js.common.msfnz(this.e,a,b),c=Proj4js.common.tsfnz(this.e,this.lat1,a),d=Math.sin(this.lat2),e=Math.cos(this.lat2),e=Proj4js.common.msfnz(this.e,d,e),d=Proj4js.common.tsfnz(this.e,this.lat2,d),f=Proj4js.common.tsfnz(this.e,
this.lat0,Math.sin(this.lat0));this.ns=Math.abs(this.lat1-this.lat2)>Proj4js.common.EPSLN?Math.log(b/e)/Math.log(c/d):a;this.f0=b/(this.ns*Math.pow(c,this.ns));this.rh=this.a*this.f0*Math.pow(f,this.ns);if(!this.title)this.title="Lambert Conformal Conic"}},forward:function(a){var b=a.x,c=a.y;if(!(90>=c&&-90<=c&&180>=b&&-180<=b))return Proj4js.reportError("lcc:forward: llInputOutOfRange: "+b+" : "+c),null;var d=Math.abs(Math.abs(c)-Proj4js.common.HALF_PI);if(d>Proj4js.common.EPSLN)c=Proj4js.common.tsfnz(this.e,
c,Math.sin(c)),c=this.a*this.f0*Math.pow(c,this.ns);else{d=c*this.ns;if(0>=d)return Proj4js.reportError("lcc:forward: No Projection"),null;c=0}b=this.ns*Proj4js.common.adjust_lon(b-this.long0);a.x=this.k0*c*Math.sin(b)+this.x0;a.y=this.k0*(this.rh-c*Math.cos(b))+this.y0;return a},inverse:function(a){var b,c,d,e=(a.x-this.x0)/this.k0,f=this.rh-(a.y-this.y0)/this.k0;0<this.ns?(b=Math.sqrt(e*e+f*f),c=1):(b=-Math.sqrt(e*e+f*f),c=-1);d=0;0!=b&&(d=Math.atan2(c*e,c*f));if(0!=b||0<this.ns){if(c=1/this.ns,
b=Math.pow(b/(this.a*this.f0),c),b=Proj4js.common.phi2z(this.e,b),-9999==b)return null}else b=-Proj4js.common.HALF_PI;d=Proj4js.common.adjust_lon(d/this.ns+this.long0);a.x=d;a.y=b;return a}};
Proj4js.Proj.laea={S_POLE:1,N_POLE:2,EQUIT:3,OBLIQ:4,init:function(){var a=Math.abs(this.lat0);this.mode=Math.abs(a-Proj4js.common.HALF_PI)<Proj4js.common.EPSLN?0>this.lat0?this.S_POLE:this.N_POLE:Math.abs(a)<Proj4js.common.EPSLN?this.EQUIT:this.OBLIQ;if(0<this.es)switch(this.qp=Proj4js.common.qsfnz(this.e,1),this.mmf=0.5/(1-this.es),this.apa=this.authset(this.es),this.mode){case this.N_POLE:case this.S_POLE:this.dd=1;break;case this.EQUIT:this.rq=Math.sqrt(0.5*this.qp);this.dd=1/this.rq;this.xmf=
1;this.ymf=0.5*this.qp;break;case this.OBLIQ:this.rq=Math.sqrt(0.5*this.qp),a=Math.sin(this.lat0),this.sinb1=Proj4js.common.qsfnz(this.e,a)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*a*a)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd}else if(this.mode==this.OBLIQ)this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0)},forward:function(a){var b,c,d=a.x,e=a.y,d=Proj4js.common.adjust_lon(d-this.long0);if(this.sphere){var f,
g,j;j=Math.sin(e);g=Math.cos(e);f=Math.cos(d);switch(this.mode){case this.OBLIQ:case this.EQUIT:c=this.mode==this.EQUIT?1+g*f:1+this.sinph0*j+this.cosph0*g*f;if(c<=Proj4js.common.EPSLN)return Proj4js.reportError("laea:fwd:y less than eps"),null;c=Math.sqrt(2/c);b=c*g*Math.sin(d);c*=this.mode==this.EQUIT?j:this.cosph0*j-this.sinph0*g*f;break;case this.N_POLE:f=-f;case this.S_POLE:if(Math.abs(e+this.phi0)<Proj4js.common.EPSLN)return Proj4js.reportError("laea:fwd:phi < eps"),null;c=Proj4js.common.FORTPI-
0.5*e;c=2*(this.mode==this.S_POLE?Math.cos(c):Math.sin(c));b=c*Math.sin(d);c*=f}}else{var k=g=0,m=0;f=Math.cos(d);d=Math.sin(d);j=Math.sin(e);j=Proj4js.common.qsfnz(this.e,j);if(this.mode==this.OBLIQ||this.mode==this.EQUIT)g=j/this.qp,k=Math.sqrt(1-g*g);switch(this.mode){case this.OBLIQ:m=1+this.sinb1*g+this.cosb1*k*f;break;case this.EQUIT:m=1+k*f;break;case this.N_POLE:m=Proj4js.common.HALF_PI+e;j=this.qp-j;break;case this.S_POLE:m=e-Proj4js.common.HALF_PI,j=this.qp+j}if(Math.abs(m)<Proj4js.common.EPSLN)return Proj4js.reportError("laea:fwd:b < eps"),
null;switch(this.mode){case this.OBLIQ:case this.EQUIT:m=Math.sqrt(2/m);c=this.mode==this.OBLIQ?this.ymf*m*(this.cosb1*g-this.sinb1*k*f):(m=Math.sqrt(2/(1+k*f)))*g*this.ymf;b=this.xmf*m*k*d;break;case this.N_POLE:case this.S_POLE:0<=j?(b=(m=Math.sqrt(j))*d,c=f*(this.mode==this.S_POLE?m:-m)):b=c=0}}a.x=this.a*b+this.x0;a.y=this.a*c+this.y0;return a},inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=a.x/this.a,c=a.y/this.a,d;if(this.sphere){var e=0,f,g=0;f=Math.sqrt(b*b+c*c);d=0.5*f;if(1<d)return Proj4js.reportError("laea:Inv:DataError"),
null;d=2*Math.asin(d);if(this.mode==this.OBLIQ||this.mode==this.EQUIT)g=Math.sin(d),e=Math.cos(d);switch(this.mode){case this.EQUIT:d=Math.abs(f)<=Proj4js.common.EPSLN?0:Math.asin(c*g/f);b*=g;c=e*f;break;case this.OBLIQ:d=Math.abs(f)<=Proj4js.common.EPSLN?this.phi0:Math.asin(e*sinph0+c*g*cosph0/f);b*=g*cosph0;c=(e-Math.sin(d)*sinph0)*f;break;case this.N_POLE:c=-c;d=Proj4js.common.HALF_PI-d;break;case this.S_POLE:d-=Proj4js.common.HALF_PI}b=0==c&&(this.mode==this.EQUIT||this.mode==this.OBLIQ)?0:Math.atan2(b,
c)}else{d=0;switch(this.mode){case this.EQUIT:case this.OBLIQ:b/=this.dd;c*=this.dd;g=Math.sqrt(b*b+c*c);if(g<Proj4js.common.EPSLN)return a.x=0,a.y=this.phi0,a;f=2*Math.asin(0.5*g/this.rq);e=Math.cos(f);b*=f=Math.sin(f);this.mode==this.OBLIQ?(d=e*this.sinb1+c*f*this.cosb1/g,c=g*this.cosb1*e-c*this.sinb1*f):(d=c*f/g,c=g*e);break;case this.N_POLE:c=-c;case this.S_POLE:d=b*b+c*c;if(!d)return a.x=0,a.y=this.phi0,a;d=1-d/this.qp;this.mode==this.S_POLE&&(d=-d)}b=Math.atan2(b,c);d=this.authlat(Math.asin(d),
this.apa)}a.x=Proj4js.common.adjust_lon(this.long0+b);a.y=d;return a},P00:0.3333333333333333,P01:0.17222222222222222,P02:0.10257936507936508,P10:0.06388888888888888,P11:0.0664021164021164,P20:0.016415012942191543,authset:function(a){var b,c=[];c[0]=a*this.P00;b=a*a;c[0]+=b*this.P01;c[1]=b*this.P10;b*=a;c[0]+=b*this.P02;c[1]+=b*this.P11;c[2]=b*this.P20;return c},authlat:function(a,b){var c=a+a;return a+b[0]*Math.sin(c)+b[1]*Math.sin(c+c)+b[2]*Math.sin(c+c+c)}};
Proj4js.Proj.aeqd={init:function(){this.sin_p12=Math.sin(this.lat0);this.cos_p12=Math.cos(this.lat0)},forward:function(a){var b=a.x,c,d=Math.sin(a.y),e=Math.cos(a.y),b=Proj4js.common.adjust_lon(b-this.long0),f=Math.cos(b),g=this.sin_p12*d+this.cos_p12*e*f;if(Math.abs(Math.abs(g)-1)<Proj4js.common.EPSLN){if(c=1,0>g){Proj4js.reportError("aeqd:Fwd:PointError");return}}else c=Math.acos(g),c/=Math.sin(c);a.x=this.x0+this.a*c*e*Math.sin(b);a.y=this.y0+this.a*c*(this.cos_p12*d-this.sin_p12*e*f);return a},
inverse:function(a){a.x-=this.x0;a.y-=this.y0;var b=Math.sqrt(a.x*a.x+a.y*a.y);if(b>2*Proj4js.common.HALF_PI*this.a)Proj4js.reportError("aeqdInvDataError");else{var c=b/this.a,d=Math.sin(c),c=Math.cos(c),e=this.long0,f;if(Math.abs(b)<=Proj4js.common.EPSLN)f=this.lat0;else{f=Proj4js.common.asinz(c*this.sin_p12+a.y*d*this.cos_p12/b);var g=Math.abs(this.lat0)-Proj4js.common.HALF_PI;Math.abs(g)<=Proj4js.common.EPSLN?e=0<=lat0?Proj4js.common.adjust_lon(this.long0+Math.atan2(a.x,-a.y)):Proj4js.common.adjust_lon(this.long0-
Math.atan2(-a.x,a.y)):(g=c-this.sin_p12*Math.sin(f),Math.abs(g)<Proj4js.common.EPSLN&&Math.abs(a.x)<Proj4js.common.EPSLN||(Math.atan2(a.x*d*this.cos_p12,g*b),e=Proj4js.common.adjust_lon(this.long0+Math.atan2(a.x*d*this.cos_p12,g*b))))}a.x=e;a.y=f;return a}}};
Proj4js.Proj.moll={init:function(){},forward:function(a){for(var b=a.y,c=Proj4js.common.adjust_lon(a.x-this.long0),d=b,e=Proj4js.common.PI*Math.sin(b),f=0;;f++){var g=-(d+Math.sin(d)-e)/(1+Math.cos(d)),d=d+g;if(Math.abs(g)<Proj4js.common.EPSLN)break;50<=f&&Proj4js.reportError("moll:Fwd:IterationError")}d/=2;Proj4js.common.PI/2-Math.abs(b)<Proj4js.common.EPSLN&&(c=0);b=0.900316316158*this.a*c*Math.cos(d)+this.x0;d=1.4142135623731*this.a*Math.sin(d)+this.y0;a.x=b;a.y=d;return a},inverse:function(a){var b;
a.x-=this.x0;b=a.y/(1.4142135623731*this.a);0.999999999999<Math.abs(b)&&(b=0.999999999999);b=Math.asin(b);var c=Proj4js.common.adjust_lon(this.long0+a.x/(0.900316316158*this.a*Math.cos(b)));c<-Proj4js.common.PI&&(c=-Proj4js.common.PI);if(c>Proj4js.common.PI)c=Proj4js.common.PI;b=(2*b+Math.sin(2*b))/Proj4js.common.PI;1<Math.abs(b)&&(b=1);b=Math.asin(b);a.x=c;a.y=b;return a}};var Markdown;Markdown="object"===typeof exports&&"function"===typeof require?exports:{};
(function(){function a(a){return a}function b(){return!1}function c(){}function d(){}c.prototype={chain:function(b,c){var d=this[b];if(!d)throw Error("unknown hook "+b);this[b]=d===a?c:function(a){return c(d(a))}},set:function(a,b){if(!this[a])throw Error("unknown hook "+a);this[a]=b},addNoop:function(b){this[b]=a},addFalse:function(a){this[a]=b}};Markdown.HookCollection=c;d.prototype={set:function(a,b){this["s_"+a]=b},get:function(a){return this["s_"+a]}};Markdown.Converter=function(){function a(b){return b=
b.replace(/^[ ]{0,3}\[(.+)\]:[ \t]*\n?[ \t]*<?(\S+?)>?(?=\s|$)[ \t]*\n?[ \t]*((\n*)["(](.+?)[")][ \t]*)?(?:\n+)/gm,function(a,b,c,d,e,f){b=b.toLowerCase();h.set(b,x(c));if(e)return d;f&&O.set(b,f.replace(/"/g,"""));return""})}function b(a){a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math|ins|del)\b[^\r]*?\n<\/\2>[ \t]*(?=\n+))/gm,g);a=a.replace(/^(<(p|div|h[1-6]|blockquote|pre|table|dl|ol|ul|script|noscript|form|fieldset|iframe|math)\b[^\r]*?.*<\/\2>[ \t]*(?=\n+)\n)/gm,
g);a=a.replace(/\n[ ]{0,3}((<(hr)\b([^<>])*?\/?>)[ \t]*(?=\n{2,}))/g,g);a=a.replace(/\n\n[ ]{0,3}(<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>[ \t]*(?=\n{2,}))/g,g);return a=a.replace(/(?:\n\n)([ ]{0,3}(?:<([?%])[^\r]*?\2>)[ \t]*(?=\n{2,}))/g,g)}function g(a,b){var c;c=b.replace(/^\n+/,"");c=c.replace(/\n+$/g,"");return c="\n\n~K"+(W.push(c)-1)+"K\n\n"}function j(a,c){a=q(a);a=a.replace(/^[ ]{0,2}([ ]?\*[ ]?){3,}[ \t]*$/gm,"<hr />\n");a=a.replace(/^[ ]{0,2}([ ]?-[ ]?){3,}[ \t]*$/gm,"<hr />\n");a=
a.replace(/^[ ]{0,2}([ ]?_[ ]?){3,}[ \t]*$/gm,"<hr />\n");a=o(a);a=u(a);a=J(a);a=b(a);return a=F(a,c)}function k(a){a=A(a);a=m(a);a=a.replace(/\\(\\)/g,T);a=a.replace(/\\([`*_{}\[\]()>#+-.!])/g,T);a=a.replace(/(!\[(.*?)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,n);a=a.replace(/(!\[(.*?)\]\s?\([ \t]*()<?(\S+?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,n);a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\][ ]?(?:\n[ ]*)?\[(.*?)\])()()()()/g,s);a=a.replace(/(\[((?:\[[^\]]*\]|[^\[\]])*)\]\([ \t]*()<?((?:\([^)]*\)|[^()])*?)>?[ \t]*((['"])(.*?)\6[ \t]*)?\))/g,
s);a=a.replace(/(\[([^\[\]]+)\])()()()()()/g,s);a=E(a);a=a.replace(/~P/g,"://");a=x(a);a=a.replace(/([\W_]|^)(\*\*|__)(?=\S)([^\r]*?\S[\*_]*)\2([\W_]|$)/g,"$1<strong>$3</strong>$4");a=a.replace(/([\W_]|^)(\*|_)(?=\S)([^\r\*_]*?\S)\2([\W_]|$)/g,"$1<em>$3</em>$4");return a=a.replace(/ +\n/g," <br>\n")}function m(a){return a=a.replace(/(<[a-z\/!$]("[^"]*"|'[^']*'|[^'">])*>|<!(--(?:|(?:[^>-]|-[^>])(?:[^-]|-[^-])*)--)>)/gi,function(a){var b=a.replace(/(.)<\/?code>(?=.)/g,"$1`");return b=w(b,"!"==a.charAt(1)?
"\\`*_/":"\\`*_")})}function s(a,b,c,d,e,f,g,j){void 0==j&&(j="");a=c.replace(/:\/\//g,"~P");d=d.toLowerCase();if(""==e)if(""==d&&(d=a.toLowerCase().replace(/ ?\n/g," ")),void 0!=h.get(d))e=h.get(d),void 0!=O.get(d)&&(j=O.get(d));else if(-1<b.search(/\(\s*\)$/m))e="";else return b;e=S(e);e=w(e,"*_");b='<a href="'+e+'"';""!=j&&(j=j.replace(/"/g,"""),j=w(j,"*_"),b+=' title="'+j+'"');return b+(">"+a+"</a>")}function n(a,b,c,d,e,f,g,j){a=c;d=d.toLowerCase();j||(j="");if(""==e)if(""==d&&(d=a.toLowerCase().replace(/ ?\n/g,
" ")),void 0!=h.get(d))e=h.get(d),void 0!=O.get(d)&&(j=O.get(d));else return b;a=w(a.replace(/"/g,"""),"*_[]()");e=w(e,"*_");b='<img src="'+e+'" alt="'+a+'"';j=j.replace(/"/g,""");j=w(j,"*_");return b+(' title="'+j+'"')+" />"}function q(a){a=a.replace(/^(.+)[ \t]*\n=+[ \t]*\n+/gm,function(a,b){return"<h1>"+k(b)+"</h1>\n\n"});a=a.replace(/^(.+)[ \t]*\n-+[ \t]*\n+/gm,function(a,b){return"<h2>"+k(b)+"</h2>\n\n"});return a=a.replace(/^(\#{1,6})[ \t]*(.+?)[ \t]*\#*\n+/gm,function(a,b,c){a=b.length;
return"<h"+a+">"+k(c)+"</h"+a+">\n\n"})}function o(a){var a=a+"~0",b=/^(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/gm;ca?a=a.replace(b,function(a,b,c){a=-1<c.search(/[*+-]/g)?"ul":"ol";b=p(b,a);b=b.replace(/\s+$/,"");return"<"+a+">"+b+"</"+a+">\n"}):(b=/(\n\n|^\n?)(([ ]{0,3}([*+-]|\d+[.])[ \t]+)[^\r]+?(~0|\n{2,}(?=\S)(?![ \t]*(?:[*+-]|\d+[.])[ \t]+)))/g,a=a.replace(b,function(a,b,c,d){a=-1<d.search(/[*+-]/g)?"ul":"ol";c=p(c,a);return b+"<"+a+">\n"+c+"</"+
a+">\n"}));return a=a.replace(/~0/,"")}function p(a,b){ca++;var a=a.replace(/\n{2,}$/,"\n"),c=ra[b],d=!1,a=(a+"~0").replace(RegExp("(^[ \\t]*)("+c+")[ \\t]+([^\\r]+?(\\n+))(?=(~0|\\1("+c+")[ \\t]+))","gm"),function(a,b,c,e){a=e;(b=/\n\n$/.test(a))||-1<a.search(/\n{2,}/)||d?a=j(K(a),!0):(a=o(K(a)),a=a.replace(/\n$/,""),a=k(a));d=b;return"<li>"+a+"</li>\n"}),a=a.replace(/~0/g,"");ca--;return a}function u(a){a=(a+"~0").replace(/(?:\n\n|^)((?:(?:[ ]{4}|\t).*\n+)+)(\n*[ ]{0,3}[^ \t\n]|(?=~0))/g,function(a,
b,c){a=y(K(b));a=V(a);a=a.replace(/^\n+/g,"");a=a.replace(/\n+$/g,"");return"\n\n"+("<pre><code>"+a+"\n</code></pre>")+"\n\n"+c});return a=a.replace(/~0/,"")}function D(a){a=a.replace(/(^\n+|\n+$)/g,"");return"\n\n~K"+(W.push(a)-1)+"K\n\n"}function A(a){return a=a.replace(/(^|[^\\])(`+)([^\r]*?[^`])\2(?!`)/gm,function(a,b,c,d){a=d.replace(/^([ \t]*)/g,"");a=a.replace(/[ \t]*$/g,"");a=y(a);a=a.replace(/:\/\//g,"~P");return b+"<code>"+a+"</code>"})}function y(a){a=a.replace(/&/g,"&");a=a.replace(/</g,
"<");a=a.replace(/>/g,">");return a=w(a,"*_{}[]\\",!1)}function J(a){return a=a.replace(/((^[ \t]*>[ \t]?.+\n(.+\n)*\n*)+)/gm,function(a,b){var c;c=b.replace(/^[ \t]*>[ \t]?/gm,"~0");c=c.replace(/~0/g,"");c=c.replace(/^[ \t]+$/gm,"");c=j(c);c=c.replace(/(^|\n)/g,"$1 ");c=c.replace(/(\s*<pre>[^\r]+?<\/pre>)/gm,function(a,b){var c;c=b.replace(/^ /mg,"~0");return c=c.replace(/~0/g,"")});return D("<blockquote>\n"+c+"\n</blockquote>")})}function F(a,b){for(var a=a.replace(/^\n+/g,""),a=a.replace(/\n+$/g,
""),c=a.split(/\n{2,}/g),d=[],e=/~K(\d+)K/,f=c.length,g=0;g<f;g++){var h=c[g];e.test(h)?d.push(h):/\S/.test(h)&&(h=k(h),h=h.replace(/^([ \t]*)/g,"<p>"),h+="</p>",d.push(h))}if(!b){f=d.length;for(g=0;g<f;g++)for(var j=!0;j;)j=!1,d[g]=d[g].replace(/~K(\d+)K/g,function(a,b){j=!0;return W[b]})}return d.join("\n\n")}function x(a){a=a.replace(/&(?!#?[xX]?(?:[0-9a-fA-F]+|\w+);)/g,"&");return a=a.replace(/<(?![a-z\/?\$!])/gi,"<")}function E(a){a=a.replace(/(^|\s)(https?|ftp)(:\/\/[-A-Z0-9+&@#\/%?=~_|\[\]\(\)!:,\.;]*[-A-Z0-9+&@#\/%=~_|\[\]])($|\W)/gi,
"$1<$2$3>$4");return a=a.replace(/<((https?|ftp):[^'">\s]+)>/gi,function(a,b){return'<a href="'+b+'">'+Q.plainLinkText(b)+"</a>"})}function B(a){return a=a.replace(/~E(\d+)E/g,function(a,b){var c=parseInt(b);return String.fromCharCode(c)})}function K(a){a=a.replace(/^(\t|[ ]{1,4})/gm,"~0");return a=a.replace(/~0/g,"")}function V(a){if(!/\t/.test(a))return a;var b=[" "," "," "," "],c=0,d;return a.replace(/[\n\t]/g,function(a,e){if("\n"===a)return c=e+1,a;d=(e-c)%4;c=e+1;return b[d]})}function S(a){if(!a)return"";
var b=a.length;return a.replace(la,function(c,d){return"~D"==c?"%24":":"==c&&(d==b-1||/[0-9\/]/.test(a.charAt(d+1)))?":":"%"+c.charCodeAt(0).toString(16)})}function w(a,b,c){b="(["+b.replace(/([\[\]\\])/g,"\\$1")+"])";c&&(b="\\\\"+b);return a=a.replace(RegExp(b,"g"),T)}function T(a,b){return"~E"+b.charCodeAt(0)+"E"}var Q=this.hooks=new c;Q.addNoop("plainLinkText");Q.addNoop("preConversion");Q.addNoop("postConversion");var h,O,W,ca;this.makeHtml=function(c){if(h)throw Error("Recursive call to converter.makeHtml");
h=new d;O=new d;W=[];ca=0;c=Q.preConversion(c);c=c.replace(/~/g,"~T");c=c.replace(/\$/g,"~D");c=c.replace(/\r\n/g,"\n");c=c.replace(/\r/g,"\n");c=V("\n\n"+c+"\n\n");c=c.replace(/^[ \t]+$/mg,"");c=b(c);c=a(c);c=j(c);c=B(c);c=c.replace(/~D/g,"$$");c=c.replace(/~T/g,"~");c=Q.postConversion(c);W=O=h=null;return c};var ra={ol:"\\d+[.]",ul:"[*+-]"},la=/(?:["'*()[\]:]|~D)/g}})();(function(){function a(a){return a.replace(/<[^>]*>?/gi,b)}function b(a){return a.match(f)||a.match(g)||a.match(j)?a:""}function c(a){if(""==a)return"";var b=/<\/?\w+[^>]*(\s|$|>)/g,c=a.toLowerCase().match(b),d=(c||[]).length;if(0==d)return a;for(var e,f,g,j=[],D=[],A=!1,y=0;y<d;y++)if(e=c[y].replace(/<\/?(\w+).*/,"$1"),!(j[y]||-1<"<p><img><br><li><hr>".search("<"+e+">"))){f=c[y];g=-1;if(!/^<\//.test(f))for(f=y+1;f<d;f++)if(!j[f]&&c[f]=="</"+e+">"){g=f;break}-1==g?A=D[y]=!0:j[g]=!0}if(!A)return a;
y=0;return a=a.replace(b,function(a){a=D[y]?"":a;y++;return a})}var d,e;"object"===typeof exports&&"function"===typeof require?(d=exports,e=require("./Markdown.Converter").Converter):(d=window.Markdown,e=d.Converter);d.getSanitizingConverter=function(){var b=new e;b.hooks.chain("postConversion",a);b.hooks.chain("postConversion",c);return b};var f=/^(<\/?(b|blockquote|code|del|dd|dl|dt|em|h1|h2|h3|i|kbd|li|ol|p|pre|s|sup|sub|strong|strike|ul)>|<(br|hr)\s?\/?>)$/i,g=/^(<a\shref="((https?|ftp):\/\/|\/)[-A-Za-z0-9+&@#\/%?=~_|!:,.;\(\)]+"(\stitle="[^"<>]+")?\s?>|<\/a>)$/i,
j=/^(<img\ssrc="(https?:\/\/|\/)[-A-Za-z0-9+&@#\/%?=~_|!:,.;\(\)]+"(\swidth="\d{1,3}")?(\sheight="\d{1,3}")?(\salt="[^"<>]*")?(\stitle="[^"<>]*")?\s?\/?>)$/i})();var html4={},html,html_sanitize;html4.atype={NONE:0,URI:1,URI_FRAGMENT:11,SCRIPT:2,STYLE:3,ID:4,IDREF:5,IDREFS:6,GLOBAL_NAME:7,LOCAL_NAME:8,CLASSES:9,FRAME_TARGET:10};
html4.ATTRIBS={"*::class":9,"*::dir":0,"*::id":4,"*::lang":0,"*::onclick":2,"*::ondblclick":2,"*::onkeydown":2,"*::onkeypress":2,"*::onkeyup":2,"*::onload":2,"*::onmousedown":2,"*::onmousemove":2,"*::onmouseout":2,"*::onmouseover":2,"*::onmouseup":2,"*::style":3,"*::title":0,"a::accesskey":0,"a::coords":0,"a::href":1,"a::hreflang":0,"a::name":7,"a::onblur":2,"a::onfocus":2,"a::rel":0,"a::rev":0,"a::shape":0,"a::tabindex":0,"a::target":10,"a::type":0,"area::accesskey":0,"area::alt":0,"area::coords":0,
"area::href":1,"area::nohref":0,"area::onblur":2,"area::onfocus":2,"area::shape":0,"area::tabindex":0,"area::target":10,"bdo::dir":0,"blockquote::cite":1,"br::clear":0,"button::accesskey":0,"button::disabled":0,"button::name":8,"button::onblur":2,"button::onfocus":2,"button::tabindex":0,"button::type":0,"button::value":0,"canvas::height":0,"canvas::width":0,"caption::align":0,"col::align":0,"col::char":0,"col::charoff":0,"col::span":0,"col::valign":0,"col::width":0,"colgroup::align":0,"colgroup::char":0,
"colgroup::charoff":0,"colgroup::span":0,"colgroup::valign":0,"colgroup::width":0,"del::cite":1,"del::datetime":0,"dir::compact":0,"div::align":0,"dl::compact":0,"font::color":0,"font::face":0,"font::size":0,"form::accept":0,"form::action":1,"form::autocomplete":0,"form::enctype":0,"form::method":0,"form::name":7,"form::onreset":2,"form::onsubmit":2,"form::target":10,"h1::align":0,"h2::align":0,"h3::align":0,"h4::align":0,"h5::align":0,"h6::align":0,"hr::align":0,"hr::noshade":0,"hr::size":0,"hr::width":0,
"iframe::align":0,"iframe::frameborder":0,"iframe::height":0,"iframe::marginheight":0,"iframe::marginwidth":0,"iframe::width":0,"img::align":0,"img::alt":0,"img::border":0,"img::height":0,"img::hspace":0,"img::ismap":0,"img::name":7,"img::src":1,"img::usemap":11,"img::vspace":0,"img::width":0,"input::accept":0,"input::accesskey":0,"input::align":0,"input::alt":0,"input::autocomplete":0,"input::checked":0,"input::disabled":0,"input::ismap":0,"input::maxlength":0,"input::name":8,"input::onblur":2,"input::onchange":2,
"input::onfocus":2,"input::onselect":2,"input::readonly":0,"input::size":0,"input::src":1,"input::tabindex":0,"input::type":0,"input::usemap":11,"input::value":0,"ins::cite":1,"ins::datetime":0,"label::accesskey":0,"label::for":5,"label::onblur":2,"label::onfocus":2,"legend::accesskey":0,"legend::align":0,"li::type":0,"li::value":0,"map::name":7,"menu::compact":0,"ol::compact":0,"ol::start":0,"ol::type":0,"optgroup::disabled":0,"optgroup::label":0,"option::disabled":0,"option::label":0,"option::selected":0,
"option::value":0,"p::align":0,"pre::width":0,"q::cite":1,"select::disabled":0,"select::multiple":0,"select::name":8,"select::onblur":2,"select::onchange":2,"select::onfocus":2,"select::size":0,"select::tabindex":0,"table::align":0,"table::bgcolor":0,"table::border":0,"table::cellpadding":0,"table::cellspacing":0,"table::frame":0,"table::rules":0,"table::summary":0,"table::width":0,"tbody::align":0,"tbody::char":0,"tbody::charoff":0,"tbody::valign":0,"td::abbr":0,"td::align":0,"td::axis":0,"td::bgcolor":0,
"td::char":0,"td::charoff":0,"td::colspan":0,"td::headers":6,"td::height":0,"td::nowrap":0,"td::rowspan":0,"td::scope":0,"td::valign":0,"td::width":0,"textarea::accesskey":0,"textarea::cols":0,"textarea::disabled":0,"textarea::name":8,"textarea::onblur":2,"textarea::onchange":2,"textarea::onfocus":2,"textarea::onselect":2,"textarea::readonly":0,"textarea::rows":0,"textarea::tabindex":0,"tfoot::align":0,"tfoot::char":0,"tfoot::charoff":0,"tfoot::valign":0,"th::abbr":0,"th::align":0,"th::axis":0,"th::bgcolor":0,
"th::char":0,"th::charoff":0,"th::colspan":0,"th::headers":6,"th::height":0,"th::nowrap":0,"th::rowspan":0,"th::scope":0,"th::valign":0,"th::width":0,"thead::align":0,"thead::char":0,"thead::charoff":0,"thead::valign":0,"tr::align":0,"tr::bgcolor":0,"tr::char":0,"tr::charoff":0,"tr::valign":0,"ul::compact":0,"ul::type":0};html4.eflags={OPTIONAL_ENDTAG:1,EMPTY:2,CDATA:4,RCDATA:8,UNSAFE:16,FOLDABLE:32,SCRIPT:64,STYLE:128};
html4.ELEMENTS={a:0,abbr:0,acronym:0,address:0,applet:16,area:2,b:0,base:18,basefont:18,bdo:0,big:0,blockquote:0,body:49,br:2,button:0,canvas:0,caption:0,center:0,cite:0,code:0,col:2,colgroup:1,dd:1,del:0,dfn:0,dir:0,div:0,dl:0,dt:1,em:0,fieldset:0,font:0,form:0,frame:18,frameset:16,h1:0,h2:0,h3:0,h4:0,h5:0,h6:0,head:49,hr:2,html:49,i:0,iframe:4,img:2,input:2,ins:0,isindex:18,kbd:0,label:0,legend:0,li:1,link:18,map:0,menu:0,meta:18,nobr:0,noframes:20,noscript:20,object:16,ol:0,optgroup:0,option:1,
p:1,param:18,pre:0,q:0,s:0,samp:0,script:84,select:0,small:0,span:0,strike:0,strong:0,style:148,sub:0,sup:0,table:0,tbody:1,td:1,textarea:8,tfoot:1,th:1,thead:1,title:24,tr:1,tt:0,u:0,ul:0,"var":0};html4.ueffects={NOT_LOADED:0,SAME_DOCUMENT:1,NEW_DOCUMENT:2};html4.URIEFFECTS={"a::href":2,"area::href":2,"blockquote::cite":0,"body::background":1,"del::cite":0,"form::action":2,"img::src":1,"input::src":1,"ins::cite":0,"q::cite":0};html4.ltypes={UNSANDBOXED:2,SANDBOXED:1,DATA:0};
html4.LOADERTYPES={"a::href":2,"area::href":2,"blockquote::cite":2,"body::background":1,"del::cite":2,"form::action":2,"img::src":1,"input::src":1,"ins::cite":2,"q::cite":2};
html=function(a){function b(a,b){var c=b,d;return c=D(c),j.hasOwnProperty(c)?j[c]:(d=c.match(n),d?String.fromCharCode(parseInt(d[1],10)):(d=c.match(u))?String.fromCharCode(parseInt(d[1],16)):"")}function c(a){return a.replace(q,b)}function d(a){return a.replace(s,"&").replace(y,"<").replace(p,">").replace(F,""").replace(o,"=")}function e(a){return a.replace(A,"&$1").replace(y,"<").replace(p,">")}function f(b){return function(d,f){var g,j,n,q,p,o,h,u,s,y;for(d=""+d,o=null,
h=!1,j=[],y=void 0,p=void 0,s=void 0,b.startDoc&&b.startDoc(f);d;)if(u=d.match(h?k:m),d=d.substring(u[0].length),h)if(u[1]){g=D(u[1]);if(u[2]){q=u[3];switch(q.charCodeAt(0)){case 34:case 39:q=q.substring(1,q.length-1)}q=c(q.replace(J,""))}else q=g;j.push(g,q)}else{if(u[4])void 0!==p&&(s?b.startTag&&b.startTag(y,j,f):b.endTag&&b.endTag(y,f)),s&&p&(a.eflags.CDATA|a.eflags.RCDATA)&&(null===o?o=D(d):o=o.substring(o.length-d.length),n=o.indexOf("</"+y),0>n&&(n=d.length),p&a.eflags.CDATA?b.cdata&&b.cdata(d.substring(0,
n),f):b.rcdata&&b.rcdata(e(d.substring(0,n)),f),d=d.substring(n)),y=p=s=void 0,j.length=0,h=!1}else if(u[1])b.pcdata&&b.pcdata(u[0],f);else if(u[3])s=!u[2],h=!0,y=D(u[3]),p=a.ELEMENTS.hasOwnProperty(y)?a.ELEMENTS[y]:void 0;else if(u[4])b.pcdata&&b.pcdata(u[4],f);else if(u[5]&&b.pcdata)switch(u[5]){case "<":b.pcdata("<",f);break;case ">":b.pcdata(">",f);break;default:b.pcdata("&",f)}b.endDoc&&b.endDoc(f)}}function g(b){var c,e;return f({startDoc:function(){e=[];c=!1},startTag:function(f,
g,j){var k,n,q;if(!c&&a.ELEMENTS.hasOwnProperty(f)&&(n=a.ELEMENTS[f],!(n&a.eflags.FOLDABLE))){if(n&a.eflags.UNSAFE)return c=!(n&a.eflags.EMPTY),void 0;if(g=b(f,g)){n&a.eflags.EMPTY||e.push(f);j.push("<",f);for(f=0,n=g.length;f<n;f+=2)k=g[f],q=g[f+1],null!==q&&void 0!==q&&j.push(" ",k,'="',d(q),'"');j.push(">")}}},endTag:function(b,d){var f,g,j;if(c)return c=!1,void 0;if(a.ELEMENTS.hasOwnProperty(b)&&(f=a.ELEMENTS[b],!(f&(a.eflags.UNSAFE|a.eflags.EMPTY|a.eflags.FOLDABLE)))){if(f&a.eflags.OPTIONAL_ENDTAG)for(g=
e.length;0<=--g;){j=e[g];if(j===b)break;if(!(a.ELEMENTS[j]&a.eflags.OPTIONAL_ENDTAG))return}else for(g=e.length;0<=--g&&!(e[g]===b););if(!(0>g)){for(f=e.length;--f>g;)j=e[f],a.ELEMENTS[j]&a.eflags.OPTIONAL_ENDTAG||d.push("</",j,">");e.length=g;d.push("</",b,">")}}},pcdata:function(a,b){c||b.push(a)},rcdata:function(a,b){c||b.push(a)},cdata:function(a,b){c||b.push(a)},endDoc:function(a){var b;for(b=e.length;0<=--b;)a.push("</",e[b],">");e.length=0}})}var j,k,m,s,n,q,o,p,u,D,A,y,J,F;D=function(a){return a.toLowerCase()};
j={lt:"<",gt:">",amp:"&",nbsp:"\u00a0",quot:'"',apos:"'"};n=/^#(\d+)$/;u=/^#x([0-9A-Fa-f]+)$/;J=/\0/g;q=/&(#\d+|#x[0-9A-Fa-f]+|\w+);/g;s=/&/g;A=/&([^a-z#]|#(?:[^0-9x]|x(?:[^0-9a-f]|$)|$)|$)/gi;y=/</g;p=/>/g;F=/\"/g;o=/\=/g;k=RegExp("^\\s*(?:(?:([a-z][a-z-]*)(\\s*=\\s*(\"[^\"]*\"|'[^']*'|(?=[a-z][a-z-]*\\s*=)|[^>\"'\\s]*))?)|(/?>)|[\\s\\S][^a-z\\s>]*)","i");m=RegExp("^(?:&(\\#[0-9]+|\\#[x][0-9a-f]+|\\w+);|<\!--[\\s\\S]*?--\>|<!\\w[^>]*>|<\\?[^>*]*>|<(/)?([a-z][a-z0-9]*)|([^<&>]+)|([<&>]))","i");return{escapeAttrib:d,
makeHtmlSanitizer:g,makeSaxParser:f,normalizeRCData:e,sanitize:function(b,c,d){var e=[];return g(function(b,e){var f,g,j,h,k;for(h=0;h<e.length;h+=2){g=e[h];k=e[h+1];j=null;((f=b+"::"+g,a.ATTRIBS.hasOwnProperty(f))||(f="*::"+g,a.ATTRIBS.hasOwnProperty(f)))&&(j=a.ATTRIBS[f]);if(null!==j)switch(j){case a.atype.NONE:break;case a.atype.SCRIPT:case a.atype.STYLE:k=null;break;case a.atype.ID:case a.atype.IDREF:case a.atype.IDREFS:case a.atype.GLOBAL_NAME:case a.atype.LOCAL_NAME:case a.atype.CLASSES:k=d?
d(k):k;break;case a.atype.URI:k=c&&c(k);break;case a.atype.URI_FRAGMENT:k&&"#"===k.charAt(0)?(k=d?d(k):k,k&&(k="#"+k)):k=null;break;default:k=null}else k=null;e[h+1]=k}return e})(b,e),e.join("")},unescapeEntities:c}}(html4);html_sanitize=html.sanitize;(function(a){a.fn.qrcode=function(b){var c;function d(a){this.mode=c;this.data=a}function e(a,b){this.typeNumber=a;this.errorCorrectLevel=b;this.modules=null;this.moduleCount=0;this.dataCache=null;this.dataList=[]}function f(a,b){if(void 0==a.length)throw Error(a.length+"/"+b);for(var c=0;c<a.length&&0==a[c];)c++;this.num=Array(a.length-c+b);for(var d=0;d<a.length-c;d++)this.num[d]=a[d+c]}function g(a,b){this.totalCount=a;this.dataCount=b}function j(){this.buffer=[];this.length=0}d.prototype={getLength:function(){return this.data.length},
write:function(a){for(var b=0;b<this.data.length;b++)a.put(this.data.charCodeAt(b),8)}};e.prototype={addData:function(a){this.dataList.push(new d(a));this.dataCache=null},isDark:function(a,b){if(0>a||this.moduleCount<=a||0>b||this.moduleCount<=b)throw Error(a+","+b);return this.modules[a][b]},getModuleCount:function(){return this.moduleCount},make:function(){if(1>this.typeNumber){for(var a=1,a=1;40>a;a++){for(var b=g.getRSBlocks(a,this.errorCorrectLevel),c=new j,d=0,e=0;e<b.length;e++)d+=b[e].dataCount;
for(e=0;e<this.dataList.length;e++)b=this.dataList[e],c.put(b.mode,4),c.put(b.getLength(),k.getLengthInBits(b.mode,a)),b.write(c);if(c.getLengthInBits()<=8*d)break}this.typeNumber=a}this.makeImpl(!1,this.getBestMaskPattern())},makeImpl:function(a,b){this.moduleCount=4*this.typeNumber+17;this.modules=Array(this.moduleCount);for(var c=0;c<this.moduleCount;c++){this.modules[c]=Array(this.moduleCount);for(var d=0;d<this.moduleCount;d++)this.modules[c][d]=null}this.setupPositionProbePattern(0,0);this.setupPositionProbePattern(this.moduleCount-
7,0);this.setupPositionProbePattern(0,this.moduleCount-7);this.setupPositionAdjustPattern();this.setupTimingPattern();this.setupTypeInfo(a,b);7<=this.typeNumber&&this.setupTypeNumber(a);if(null==this.dataCache)this.dataCache=e.createData(this.typeNumber,this.errorCorrectLevel,this.dataList);this.mapData(this.dataCache,b)},setupPositionProbePattern:function(a,b){for(var c=-1;7>=c;c++)if(!(-1>=a+c||this.moduleCount<=a+c))for(var d=-1;7>=d;d++)-1>=b+d||this.moduleCount<=b+d||(this.modules[a+c][b+d]=
0<=c&&6>=c&&(0==d||6==d)||0<=d&&6>=d&&(0==c||6==c)||2<=c&&4>=c&&2<=d&&4>=d?!0:!1)},getBestMaskPattern:function(){for(var a=0,b=0,c=0;8>c;c++){this.makeImpl(!0,c);var d=k.getLostPoint(this);if(0==c||a>d)a=d,b=c}return b},createMovieClip:function(a,b,c){a=a.createEmptyMovieClip(b,c);this.make();for(b=0;b<this.modules.length;b++)for(var c=1*b,d=0;d<this.modules[b].length;d++){var e=1*d;this.modules[b][d]&&(a.beginFill(0,100),a.moveTo(e,c),a.lineTo(e+1,c),a.lineTo(e+1,c+1),a.lineTo(e,c+1),a.endFill())}return a},
setupTimingPattern:function(){for(var a=8;a<this.moduleCount-8;a++)null==this.modules[a][6]&&(this.modules[a][6]=0==a%2);for(a=8;a<this.moduleCount-8;a++)null==this.modules[6][a]&&(this.modules[6][a]=0==a%2)},setupPositionAdjustPattern:function(){for(var a=k.getPatternPosition(this.typeNumber),b=0;b<a.length;b++)for(var c=0;c<a.length;c++){var d=a[b],e=a[c];if(null==this.modules[d][e])for(var f=-2;2>=f;f++)for(var g=-2;2>=g;g++)this.modules[d+f][e+g]=-2==f||2==f||-2==g||2==g||0==f&&0==g?!0:!1}},setupTypeNumber:function(a){for(var b=
k.getBCHTypeNumber(this.typeNumber),c=0;18>c;c++){var d=!a&&1==(b>>c&1);this.modules[Math.floor(c/3)][c%3+this.moduleCount-8-3]=d}for(c=0;18>c;c++)d=!a&&1==(b>>c&1),this.modules[c%3+this.moduleCount-8-3][Math.floor(c/3)]=d},setupTypeInfo:function(a,b){for(var c=k.getBCHTypeInfo(this.errorCorrectLevel<<3|b),d=0;15>d;d++){var e=!a&&1==(c>>d&1);6>d?this.modules[d][8]=e:8>d?this.modules[d+1][8]=e:this.modules[this.moduleCount-15+d][8]=e}for(d=0;15>d;d++)e=!a&&1==(c>>d&1),8>d?this.modules[8][this.moduleCount-
d-1]=e:9>d?this.modules[8][15-d-1+1]=e:this.modules[8][15-d-1]=e;this.modules[this.moduleCount-8][8]=!a},mapData:function(a,b){for(var c=-1,d=this.moduleCount-1,e=7,f=0,g=this.moduleCount-1;0<g;g-=2)for(6==g&&g--;;){for(var j=0;2>j;j++)if(null==this.modules[d][g-j]){var m=!1;f<a.length&&(m=1==(a[f]>>>e&1));k.getMask(b,d,g-j)&&(m=!m);this.modules[d][g-j]=m;e--; -1==e&&(f++,e=7)}d+=c;if(0>d||this.moduleCount<=d){d-=c;c=-c;break}}}};e.PAD0=236;e.PAD1=17;e.createData=function(a,b,c){for(var b=g.getRSBlocks(a,
b),d=new j,f=0;f<c.length;f++){var m=c[f];d.put(m.mode,4);d.put(m.getLength(),k.getLengthInBits(m.mode,a));m.write(d)}for(f=a=0;f<b.length;f++)a+=b[f].dataCount;if(d.getLengthInBits()>8*a)throw Error("code length overflow. ("+d.getLengthInBits()+">"+8*a+")");for(d.getLengthInBits()+4<=8*a&&d.put(0,4);0!=d.getLengthInBits()%8;)d.putBit(!1);for(;!(d.getLengthInBits()>=8*a);){d.put(e.PAD0,8);if(d.getLengthInBits()>=8*a)break;d.put(e.PAD1,8)}return e.createBytes(d,b)};e.createBytes=function(a,b){for(var c=
0,d=0,e=0,g=Array(b.length),j=Array(b.length),m=0;m<b.length;m++){var s=b[m].dataCount,F=b[m].totalCount-s,d=Math.max(d,s),e=Math.max(e,F);g[m]=Array(s);for(var x=0;x<g[m].length;x++)g[m][x]=255&a.buffer[x+c];c+=s;x=k.getErrorCorrectPolynomial(F);s=(new f(g[m],x.getLength()-1)).mod(x);j[m]=Array(x.getLength()-1);for(x=0;x<j[m].length;x++)F=x+s.getLength()-j[m].length,j[m][x]=0<=F?s.get(F):0}for(x=m=0;x<b.length;x++)m+=b[x].totalCount;c=Array(m);for(x=s=0;x<d;x++)for(m=0;m<b.length;m++)x<g[m].length&&
(c[s++]=g[m][x]);for(x=0;x<e;x++)for(m=0;m<b.length;m++)x<j[m].length&&(c[s++]=j[m][x]);return c};c=4;for(var k={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,
78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(a){for(var b=a<<10;0<=k.getBCHDigit(b)-k.getBCHDigit(k.G15);)b^=k.G15<<k.getBCHDigit(b)-k.getBCHDigit(k.G15);return(a<<10|b)^k.G15_MASK},getBCHTypeNumber:function(a){for(var b=a<<12;0<=k.getBCHDigit(b)-
k.getBCHDigit(k.G18);)b^=k.G18<<k.getBCHDigit(b)-k.getBCHDigit(k.G18);return a<<12|b},getBCHDigit:function(a){for(var b=0;0!=a;)b++,a>>>=1;return b},getPatternPosition:function(a){return k.PATTERN_POSITION_TABLE[a-1]},getMask:function(a,b,c){switch(a){case 0:return 0==(b+c)%2;case 1:return 0==b%2;case 2:return 0==c%3;case 3:return 0==(b+c)%3;case 4:return 0==(Math.floor(b/2)+Math.floor(c/3))%2;case 5:return 0==b*c%2+b*c%3;case 6:return 0==(b*c%2+b*c%3)%2;case 7:return 0==(b*c%3+(b+c)%2)%2;default:throw Error("bad maskPattern:"+
a);}},getErrorCorrectPolynomial:function(a){for(var b=new f([1],0),c=0;c<a;c++)b=b.multiply(new f([1,m.gexp(c)],0));return b},getLengthInBits:function(a,b){if(1<=b&&10>b)switch(a){case 1:return 10;case 2:return 9;case c:return 8;case 8:return 8;default:throw Error("mode:"+a);}else if(27>b)switch(a){case 1:return 12;case 2:return 11;case c:return 16;case 8:return 10;default:throw Error("mode:"+a);}else if(41>b)switch(a){case 1:return 14;case 2:return 13;case c:return 16;case 8:return 12;default:throw Error("mode:"+
a);}else throw Error("type:"+b);},getLostPoint:function(a){for(var b=a.getModuleCount(),c=0,d=0;d<b;d++)for(var e=0;e<b;e++){for(var f=0,g=a.isDark(d,e),j=-1;1>=j;j++)if(!(0>d+j||b<=d+j))for(var k=-1;1>=k;k++)0>e+k||b<=e+k||0==j&&0==k||g==a.isDark(d+j,e+k)&&f++;5<f&&(c+=3+f-5)}for(d=0;d<b-1;d++)for(e=0;e<b-1;e++)if(f=0,a.isDark(d,e)&&f++,a.isDark(d+1,e)&&f++,a.isDark(d,e+1)&&f++,a.isDark(d+1,e+1)&&f++,0==f||4==f)c+=3;for(d=0;d<b;d++)for(e=0;e<b-6;e++)a.isDark(d,e)&&!a.isDark(d,e+1)&&a.isDark(d,e+
2)&&a.isDark(d,e+3)&&a.isDark(d,e+4)&&!a.isDark(d,e+5)&&a.isDark(d,e+6)&&(c+=40);for(e=0;e<b;e++)for(d=0;d<b-6;d++)a.isDark(d,e)&&!a.isDark(d+1,e)&&a.isDark(d+2,e)&&a.isDark(d+3,e)&&a.isDark(d+4,e)&&!a.isDark(d+5,e)&&a.isDark(d+6,e)&&(c+=40);for(e=f=0;e<b;e++)for(d=0;d<b;d++)a.isDark(d,e)&&f++;return c+=10*(Math.abs(100*f/b/b-50)/5)}},m={glog:function(a){if(1>a)throw Error("glog("+a+")");return m.LOG_TABLE[a]},gexp:function(a){for(;0>a;)a+=255;for(;256<=a;)a-=255;return m.EXP_TABLE[a]},EXP_TABLE:Array(256),
LOG_TABLE:Array(256)},s=0;8>s;s++)m.EXP_TABLE[s]=1<<s;for(s=8;256>s;s++)m.EXP_TABLE[s]=m.EXP_TABLE[s-4]^m.EXP_TABLE[s-5]^m.EXP_TABLE[s-6]^m.EXP_TABLE[s-8];for(s=0;255>s;s++)m.LOG_TABLE[m.EXP_TABLE[s]]=s;f.prototype={get:function(a){return this.num[a]},getLength:function(){return this.num.length},multiply:function(a){for(var b=Array(this.getLength()+a.getLength()-1),c=0;c<this.getLength();c++)for(var d=0;d<a.getLength();d++)b[c+d]^=m.gexp(m.glog(this.get(c))+m.glog(a.get(d)));return new f(b,0)},mod:function(a){if(0>
this.getLength()-a.getLength())return this;for(var b=m.glog(this.get(0))-m.glog(a.get(0)),c=Array(this.getLength()),d=0;d<this.getLength();d++)c[d]=this.get(d);for(d=0;d<a.getLength();d++)c[d]^=m.gexp(m.glog(a.get(d))+b);return(new f(c,0)).mod(a)}};g.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],
[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,
116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,
43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,
3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,
55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,
45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]];g.getRSBlocks=function(a,b){var c=g.getRsBlockTable(a,b);if(void 0==c)throw Error("bad rs block @ typeNumber:"+a+"/errorCorrectLevel:"+b);for(var d=c.length/3,e=[],f=0;f<d;f++)for(var j=c[3*f+0],k=c[3*f+1],m=c[3*f+2],s=0;s<j;s++)e.push(new g(k,m));return e};g.getRsBlockTable=function(a,b){switch(b){case 1:return g.RS_BLOCK_TABLE[4*(a-1)+0];case 0:return g.RS_BLOCK_TABLE[4*(a-1)+1];case 3:return g.RS_BLOCK_TABLE[4*
(a-1)+2];case 2:return g.RS_BLOCK_TABLE[4*(a-1)+3]}};j.prototype={get:function(a){return 1==(this.buffer[Math.floor(a/8)]>>>7-a%8&1)},put:function(a,b){for(var c=0;c<b;c++)this.putBit(1==(a>>>b-c-1&1))},getLengthInBits:function(){return this.length},putBit:function(a){var b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0);a&&(this.buffer[b]|=128>>>this.length%8);this.length++}};"string"===typeof b&&(b={text:b});b=a.extend({},{render:"canvas",width:256,height:256,typeNumber:-1,
correctLevel:2},b);return this.each(function(){var c;if("canvas"==b.render){c=new e(b.typeNumber,b.correctLevel);c.addData(b.text);c.make();var d=document.createElement("canvas");d.width=b.width;d.height=b.height;for(var f=d.getContext("2d"),g=b.width/c.getModuleCount(),j=b.height/c.getModuleCount(),k=0;k<c.getModuleCount();k++)for(var m=0;m<c.getModuleCount();m++)f.fillStyle=c.isDark(k,m)?"#000000":"#ffffff",f.fillRect(m*g,k*j,g,j)}else{c=new e(b.typeNumber,b.correctLevel);c.addData(b.text);c.make();
d=a("<table></table>").css("width",b.width+"px").css("height",b.height+"px").css("border","0px").css("border-collapse","collapse").css("background-color","#ffffff");f=100/c.getModuleCount();g=100/c.getModuleCount();for(j=0;j<c.getModuleCount();j++){k=a("<tr></tr>").css("height",g+"%").appendTo(d);for(m=0;m<c.getModuleCount();m++)a("<td></td>").css("width",f+"%").css("background-color",c.isDark(j,m)?"#000000":"#ffffff").appendTo(k)}}jQuery(d).appendTo(this)})}})(jQuery);"undefined"==typeof com&&(com={});if(void 0==com.transitboard)com.transitboard={};"undefined"==typeof console&&(console={log:function(){}});
com.transitboard.hotel=function(a){var b=this;this.realTimeArrivals=a;this.intervals={};this.active=!0;this.addAttribution('Transit Board™ Hotel, a <a href="http://portlandtransport.com">Portland Transport</a> Production.');for(var c in a.stopsConfig)this.addAttribution(this.realTimeArrivals.agencyCache.agencyData(c).rights_notice);if(void 0!=this.util.replaceNone(this.realTimeArrivals.optionsConfig.stylesheet))for(var d=0;d<this.realTimeArrivals.optionsConfig.stylesheet.length;d++)$("head").append('<link rel="stylesheet" type="text/css" href="'+
this.realTimeArrivals.optionsConfig.stylesheet[d]+'" />');var e=this.realTimeArrivals.optionsConfig.destinations[0].split(",");console.log("destinations: "+e.join(" "));this.destinations=[];a=[];c=e.length;for(d=0;d<c;d++)a.push($.ajax({url:"http://transitappliance.couchone.com/destinations/"+e[d],dataType:"jsonp",success:function(a){var c={};c.geometry=a.geometry;c.type="Feature";c.properties={};for(var d in a.properties)null!=a.properties[d]&&(c.properties[d]=b.util.sanitize(a.properties[d]));b.destinations.push(c)},
error:function(){console.log("error retrieving destination "+e[d])}}));$.when.apply(null,a).done(function(){console.log("retrieved all destinations successfully");b.doDisplay()}).fail(function(){console.log("failed")});this.addAttribution('Walking directions courtesy of <a href="http://www.cloudmade.com/" target="_blank">CloudMade</a>')};com.transitboard.hotel.prototype.util={};com.transitboard.hotel.prototype.util.replaceNone=function(a){if(!(""==a|a==[""]))return a};
com.transitboard.hotel.prototype.doDisplay=function(){var a=this,b=this.realTimeArrivals.optionsConfig.origin[0].split(","),b=new L.LatLng(Number(b[0]),Number(b[1]));if(void 0!=this.util.replaceNone(this.realTimeArrivals.optionsConfig.cloudmadeStyle))var c="http://{s}.tile.cloudmade.com/2d634343963a4426b126ab70b62bba2a/"+this.realTimeArrivals.optionsConfig.cloudmadeStyle[0]+"/256/{z}/{x}/{y}.png",d="Map data © 2011 OpenStreetMap contributors, Imagery © 2011 CloudMade";else void 0!=this.util.replaceNone(this.realTimeArrivals.optionsConfig.tileUrl)?
(c=this.realTimeArrivals.optionsConfig.tileUrl[0],d=void 0!=com.transitboard.hotel.replaceNone(this.realTimeArrivals.optionsConfig.tileAttr)?this.realTimeArrivals.optionsConfig.tileAttr[0]:""):(c="http://{s}.tile.cloudmade.com/2d634343963a4426b126ab70b62bba2a/46244/256/{z}/{x}/{y}.png",d="Map data © 2011 OpenStreetMap contributors, Imagery © 2011 CloudMade.");this.addAttribution(d);c=new L.TileLayer(c,{maxZoom:18});d=new L.TileLayer("gis/trimetTiles/{z}/{x}/{y}.png",{maxZoom:18});this.addAttribution("Rail line info courtesy TriMet.");
this.walkLayer=new L.MultiPolyline([]);this.transitLayer=new L.MultiPolyline([]);$("#container").css("opacity","0").css("display","block");this.map=(new L.Map("map",{attributionControl:!1,zoomControl:!1})).addLayer(c).addLayer(d).addLayer(this.walkLayer).addLayer(this.transitLayer).setView(b,15);$("#container").css("display","none").css("opacity","1");this.addAttribution("Weather courtesy Yahoo! Weather.");this.updateWeather();setInterval(this.updateWeather,12E5);b=$(window).height()/100;$("#bar").height(6*
b);$("#bar-location span").text(this.realTimeArrivals.optionsConfig.originName[0]);$("#bar-location").textfill();100>$("#bar").height()&&$("#bar-icon img").attr("height",$("#bar").height()-10);this.updateClock();setInterval(this.updateClock,15E3);this.tripPlanUpdateInterval=15;setInterval(this.updateTripPlans,6E4*this.tripPlanUpdateInterval);this.updateTripPlans().done(function(){a.active&&a.showDestination(0)})};
com.transitboard.hotel.prototype.showDestination=function(a){if(this.active){var b=this,c=this.destinations[a],d=function(){b.active&&($("#container").fadeOut(500),setTimeout(function(){a++;a<b.destinations.length?b.showDestination(a):b.showAttribution()},550))};if(null==c.itinerary)d();else{var e=$(window).height()/100;$("#main-text").html("<span>"+c.properties.name+"</span>");if(null!=c.properties.subtitle){$("#subhead").html("<span>"+c.properties.subtitle+"</span>");var f=70*c.properties.name.length/
(c.properties.name.length+c.properties.subtitle.length),g=70-f}else f=70,g=0,$("#subhead").text("");$("#main-text").css("width",f+"%");$("#subhead").css("width",g+"%");$("#qr-container").css("width","30%");$(".photo").remove();for(var f="",j=1;4>=j;j++){var g=c.properties["image"+j+"_url"],k=c.properties["image"+j+"_att"],m=c.properties["image"+j+"_sou"];null!=g&&(f+='<li class="photo" width="100%" height="100%"><a href="'+m+'"><span class="photo_attribution">'+k+'</span><img src="'+g+'" style="display: none" /></a></li>\n')}$("#map-wrapper").before(f);
var s=0,n="";$.each(c.itinerary.legs,function(a,c){if("walk"==c.type){var d;n+='<span id="narrative-leg-'+a+'" class="narrative-leg">'+(0==a?"W":"w")+"alk to "+c.toPlace+"</span>, "}else"transit"==c.type&&(n+='<span id="narrative-leg-'+a+'" class="narrative-leg">'+(0==a?"B":"b")+"oard "+c.headsign+' <span class="rtarrivals">(next: '+b.formatArrivals(b.getRealTimeArrivals("TriMet:"+c.startId,c.routeId,c.headsign))+")</span>, offboard at "+c.toPlace+" ("+c.noStops+" stops)</span>, ");s+=c.time});n=
n.slice(0,-2)+".";f=c.itinerary.fare;$("#narrative").html("<span>"+n+"</span>");$("#trip-details").html('<span><span class="trip-time">'+Math.round(s)+' min</span><span class="trip-fare">$'+f.toFixed(2)+" USD each way</span></span>");void 0!=c.url&&(Math.min(12*e,0.28*$(window).width()),$("#qrcode").html("").qrcode({width:12*e,height:12*e,text:c.url.url}),$("#qrcode-text").html("<span>"+c.url.url+"</span>").attr("href",c.url.url).textfill());var q=1E3*Number(this.util.replaceNone(this.realTimeArrivals.optionsConfig.imageTimeout)||
3),j=1;$(".photo").each(function(){var a=$(this);setTimeout(function(){a.slideUp(300)},j*q);j++});var o=(j-1)*q+300;this.walkLayer.clearLayers();this.transitLayer.clearLayers();var p,u=$(".map-walk-color").css("color"),D=$(".map-transit-color").css("color"),A=$(".map-walk-color").css("opacity"),y=$(".map-transit-color").css("opacity");$.each(c.itinerary.legs,function(a,c){if("walk"==c.type){var d=new L.Polyline(c.geometry,{color:u,opacity:A});b.walkLayer.addLayer(d)}else"transit"==c.type&&(d=new L.Polyline(c.geometry,
{color:D,opacity:y}),b.transitLayer.addLayer(d));0<a?setTimeout(function(){b.highlightLeg(a,d,!0)},o+12E3*a):p=d});setTimeout(d,o+12E3*c.itinerary.legs.length);$("#container").fadeIn(500);$("#head-box").height(15*e);$("#main-text").height(15*e).textfill().css("width",$("#main-text span").width()+"px");$("#subhead").height(15*e).textfill();$("#qrcode").height(12*e).width(12*e);$("#qrcode-text").height(3*e);$(".photo-attribution").css("font-size",4*e+"px");$("#slideshow").height(49*e);var J=$("#slideshow").width(),
F=$("#slideshow").height();$(".photo").css("height",F+15+"px");$(".photo a img").each(function(a,b){photo=$(b);photo.load(function(){var a=$(this),b=this.naturalWidth,c=Math.min(1.3*F/this.naturalHeight,1.3*J/b);a.css("width",""+b*c+"px");a.css("position","relative").css("top",-0.5*(a.height()-F)+"px").css("left",-0.5*(a.width()-J)+"px");a.parent().find(".photo_attribution").css("right",-0.5*(a.width()-J)+"px");a.css("display","block")})});b.highlightLeg(0,p,!1);$("#trip-box").height(26*e);$("#narrative").height(19*
e).textfill();$("#trip-details").height(6*e).textfill()}}};com.transitboard.hotel.prototype.highlightLeg=function(a,b,c){$(".narrative-leg").removeClass("narrative-highlighted");$("#narrative-leg-"+a).addClass("narrative-highlighted");this.zoomToBounds(b.getBounds(),c)};
com.transitboard.hotel.prototype.zoomToBounds=function(a,b){this.map.invalidateSize();var c=Number(this.util.replaceNone(this.realTimeArrivals.optionsConfig.maxZoom)||16),c=Math.min(this.map.getBoundsZoom(a),c);this.map.setView(a.getCenter(),c,!b)};
com.transitboard.hotel.prototype.showAttribution=function(){if(this.active){var a=this;$("#attribution").fadeIn(500);$("#attribution").textfill();setTimeout(function(){$("#attribution").fadeOut(500)},4500);this.active&&setTimeout(function(){a.showDestination(0)},5050)}};com.transitboard.hotel.prototype.addAttribution=function(a){$("#attribution span").append(this.util.sanitize(a)+"<br/>")};
com.transitboard.hotel.prototype.updateTripPlans=function(){var a=this;console.log("updating trip plans");var b=$.Deferred(),c=this.destinations,d=[];$.each(c,function(b,f){var g=$.Deferred();a.getTripPlanForDest(f).then(function(a){c[b].itinerary=a;g.resolve()});d.push(g);if(void 0==f.url||f.url.creation<=(new Date).getTime()-108E5){var j=a.getShortURLForDest(f).then(function(a){null!=url?c[b].url={url:a,creation:(new Date).getTime()}:(c[b].url=void 0,console.log("could not get short URL for "+f.properties.name))});
d.push(j)}});$.when.apply(null,d).then(function(){console.log("finished retrieving destinations");a.destinations=c;var d=!1;$.each(a.destinations,function(a,b){if(null!=b.itinerary)return d=!0,!1});if(d){if(!a.active)a.stopNoData(),a.active=!0,a.showDestination(0)}else if(a.active)a.active=!1,a.doNoData();b.resolve(d);$.each(c,function(a,b){for(var c=1;4>=c;c++)null!=b.properties["image"+c+"_url"]&&$("#cache-force-area").append('<img src="'+b.properties["image"+c+"_url"]+'"/>')})});setTimeout(function(){$.each(d,
function(a,b){b.isResolved()||(console.log("timeout on request "+a),b.resolve(null))})},3E4);return b};
com.transitboard.hotel.prototype.getShortURLForDest=function(a){var b=this,c=new $.Deferred;$.ajax({url:"http://tbdhm.herokuapp.com/new",data:{fromCoord:b.realTimeArrivals.optionsConfig.origin[0],fromPlace:b.realTimeArrivals.optionsConfig.originName[0],toCoord:a.geometry.coordinates[1]+","+a.geometry.coordinates[2],toPlace:a.properties.name},dataType:"text",success:function(a){a=b.util.sanitize(a);c.resolve("http://tsrf.us/m/"+a.slice(0,-1))},fail:function(){console.log("failure getting short url!");
c.resolve(null)}});return c};com.transitboard.hotel.prototype.getTripPlanForDest=function(a){var b=this,c=$.Deferred();this.getTripPlanOnly(a).then(function(a){null!=a?b.fillOutGeometries(a).then(function(a){c.resolve(a)}):c.resolve(null)});return c};
com.transitboard.hotel.prototype.getTripPlanOnly=function(a){var b=this,c=$.Deferred(),d=timeInZone("America/Los_Angeles");d.setMinutes(d.getMinutes()+this.tripPlanUpdateInterval);var e=d.getHours()%12,f=d.getMinutes();10>f&&(f="0"+f);0==e&&(e=12);d=12<=d.getHours()?"pm":"am";e=e+":"+f+" "+d;e={fromPlace:this.realTimeArrivals.optionsConfig.originName[0],fromCoord:this.realTimeArrivals.optionsConfig.origin[0].split(",")[1]+","+this.realTimeArrivals.optionsConfig.origin[0].split(",")[0],time:e,min:"X",
appID:"828B87D6ABC0A9DF142696F76",toPlace:a.properties.name,toCoord:a.geometry.coordinates.join(",")};$.ajax({url:"http://developer.trimet.org/ws/V1/trips/tripplanner",data:e,dataType:"xml",timeout:1E5,success:function(d){d=$(d);if(0!=d.find("error").length)console.log("error on destination "+a.properties.name+": "+d.find("error").text()),c.resolve(null);else{var e=null;d.find("itinerary").each(function(c,d){d=$(d);if("0"!=d.find("numberOfTransfers").text())return console.log("Trip has transfers!"),
!0;if(3<Number(d.find("numberOfTripLegs").text()))return console.log("Too many trip legs, probably issue 43!"),!0;if(-1==$.inArray(d.find("leg route internalNumber").first().text(),"4,6,8,9,12,14,15,33,54,56,57,72,75,90,100,190,193,200".split(",")))return console.log("route "+d.find("leg route internalNumber").first().text()+" is not Frequent Service"),!0;var f=d.find("leg from stopId").first().text();if(void 0==b.realTimeArrivals.stopsConfig.TriMet[f])return console.log(a.properties.name+": stop "+
f+" is not in the stops config for this appliance!"),!0;var g=d.find("leg route internalNumber").first().text();if(void 0==b.realTimeArrivals.stopsConfig.TriMet[f][g]&void 0==b.realTimeArrivals.stopsConfig.TriMet[f]["*"])return console.log(a.properties.name+": stop "+f+" is allowed, but route "+g+" is specifically excluded from the configuration."),!0;1E9>Number(d.find("time-distance duration").first().text())+0.1*Number(d.find("fare regular").first().text())&&(e=d)});if(null!=e){console.log("best itinerary for dest "+
a.properties.name+" via "+e.attr("viaRoute"));var f={};f.fromPlace=d.find('param[name="fromPlace"]').text();var m=d.find('param[name="fromCoord"]').text().split(", ");f.fromCoord=m[1]+","+m[0];f.toPlace=d.find('param[name="toPlace"]').text();d.find('param[name="toCoord"]').text().split(", ");f.toCoord=a.geometry.coordinates.join(",");f.fare=Number(e.find("fare regular").first().text());f.legs=[];e.find("leg").each(function(a,c){var c=$(c),d={};d.fromCoord=b.util.sanitize(c.find("from pos lon").text()+
","+c.find("from pos lat").text());d.fromPlace=b.util.sanitize(c.find("from description").text());d.toCoord=b.util.sanitize(c.find("to pos lon").text()+","+c.find("to pos lat").text());d.toPlace=b.util.sanitize(c.find("to description").text());var e=b.util.reverseCoord(d.fromCoord).split(","),g=b.util.reverseCoord(d.toCoord).split(",");d.geometry=[new L.LatLng(Number(e[0]),Number(e[1])),new L.LatLng(Number(g[0]),Number(g[1]))];"Walk"==c.attr("mode")?d.type="walk":(d.type="transit",d.headsign=b.util.sanitize($.trim(c.find("route name").text())),
d.time=Number(c.find("time-distance duration").text()),d.startId=b.util.sanitize(c.find("from stopId").text()),d.endId=b.util.sanitize(c.find("to stopId").text()),d.routeId=b.util.sanitize(c.find("route internalNumber").text()),d.noStops=Number(c.find("to stopSequence").text())-Number(c.find("from stopSequence").text()),d.blockGeoWS=b.util.sanitize(c.find("lineURL").attr("param")));f.legs.push(d)})}else f=null,console.log("no route to dest "+a.properties.name);c.resolve(f)}},error:function(b,c){console.log("error loading trip plan for dest "+
a.properties.name+": "+c)}});return c};com.transitboard.hotel.prototype.fillOutGeometries=function(a){var b=this,c=new $.Deferred,d=[];$.each(a.legs,function(c,f){if("walk"==f.type)var g=b.getWalkingDirections(f.fromCoord,f.toCoord);else"transit"==f.type&&(g=b.getTransitGeometry(f));g.then(function(d){a.legs[c].geometry=d.geometry;a.legs[c].length=b.util.sanitize(d.length);a.legs[c].time=Number(b.util.sanitize(d.time))});d.push(g)});$.when.apply(null,d).then(function(){c.resolve(a)});return c};
com.transitboard.hotel.prototype.util.reverseCoord=function(a){a=a.split(",");return a[1]+","+a[0]};com.transitboard.hotel.prototype.util.distanceBetween=function(a,b){var c=new Proj4js.Point(a.lng,a.lat),d=new Proj4js.Point(b.lng,b.lat),e=new Proj4js.Proj("EPSG:4326"),f=new Proj4js.Proj("EPSG:2913");Proj4js.transform(e,f,c);Proj4js.transform(e,f,d);return 0.3048*Math.sqrt(Math.pow(c.x-d.x,2)+Math.pow(c.y-d.y,2))};
(function(){function a(a){if(!/:/.test(a))return a}function b(a){return a}com.transitboard.hotel.prototype.util.sanitize=function(c){return html_sanitize(c,a,b)}})();com.transitboard.hotel.prototype.walkGeomCache={};
com.transitboard.hotel.prototype.getWalkingDirections=function(a,b){var c=this,d=$.Deferred();if(void 0!=this.walkGeomCache[a]&&void 0!=this.walkGeomCache[a][b])return d.resolve(this.walkGeomCache[a][b]),d;$.ajax({url:function(a){return"http://routes.cloudmade.com/2d634343963a4426b126ab70b62bba2a/api/0.3/"+a.start_point+","+a.end_point+"/foot.js?units=km"}({start_point:this.util.reverseCoord(a),end_point:this.util.reverseCoord(b)}),dataType:"jsonp",success:function(e){console.log("received walk geometry");
if(0!=e.status){console.log("Error "+e.status+" retrieving walk directions from "+a+" to "+b+": "+e.status_message);var f=c.util.reverseCoord(a).split(","),g=c.util.reverseCoord(b).split(","),j=[new L.LatLng(Number(f[0]),Number(f[1])),new L.LatLng(Number(g[0]),Number(g[1]))],e=1.41421*c.util.distanceBetween(j[0],j[1]);d.resolve({geometry:j,length:e,time:e/53})}else j=[],$.each(e.route_geometry,function(a,b){j.push(new L.LatLng(b[0],b[1]))}),f=c.util.reverseCoord(a).split(","),g=c.util.reverseCoord(b).split(","),
j.unshift(new L.LatLng(Number(f[0]),Number(f[1]))),j.push(new L.LatLng(Number(g[0]),Number(g[1]))),e={geometry:j,length:1E3*e.route_summary.total_distance,time:e.route_summary.total_time/60},void 0==c.walkGeomCache[a]&&(c.walkGeomCache[a]=[]),c.walkGeomCache[a][b]=e,d.resolve(e)}});return d};
com.transitboard.hotel.prototype.getTransitGeometry=function(a){var b=new $.Deferred;$.ajax({url:"http://maps.trimet.org/ttws/transweb/ws/V1/BlockGeoWS/",data:{appID:"828B87D6ABC0A9DF142696F76",bksTsIDeTeID:a.blockGeoWS},dataType:"jsonp",success:function(c){var d={geometry:a.geometry,time:a.time,distance:0};if(void 0!=c.results[0].error)console.log("Error retrieving transit geometry using arg "+a.blockGeoWS);else{var e=[],f=new Proj4js.Proj("EPSG:2913"),g=new Proj4js.Proj("EPSG:4326");$.each(c.results[0].points,
function(a,b){var c=new Proj4js.Point(b.x,b.y);Proj4js.transform(f,g,c);e.push(new L.LatLng(c.y,c.x))});d.geometry=e}b.resolve(d)}});return b};com.transitboard.hotel.prototype.getRealTimeArrivals=function(a,b,c){try{var d=this.realTimeArrivals.arrivalsQueue.minutes(60).byStop()[a].byLine()[Number(b)].byDest()[c]}catch(e){return console.log("no arrivals found"),new arrivalsQueue}if("undefined"!=typeof d)return d;console.log("no arrivals found for headsign "+c);return new arrivalsQueue};
com.transitboard.hotel.prototype.formatArrivals=function(a){var b=this,c="";$.each(a,function(a,e){c+=b.util.sanitize(e.minutes())+" min, "});return c.slice(0,-2)};
com.transitboard.hotel.prototype.updateWeather=function(){var a=this;this.weather={};var b=this.realTimeArrivals.optionsConfig.origin[0].split(",");url="";void 0==this.weather.woeid?b=$.ajax({url:"http://query.yahooapis.com/v1/public/yql?q=SELECT%20postal.content%20FROM%20geo.places%20WHERE%20text%3D%22"+encodeURIComponent(b[0]+","+b[1])+"%22%20LIMIT%201&format=json",dataType:"json",success:function(b){a.weather.woeid=a.util.sanitize(b.query.results.place.postal)}}):(b=new $.Deferred,b.resolve());
$.when(b).done(function(){$.ajax({url:"http://query.yahooapis.com/v1/public/yql?q=SELECT%20item.condition%20from%20weather.forecast%20WHERE%20location%3D"+a.weather.woeid+"&format=json",dataType:"json",success:function(b){a.weather.condition={};for(var d in b.query.results.channel.item.condition)a.weather.condition[d]=a.util.sanitize(b.query.results.channel.item.condition[d]);b=a.weather.condition.temp+"° F/"+Math.round((Number(a.weather.condition.temp)-32)*(5/9))+"° C";$("#bar-temp span").html(b);
$("#bar-temp").textfill();$("#bar-icon img").attr("src",{"0":"weather-icons/severe-alert-100px.png",1:"weather-icons/severe-alert-100px.png",2:"weather-icons/severe-alert-100px.png",3:"weather-icons/severe-alert-100px.png",4:"weather-icons/storm-100px.png",5:"weather-icons/snow-100px.png",6:"weather-icons/snow-100px.png",7:"weather-icons/snow-100px.png",8:"weather-icons/snow-100px.png",9:"weather-icons/showers-100px.png",10:"weather-icons/showers-100px.png",11:"weather-icons/showers-100px.png",12:"weather-icons/showers-100px.png",
13:"weather-icons/snow-100px.png",14:"weather-icons/snow-100px.png",15:"weather-icons/snow-100px.png",16:"weather-icons/snow-100px.png",17:"weather-icons/snow-100px.png",18:"weather-icons/snow-100px.png",19:"weather-icons/overcast-100px.png",20:"weather-icons/overcast-100px.png",21:"weather-icons/overcast-100px.png",22:"weather-icons/overcast-100px.png",23:"weather-icons/few-clouds-100px.png",24:"weather-icons/few-clouds-100px.png",25:"weather-icons/few-clouds-100px.png",26:"weather-icons/overcast-100px.png",
27:"weather-icons/overcast-100px.png",28:"weather-icons/overcast-100px.png",29:"weather-icons/few-clouds-night-100px.png",30:"weather-icons/few-clouds-100px.png",31:"weather-icons/clear-night-100px.png",32:"weather-icons/clear-100px.png",33:"weather-icons/clear-night-100px.png",34:"weather-icons/clear-100px.png",35:"weather-icons/showers-100px.png",36:"weather-icons/clear-100px.png",37:"weather-icons/storm-100px.png",38:"weather-icons/storm-100px.png",39:"weather-icons/storm-100px.png",40:"weather-icons/showers-scattered-100px.png",
41:"weather-icons/snow-100px.png",42:"weather-icons/snow-100px.png",43:"weather-icons/snow-100px.png",44:"weather-icons/few-clouds-100px.png",45:"weather-icons/storm-100px.png",46:"weather-icons/snow-100px.png",47:"weather-icons/storm-100px.png",3200:""}[a.weather.condition.code])}})})};
com.transitboard.hotel.prototype.updateClock=function(){var a=localTime(),b=a.getHours()%12,c=a.getMinutes();10>c&&(c="0"+c);0==b&&(b=12);var d=12<=a.getHours()?"PM":"AM",a="Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")[a.getDay()]+" "+b+":"+c+" "+d;$("#bar-datetime span").html(a);$("#bar-datetime").textfill()};
com.transitboard.hotel.prototype.doNoData=function(){var a=this;this.active=!1;$("#attribution, #container").fadeOut();$.ajax({url:this.util.replaceNone(this.realTimeArrivals.optionsConfig.slideshow)||"slideshows/welcome.md",dataType:"text",success:function(b){var c=Markdown.getSanitizingConverter(),d=[],e=0;d[0]=$('<div class="slide"></div>');$(c.makeHtml(b)).each(function(a,b){$(b).is("hr")?(e++,d[e]=$('<div class="slide"></div>')):d[e].append(b)});$("#nodestsshow").html("");$.each(d,function(a,
b){$("#nodestsshow").append(b)});var d=$("#nodestsshow .slide"),f=$(window).width(),g=$(window).height()-$("#bar").height(),j=["","-moz-","-ms-","-webkit-","-o-"];d.each(function(a,b){var b=$(b),c=b.width(),d=b.height(),e=0.9*Math.min(f/c,g/d);$.each(j,function(a,c){b.css(c+"transform","scale("+e+")")})});var k=0,m=d.length;a.intervals.noDataSlideshow=setInterval(function(){k+=1;k>=m&&(k=0);d.css("display","none");d.eq(k).css("display","block")},1E3*(a.util.replaceNone(a.realTimeArrivals.optionsConfig.slideshowTimeout)||
5))}})};com.transitboard.hotel.prototype.stopNoData=function(){clearInterval(this.intervals.noDataSlideshow);$(".slide").css("display","none")};$(document).ready(function(){trArr({configString:window.location.search,displayInterval:3E4,displayCallback:function(a){tbdh.realTimeArrivals=a},initializeCallback:function(a){tbdh=new com.transitboard.hotel(a)}})});