diff --git a/dist/js/bootstrap.js b/dist/js/bootstrap.js index 0129301c37..119c56a4ee 100644 --- a/dist/js/bootstrap.js +++ b/dist/js/bootstrap.js @@ -525,7 +525,9 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re .removeClass('collapsing') .addClass('collapse in')[dimension]('') this.transitioning = 0 - this.$element.trigger('shown.bs.collapse') + this.$element + .off($.support.transition.end + '.bs.collapse') + .trigger('shown.bs.collapse') } if (!$.support.transition) return complete.call(this) @@ -533,7 +535,7 @@ if (typeof jQuery === 'undefined') { throw new Error('Bootstrap\'s JavaScript re var scrollSize = $.camelCase(['scroll', dimension].join('-')) this.$element - .one($.support.transition.end, $.proxy(complete, this)) + .on($.support.transition.end + '.bs.collapse', $.proxy(complete, this)) .emulateTransitionEnd(350)[dimension](this.$element[0][scrollSize]) } diff --git a/dist/js/bootstrap.min.js b/dist/js/bootstrap.min.js index a15794aeb8..a237155197 100644 --- a/dist/js/bootstrap.min.js +++ b/dist/js/bootstrap.min.js @@ -3,4 +3,4 @@ * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ -if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.isLoading=!1};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",f.resetText||d.data("resetText",d[e]()),d[e](f[b]||this.options[b]),setTimeout(a.proxy(function(){"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},b.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?a=!1:b.find(".active").removeClass("active")),a&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}a&&this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(".item"),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}if(e.hasClass("active"))return this.sliding=!1;var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});return this.$element.trigger(j),j.isDefaultPrevented()?void 0:(this.sliding=!0,f&&this.pause(),this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")?(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid.bs.carousel")},0)}).emulateTransitionEnd(1e3*d.css("transition-duration").slice(0,-1))):(d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid.bs.carousel")),f&&this.cycle(),this)};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(b){return b&&b.target!=this.$element[0]?void this.$element.one(a.support.transition.end,a.proxy(f,this)):(this.$element.removeClass("collapsing").addClass("collapse in")[e](""),this.transitioning=0,void this.$element.trigger("shown.bs.collapse"))};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(b){return b&&b.target!=this.$element[0]?void this.$element.one(a.support.transition.end,a.proxy(d,this)):(this.transitioning=0,void this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse"))};return a.support.transition?void this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);!e&&f.toggle&&"show"==c&&(c=!c),e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle="collapse"][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(jQuery),+function(a){"use strict";function b(b){b&&3===b.which||(a(d).remove(),a(e).each(function(){var d=c(a(this)),e={relatedTarget:this};d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown",e)),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown",e))}))}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e='[data-toggle="dropdown"]',f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a('
').insertAfter(a(this)).on("click",b);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus"),f.toggleClass("open").trigger("shown.bs.dropdown",h)}return!1}},f.prototype.keydown=function(b){if(/(38|40|27)/.test(b.keyCode)){var d=a(this);if(b.preventDefault(),b.stopPropagation(),!d.is(".disabled, :disabled")){var f=c(d),g=f.hasClass("open");if(!g||g&&27==b.keyCode)return 27==b.which&&f.find(e).trigger("focus"),d.trigger("click");var h=" li:not(.divider):visible a",i=f.find('[role="menu"]'+h+', [role="listbox"]'+h);if(i.length){var j=i.index(i.filter(":focus"));38==b.keyCode&&j>0&&j--,40==b.keyCode&&j>>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<q&&(p+=B[f++]< >>=w,q-=w),15>q&&(p+=B[f++]<>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<q&&(p+=B[f++]< q&&(p+=B[f++]<k){a.msg="invalid distance too far back",e.mode=c;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&e.sane){a.msg="invalid distance too far back",e.mode=c;break a}if(z=0,A=o,0===n){if(z+=l-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(w>n){if(z+=l+n-w,w-=n,x>w){x-=w;do C[h++]=o[z++];while(--w);if(z=0,x>n){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(g>f&&j>h);x=q>>3,f-=x,q-=x<<3,p&=(1<f?5+(g-f):5-(f-g),a.avail_out=j>h?257+(j-h):257-(h-j),e.hold=p,e.bits=q}},{}],27:[function(a,b,c){"use strict";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.next_index=0,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.codes=new s.Buf32(rb),this.sane=0,this.back=0,this.was=0}function f(a,b,c,d,e,f,g,h){this.type=a,this.lens=b,this.lens_index=c,this.codes=d,this.table=e,this.table_index=f,this.bits=g,this.work=h}function g(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=new s.Buf32(rb),b.distcode=new s.Buf32(rb),b.sane=1,b.back=-1,D):G}function h(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,g(a)):G}function i(a,b){var c,d;return a&&a.state?(d=a.state,0>b?(c=0,b=-b):(c=(b>>4)+1,48>b&&(b&=15)),b&&(8>b||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,h(a))):G}function j(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=i(a,b),c!==D&&(a.state=null),c):G}function k(a){return j(a,tb)}function l(a,b,c){var d;return a&&a.state?(d=a.state,0>b?(d.hold=0,d.bits=0,D):b>16||d.bits+b>32?G:(c&=(1<b;)a.lens[b++]=8;for(;256>b;)a.lens[b++]=9;for(;280>b;)a.lens[b++]=7;for(;288>b;)a.lens[b++]=8;for(c=9,w(new f(y,a.lens,0,288,q,0,c,a.work)),b=0;32>b;)a.lens[b++]=5;c=5,w(new f(z,a.lens,0,32,r,0,c,a.work)),ub=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function n(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,c.check=u(c.check,Cb,2,0),l=0,o=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=-1),!(1&c.wrap)||(((255&l)<<8)+(l>>8))%31){a.msg="incorrect header check",c.mode=mb;break}if((15&l)!==K){a.msg="unknown compression method",c.mode=mb;break}if(l>>>=4,o-=4,xb=(15&l)+8,0===c.wbits)c.wbits=xb;else if(xb>c.wbits){a.msg="invalid window size",c.mode=mb;break}c.dmax=1< o;){if(0===j)break a;j--,l+=e[h++]< >8&1),512&c.flags&&(Cb[0]=255&l,Cb[1]=l>>>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0,c.mode=N;case N:for(;32>o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,Cb[2]=l>>>16&255,Cb[3]=l>>>24&255,c.check=u(c.check,Cb,4,0)),l=0,o=0,c.mode=O;case O:for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >8),512&c.flags&&(Cb[0]=255&l,Cb[1]=l>>>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0,c.mode=P;case P:if(1024&c.flags){for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags){if(r=c.length,r>j&&(r=j),r){if(c.head&&c.head.extra)throw xb=c.head.extra_len-c.length,"Review & implement right";512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,c.length-=r}if(c.length)break a}c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===j)break a;r=0;do xb=e[h+r++],c.head&&c.head.name&&c.length r);if(512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,xb)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=S;case S:if(4096&c.flags){if(0===j)break a;r=0;do xb=e[h+r++],c.head&&c.head.comment&&c.length r);if(512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,xb)break a}else c.head&&(c.head.comment=null);c.mode=T;case T:if(512&c.flags){for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >9&1,c.head.done=1),a.adler=c.check=0,c.mode=W;break;case U:for(;32>o;){if(0===j)break a;j--,l+=e[h++]< >>=7&o,o-=7&o,c.mode=jb;break}for(;3>o;){if(0===j)break a;j--,l+=e[h++]< >>=1,o-=1,3&l){case 0:c.mode=Y;break;case 1:if(m(c),c.mode=cb,b===C){l>>>=2,o-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg="invalid block type",c.mode=mb}l>>>=2,o-=2;break;case Y:for(l>>>=7&o,o-=7&o;32>o;){if(0===j)break a;j--,l+=e[h++]< >>16^65535)){a.msg="invalid stored block lengths",c.mode=mb;break}if(c.length=65535&l,l=0,o=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(r=c.length){if(r>j&&(r=j),r>k&&(r=k),0===r)break a;s.arraySet(g,e,h,r,i),j-=r,h+=r,k-=r,i+=r,c.length-=r;break}c.mode=W;break;case _:for(;14>o;){if(0===j)break a;j--,l+=e[h++]< >>=5,o-=5,c.ndist=(31&l)+1,l>>>=5,o-=5,c.ncode=(15&l)+4,l>>>=4,o-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=mb;break}c.have=0,c.mode=ab;case ab:for(;c.have o;){if(0===j)break a;j--,l+=e[h++]< >>=3,o-=3}for(;c.have<19;)c.lens[Db[c.have++]]=0;if(s.arraySet(c.lencode,c.codes,0,c.codes.length,0),c.lenbits=7,zb=new f(x,c.lens,0,19,c.lencode,0,c.lenbits,c.work),yb=w(zb),c.lenbits=zb.bits,yb){a.msg="invalid code lengths set",c.mode=mb;break}c.have=0,c.mode=bb;case bb:for(;c.have >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< tb)l>>>=rb,o-=rb,c.lens[c.have++]=tb;else{if(16===tb){for(Ab=rb+2;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,0===c.have){a.msg="invalid bit length repeat",c.mode=mb;break}xb=c.lens[c.have-1],r=3+(3&l),l>>>=2,o-=2}else if(17===tb){for(Ab=rb+3;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,xb=0,r=3+(7&l),l>>>=3,o-=3}else{for(Ab=rb+7;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,xb=0,r=11+(127&l),l>>>=7,o-=7}if(c.have+r>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=mb;break}for(;r--;)c.lens[c.have++]=xb}}if(c.mode===mb)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=mb;break}if(s.arraySet(c.lencode,c.codes,0,c.codes.length,0),c.lenbits=9,zb=new f(y,c.lens,0,c.nlen,c.lencode,0,c.lenbits,c.work),yb=w(zb),c.lenbits=zb.bits,yb){a.msg="invalid literal/lengths set",c.mode=mb;break}if(c.distbits=6,s.arraySet(c.distcode,c.codes,0,c.codes.length,0),zb=new f(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.distbits,c.work),yb=w(zb),c.distbits=zb.bits,yb){a.msg="invalid distances set",c.mode=mb;break}if(c.mode=cb,b===C)break a;case cb:c.mode=db;case db:if(j>=6&&k>=258){a.next_out_index=i,a.avail_out=k,a.next_in_index=h,a.avail_in=j,c.hold=l,c.bits=o,v(a,q),i=a.next_out_index,g=a.next_out,k=a.avail_out,h=a.next_in_index,e=a.next_in,j=a.avail_in,l=c.hold,o=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Bb=c.lencode[l&(1< >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< >ub)],rb=Bb>>>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=ub+rb);){if(0===j)break a;j--,l+=e[h++]< >>=ub,o-=ub,c.back+=ub}if(l>>>=rb,o-=rb,c.back+=rb,c.length=tb,0===sb){c.mode=ib;break}if(32&sb){c.back=-1,c.mode=W;break}if(64&sb){a.msg="invalid literal/length code",c.mode=mb;break}c.extra=15&sb,c.mode=eb;case eb:if(c.extra){for(Ab=c.extra;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=c.extra,o-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fb;case fb:for(;Bb=c.distcode[l&(1< >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< >ub)],rb=Bb>>>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=ub+rb);){if(0===j)break a;j--,l+=e[h++]< >>=ub,o-=ub,c.back+=ub}if(l>>>=rb,o-=rb,c.back+=rb,64&sb){a.msg="invalid distance code",c.mode=mb;break}c.offset=tb,c.extra=15&sb,c.mode=gb;case gb:if(c.extra){for(Ab=c.extra;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=c.extra,o-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=mb;break}c.mode=hb;case hb:if(0===k)break a;if(r=q-k,c.offset>r){if(r=c.offset-r,r>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=mb;break}r>c.wnext?(r-=c.wnext,pb=c.wsize-r):pb=c.wnext-r,r>c.length&&(r=c.length),qb=c.window}else qb=g,pb=i-c.offset,r=c.length;r>k&&(r=k),k-=r,c.length-=r;do g[i++]=qb[pb++];while(--r);0===c.length&&(c.mode=db);break;case ib:if(0===k)break a;g[i++]=c.length,k--,c.mode=db;break;case jb:if(c.wrap){for(;32>o;){if(0===j)break a;j--,l|=e[h++]< o;){if(0===j)break a;j--,l+=e[h++]< =B;B++)N[B]=0;for(C=0;x>C;C++)N[w[a.lens_index+C]]++;for(F=z,E=d;E>=1&&0===N[E];E--);if(F>E&&(F=E),0===E)return y[a.table_index++]=20971520,y[a.table_index++]=20971520,a.bits=1,0;for(D=1;E>D&&0===N[D];D++);for(D>F&&(F=D),I=1,B=1;d>=B;B++)if(I<<=1,I-=N[B],0>I)return-1;if(I>0&&(v===g||1!==E))return-1;for(O[1]=0,B=1;d>B;B++)O[B+1]=O[B]+N[B];for(C=0;x>C;C++)0!==w[a.lens_index+C]&&(A[O[w[a.lens_index+C]]++]=C);switch(v){case g:L=P=A,r=19;break;case h:L=j,M-=257,P=k,Q-=257,r=256;break;default:L=l,P=m,r=-1}if(K=0,C=0,B=D,q=a.table_index,G=F,H=0,o=-1,J=1< e||v===i&&J>f)return 1;for(var R=0;;){R++,s=B-H,A[C] r?(t=P[Q+A[C]],u=L[M+A[C]]):(t=96,u=0),b=1< >H)+n]=s<<24|t<<16|u|0;while(0!==n);for(b=1< >=1;if(0!==b?(K&=b-1,K+=b):K=0,C++,0===--N[B]){if(B===E)break;B=w[a.lens_index+A[C]]}if(B>F&&(K&p)!==o){for(0===H&&(H=F),q+=D,G=B-H,I=1< G+H&&(I-=N[G+H],!(0>=I));)G++,I<<=1;if(J+=1< e||v===i&&J>f)return 1;o=K&p,y[o]=F<<24|G<<16|q-a.table_index}}return 0!==K&&(y[q+K]=B-H<<24|64<<16|0),a.table_index+=J,a.bits=F,0}},{"./utils":31}],29:[function(a,b){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],30:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b;)a[b]=0}function e(a){return 256>a?gb[a]:gb[256+(a>>>7)]}function f(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function g(a,b,c){a.bi_valid>V-c?(a.bi_buf|=b< >V-a.bi_valid,a.bi_valid+=c-V):(a.bi_buf|=b< >>=1,c<<=1;while(--b>0);return c>>>1}function j(a){16===a.bi_valid?(f(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function k(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;U>=f;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;T>c;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function l(a,b,c){var d,e,f=new Array(U+1),g=0;for(d=1;U>=d;d++)f[d]=g=g+c[d-1]<<1;for(e=0;b>=e;e++){var h=a[2*e+1];0!==h&&(a[2*e]=i(f[h]++,h))}}function m(){var a,b,c,d,e,f=new Array(U+1);for(c=0,d=0;O-1>d;d++)for(ib[d]=c,a=0;a<1<<_[d];a++)hb[c++]=d;for(hb[c-1]=d,e=0,d=0;16>d;d++)for(jb[d]=e,a=0;a<1< >=7;R>d;d++)for(jb[d]=e<<7,a=0;a<1< =b;b++)f[b]=0;for(a=0;143>=a;)eb[2*a+1]=8,a++,f[8]++;for(;255>=a;)eb[2*a+1]=9,a++,f[9]++;for(;279>=a;)eb[2*a+1]=7,a++,f[7]++;for(;287>=a;)eb[2*a+1]=8,a++,f[8]++;for(l(eb,Q+1,f),a=0;R>a;a++)fb[2*a+1]=5,fb[2*a]=i(a,5);kb=new nb(eb,_,P+1,Q,U),lb=new nb(fb,ab,0,R,U),mb=new nb(new Array(0),bb,0,S,W)}function n(a){var b;for(b=0;Q>b;b++)a.dyn_ltree[2*b]=0;for(b=0;R>b;b++)a.dyn_dtree[2*b]=0;for(b=0;S>b;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*X]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function o(a){a.bi_valid>8?f(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function p(a,b,c,d){o(a),d&&(f(a,c),f(a,~c)),E.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function q(a,b,c,d){var e=2*b,f=2*c;return a[e]c;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=2>j?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)r(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],r(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,r(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],k(a,b),l(f,j,a.bl_count)}function u(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;c>=d;d++)e=g,g=b[2*(d+1)+1],++hh?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*Y]++):10>=h?a.bl_tree[2*Z]++:a.bl_tree[2*$]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4)) +}function v(a,b,c){var d,e,f=-1,i=b[1],j=0,k=7,l=4;for(0===i&&(k=138,l=3),d=0;c>=d;d++)if(e=i,i=b[2*(d+1)+1],!(++j j){do h(a,e,a.bl_tree);while(0!==--j)}else 0!==e?(e!==f&&(h(a,e,a.bl_tree),j--),h(a,Y,a.bl_tree),g(a,j-3,2)):10>=j?(h(a,Z,a.bl_tree),g(a,j-3,3)):(h(a,$,a.bl_tree),g(a,j-11,7));j=0,f=e,0===i?(k=138,l=3):e===i?(k=6,l=3):(k=7,l=4)}}function w(a){var b;for(u(a,a.dyn_ltree,a.l_desc.max_code),u(a,a.dyn_dtree,a.d_desc.max_code),t(a,a.bl_desc),b=S-1;b>=3&&0===a.bl_tree[2*cb[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function x(a,b,c,d){var e;for(g(a,b-257,5),g(a,c-1,5),g(a,d-4,4),e=0;d>e;e++)g(a,a.bl_tree[2*cb[e]+1],3);v(a,a.dyn_ltree,b-1),v(a,a.dyn_dtree,c-1)}function y(a){var b,c=4093624447;for(b=0;31>=b;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return G;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return H;for(b=32;P>b;b++)if(0!==a.dyn_ltree[2*b])return H;return G}function z(a){pb||(m(),pb=!0),a.l_desc=new ob(a.dyn_ltree,kb),a.d_desc=new ob(a.dyn_dtree,lb),a.bl_desc=new ob(a.bl_tree,mb),a.bi_buf=0,a.bi_valid=0,n(a)}function A(a,b,c,d){g(a,(J<<1)+(d?1:0),3),p(a,b,c,!0)}function B(a){g(a,K<<1,3),h(a,X,eb),j(a)}function C(a,b,c,d){var e,f,h=0;a.level>0?(a.strm.data_type===I&&(a.strm.data_type=y(a)),t(a,a.l_desc),t(a,a.d_desc),h=w(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,e>=f&&(e=f)):e=f=c+5,e>=c+4&&-1!==b?A(a,b,c,d):a.strategy===F||f===e?(g(a,(K<<1)+(d?1:0),3),s(a,eb,fb)):(g(a,(L<<1)+(d?1:0),3),x(a,a.l_desc.max_code+1,a.d_desc.max_code+1,h+1),s(a,a.dyn_ltree,a.dyn_dtree)),n(a),d&&o(a)}function D(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(hb[c]+P+1)]++,a.dyn_dtree[2*e(b)]++),a.last_lit===a.lit_bufsize-1}var E=a("./utils"),F=4,G=0,H=1,I=2,J=0,K=1,L=2,M=3,N=258,O=29,P=256,Q=P+1+O,R=30,S=19,T=2*Q+1,U=15,V=16,W=7,X=256,Y=16,Z=17,$=18,_=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ab=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],bb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],cb=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],db=512,eb=new Array(2*(Q+2));d(eb);var fb=new Array(2*R);d(fb);var gb=new Array(db);d(gb);var hb=new Array(N-M+1);d(hb);var ib=new Array(O);d(ib);var jb=new Array(R);d(jb);var kb,lb,mb,nb=function(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length},ob=function(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b},pb=!1;c._tr_init=z,c._tr_stored_block=A,c._tr_flush_block=C,c._tr_tally=D,c._tr_align=B},{"./utils":31}],31:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;c>b;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;c>b;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],32:[function(a,b){"use strict";function c(){this.next_in=null,this.next_in_index=0,this.avail_in=0,this.total_in=0,this.next_out=null,this.next_out_index=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=c},{}]},{},[7])(7)}); \ No newline at end of file diff --git a/docs/assets/js/customize.min.js b/docs/assets/js/customize.min.js index ff711f02b0..2c22ae7b94 100644 --- a/docs/assets/js/customize.min.js +++ b/docs/assets/js/customize.min.js @@ -20,21 +20,21 @@ JSZip - A Javascript class for generating and reading zip files (c) 2009-2014 Stuart Knightley Dual licenced under the MIT license or GPLv3. See https://raw.github.com/Stuk/jszip/master/LICENSE.markdown. -JSZip uses the library zlib.js released under the following license : -zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License +JSZip uses the library pako released under the MIT license : +https://github.com/nodeca/pako/blob/master/LICENSE */ -!function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.JSZip=a():"undefined"!=typeof global?global.JSZip=a():"undefined"!=typeof self&&(self.JSZip=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g >2,g=(3&b)<<4|c>>4,h=(15&c)<<2|e>>6,i=63&e,isNaN(c)?h=i=64:isNaN(e)&&(i=64),j=j+d.charAt(f)+d.charAt(g)+d.charAt(h)+d.charAt(i);return j},c.decode=function(a){var b,c,e,f,g,h,i,j="",k=0;for(a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");k >4,c=(15&g)<<4|h>>2,e=(3&h)<<6|i,j+=String.fromCharCode(b),64!=h&&(j+=String.fromCharCode(c)),64!=i&&(j+=String.fromCharCode(e));return j}},{}],2:[function(a,b){"use strict";function c(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}c.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},b.exports=c},{}],3:[function(a,b,c){"use strict";c.STORE={magic:"\x00\x00",compress:function(a){return a},uncompress:function(a){return a},compressInputType:null,uncompressInputType:null},c.DEFLATE=a("./flate")},{"./flate":6}],4:[function(a,b){"use strict";function c(){this.data=null,this.length=0,this.index=0}var d=a("./utils");c.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.lengtha)throw new Error("End of data reached (data length = "+this.length+", asked index = "+a+"). Corrupted zip ?")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return d.transformTo("string",this.readData(a))},readData:function(){},lastIndexOfSignature:function(){},readDate:function(){var a=this.readInt(4);return new Date((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1)}},b.exports=c},{"./utils":14}],5:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.date=null,c.compression=null},{}],6:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,e=a("zlibjs/bin/rawdeflate.min").Zlib,f=a("zlibjs/bin/rawinflate.min").Zlib;c.uncompressInputType=d?"uint8array":"array",c.compressInputType=d?"uint8array":"array",c.magic="\b\x00",c.compress=function(a){var b=new e.RawDeflate(a);return b.compress()},c.uncompress=function(a){var b=new f.RawInflate(a);return b.decompress()}},{"zlibjs/bin/rawdeflate.min":19,"zlibjs/bin/rawinflate.min":20}],7:[function(a,b){"use strict";function c(a,b){return this instanceof c?(this.files={},this.root="",a&&this.load(a,b),void(this.clone=function(){var a=new c;for(var b in this)"function"!=typeof this[b]&&(a[b]=this[b]);return a})):new c(a,b)}c.prototype=a("./object"),c.prototype.load=a("./load"),c.support=a("./support"),c.defaults=a("./defaults"),c.utils=a("./utils"),c.base64=a("./base64"),c.compressions=a("./compressions"),b.exports=c},{"./base64":1,"./compressions":3,"./defaults":5,"./load":8,"./object":9,"./support":12,"./utils":14}],8:[function(a,b){"use strict";var c=a("./base64"),d=a("./zipEntries");b.exports=function(a,b){var e,f,g,h;for(b=b||{},b.base64&&(a=c.decode(a)),f=new d(a,b),e=f.files,g=0;g c;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},r=function(){var a,b,c={};for(a=0;a 0?a.substring(0,b):""},v=function(a){return"/"!=a.slice(-1)&&(a+="/"),this.files[a]||t.call(this,a,null,{dir:!0}),this.files[a]},w=function(a,b){var c,d=new k;return a._data instanceof k?(d.uncompressedSize=a._data.uncompressedSize,d.crc32=a._data.crc32,0===d.uncompressedSize||a.options.dir?(b=j.STORE,d.compressedContent="",d.crc32=0):a._data.compressionMethod===b.magic?d.compressedContent=a._data.getCompressedContent():(c=a._data.getContent(),d.compressedContent=b.compress(f.transformTo(b.compressInputType,c)))):(c=n(a),(!c||0===c.length||a.options.dir)&&(b=j.STORE,c=""),d.uncompressedSize=c.length,d.crc32=this.crc32(c),d.compressedContent=b.compress(f.transformTo(b.compressInputType,c))),d.compressedSize=d.compressedContent.length,d.compressionMethod=b.magic,d},x=function(a,b,c,d){var e,f,h=(c.compressedContent,this.utf8encode(b.name)),i=h!==b.name,j=b.options,k="",l="";e=j.date.getHours(),e<<=6,e|=j.date.getMinutes(),e<<=5,e|=j.date.getSeconds()/2,f=j.date.getFullYear()-1980,f<<=4,f|=j.date.getMonth()+1,f<<=5,f|=j.date.getDate(),i&&(l=q(1,1)+q(this.crc32(h),4)+h,k+="up"+q(l.length,2)+l);var m="";m+="\n\x00",m+=i?"\x00\b":"\x00\x00",m+=c.compressionMethod,m+=q(e,2),m+=q(f,2),m+=q(c.crc32,4),m+=q(c.compressedSize,4),m+=q(c.uncompressedSize,4),m+=q(h.length,2),m+=q(k.length,2);var n=g.LOCAL_FILE_HEADER+m+h+k,o=g.CENTRAL_FILE_HEADER+"\x00"+m+"\x00\x00\x00\x00\x00\x00"+(b.options.dir===!0?"\x00\x00\x00":"\x00\x00\x00\x00")+q(d,4)+h+k;return{fileRecord:n,dirRecord:o,compressedObject:c}},y=function(){this.data=[]};y.prototype={append:function(a){a=f.transformTo("string",a),this.data.push(a)},finalize:function(){return this.data.join("")}};var z=function(a){this.data=new Uint8Array(a),this.index=0};z.prototype={append:function(a){0!==a.length&&(a=f.transformTo("uint8array",a),this.data.set(a,this.index),this.index+=a.length)},finalize:function(){return this.data}};var A={load:function(){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(a){var b,c,d,e,f=[];for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],e=new p(d.name,d._data,r(d.options)),c=b.slice(this.root.length,b.length),b.slice(0,this.root.length)===this.root&&a(c,e)&&f.push(e));return f},file:function(a,b,c){if(1===arguments.length){if(f.isRegExp(a)){var d=a;return this.filter(function(a,b){return!b.options.dir&&d.test(a)})}return this.filter(function(b,c){return!c.options.dir&&b===a})[0]||null}return a=this.root+a,t.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(f.isRegExp(a))return this.filter(function(b,c){return c.options.dir&&a.test(b)});var b=this.root+a,c=v.call(this,b),d=this.clone();return d.root=c.name,d},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!=a.slice(-1)&&(a+="/"),b=this.files[a]),b)if(b.options.dir)for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d i;i++)h=c?a[i]:a.charCodeAt(i),g=255&(b^h),e=d[g],b=b>>>8^e;return-1^b},utf8encode:function(a){if(c){var b=c.encode(a);return f.transformTo("string",b)}if(e.nodebuffer)return f.transformTo("string",l(a,"utf-8"));for(var d=[],g=0,h=0;h i?d[g++]=String.fromCharCode(i):i>127&&2048>i?(d[g++]=String.fromCharCode(i>>6|192),d[g++]=String.fromCharCode(63&i|128)):(d[g++]=String.fromCharCode(i>>12|224),d[g++]=String.fromCharCode(i>>6&63|128),d[g++]=String.fromCharCode(63&i|128))}return d.join("")},utf8decode:function(a){var b=[],c=0,g=f.getTypeOf(a),h="string"!==g,i=0,j=0,k=0,l=0;if(d)return d.decode(f.transformTo("uint8array",a));if(e.nodebuffer)return f.transformTo("nodebuffer",a).toString("utf-8");for(;i j?(b[c++]=String.fromCharCode(j),i++):j>191&&224>j?(k=h?a[i+1]:a.charCodeAt(i+1),b[c++]=String.fromCharCode((31&j)<<6|63&k),i+=2):(k=h?a[i+1]:a.charCodeAt(i+1),l=h?a[i+2]:a.charCodeAt(i+2),b[c++]=String.fromCharCode((15&j)<<12|(63&k)<<6|63&l),i+=3);return b.join("")}};b.exports=A},{"./base64":1,"./compressedObject":2,"./compressions":3,"./defaults":5,"./nodeBuffer":17,"./signature":10,"./support":12,"./utils":14}],10:[function(a,b,c){"use strict";c.LOCAL_FILE_HEADER="PK",c.CENTRAL_FILE_HEADER="PK",c.CENTRAL_DIRECTORY_END="PK",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",c.ZIP64_CENTRAL_DIRECTORY_END="PK",c.DATA_DESCRIPTOR="PK\b"},{}],11:[function(a,b){"use strict";function c(a,b){this.data=a,b||(this.data=e.string2binary(this.data)),this.length=this.data.length,this.index=0}var d=a("./dataReader"),e=a("./utils");c.prototype=new d,c.prototype.byteAt=function(a){return this.data.charCodeAt(a)},c.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)},c.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.index,this.index+a);return this.index+=a,b},b.exports=c},{"./dataReader":4,"./utils":14}],12:[function(a,b,c){var d=a("__browserify_process");if(c.base64=!0,c.array=!0,c.string=!0,c.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,c.nodebuffer=!d.browser,c.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)c.blob=!1;else{var e=new ArrayBuffer(0);try{c.blob=0===new Blob([e],{type:"application/zip"}).size}catch(f){try{var g=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,h=new g;h.append(e),c.blob=0===h.getBlob("application/zip").size}catch(f){c.blob=!1}}}},{__browserify_process:18}],13:[function(a,b){"use strict";function c(a){a&&(this.data=a,this.length=this.data.length,this.index=0)}var d=a("./dataReader");c.prototype=new d,c.prototype.byteAt=function(a){return this.data[a]},c.prototype.lastIndexOfSignature=function(a){for(var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.length-4;f>=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f;return-1},c.prototype.readData=function(a){this.checkOffset(a);var b=this.data.subarray(this.index,this.index+a);return this.index+=a,b},b.exports=c},{"./dataReader":4}],14:[function(a,b,c){"use strict";function d(a){return a}function e(a,b){for(var c=0;c g&&b>1;)try{d.push("array"===f||"nodebuffer"===f?String.fromCharCode.apply(null,a.slice(g,Math.min(g+b,e))):String.fromCharCode.apply(null,a.subarray(g,Math.min(g+b,e)))),g+=b}catch(i){b=Math.floor(b/2)}return d.join("")}function g(a,b){for(var c=0;c b?"0":"")+b.toString(16).toUpperCase();return d},c.findCompression=function(a){for(var b in i)if(i.hasOwnProperty(b)&&i[b].magic===a)return i[b];return null},c.isRegExp=function(a){return"[object RegExp]"===Object.prototype.toString.call(a)}},{"./compressions":3,"./nodeBuffer":17,"./support":12}],15:[function(a,b){"use strict";function c(a,b){this.files=[],this.loadOptions=b,a&&this.load(a)}var d=a("./stringReader"),e=a("./nodeBufferReader"),f=a("./uint8ArrayReader"),g=a("./utils"),h=a("./signature"),i=a("./zipEntry"),j=a("./support");c.prototype={checkSignature:function(a){var b=this.reader.readString(4);if(b!==a)throw new Error("Corrupted zip or bug : unexpected signature ("+g.pretty(b)+", expected "+g.pretty(a)+")")},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2),this.zipComment=this.reader.readString(this.zipCommentLength)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;d>e;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readString(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a 0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),c.title="browser",c.browser=!0,c.env={},c.argv=[],c.binding=function(){throw new Error("process.binding is not supported")},c.cwd=function(){return"/"},c.chdir=function(){throw new Error("process.chdir is not supported")}},{}],19:[function(){/** @license zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License */ -(function(){"use strict";function a(a,b){var c=a.split("."),d=n;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)c.length||b===l?d=d[e]?d[e]:d[e]={}:d[e]=b}function b(a,b){if(this.index="number"==typeof b?b:0,this.d=0,this.buffer=a instanceof(o?Uint8Array:Array)?a:new(o?Uint8Array:Array)(32768),2*this.buffer.length<=this.index)throw Error("invalid index");this.buffer.length<=this.index&&c(this)}function c(a){var b,c=a.buffer,d=c.length,e=new(o?Uint8Array:Array)(d<<1);if(o)e.set(c);else for(b=0;d>b;++b)e[b]=c[b];return a.buffer=e}function d(a){this.buffer=new(o?Uint16Array:Array)(2*a),this.length=0}function e(a,b){this.e=w,this.f=0,this.input=o&&a instanceof Array?new Uint8Array(a):a,this.c=0,b&&(b.lazy&&(this.f=b.lazy),"number"==typeof b.compressionType&&(this.e=b.compressionType),b.outputBuffer&&(this.b=o&&b.outputBuffer instanceof Array?new Uint8Array(b.outputBuffer):b.outputBuffer),"number"==typeof b.outputIndex&&(this.c=b.outputIndex)),this.b||(this.b=new(o?Uint8Array:Array)(32768))}function f(a,b){this.length=a,this.g=b}function g(a,b){function c(a,b){var c,d=a.g,e=[],f=0;c=z[a.length],e[f++]=65535&c,e[f++]=c>>16&255,e[f++]=c>>24;var g;switch(m){case 1===d:g=[0,d-1,0];break;case 2===d:g=[1,d-2,0];break;case 3===d:g=[2,d-3,0];break;case 4===d:g=[3,d-4,0];break;case 6>=d:g=[4,d-5,1];break;case 8>=d:g=[5,d-7,1];break;case 12>=d:g=[6,d-9,2];break;case 16>=d:g=[7,d-13,2];break;case 24>=d:g=[8,d-17,3];break;case 32>=d:g=[9,d-25,3];break;case 48>=d:g=[10,d-33,4];break;case 64>=d:g=[11,d-49,4];break;case 96>=d:g=[12,d-65,5];break;case 128>=d:g=[13,d-97,5];break;case 192>=d:g=[14,d-129,6];break;case 256>=d:g=[15,d-193,6];break;case 384>=d:g=[16,d-257,7];break;case 512>=d:g=[17,d-385,7];break;case 768>=d:g=[18,d-513,8];break;case 1024>=d:g=[19,d-769,8];break;case 1536>=d:g=[20,d-1025,9];break;case 2048>=d:g=[21,d-1537,9];break;case 3072>=d:g=[22,d-2049,10];break;case 4096>=d:g=[23,d-3073,10];break;case 6144>=d:g=[24,d-4097,11];break;case 8192>=d:g=[25,d-6145,11];break;case 12288>=d:g=[26,d-8193,12];break;case 16384>=d:g=[27,d-12289,12];break;case 24576>=d:g=[28,d-16385,13];break;case 32768>=d:g=[29,d-24577,13];break;default:throw"invalid distance"}c=g,e[f++]=c[0],e[f++]=c[1],e[f++]=c[2];var h,i;for(h=0,i=e.length;i>h;++h)r[s++]=e[h];u[e[0]]++,v[e[3]]++,t=a.length+b-1,n=null}var d,e,f,g,i,j,k,n,p,q={},r=o?new Uint16Array(2*b.length):[],s=0,t=0,u=new(o?Uint32Array:Array)(286),v=new(o?Uint32Array:Array)(30),w=a.f;if(!o){for(f=0;285>=f;)u[f++]=0;for(f=0;29>=f;)v[f++]=0}for(u[256]=1,d=0,e=b.length;e>d;++d){for(f=i=0,g=3;g>f&&d+f!==e;++f)i=i<<8|b[d+f];if(q[i]===l&&(q[i]=[]),j=q[i],!(0 =e){for(n&&c(n,-1),f=0,g=e-d;g>f;++f)p=b[d+f],r[s++]=p,++u[p];break}0 h;h++){if(d=c[j-h-1],g=3,k>3){for(i=k;i>3;i--)if(a[d+i-1]!==a[b+i-1])continue a;g=k}for(;258>g&&l>b+g&&a[d+g]===a[b+g];)++g;if(g>k&&(e=d,k=g),258===g)break}return new f(k,b-e)}function i(a,b){var c,e,f,g,h,i=a.length,k=new d(572),l=new(o?Uint8Array:Array)(i);if(!o)for(g=0;i>g;g++)l[g]=0;for(g=0;i>g;++g)0g;++g)c[g]=k.pop(),e[g]=c[g].value;for(f=j(e,e.length,b),g=0,h=c.length;h>g;++g)l[c[g].index]=f[g];return l}function j(a,b,c){function d(a){var c=n[a][p[a]];c===b?(d(a+1),d(a+1)):--l[c],++p[a]}var e,f,g,h,i,j=new(o?Uint16Array:Array)(c),k=new(o?Uint8Array:Array)(c),l=new(o?Uint8Array:Array)(b),m=Array(c),n=Array(c),p=Array(c),q=(1< f;++f)r>q?k[f]=0:(k[f]=1,q-=r),q<<=1,j[c-2-f]=(j[c-1-f]/2|0)+b;for(j[0]=k[0],m[0]=Array(j[0]),n[0]=Array(j[0]),f=1;c>f;++f)j[f]>2*j[f-1]+k[f]&&(j[f]=2*j[f-1]+k[f]),m[f]=Array(j[f]),n[f]=Array(j[f]);for(e=0;b>e;++e)l[e]=c;for(g=0;g e;++e)p[e]=0;for(1===k[c-1]&&(--l[0],++p[c-1]),f=c-2;f>=0;--f){for(h=e=0,i=p[f+1],g=0;g a[e]?(m[f][g]=h,n[f][g]=b,i+=2):(m[f][g]=a[e],n[f][g]=e,++e);p[f]=0,1===k[f]&&d(f)}return l}function k(a){var b,c,d,e,f=new(o?Uint16Array:Array)(a.length),g=[],h=[],i=0;for(b=0,c=a.length;c>b;b++)g[a[b]]=(0|g[a[b]])+1;for(b=1,c=16;c>=b;b++)h[b]=i,i+=0|g[b],i<<=1;for(b=0,c=a.length;c>b;b++)for(i=h[a[b]],h[a[b]]+=1,d=f[b]=0,e=a[b];e>d;d++)f[b]=f[b]<<1|1&i,i>>>=1;return f}var l=void 0,m=!0,n=this,o="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array&&"undefined"!=typeof DataView;b.prototype.a=function(a,b,d){var e,f=this.buffer,g=this.index,h=this.d,i=f[g];if(d&&b>1&&(a=b>8?(u[255&a]<<24|u[a>>>8&255]<<16|u[a>>>16&255]<<8|u[a>>>24&255])>>32-b:u[a]>>8-b),8>b+h)i=i<e;++e)i=i<<1|a>>b-e-1&1,8===++h&&(h=0,f[g++]=u[i],i=0,g===f.length&&(f=c(this)));f[g]=i,this.buffer=f,this.d=h,this.index=g},b.prototype.finish=function(){var a,b=this.buffer,c=this.index;return 0 p;++p){for(var r=p,s=r,t=7,r=r>>>1;r;r>>>=1)s<<=1,s|=1&r,--t;q[p]=(s< >>0}var u=q;d.prototype.getParent=function(a){return 2*((a-2)/4|0)},d.prototype.push=function(a,b){var c,d,e,f=this.buffer;for(c=this.length,f[this.length++]=b,f[this.length++]=a;c>0&&(d=this.getParent(c),f[c]>f[d]);)e=f[c],f[c]=f[d],f[d]=e,e=f[c+1],f[c+1]=f[d+1],f[d+1]=e,c=d;return this.length},d.prototype.pop=function(){var a,b,c,d,e,f=this.buffer;for(b=f[0],a=f[1],this.length-=2,f[0]=f[this.length],f[1]=f[this.length+1],e=0;d=2*e+2,!(d>=this.length)&&(d+2 f[d]&&(d+=2),f[d]>f[e]);)c=f[e],f[e]=f[d],f[d]=c,c=f[e+1],f[e+1]=f[d+1],f[d+1]=c,e=d;return{index:a,value:b,length:this.length}};var v,w=2,x=[];for(v=0;288>v;v++)switch(m){case 143>=v:x.push([v+48,8]);break;case 255>=v:x.push([v-144+400,9]);break;case 279>=v:x.push([v-256+0,7]);break;case 287>=v:x.push([v-280+192,8]);break;default:throw"invalid literal: "+v}e.prototype.h=function(){var a,c,d,e,f=this.input;switch(this.e){case 0:for(d=0,e=f.length;e>d;){c=o?f.subarray(d,d+65535):f.slice(d,d+65535),d+=c.length;var h=c,j=d===e,n=l,p=l,q=l,r=l,s=l,t=this.b,u=this.c;if(o){for(t=new Uint8Array(this.b.buffer);t.length<=u+h.length+5;)t=new Uint8Array(t.length<<1);t.set(this.b)}if(n=j?1:0,t[u++]=0|n,p=h.length,q=~p+65536&65535,t[u++]=255&p,t[u++]=p>>>8&255,t[u++]=255&q,t[u++]=q>>>8&255,o)t.set(h,u),u+=h.length,t=t.subarray(0,u);else{for(r=0,s=h.length;s>r;++r)t[u++]=h[r];t.length=u}this.c=u,this.b=t}break;case 1:var v=new b(o?new Uint8Array(this.b.buffer):this.b,this.c);v.a(1,1,m),v.a(1,2,m);var y,z,A,B=g(this,f);for(y=0,z=B.length;z>y;y++)if(A=B[y],b.prototype.a.apply(v,x[A]),A>256)v.a(B[++y],B[++y],m),v.a(B[++y],5),v.a(B[++y],B[++y],m);else if(256===A)break;this.b=v.finish(),this.c=this.b.length;break;case w:var C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R=new b(o?new Uint8Array(this.b.buffer):this.b,this.c),S=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],T=Array(19);for(C=w,R.a(1,1,m),R.a(C,2,m),D=g(this,f),H=i(this.j,15),I=k(H),J=i(this.i,7),K=k(J),E=286;E>257&&0===H[E-1];E--);for(F=30;F>1&&0===J[F-1];F--);var U,V,W,X,Y,Z,$=E,_=F,ab=new(o?Uint32Array:Array)($+_),bb=new(o?Uint32Array:Array)(316),cb=new(o?Uint8Array:Array)(19);for(U=V=0;$>U;U++)ab[V++]=H[U];for(U=0;_>U;U++)ab[V++]=J[U];if(!o)for(U=0,X=cb.length;X>U;++U)cb[U]=0;for(U=Y=0,X=ab.length;X>U;U+=V){for(V=1;X>U+V&&ab[U+V]===ab[U];++V);if(W=V,0===ab[U])if(3>W)for(;0 0;)Z=138>W?W:138,Z>W-3&&W>Z&&(Z=W-3),10>=Z?(bb[Y++]=17,bb[Y++]=Z-3,cb[17]++):(bb[Y++]=18,bb[Y++]=Z-11,cb[18]++),W-=Z;else if(bb[Y++]=ab[U],cb[ab[U]]++,W--,3>W)for(;0 0;)Z=6>W?W:6,Z>W-3&&W>Z&&(Z=W-3),bb[Y++]=16,bb[Y++]=Z-3,cb[16]++,W-=Z}for(a=o?bb.subarray(0,Y):bb.slice(0,Y),L=i(cb,7),P=0;19>P;P++)T[P]=L[S[P]];for(G=19;G>4&&0===T[G-1];G--);for(M=k(L),R.a(E-257,5,m),R.a(F-1,5,m),R.a(G-4,4,m),P=0;G>P;P++)R.a(T[P],3,m);for(P=0,Q=a.length;Q>P;P++)if(N=a[P],R.a(M[N],L[N],m),N>=16){switch(P++,N){case 16:O=2;break;case 17:O=3;break;case 18:O=7;break;default:throw"invalid code: "+N}R.a(a[P],O,m)}var db,eb,fb,gb,hb,ib,jb,kb,lb=[I,H],mb=[K,J];for(hb=lb[0],ib=lb[1],jb=mb[0],kb=mb[1],db=0,eb=D.length;eb>db;++db)if(fb=D[db],R.a(hb[fb],ib[fb],m),fb>256)R.a(D[++db],D[++db],m),gb=D[++db],R.a(jb[gb],kb[gb],m),R.a(D[++db],D[++db],m);else if(256===fb)break;this.b=R.finish(),this.c=this.b.length;break;default:throw"invalid compression type"}return this.b};var y=function(){function a(a){switch(m){case 3===a:return[257,a-3,0];case 4===a:return[258,a-4,0];case 5===a:return[259,a-5,0];case 6===a:return[260,a-6,0];case 7===a:return[261,a-7,0];case 8===a:return[262,a-8,0];case 9===a:return[263,a-9,0];case 10===a:return[264,a-10,0];case 12>=a:return[265,a-11,1];case 14>=a:return[266,a-13,1];case 16>=a:return[267,a-15,1];case 18>=a:return[268,a-17,1];case 22>=a:return[269,a-19,2];case 26>=a:return[270,a-23,2];case 30>=a:return[271,a-27,2];case 34>=a:return[272,a-31,2];case 42>=a:return[273,a-35,3];case 50>=a:return[274,a-43,3];case 58>=a:return[275,a-51,3];case 66>=a:return[276,a-59,3];case 82>=a:return[277,a-67,4];case 98>=a:return[278,a-83,4];case 114>=a:return[279,a-99,4];case 130>=a:return[280,a-115,4];case 162>=a:return[281,a-131,5];case 194>=a:return[282,a-163,5];case 226>=a:return[283,a-195,5];case 257>=a:return[284,a-227,5];case 258===a:return[285,a-258,0];default:throw"invalid length: "+a}}var b,c,d=[];for(b=3;258>=b;b++)c=a(b),d[b]=c[2]<<24|c[1]<<16|c[0];return d}(),z=o?new Uint32Array(y):y;a("Zlib.RawDeflate",e),a("Zlib.RawDeflate.prototype.compress",e.prototype.h);var A,B,C,D,E={NONE:0,FIXED:1,DYNAMIC:w};if(Object.keys)A=Object.keys(E);else for(B in A=[],C=0,E)A[C++]=B;for(C=0,D=A.length;D>C;++C)B=A[C],a("Zlib.RawDeflate.CompressionType."+B,E[B])}).call(this)},{}],20:[function(){/** @license zlib.js 2012 - imaya [ https://github.com/imaya/zlib.js ] The MIT License */ -(function(){"use strict";function a(a,b){var c=a.split("."),d=g;!(c[0]in d)&&d.execScript&&d.execScript("var "+c[0]);for(var e;c.length&&(e=c.shift());)c.length||void 0===b?d=d[e]?d[e]:d[e]={}:d[e]=b}function b(a){var b,c,d,e,f,g,i,j,k,l,m=a.length,n=0,o=Number.POSITIVE_INFINITY;for(j=0;m>j;++j)a[j]>n&&(n=a[j]),a[j] =d;){for(j=0;m>j;++j)if(a[j]===d){for(g=0,i=e,k=0;d>k;++k)g=g<<1|1&i,i>>=1;for(l=d<<16|j,k=g;b>k;k+=f)c[k]=l;++e}++d,e<<=1,f<<=1}return[c,n,o]}function c(a,b){switch(this.g=[],this.h=32768,this.c=this.f=this.d=this.k=0,this.input=h?new Uint8Array(a):a,this.l=!1,this.i=j,this.q=!1,(b||!(b={}))&&(b.index&&(this.d=b.index),b.bufferSize&&(this.h=b.bufferSize),b.bufferType&&(this.i=b.bufferType),b.resize&&(this.q=b.resize)),this.i){case i:this.a=32768,this.b=new(h?Uint8Array:Array)(32768+this.h+258);break;case j:this.a=0,this.b=new(h?Uint8Array:Array)(this.h),this.e=this.v,this.m=this.s,this.j=this.t;break;default:throw Error("invalid inflate mode")}}function d(a,b){for(var c,d=a.f,e=a.c,f=a.input,g=a.d,h=f.length;b>e;){if(g>=h)throw Error("input buffer is broken");d|=f[g++]< >>b,a.c=e-b,a.d=g,c}function e(a,b){for(var c,d,e=a.f,f=a.c,g=a.input,h=a.d,i=g.length,j=b[0],k=b[1];k>f&&!(h>=i);)e|=g[h++]< >>16,a.f=e>>d,a.c=f-d,a.d=h,65535&c}function f(a){function c(a,b,c){var f,g,h,i=this.p;for(h=0;a>h;)switch(f=e(this,b)){case 16:for(g=3+d(this,2);g--;)c[h++]=i;break;case 17:for(g=3+d(this,3);g--;)c[h++]=0;i=0;break;case 18:for(g=11+d(this,7);g--;)c[h++]=0;i=0;break;default:i=c[h++]=f}return this.p=i,c}var f,g,i,j,k=d(a,5)+257,l=d(a,5)+1,m=d(a,4)+4,o=new(h?Uint8Array:Array)(n.length);for(j=0;m>j;++j)o[n[j]]=d(a,3);if(!h)for(j=m,m=o.length;m>j;++j)o[n[j]]=0;f=b(o),g=new(h?Uint8Array:Array)(k),i=new(h?Uint8Array:Array)(l),a.p=0,a.j(b(c.call(a,k,f,g)),b(c.call(a,l,f,i)))}var g=this,h="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array&&"undefined"!=typeof DataView,i=0,j=1;c.prototype.u=function(){for(;!this.l;){var a=d(this,3);switch(1&a&&(this.l=!0),a>>>=1){case 0:var b=this.input,c=this.d,e=this.b,g=this.a,k=b.length,l=void 0,m=void 0,n=e.length,o=void 0;if(this.c=this.f=0,c+1>=k)throw Error("invalid uncompressed block header: LEN");if(l=b[c++]|b[c++]<<8,c+1>=k)throw Error("invalid uncompressed block header: NLEN");if(m=b[c++]|b[c++]<<8,l===~m)throw Error("invalid uncompressed block header: length verify");if(c+l>b.length)throw Error("input buffer is broken");switch(this.i){case i:for(;g+l>e.length;){if(o=n-g,l-=o,h)e.set(b.subarray(c,c+o),g),g+=o,c+=o;else for(;o--;)e[g++]=b[c++];this.a=g,e=this.e(),g=this.a}break;case j:for(;g+l>e.length;)e=this.e({o:2});break;default:throw Error("invalid inflate mode")}if(h)e.set(b.subarray(c,c+l),g),g+=l,c+=l;else for(;l--;)e[g++]=b[c++];this.d=c,this.a=g,this.b=e;break;case 1:this.j(z,B);break;case 2:f(this);break;default:throw Error("unknown BTYPE: "+a)}}return this.m()};var k,l,m=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],n=h?new Uint16Array(m):m,o=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,258,258],p=h?new Uint16Array(o):o,q=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0],r=h?new Uint8Array(q):q,s=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577],t=h?new Uint16Array(s):s,u=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],v=h?new Uint8Array(u):u,w=new(h?Uint8Array:Array)(288);for(k=0,l=w.length;l>k;++k)w[k]=143>=k?8:255>=k?9:279>=k?7:8;var x,y,z=b(w),A=new(h?Uint8Array:Array)(30);for(x=0,y=A.length;y>x;++x)A[x]=5;var B=b(A);c.prototype.j=function(a,b){var c=this.b,f=this.a;this.n=a;for(var g,h,i,j,k=c.length-258;256!==(g=e(this,a));)if(256>g)f>=k&&(this.a=f,c=this.e(),f=this.a),c[f++]=g;else for(h=g-257,j=p[h],0 =k&&(this.a=f,c=this.e(),f=this.a);j--;)c[f]=c[f++-i];for(;8<=this.c;)this.c-=8,this.d--;this.a=f},c.prototype.t=function(a,b){var c=this.b,f=this.a;this.n=a;for(var g,h,i,j,k=c.length;256!==(g=e(this,a));)if(256>g)f>=k&&(c=this.e(),k=c.length),c[f++]=g;else for(h=g-257,j=p[h],0 k&&(c=this.e(),k=c.length);j--;)c[f]=c[f++-i];for(;8<=this.c;)this.c-=8,this.d--;this.a=f},c.prototype.e=function(){var a,b,c=new(h?Uint8Array:Array)(this.a-32768),d=this.a-32768,e=this.b;if(h)c.set(e.subarray(32768,c.length));else for(a=0,b=c.length;b>a;++a)c[a]=e[a+32768];if(this.g.push(c),this.k+=c.length,h)e.set(e.subarray(d,d+32768));else for(a=0;32768>a;++a)e[a]=e[d+a];return this.a=32768,e},c.prototype.v=function(a){var b,c,d,e,f=this.input.length/this.d+1|0,g=this.input,i=this.b;return a&&("number"==typeof a.o&&(f=a.o),"number"==typeof a.r&&(f+=a.r)),2>f?(c=(g.length-this.d)/this.n[2],e=258*(c/2)|0,d=e b;++b)for(a=i[b],d=0,e=a.length;e>d;++d)j[f++]=a[d];for(b=32768,c=this.a;c>b;++b)j[f++]=g[b];return this.g=[],this.buffer=j},c.prototype.s=function(){var a,b=this.a;return h?this.q?(a=new Uint8Array(b),a.set(this.b.subarray(0,b))):a=this.b.subarray(0,b):(this.b.length>b&&(this.b.length=b),a=this.b),this.buffer=a},a("Zlib.RawInflate",c),a("Zlib.RawInflate.prototype.decompress",c.prototype.u);var C,D,E,F,G={ADAPTIVE:j,BLOCK:i};if(Object.keys)C=Object.keys(G);else for(D in C=[],E=0,G)C[E++]=D;for(E=0,F=C.length;F>E;++E)D=C[E],a("Zlib.RawInflate.BufferType."+D,G[D])}).call(this)},{}]},{},[7])(7)}),function(a,b){function c(a){for(var b=Object.create(null),c=0;c =0;)if(b[c]==a)return!0;return!1}function g(a,b){for(var c=0,d=b.length;d>c;++c)if(a(b[c]))return b[c]}function h(a,b){if(0>=b)return"";if(1==b)return a;var c=h(a,b>>1);return c+=c,1&b&&(c+=a),c}function i(a,b){Error.call(this,a),this.msg=a,this.defs=b}function j(a,b,c){a===!0&&(a={});var d=a||{};if(c)for(var e in d)d.hasOwnProperty(e)&&!b.hasOwnProperty(e)&&i.croak("`"+e+"` is not a supported option",b);for(var e in b)b.hasOwnProperty(e)&&(d[e]=a&&a.hasOwnProperty(e)?a[e]:b[e]);return d}function k(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}function l(){}function m(a,b){a.indexOf(b)<0&&a.push(b)}function n(a,b){return a.replace(/\{(.+?)\}/g,function(a,c){return b[c]})}function o(a,b){for(var c=a.length;--c>=0;)a[c]===b&&a.splice(c,1)}function p(a,b){function c(a,c){for(var d=[],e=0,f=0,g=0;e =0})}function s(a){function b(a){if(1==a.length)return c+="return str === "+JSON.stringify(a[0])+";";c+="switch(str){";for(var b=0;b 3){d.sort(function(a,b){return b.length-a.length}),c+="switch(str.length){";for(var e=0;e =0;)if(!b(a[c]))return!1;return!0}function u(){this._values=Object.create(null),this._size=0}function v(a,b,c,d){arguments.length<4&&(d=U),b=b?b.split(/\s+/):[];var e=b;d&&d.PROPS&&(b=b.concat(d.PROPS));for(var f="return function AST_"+a+"(props){ if (props) { ",g=b.length;--g>=0;)f+="this."+b[g]+" = props."+b[g]+";";var h=d&&new d;(h&&h.initialize||c&&c.initialize)&&(f+="this.initialize();"),f+="}}";var i=new Function(f)();if(h&&(i.prototype=h,i.BASE=d),d&&d.SUBCLASSES.push(i),i.prototype.CTOR=i,i.PROPS=b||null,i.SELF_PROPS=e,i.SUBCLASSES=[],a&&(i.prototype.TYPE=i.TYPE=a),c)for(g in c)c.hasOwnProperty(g)&&(/^\$/.test(g)?i[g.substr(1)]=c[g]:i.prototype[g]=c[g]);return i.DEFMETHOD=function(a,b){this.prototype[a]=b},i}function w(a,b){a.body instanceof V?a.body._walk(b):a.body.forEach(function(a){a._walk(b)})}function x(a){this.visit=a,this.stack=[]}function y(a){return a>=97&&122>=a||a>=65&&90>=a||a>=170&&Lc.letter.test(String.fromCharCode(a))}function z(a){return a>=48&&57>=a}function A(a){return z(a)||y(a)}function B(a){return Lc.non_spacing_mark.test(a)||Lc.space_combining_mark.test(a)}function C(a){return Lc.connector_punctuation.test(a)}function D(a){return!Ac(a)&&/^[a-z_$][a-z0-9_$]*$/i.test(a)}function E(a){return 36==a||95==a||y(a)}function F(a){var b=a.charCodeAt(0);return E(b)||z(b)||8204==b||8205==b||B(a)||C(a)}function G(a){var b=a.length;if(0==b)return!1;if(!E(a.charCodeAt(0)))return!1;for(;--b>=0;)if(!F(a.charAt(b)))return!1;return!0}function H(a){return Dc.test(a)?parseInt(a.substr(2),16):Ec.test(a)?parseInt(a.substr(1),8):Fc.test(a)?parseFloat(a):void 0}function I(a,b,c,d){this.message=a,this.line=b,this.col=c,this.pos=d,this.stack=(new Error).stack}function J(a,b,c,d,e){throw new I(a,c,d,e)}function K(a,b,c){return a.type==b&&(null==c||a.value==c)}function L(a,b,c){function d(){return y.text.charAt(y.pos)}function e(a,b){var c=y.text.charAt(y.pos++);if(a&&!c)throw Mc;return"\n"==c?(y.newline_before=y.newline_before||!b,++y.line,y.col=0):++y.col,c}function f(a){for(;a-->0;)e()}function g(a){return y.text.substr(y.pos,a.length)==a}function h(a,b){var c=y.text.indexOf(a,y.pos);if(b&&-1==c)throw Mc;return c}function i(){y.tokline=y.line,y.tokcol=y.col,y.tokpos=y.pos}function j(a,c,d){y.regex_allowed="operator"==a&&!Oc(c)||"keyword"==a&&Bc(c)||"punc"==a&&Ic(c),B="punc"==a&&"."==c;var e={type:a,value:c,line:y.tokline,col:y.tokcol,pos:y.tokpos,endpos:y.pos,nlb:y.newline_before,file:b};if(!d){e.comments_before=y.comments_before,y.comments_before=[];for(var f=0,g=e.comments_before.length;g>f;f++)e.nlb=e.nlb||e.comments_before[f].nlb}return y.newline_before=!1,new T(e)}function k(){for(;Hc(d());)e()}function l(a){for(var b,c="",f=0;(b=d())&&a(b,f++);)c+=e();return c}function m(a){J(a,b,y.tokline,y.tokcol,y.tokpos)}function n(a){var b=!1,c=!1,d=!1,e="."==a,f=l(function(f,g){var h=f.charCodeAt(0);switch(h){case 120:case 88:return d?!1:d=!0;case 101:case 69:return d?!0:b?!1:b=c=!0;case 45:return c||0==g&&!a;case 43:return c;case c=!1,46:return e||d||b?!1:e=!0}return A(h)});a&&(f=a+f);var g=H(f);return isNaN(g)?void m("Invalid syntax: "+f):j("num",g)}function o(a){var b=e(!0,a);switch(b.charCodeAt(0)){case 110:return"\n";case 114:return"\r";case 116:return" ";case 98:return"\b";case 118:return"";case 102:return"\f";case 48:return"\x00";case 120:return String.fromCharCode(p(2));case 117:return String.fromCharCode(p(4));case 10:return"";default:return b}}function p(a){for(var b=0;a>0;--a){var c=parseInt(e(!0),16);isNaN(c)&&m("Invalid hex-character pattern in string"),b=b<<4|c}return b}function q(a){var b,c=y.regex_allowed,d=h("\n");return-1==d?(b=y.text.substr(y.pos),y.pos=y.text.length):(b=y.text.substring(y.pos,d),y.pos=d),y.comments_before.push(j(a,b,!0)),y.regex_allowed=c,x()}function r(){for(var a,b,c=!1,f="",g=!1;null!=(a=d());)if(c)"u"!=a&&m("Expecting UnicodeEscapeSequence -- uXXXX"),a=o(),F(a)||m("Unicode char: "+a.charCodeAt(0)+" is not valid in identifier"),f+=a,c=!1;else if("\\"==a)g=c=!0,e();else{if(!F(a))break;f+=e()}return yc(f)&&g&&(b=f.charCodeAt(0).toString(16).toUpperCase(),f="\\u"+"0000".substr(b.length)+b+f.slice(1)),f}function s(a){function b(a){if(!d())return a;var c=a+d();return Gc(c)?(e(),b(c)):a}return j("operator",b(a||e()))}function t(){switch(e(),d()){case"/":return e(),q("comment1");case"*":return e(),D()}return y.regex_allowed?G(""):s("/")}function u(){return e(),z(d().charCodeAt(0))?n("."):j("punc",".")}function v(){var a=r();return B?j("name",a):zc(a)?j("atom",a):yc(a)?Gc(a)?j("operator",a):j("keyword",a):j("name",a)}function w(a,b){return function(c){try{return b(c)}catch(d){if(d!==Mc)throw d;m(a)}}}function x(a){if(null!=a)return G(a);if(k(),i(),c){if(g("")&&y.newline_before)return f(3),q("comment4")}var b=d();if(!b)return j("eof");var h=b.charCodeAt(0);switch(h){case 34:case 39:return C();case 46:return u();case 47:return t()}return z(h)?n():Jc(b)?j("punc",e()):Cc(b)?s():92==h||E(h)?v():void m("Unexpected character '"+b+"'")}var y={text:a.replace(/\r\n?|[\n\u2028\u2029]/g,"\n").replace(/\uFEFF/g,""),filename:b,pos:0,tokpos:0,line:1,tokline:0,col:0,tokcol:0,newline_before:!1,regex_allowed:!1,comments_before:[]},B=!1,C=w("Unterminated string constant",function(){for(var a=e(),b="";;){var c=e(!0);if("\\"==c){var d=0,f=null;c=l(function(a){if(a>="0"&&"7">=a){if(!f)return f=a,++d;if("3">=f&&2>=d)return++d;if(f>="4"&&1>=d)return++d}return!1}),c=d>0?String.fromCharCode(parseInt(c,8)):o(!0)}else if(c==a)break;b+=c}return j("string",b)}),D=w("Unterminated multiline comment",function(){var a=y.regex_allowed,b=h("*/",!0),c=y.text.substring(y.pos,b),d=c.split("\n"),e=d.length;y.pos=b+2,y.line+=e-1,e>1?y.col=d[e-1].length:y.col+=d[e-1].length,y.col+=2;var f=y.newline_before=y.newline_before||c.indexOf("\n")>=0;return y.comments_before.push(j("comment2",c,!0)),y.regex_allowed=a,y.newline_before=f,x()}),G=w("Unterminated regular expression",function(a){for(var b,c=!1,d=!1;b=e(!0);)if(c)a+="\\"+b,c=!1;else if("["==b)d=!0,a+=b;else if("]"==b&&d)d=!1,a+=b;else{if("/"==b&&!d)break;"\\"==b?c=!0:a+=b}var f=r();return j("regexp",new RegExp(a,f))});return x.context=function(a){return a&&(y=a),y},x}function M(a,b){function c(a,b){return K(Q.token,a,b)}function d(){return Q.peeked||(Q.peeked=Q.input())}function e(){return Q.prev=Q.token,Q.peeked?(Q.token=Q.peeked,Q.peeked=null):Q.token=Q.input(),Q.in_directives=Q.in_directives&&("string"==Q.token.type||c("punc",";")),Q.token}function f(){return Q.prev}function h(a,b,c,d){var e=Q.input.context();J(a,e.filename,null!=b?b:e.tokline,null!=c?c:e.tokcol,null!=d?d:e.tokpos)}function i(a,b){h(b,a.line,a.col)}function k(a){null==a&&(a=Q.token),i(a,"Unexpected token: "+a.type+" ("+a.value+")")}function l(a,b){return c(a,b)?e():void i(Q.token,"Unexpected token "+Q.token.type+" «"+Q.token.value+"», expected "+a+" «"+b+"»")}function m(a){return l("punc",a)}function n(){return!b.strict&&(Q.token.nlb||c("eof")||c("punc","}"))}function o(){c("punc",";")?e():n()||k()}function p(){m("(");var a=yb(!0);return m(")"),a}function q(a){return function(){var b=Q.token,c=a(),d=f();return c.start=b,c.end=d,c}}function r(){(c("operator","/")||c("operator","/="))&&(Q.peeked=null,Q.token=Q.input(Q.token.value.substr(1)))}function s(){var a=I(hc);g(function(b){return b.name==a.name},Q.labels)&&h("Label "+a.name+" defined twice"),m(":"),Q.labels.push(a);var b=R();return Q.labels.pop(),b instanceof cb||a.references.forEach(function(b){b instanceof vb&&(b=b.label.start,h("Continue label `"+a.name+"` refers to non-IterationStatement.",b.line,b.col,b.pos))}),new bb({body:b,label:a})}function t(a){return new Y({body:(a=yb(!0),o(),a)})}function u(a){var b,c=null;n()||(c=I(jc,!0)),null!=c?(b=g(function(a){return a.name==c.name},Q.labels),b||h("Undefined label "+c.name),c.thedef=b):0==Q.in_loop&&h(a.TYPE+" not inside a loop or switch"),o();var d=new a({label:c});return b&&b.references.push(d),d}function v(){m("(");var a=null;return!c("punc",";")&&(a=c("keyword","var")?(e(),T(!0)):yb(!0,!0),c("operator","in"))?(a instanceof Fb&&a.definitions.length>1&&h("Only one variable declaration allowed in for..in loop"),e(),x(a)):w(a)}function w(a){m(";");var b=c("punc",";")?null:yb(!0);m(";");var d=c("punc",")")?null:yb(!0);return m(")"),new gb({init:a,condition:b,step:d,body:P(R)})}function x(a){var b=a instanceof Fb?a.definitions[0].name:null,c=yb(!0);return m(")"),new hb({init:a,name:b,object:c,body:P(R)})}function y(){var a=p(),b=R(),d=null;return c("keyword","else")&&(e(),d=R()),new wb({condition:a,body:b,alternative:d})}function z(){m("{");for(var a=[];!c("punc","}");)c("eof")&&k(),a.push(R());return e(),a}function A(){m("{");for(var a,b=[],d=null,g=null;!c("punc","}");)c("eof")&&k(),c("keyword","case")?(g&&(g.end=f()),d=[],g=new Ab({start:(a=Q.token,e(),a),expression:yb(!0),body:d}),b.push(g),m(":")):c("keyword","default")?(g&&(g.end=f()),d=[],g=new zb({start:(a=Q.token,e(),m(":"),a),body:d}),b.push(g)):(d||k(),d.push(R()));return g&&(g.end=f()),e(),b}function B(){var a=z(),b=null,d=null;if(c("keyword","catch")){var g=Q.token;e(),m("(");var i=I(gc);m(")"),b=new Cb({start:g,argname:i,body:z(),end:f()})}if(c("keyword","finally")){var g=Q.token;e(),d=new Db({start:g,body:z(),end:f()})}return b||d||h("Missing catch/finally blocks"),new Bb({body:a,bcatch:b,bfinally:d})}function C(a,b){for(var d=[];d.push(new Hb({start:Q.token,name:I(b?cc:bc),value:c("operator","=")?(e(),yb(!1,a)):null,end:f()})),c("punc",",");)e();return d}function D(){var a,b=Q.token;switch(b.type){case"name":case"keyword":a=H(ic);break;case"num":a=new nc({start:b,end:b,value:b.value});break;case"string":a=new mc({start:b,end:b,value:b.value});break;case"regexp":a=new oc({start:b,end:b,value:b.value});break;case"atom":switch(b.value){case"false":a=new wc({start:b,end:b});break;case"true":a=new xc({start:b,end:b});break;case"null":a=new qc({start:b,end:b})}}return e(),a}function E(a,b,d){for(var f=!0,g=[];!c("punc",a)&&(f?f=!1:m(","),!b||!c("punc",a));)g.push(c("punc",",")&&d?new tc({start:Q.token,end:Q.token}):yb(!1));return e(),g}function F(){var a=Q.token;switch(e(),a.type){case"num":case"string":case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function G(){var a=Q.token;switch(e(),a.type){case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function H(a){var b=Q.token.value;return new("this"==b?kc:a)({name:String(b),start:Q.token,end:Q.token})}function I(a,b){if(!c("name"))return b||h("Name expected"),null;var d=H(a);return e(),d}function M(a,b,c){return"++"!=b&&"--"!=b||O(c)||h("Invalid use of "+b+" operator"),new a({operator:b,expression:c})}function N(a){return pb(lb(!0),0,a)}function O(a){return b.strict?a instanceof kc?!1:a instanceof Lb||a instanceof $b:!0}function P(a){++Q.in_loop;var b=a();return--Q.in_loop,b}b=j(b,{strict:!1,filename:null,toplevel:null,expression:!1,html5_comments:!0});var Q={input:"string"==typeof a?L(a,b.filename,b.html5_comments):a,token:null,prev:null,peeked:null,in_function:0,in_directives:!0,in_loop:0,labels:[]};Q.token=e();var R=q(function(){var a;switch(r(),Q.token.type){case"string":var b=Q.in_directives,g=t();return b&&g.body instanceof mc&&!c("punc",",")?new X({value:g.body.value}):g;case"num":case"regexp":case"operator":case"atom":return t();case"name":return K(d(),"punc",":")?s():t();case"punc":switch(Q.token.value){case"{":return new $({start:Q.token,body:z(),end:f()});case"[":case"(":return t();case";":return e(),new _;default:k()}case"keyword":switch(a=Q.token.value,e(),a){case"break":return u(ub);case"continue":return u(vb);case"debugger":return o(),new W;case"do":return new eb({body:P(R),condition:(l("keyword","while"),a=p(),o(),a)});case"while":return new fb({condition:p(),body:P(R)});case"for":return v();case"function":return S(ob);case"if":return y();case"return":return 0==Q.in_function&&h("'return' outside of function"),new rb({value:c("punc",";")?(e(),null):n()?null:(a=yb(!0),o(),a)});case"switch":return new xb({expression:p(),body:P(A)});case"throw":return Q.token.nlb&&h("Illegal newline after 'throw'"),new sb({value:(a=yb(!0),o(),a)});case"try":return B();case"var":return a=T(),o(),a;case"const":return a=U(),o(),a;case"with":return new ib({expression:p(),body:R()});default:k()}}}),S=function(a){var b=a===ob,d=c("name")?I(b?ec:fc):null;return b&&!d&&k(),m("("),new a({name:d,argnames:function(a,b){for(;!c("punc",")");)a?a=!1:m(","),b.push(I(dc));return e(),b}(!0,[]),body:function(a,b){++Q.in_function,Q.in_directives=!0,Q.in_loop=0,Q.labels=[];var c=z();return--Q.in_function,Q.in_loop=a,Q.labels=b,c}(Q.in_loop,Q.labels)})},T=function(a){return new Fb({start:f(),definitions:C(a,!1),end:f()})},U=function(){return new Gb({start:f(),definitions:C(!1,!0),end:f()})},V=function(){var a=Q.token;l("operator","new");var b,d=Z(!1);return c("punc","(")?(e(),b=E(")")):b=[],jb(new Jb({start:a,expression:d,args:b,end:f()}),!0)},Z=function(a){if(c("operator","new"))return V();var b=Q.token;if(c("punc")){switch(b.value){case"(":e();var d=yb(!0);return d.start=b,d.end=Q.token,m(")"),jb(d,a);case"[":return jb(ab(),a);case"{":return jb(db(),a)}k()}if(c("keyword","function")){e();var g=S(nb);return g.start=b,g.end=f(),jb(g,a)}return Sc[Q.token.type]?jb(D(),a):void k()},ab=q(function(){return m("["),new Ub({elements:E("]",!b.strict,!0)})}),db=q(function(){m("{");for(var a=!0,d=[];!c("punc","}")&&(a?a=!1:m(","),b.strict||!c("punc","}"));){var g=Q.token,h=g.type,i=F();if("name"==h&&!c("punc",":")){if("get"==i){d.push(new Zb({start:g,key:D(),value:S(mb),end:f()}));continue}if("set"==i){d.push(new Yb({start:g,key:D(),value:S(mb),end:f()}));continue}}m(":"),d.push(new Xb({start:g,key:i,value:yb(!1),end:f()}))}return e(),new Vb({properties:d})}),jb=function(a,b){var d=a.start;if(c("punc","."))return e(),jb(new Mb({start:d,expression:a,property:G(),end:f()}),b);if(c("punc","[")){e();var g=yb(!0);return m("]"),jb(new Nb({start:d,expression:a,property:g,end:f()}),b)}return b&&c("punc","(")?(e(),jb(new Ib({start:d,expression:a,args:E(")"),end:f()}),!0)):a},lb=function(a){var b=Q.token;if(c("operator")&&Nc(b.value)){e(),r();var d=M(Pb,b.value,lb(a));return d.start=b,d.end=f(),d}for(var g=Z(a);c("operator")&&Oc(Q.token.value)&&!Q.token.nlb;)g=M(Qb,Q.token.value,g),g.start=b,g.end=Q.token,e();return g},pb=function(a,b,d){var f=c("operator")?Q.token.value:null;"in"==f&&d&&(f=null);var g=null!=f?Qc[f]:null;if(null!=g&&g>b){e();var h=pb(lb(!0),g,d);return pb(new Rb({start:a.start,left:a,operator:f,right:h,end:h.end}),b,d)}return a},qb=function(a){var b=Q.token,d=N(a);if(c("operator","?")){e();var g=yb(!1);return m(":"),new Sb({start:b,condition:d,consequent:g,alternative:yb(!1,a),end:f()})}return d},tb=function(a){var b=Q.token,d=qb(a),g=Q.token.value;if(c("operator")&&Pc(g)){if(O(d))return e(),new Tb({start:b,left:d,operator:g,right:tb(a),end:f()});h("Invalid assignment")}return d},yb=function(a,b){var f=Q.token,g=tb(b);return a&&c("punc",",")?(e(),new Kb({start:f,car:g,cdr:yb(!0,b),end:d()})):g};return b.expression?yb(!0):function(){for(var a=Q.token,d=[];!c("eof");)d.push(R());var e=f(),g=b.toplevel;return g?(g.body=g.body.concat(d),g.end=e):g=new kb({start:a,body:d,end:e}),g}()}function N(a,b){x.call(this),this.before=a,this.after=b}function O(a,b,c){this.name=c.name,this.orig=[c],this.scope=a,this.references=[],this.global=!1,this.mangled_name=null,this.undeclared=!1,this.constant=!1,this.index=b}function P(a){function b(a,b){return a.replace(/[\u0080-\uffff]/g,function(a){var c=a.charCodeAt(0).toString(16);if(c.length<=2&&!b){for(;c.length<2;)c="0"+c;return"\\x"+c}for(;c.length<4;)c="0"+c;return"\\u"+c})}function c(c){var d=0,e=0;return c=c.replace(/[\\\b\f\n\r\t\x22\x27\u2028\u2029\0]/g,function(a){switch(a){case"\\":return"\\\\";case"\b":return"\\b";case"\f":return"\\f";case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";case'"':return++d,'"';case"'":return++e,"'";case"\x00":return"\\x00"}return a}),a.ascii_only&&(c=b(c)),d>e?"'"+c.replace(/\x27/g,"\\'")+"'":'"'+c.replace(/\x22/g,'\\"')+'"'}function d(b){var d=c(b);return a.inline_script&&(d=d.replace(/<\x2fscript([>\/\t\n\f\r ])/gi,"<\\/script$1")),d}function e(c){return c=c.toString(),a.ascii_only&&(c=b(c,!0)),c}function f(b){return h(" ",a.indent_start+v-b*a.indent_level)}function g(){return C.charAt(C.length-1)}function i(){a.max_line_len&&w>a.max_line_len&&k("\n")}function k(b){b=String(b);var c=b.charAt(0);if(B&&(c&&!(";}".indexOf(c)<0)||/[;]$/.test(C)||(a.semicolons||D(c)?(z+=";",w++,y++):(z+="\n",y++,x++,w=0),a.beautify||(A=!1)),B=!1,i()),!a.beautify&&a.preserve_line&&L[L.length-1])for(var d=L[L.length-1].start.line;d>x;)z+="\n",y++,x++,w=0,A=!1;if(A){var e=g();(F(e)&&(F(c)||"\\"==c)||/^[\+\-\/]$/.test(c)&&c==e)&&(z+=" ",w++,y++),A=!1}var f=b.split(/\r?\n/),h=f.length-1;x+=h,0==h?w+=f[h].length:w=f[h].length,y+=b.length,C=b,z+=b}function m(){B=!1,k(";")}function n(){return v+a.indent_level}function o(a){var b;return k("{"),I(),H(n(),function(){b=a()}),G(),k("}"),b}function p(a){k("(");var b=a();return k(")"),b}function q(a){k("[");var b=a();return k("]"),b}function r(){k(","),E()}function t(){k(":"),a.space_colon&&E()}function u(){return z}a=j(a,{indent_start:0,indent_level:4,quote_keys:!1,space_colon:!0,ascii_only:!1,unescape_regexps:!1,inline_script:!1,width:80,max_line_len:32e3,beautify:!1,source_map:null,bracketize:!1,semicolons:!0,comments:!1,preserve_line:!1,screw_ie8:!1,preamble:null},!0);var v=0,w=0,x=1,y=0,z="",A=!1,B=!1,C=null,D=s("( [ + * / - , ."),E=a.beautify?function(){k(" ")}:function(){A=!0},G=a.beautify?function(b){a.beautify&&k(f(b?.5:0))}:l,H=a.beautify?function(a,b){a===!0&&(a=n());var c=v;v=a;var d=b();return v=c,d}:function(a,b){return b()},I=a.beautify?function(){k("\n")}:l,J=a.beautify?function(){k(";")}:function(){B=!0},K=a.source_map?function(b,c){try{b&&a.source_map.add(b.file||"?",x,w,b.line,b.col,c||"name"!=b.type?c:b.value)}catch(d){U.warn("Couldn't figure out mapping for {file}:{line},{col} → {cline},{ccol} [{name}]",{file:b.file,line:b.line,col:b.col,cline:x,ccol:w,name:c||""})}}:l;a.preamble&&k(a.preamble.replace(/\r\n?|[\n\u2028\u2029]|\s*$/g,"\n"));var L=[];return{get:u,toString:u,indent:G,indentation:function(){return v},current_width:function(){return w-v},should_break:function(){return a.width&&this.current_width()>=a.width},newline:I,print:k,space:E,comma:r,colon:t,last:function(){return C},semicolon:J,force_semicolon:m,to_ascii:b,print_name:function(a){k(e(a))},print_string:function(a){k(d(a))},next_indent:n,with_indent:H,with_block:o,with_parens:p,with_square:q,add_mapping:K,option:function(b){return a[b]},line:function(){return x},col:function(){return w},pos:function(){return y},push_node:function(a){L.push(a)},pop_node:function(){return L.pop()},stack:function(){return L},parent:function(a){return L[L.length-2-(a||0)]}}}function Q(a,b){return this instanceof Q?(N.call(this,this.before,this.after),void(this.options=j(a,{sequences:!b,properties:!b,dead_code:!b,drop_debugger:!b,unsafe:!1,unsafe_comps:!1,conditionals:!b,comparisons:!b,evaluate:!b,booleans:!b,loops:!b,unused:!b,hoist_funs:!b,keep_fargs:!1,hoist_vars:!1,if_return:!b,join_vars:!b,cascade:!b,side_effects:!b,pure_getters:!1,pure_funcs:null,negate_iife:!b,screw_ie8:!1,drop_console:!1,angular:!1,warnings:!0,global_defs:{}},!0))):new Q(a,b)}function R(a){function b(b,e,f,g,h,i){if(d){var j=d.originalPositionFor({line:g,column:h});if(null===j.source)return;b=j.source,g=j.line,h=j.column,i=j.name}c.addMapping({generated:{line:e+a.dest_line_diff,column:f},original:{line:g+a.orig_line_diff,column:h},source:b,name:i})}a=j(a,{file:null,root:null,orig:null,orig_line_diff:0,dest_line_diff:0});var c=new MOZ_SourceMap.SourceMapGenerator({file:a.file,sourceRoot:a.root}),d=a.orig&&new MOZ_SourceMap.SourceMapConsumer(a.orig);return{add:b,get:function(){return c},toString:function(){return c.toString()}}}b.UglifyJS=a,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i.croak=function(a,b){throw new i(a,b)};var S=function(){function a(a,f,g){function h(){var h=f(a[i],i),l=h instanceof d;return l&&(h=h.v),h instanceof b?(h=h.v,h instanceof c?k.push.apply(k,g?h.v.slice().reverse():h.v):k.push(h)):h!==e&&(h instanceof c?j.push.apply(j,g?h.v.slice().reverse():h.v):j.push(h)),l}var i,j=[],k=[];if(a instanceof Array)if(g){for(i=a.length;--i>=0&&!h(););j.reverse(),k.reverse()}else for(i=0;i SymbolDef for all variables/functions defined in this scope",functions:"[Object/S] like `variables`, but only lists function declarations",uses_with:"[boolean/S] tells whether this scope uses the `with` statement",uses_eval:"[boolean/S] tells whether this scope contains a direct call to the global `eval`",parent_scope:"[AST_Scope?/S] link to the parent scope",enclosed:"[SymbolDef*/S] a list of all symbol definitions that are accessed from this scope or any subscopes",cname:"[integer/S] current index for mangling variables (used internally by the mangler)"}},Z),kb=v("Toplevel","globals",{$documentation:"The toplevel scope",$propdoc:{globals:"[Object/S] a map of name -> SymbolDef for all undeclared names"},wrap_enclose:function(a){var b=this,c=[],d=[];a.forEach(function(a){var b=a.split(":");c.push(b[0]),d.push(b[1])});var e="(function("+d.join(",")+"){ '$ORIG'; })("+c.join(",")+")";return e=M(e),e=e.transform(new N(function(a){return a instanceof X&&"$ORIG"==a.value?S.splice(b.body):void 0}))},wrap_commonjs:function(a,b){var c=this,d=[];b&&(c.figure_out_scope(),c.walk(new x(function(a){a instanceof ac&&a.definition().global&&(g(function(b){return b.name==a.name},d)||d.push(a))})));var e="(function(exports, global){ global['"+a+"'] = exports; '$ORIG'; '$EXPORTS'; }({}, (function(){return this}())))";return e=M(e),e=e.transform(new N(function(a){if(a instanceof Y&&(a=a.body,a instanceof mc))switch(a.getValue()){case"$ORIG":return S.splice(c.body);case"$EXPORTS":var b=[];return d.forEach(function(a){b.push(new Y({body:new Tb({left:new Nb({expression:new ic({name:"exports"}),property:new mc({value:a.name})}),operator:"=",right:new ic(a)})}))}),S.splice(b)}}))}},jb),lb=v("Lambda","name argnames uses_arguments",{$documentation:"Base class for functions",$propdoc:{name:"[AST_SymbolDeclaration?] the name of this function",argnames:"[AST_SymbolFunarg*] array of function arguments",uses_arguments:"[boolean/S] tells whether this function accesses the arguments array"},_walk:function(a){return a._visit(this,function(){this.name&&this.name._walk(a),this.argnames.forEach(function(b){b._walk(a)}),w(this,a)})}},jb),mb=v("Accessor",null,{$documentation:"A setter/getter function. The `name` property is always null."},lb),nb=v("Function",null,{$documentation:"A function expression"},lb),ob=v("Defun",null,{$documentation:"A function definition"},lb),pb=v("Jump",null,{$documentation:"Base class for “jumps” (for now that's `return`, `throw`, `break` and `continue`)"},V),qb=v("Exit","value",{$documentation:"Base class for “exits” (`return` and `throw`)",$propdoc:{value:"[AST_Node?] the value returned or thrown by this statement; could be null for AST_Return"},_walk:function(a){return a._visit(this,this.value&&function(){this.value._walk(a)})}},pb),rb=v("Return",null,{$documentation:"A `return` statement"},qb),sb=v("Throw",null,{$documentation:"A `throw` statement"},qb),tb=v("LoopControl","label",{$documentation:"Base class for loop control statements (`break` and `continue`)",$propdoc:{label:"[AST_LabelRef?] the label, or null if none"},_walk:function(a){return a._visit(this,this.label&&function(){this.label._walk(a)})}},pb),ub=v("Break",null,{$documentation:"A `break` statement"},tb),vb=v("Continue",null,{$documentation:"A `continue` statement"},tb),wb=v("If","condition alternative",{$documentation:"A `if` statement",$propdoc:{condition:"[AST_Node] the `if` condition",alternative:"[AST_Statement?] the `else` part, or null if not present"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.body._walk(a),this.alternative&&this.alternative._walk(a)})}},ab),xb=v("Switch","expression",{$documentation:"A `switch` statement",$propdoc:{expression:"[AST_Node] the `switch` “discriminant”"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},Z),yb=v("SwitchBranch",null,{$documentation:"Base class for `switch` branches"},Z),zb=v("Default",null,{$documentation:"A `default` switch branch"},yb),Ab=v("Case","expression",{$documentation:"A `case` switch branch",$propdoc:{expression:"[AST_Node] the `case` expression"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},yb),Bb=v("Try","bcatch bfinally",{$documentation:"A `try` statement",$propdoc:{bcatch:"[AST_Catch?] the catch block, or null if not present",bfinally:"[AST_Finally?] the finally block, or null if not present"},_walk:function(a){return a._visit(this,function(){w(this,a),this.bcatch&&this.bcatch._walk(a),this.bfinally&&this.bfinally._walk(a)})}},Z),Cb=v("Catch","argname",{$documentation:"A `catch` node; only makes sense as part of a `try` statement",$propdoc:{argname:"[AST_SymbolCatch] symbol for the exception"},_walk:function(a){return a._visit(this,function(){this.argname._walk(a),w(this,a)})}},Z),Db=v("Finally",null,{$documentation:"A `finally` node; only makes sense as part of a `try` statement"},Z),Eb=v("Definitions","definitions",{$documentation:"Base class for `var` or `const` nodes (variable declarations/initializations)",$propdoc:{definitions:"[AST_VarDef*] array of variable definitions"},_walk:function(a){return a._visit(this,function(){this.definitions.forEach(function(b){b._walk(a)})})}},V),Fb=v("Var",null,{$documentation:"A `var` statement"},Eb),Gb=v("Const",null,{$documentation:"A `const` statement"},Eb),Hb=v("VarDef","name value",{$documentation:"A variable declaration; only appears in a AST_Definitions node",$propdoc:{name:"[AST_SymbolVar|AST_SymbolConst] name of the variable",value:"[AST_Node?] initializer, or null of there's no initializer"},_walk:function(a){return a._visit(this,function(){this.name._walk(a),this.value&&this.value._walk(a)})}}),Ib=v("Call","expression args",{$documentation:"A function call expression",$propdoc:{expression:"[AST_Node] expression to invoke as function",args:"[AST_Node*] array of arguments"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.args.forEach(function(b){b._walk(a)})})}}),Jb=v("New",null,{$documentation:"An object instantiation. Derives from a function call since it has exactly the same properties"},Ib),Kb=v("Seq","car cdr",{$documentation:"A sequence expression (two comma-separated expressions)",$propdoc:{car:"[AST_Node] first element in sequence",cdr:"[AST_Node] second element in sequence"},$cons:function(a,b){var c=new Kb(a);return c.car=a,c.cdr=b,c},$from_array:function(a){if(0==a.length)return null;if(1==a.length)return a[0].clone();for(var b=null,c=a.length;--c>=0;)b=Kb.cons(a[c],b);for(var d=b;d;){if(d.cdr&&!d.cdr.cdr){d.cdr=d.cdr.car;break}d=d.cdr}return b},to_array:function(){for(var a=this,b=[];a;){if(b.push(a.car),a.cdr&&!(a.cdr instanceof Kb)){b.push(a.cdr);break}a=a.cdr}return b},add:function(a){for(var b=this;b;){if(!(b.cdr instanceof Kb)){var c=Kb.cons(b.cdr,a);return b.cdr=c}b=b.cdr}},_walk:function(a){return a._visit(this,function(){this.car._walk(a),this.cdr&&this.cdr._walk(a)})}}),Lb=v("PropAccess","expression property",{$documentation:'Base class for property access expressions, i.e. `a.foo` or `a["foo"]`',$propdoc:{expression:"[AST_Node] the “container” expression",property:"[AST_Node|string] the property to access. For AST_Dot this is always a plain string, while for AST_Sub it's an arbitrary AST_Node"}}),Mb=v("Dot",null,{$documentation:"A dotted property access expression",_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}},Lb),Nb=v("Sub",null,{$documentation:'Index-style property access, i.e. `a["foo"]`',_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.property._walk(a)})}},Lb),Ob=v("Unary","operator expression",{$documentation:"Base class for unary expressions",$propdoc:{operator:"[string] the operator",expression:"[AST_Node] expression that this unary operator applies to"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}}),Pb=v("UnaryPrefix",null,{$documentation:"Unary prefix expression, i.e. `typeof i` or `++i`"},Ob),Qb=v("UnaryPostfix",null,{$documentation:"Unary postfix expression, i.e. `i++`"},Ob),Rb=v("Binary","left operator right",{$documentation:"Binary expression, i.e. `a + b`",$propdoc:{left:"[AST_Node] left-hand side expression",operator:"[string] the operator",right:"[AST_Node] right-hand side expression"},_walk:function(a){return a._visit(this,function(){this.left._walk(a),this.right._walk(a)})}}),Sb=v("Conditional","condition consequent alternative",{$documentation:"Conditional expression using the ternary operator, i.e. `a ? b : c`",$propdoc:{condition:"[AST_Node]",consequent:"[AST_Node]",alternative:"[AST_Node]"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.consequent._walk(a),this.alternative._walk(a)})}}),Tb=v("Assign",null,{$documentation:"An assignment expression — `a = b + 5`"},Rb),Ub=v("Array","elements",{$documentation:"An array literal",$propdoc:{elements:"[AST_Node*] array of elements"},_walk:function(a){return a._visit(this,function(){this.elements.forEach(function(b){b._walk(a)})})}}),Vb=v("Object","properties",{$documentation:"An object literal",$propdoc:{properties:"[AST_ObjectProperty*] array of properties"},_walk:function(a){return a._visit(this,function(){this.properties.forEach(function(b){b._walk(a)})})}}),Wb=v("ObjectProperty","key value",{$documentation:"Base class for literal object properties",$propdoc:{key:"[string] the property name converted to a string for ObjectKeyVal. For setters and getters this is an arbitrary AST_Node.",value:"[AST_Node] property value. For setters and getters this is an AST_Function."},_walk:function(a){return a._visit(this,function(){this.value._walk(a)})}}),Xb=v("ObjectKeyVal",null,{$documentation:"A key: value object property"},Wb),Yb=v("ObjectSetter",null,{$documentation:"An object setter property"},Wb),Zb=v("ObjectGetter",null,{$documentation:"An object getter property"},Wb),$b=v("Symbol","scope name thedef",{$propdoc:{name:"[string] name of this symbol",scope:"[AST_Scope/S] the current scope (not necessarily the definition scope)",thedef:"[SymbolDef/S] the definition of this symbol"},$documentation:"Base class for all symbols"}),_b=v("SymbolAccessor",null,{$documentation:"The name of a property accessor (setter/getter function)"},$b),ac=v("SymbolDeclaration","init",{$documentation:"A declaration symbol (symbol in var/const, function name or argument, symbol in catch)",$propdoc:{init:"[AST_Node*/S] array of initializers for this declaration."}},$b),bc=v("SymbolVar",null,{$documentation:"Symbol defining a variable"},ac),cc=v("SymbolConst",null,{$documentation:"A constant declaration"},ac),dc=v("SymbolFunarg",null,{$documentation:"Symbol naming a function argument"},bc),ec=v("SymbolDefun",null,{$documentation:"Symbol defining a function"},ac),fc=v("SymbolLambda",null,{$documentation:"Symbol naming a function expression"},ac),gc=v("SymbolCatch",null,{$documentation:"Symbol naming the exception in catch"},ac),hc=v("Label","references",{$documentation:"Symbol naming a label (declaration)",$propdoc:{references:"[AST_LoopControl*] a list of nodes referring to this label"},initialize:function(){this.references=[],this.thedef=this}},$b),ic=v("SymbolRef",null,{$documentation:"Reference to some symbol (not definition/declaration)"},$b),jc=v("LabelRef",null,{$documentation:"Reference to a label symbol"},$b),kc=v("This",null,{$documentation:"The `this` symbol"},$b),lc=v("Constant",null,{$documentation:"Base class for all constants",getValue:function(){return this.value}}),mc=v("String","value",{$documentation:"A string literal",$propdoc:{value:"[string] the contents of this string"}},lc),nc=v("Number","value",{$documentation:"A number literal",$propdoc:{value:"[number] the numeric value"}},lc),oc=v("RegExp","value",{$documentation:"A regexp literal",$propdoc:{value:"[RegExp] the actual regexp"}},lc),pc=v("Atom",null,{$documentation:"Base class for atoms"},lc),qc=v("Null",null,{$documentation:"The `null` atom",value:null},pc),rc=v("NaN",null,{$documentation:"The impossible value",value:0/0},pc),sc=v("Undefined",null,{$documentation:"The `undefined` value",value:void 0},pc),tc=v("Hole",null,{$documentation:"A hole in an array",value:void 0},pc),uc=v("Infinity",null,{$documentation:"The `Infinity` value",value:1/0},pc),vc=v("Boolean",null,{$documentation:"Base class for booleans"},pc),wc=v("False",null,{$documentation:"The `false` atom",value:!1},vc),xc=v("True",null,{$documentation:"The `true` atom",value:!0},vc);x.prototype={_visit:function(a,b){this.stack.push(a);var c=this.visit(a,b?function(){b.call(a)}:l);return!c&&b&&b.call(a),this.stack.pop(),c},parent:function(a){return this.stack[this.stack.length-2-(a||0)]},push:function(a){this.stack.push(a)},pop:function(){return this.stack.pop()},self:function(){return this.stack[this.stack.length-1]},find_parent:function(a){for(var b=this.stack,c=b.length;--c>=0;){var d=b[c];if(d instanceof a)return d}},has_directive:function(a){return this.find_parent(jb).has_directive(a)},in_boolean_context:function(){for(var a=this.stack,b=a.length,c=a[--b];b>0;){var d=a[--b];if(d instanceof wb&&d.condition===c||d instanceof Sb&&d.condition===c||d instanceof db&&d.condition===c||d instanceof gb&&d.condition===c||d instanceof Pb&&"!"==d.operator&&d.expression===c)return!0;if(!(d instanceof Rb)||"&&"!=d.operator&&"||"!=d.operator)return!1;c=d}},loopcontrol_target:function(a){var b=this.stack;if(a)for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof bb&&d.label.name==a.name)return d.body}else for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof xb||d instanceof cb)return d}}};var yc="break case catch const continue debugger default delete do else finally for function if in instanceof new return switch throw try typeof var void while with",zc="false null true",Ac="abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized this throws transient volatile yield "+zc+" "+yc,Bc="return new delete throw else case";yc=s(yc),Ac=s(Ac),Bc=s(Bc),zc=s(zc);var Cc=s(e("+-*&%=<>!?|~^")),Dc=/^0x[0-9a-f]+$/i,Ec=/^0[0-7]+$/,Fc=/^\d*\.?\d*(?:e[+-]?\d*(?:\d\.?|\.?\d)\d*)?$/i,Gc=s(["in","instanceof","typeof","new","void","delete","++","--","+","-","!","~","&","|","^","*","/","%",">>","<<",">>>","<",">","<=",">=","==","===","!=","!==","?","=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&=","&&","||"]),Hc=s(e(" \n\r \f ")),Ic=s(e("[{(,.;:")),Jc=s(e("[]{}(),;:")),Kc=s(e("gmsiy")),Lc={letter:new RegExp("[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u0523\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0621-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971\\u0972\\u097B-\\u097F\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D28\\u0D2A-\\u0D39\\u0D3D\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC\\u0EDD\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8B\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10D0-\\u10FA\\u10FC\\u1100-\\u1159\\u115F-\\u11A2\\u11A8-\\u11F9\\u1200-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u1676\\u1681-\\u169A\\u16A0-\\u16EA\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u1900-\\u191C\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19A9\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u2094\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2C6F\\u2C71-\\u2C7D\\u2C80-\\u2CE4\\u2D00-\\u2D25\\u2D30-\\u2D65\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31B7\\u31F0-\\u31FF\\u3400\\u4DB5\\u4E00\\u9FC3\\uA000-\\uA48C\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA65F\\uA662-\\uA66E\\uA67F-\\uA697\\uA717-\\uA71F\\uA722-\\uA788\\uA78B\\uA78C\\uA7FB-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA90A-\\uA925\\uA930-\\uA946\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAC00\\uD7A3\\uF900-\\uFA2D\\uFA30-\\uFA6A\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),non_spacing_mark:new RegExp("[\\u0300-\\u036F\\u0483-\\u0487\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065E\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0900-\\u0902\\u093C\\u0941-\\u0948\\u094D\\u0951-\\u0955\\u0962\\u0963\\u0981\\u09BC\\u09C1-\\u09C4\\u09CD\\u09E2\\u09E3\\u0A01\\u0A02\\u0A3C\\u0A41\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81\\u0A82\\u0ABC\\u0AC1-\\u0AC5\\u0AC7\\u0AC8\\u0ACD\\u0AE2\\u0AE3\\u0B01\\u0B3C\\u0B3F\\u0B41-\\u0B44\\u0B4D\\u0B56\\u0B62\\u0B63\\u0B82\\u0BC0\\u0BCD\\u0C3E-\\u0C40\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0CBC\\u0CBF\\u0CC6\\u0CCC\\u0CCD\\u0CE2\\u0CE3\\u0D41-\\u0D44\\u0D4D\\u0D62\\u0D63\\u0DCA\\u0DD2-\\u0DD4\\u0DD6\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F71-\\u0F7E\\u0F80-\\u0F84\\u0F86\\u0F87\\u0F90-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102D-\\u1030\\u1032-\\u1037\\u1039\\u103A\\u103D\\u103E\\u1058\\u1059\\u105E-\\u1060\\u1071-\\u1074\\u1082\\u1085\\u1086\\u108D\\u109D\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B7-\\u17BD\\u17C6\\u17C9-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u1922\\u1927\\u1928\\u1932\\u1939-\\u193B\\u1A17\\u1A18\\u1A56\\u1A58-\\u1A5E\\u1A60\\u1A62\\u1A65-\\u1A6C\\u1A73-\\u1A7C\\u1A7F\\u1B00-\\u1B03\\u1B34\\u1B36-\\u1B3A\\u1B3C\\u1B42\\u1B6B-\\u1B73\\u1B80\\u1B81\\u1BA2-\\u1BA5\\u1BA8\\u1BA9\\u1C2C-\\u1C33\\u1C36\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE0\\u1CE2-\\u1CE8\\u1CED\\u1DC0-\\u1DE6\\u1DFD-\\u1DFF\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2CEF-\\u2CF1\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F\\uA67C\\uA67D\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA825\\uA826\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA951\\uA980-\\uA982\\uA9B3\\uA9B6-\\uA9B9\\uA9BC\\uAA29-\\uAA2E\\uAA31\\uAA32\\uAA35\\uAA36\\uAA43\\uAA4C\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uABE5\\uABE8\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE26]"),space_combining_mark:new RegExp("[\\u0903\\u093E-\\u0940\\u0949-\\u094C\\u094E\\u0982\\u0983\\u09BE-\\u09C0\\u09C7\\u09C8\\u09CB\\u09CC\\u09D7\\u0A03\\u0A3E-\\u0A40\\u0A83\\u0ABE-\\u0AC0\\u0AC9\\u0ACB\\u0ACC\\u0B02\\u0B03\\u0B3E\\u0B40\\u0B47\\u0B48\\u0B4B\\u0B4C\\u0B57\\u0BBE\\u0BBF\\u0BC1\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCC\\u0BD7\\u0C01-\\u0C03\\u0C41-\\u0C44\\u0C82\\u0C83\\u0CBE\\u0CC0-\\u0CC4\\u0CC7\\u0CC8\\u0CCA\\u0CCB\\u0CD5\\u0CD6\\u0D02\\u0D03\\u0D3E-\\u0D40\\u0D46-\\u0D48\\u0D4A-\\u0D4C\\u0D57\\u0D82\\u0D83\\u0DCF-\\u0DD1\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0F3E\\u0F3F\\u0F7F\\u102B\\u102C\\u1031\\u1038\\u103B\\u103C\\u1056\\u1057\\u1062-\\u1064\\u1067-\\u106D\\u1083\\u1084\\u1087-\\u108C\\u108F\\u109A-\\u109C\\u17B6\\u17BE-\\u17C5\\u17C7\\u17C8\\u1923-\\u1926\\u1929-\\u192B\\u1930\\u1931\\u1933-\\u1938\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A19-\\u1A1B\\u1A55\\u1A57\\u1A61\\u1A63\\u1A64\\u1A6D-\\u1A72\\u1B04\\u1B35\\u1B3B\\u1B3D-\\u1B41\\u1B43\\u1B44\\u1B82\\u1BA1\\u1BA6\\u1BA7\\u1BAA\\u1C24-\\u1C2B\\u1C34\\u1C35\\u1CE1\\u1CF2\\uA823\\uA824\\uA827\\uA880\\uA881\\uA8B4-\\uA8C3\\uA952\\uA953\\uA983\\uA9B4\\uA9B5\\uA9BA\\uA9BB\\uA9BD-\\uA9C0\\uAA2F\\uAA30\\uAA33\\uAA34\\uAA4D\\uAA7B\\uABE3\\uABE4\\uABE6\\uABE7\\uABE9\\uABEA\\uABEC]"),connector_punctuation:new RegExp("[\\u005F\\u203F\\u2040\\u2054\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFF3F]")};I.prototype.toString=function(){return this.message+" (line: "+this.line+", col: "+this.col+", pos: "+this.pos+")\n\n"+this.stack};var Mc={},Nc=s(["typeof","void","delete","--","++","!","~","-","+"]),Oc=s(["--","++"]),Pc=s(["=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&="]),Qc=function(a,b){for(var c=0;c ","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]],{}),Rc=c(["for","do","while","switch"]),Sc=c(["atom","num","string","regexp","name"]);N.prototype=new x,function(a){function b(b,c){b.DEFMETHOD("transform",function(b,d){var e,f;return b.push(this),b.before&&(e=b.before(this,c,d)),e===a&&(b.after?(b.stack[b.stack.length-1]=e=this.clone(),c(e,b),f=b.after(e,d),f!==a&&(e=f)):(e=this,c(e,b))),b.pop(),e})}function c(a,b){return S(a,function(a){return a.transform(b,!0)})}b(U,l),b(bb,function(a,b){a.label=a.label.transform(b),a.body=a.body.transform(b)}),b(Y,function(a,b){a.body=a.body.transform(b)}),b(Z,function(a,b){a.body=c(a.body,b)}),b(db,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b)}),b(gb,function(a,b){a.init&&(a.init=a.init.transform(b)),a.condition&&(a.condition=a.condition.transform(b)),a.step&&(a.step=a.step.transform(b)),a.body=a.body.transform(b)}),b(hb,function(a,b){a.init=a.init.transform(b),a.object=a.object.transform(b),a.body=a.body.transform(b)}),b(ib,function(a,b){a.expression=a.expression.transform(b),a.body=a.body.transform(b)}),b(qb,function(a,b){a.value&&(a.value=a.value.transform(b))}),b(tb,function(a,b){a.label&&(a.label=a.label.transform(b))}),b(wb,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b),a.alternative&&(a.alternative=a.alternative.transform(b))}),b(xb,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Ab,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Bb,function(a,b){a.body=c(a.body,b),a.bcatch&&(a.bcatch=a.bcatch.transform(b)),a.bfinally&&(a.bfinally=a.bfinally.transform(b))}),b(Cb,function(a,b){a.argname=a.argname.transform(b),a.body=c(a.body,b)}),b(Eb,function(a,b){a.definitions=c(a.definitions,b)}),b(Hb,function(a,b){a.name=a.name.transform(b),a.value&&(a.value=a.value.transform(b))}),b(lb,function(a,b){a.name&&(a.name=a.name.transform(b)),a.argnames=c(a.argnames,b),a.body=c(a.body,b)}),b(Ib,function(a,b){a.expression=a.expression.transform(b),a.args=c(a.args,b)}),b(Kb,function(a,b){a.car=a.car.transform(b),a.cdr=a.cdr.transform(b)}),b(Mb,function(a,b){a.expression=a.expression.transform(b)}),b(Nb,function(a,b){a.expression=a.expression.transform(b),a.property=a.property.transform(b)}),b(Ob,function(a,b){a.expression=a.expression.transform(b)}),b(Rb,function(a,b){a.left=a.left.transform(b),a.right=a.right.transform(b)}),b(Sb,function(a,b){a.condition=a.condition.transform(b),a.consequent=a.consequent.transform(b),a.alternative=a.alternative.transform(b)}),b(Ub,function(a,b){a.elements=c(a.elements,b)}),b(Vb,function(a,b){a.properties=c(a.properties,b)}),b(Wb,function(a,b){a.value=a.value.transform(b)})}(),O.prototype={unmangleable:function(a){return this.global&&!(a&&a.toplevel)||this.undeclared||!(a&&a.eval)&&(this.scope.uses_eval||this.scope.uses_with)},mangle:function(a){if(!this.mangled_name&&!this.unmangleable(a)){var b=this.scope;!a.screw_ie8&&this.orig[0]instanceof fc&&(b=b.parent_scope),this.mangled_name=b.next_mangled(a,this)}}},kb.DEFMETHOD("figure_out_scope",function(a){a=j(a,{screw_ie8:!1});var b=this,c=b.parent_scope=null,d=null,e=0,f=new x(function(b,g){if(a.screw_ie8&&b instanceof Cb){var h=c;return c=new jb(b),c.init_scope_vars(e),c.parent_scope=h,g(),c=h,!0}if(b instanceof jb){b.init_scope_vars(e);var h=b.parent_scope=c,i=d;return d=c=b,++e,g(),--e,c=h,d=i,!0}if(b instanceof X)return b.scope=c,m(c.directives,b.value),!0;if(b instanceof ib)for(var j=c;j;j=j.parent_scope)j.uses_with=!0;else if(b instanceof $b&&(b.scope=c),b instanceof fc)d.def_function(b);else if(b instanceof ec)(b.scope=d.parent_scope).def_function(b);else if(b instanceof bc||b instanceof cc){var k=d.def_variable(b);k.constant=b instanceof cc,k.init=f.parent().value}else b instanceof gc&&(a.screw_ie8?c:d).def_variable(b)});b.walk(f);var g=null,h=b.globals=new u,f=new x(function(a,c){if(a instanceof lb){var d=g;return g=a,c(),g=d,!0}if(a instanceof ic){var e=a.name,i=a.scope.find_variable(e);if(i)a.thedef=i;else{var j;if(h.has(e)?j=h.get(e):(j=new O(b,h.size(),a),j.undeclared=!0,j.global=!0,h.set(e,j)),a.thedef=j,"eval"==e&&f.parent()instanceof Ib)for(var k=a.scope;k&&!k.uses_eval;k=k.parent_scope)k.uses_eval=!0;g&&"arguments"==e&&(g.uses_arguments=!0)}return a.reference(),!0}});b.walk(f)}),jb.DEFMETHOD("init_scope_vars",function(a){this.directives=[],this.variables=new u,this.functions=new u,this.uses_with=!1,this.uses_eval=!1,this.parent_scope=null,this.enclosed=[],this.cname=-1,this.nesting=a}),jb.DEFMETHOD("strict",function(){return this.has_directive("use strict")}),lb.DEFMETHOD("init_scope_vars",function(){jb.prototype.init_scope_vars.apply(this,arguments),this.uses_arguments=!1}),ic.DEFMETHOD("reference",function(){var a=this.definition();a.references.push(this);for(var b=this.scope;b&&(m(b.enclosed,a),b!==a.scope);)b=b.parent_scope;this.frame=this.scope.nesting-a.scope.nesting}),jb.DEFMETHOD("find_variable",function(a){return a instanceof $b&&(a=a.name),this.variables.get(a)||this.parent_scope&&this.parent_scope.find_variable(a)}),jb.DEFMETHOD("has_directive",function(a){return this.parent_scope&&this.parent_scope.has_directive(a)||(this.directives.indexOf(a)>=0?this:null)}),jb.DEFMETHOD("def_function",function(a){this.functions.set(a.name,this.def_variable(a))}),jb.DEFMETHOD("def_variable",function(a){var b;return this.variables.has(a.name)?(b=this.variables.get(a.name),b.orig.push(a)):(b=new O(this,this.variables.size(),a),this.variables.set(a.name,b),b.global=!this.parent_scope),a.thedef=b}),jb.DEFMETHOD("next_mangled",function(a){var b=this.enclosed;a:for(;;){var c=Tc(++this.cname);if(D(c)&&!(a.except.indexOf(c)>=0)){for(var d=b.length;--d>=0;){var e=b[d],f=e.mangled_name||e.unmangleable(a)&&e.name;if(c==f)continue a}return c}}}),nb.DEFMETHOD("next_mangled",function(a,b){for(var c=b.orig[0]instanceof dc&&this.name&&this.name.definition();;){var d=lb.prototype.next_mangled.call(this,a,b);if(!c||c.mangled_name!=d)return d}}),jb.DEFMETHOD("references",function(a){return a instanceof $b&&(a=a.definition()),this.enclosed.indexOf(a)<0?null:a}),$b.DEFMETHOD("unmangleable",function(a){return this.definition().unmangleable(a)}),_b.DEFMETHOD("unmangleable",function(){return!0}),hc.DEFMETHOD("unmangleable",function(){return!1}),$b.DEFMETHOD("unreferenced",function(){return 0==this.definition().references.length&&!(this.scope.uses_eval||this.scope.uses_with)}),$b.DEFMETHOD("undeclared",function(){return this.definition().undeclared}),jc.DEFMETHOD("undeclared",function(){return!1}),hc.DEFMETHOD("undeclared",function(){return!1}),$b.DEFMETHOD("definition",function(){return this.thedef}),$b.DEFMETHOD("global",function(){return this.definition().global}),kb.DEFMETHOD("_default_mangler_options",function(a){return j(a,{except:[],eval:!1,sort:!1,toplevel:!1,screw_ie8:!1})}),kb.DEFMETHOD("mangle_names",function(a){a=this._default_mangler_options(a);var b=-1,c=[],d=new x(function(e,f){if(e instanceof bb){var g=b;return f(),b=g,!0}if(e instanceof jb){var h=(d.parent(),[]);return e.variables.each(function(b){a.except.indexOf(b.name)<0&&h.push(b)}),a.sort&&h.sort(function(a,b){return b.references.length-a.references.length}),void c.push.apply(c,h)}if(e instanceof hc){var i;do i=Tc(++b);while(!D(i));return e.mangled_name=i,!0}return a.screw_ie8&&e instanceof gc?void c.push(e.definition()):void 0});this.walk(d),c.forEach(function(b){b.mangle(a)})}),kb.DEFMETHOD("compute_char_frequency",function(a){a=this._default_mangler_options(a);var b=new x(function(b){b instanceof lc?Tc.consider(b.print_to_string()):b instanceof rb?Tc.consider("return"):b instanceof sb?Tc.consider("throw"):b instanceof vb?Tc.consider("continue"):b instanceof ub?Tc.consider("break"):b instanceof W?Tc.consider("debugger"):b instanceof X?Tc.consider(b.value):b instanceof fb?Tc.consider("while"):b instanceof eb?Tc.consider("do while"):b instanceof wb?(Tc.consider("if"),b.alternative&&Tc.consider("else")):b instanceof Fb?Tc.consider("var"):b instanceof Gb?Tc.consider("const"):b instanceof lb?Tc.consider("function"):b instanceof gb?Tc.consider("for"):b instanceof hb?Tc.consider("for in"):b instanceof xb?Tc.consider("switch"):b instanceof Ab?Tc.consider("case"):b instanceof zb?Tc.consider("default"):b instanceof ib?Tc.consider("with"):b instanceof Yb?Tc.consider("set"+b.key):b instanceof Zb?Tc.consider("get"+b.key):b instanceof Xb?Tc.consider(b.key):b instanceof Jb?Tc.consider("new"):b instanceof kc?Tc.consider("this"):b instanceof Bb?Tc.consider("try"):b instanceof Cb?Tc.consider("catch"):b instanceof Db?Tc.consider("finally"):b instanceof $b&&b.unmangleable(a)?Tc.consider(b.name):b instanceof Ob||b instanceof Rb?Tc.consider(b.operator):b instanceof Mb&&Tc.consider(b.property) -});this.walk(b),Tc.sort()});var Tc=function(){function a(){d=Object.create(null),c=e.split("").map(function(a){return a.charCodeAt(0)}),c.forEach(function(a){d[a]=0})}function b(a){var b="",d=54;do b+=String.fromCharCode(c[a%d]),a=Math.floor(a/d),d=64;while(a>0);return b}var c,d,e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_0123456789";return b.consider=function(a){for(var b=a.length;--b>=0;){var c=a.charCodeAt(b);c in d&&++d[c]}},b.sort=function(){c=p(c,function(a,b){return z(a)&&!z(b)?1:z(b)&&!z(a)?-1:d[b]-d[a]})},b.reset=a,a(),b.get=function(){return c},b.freq=function(){return d},b}();kb.DEFMETHOD("scope_warnings",function(a){a=j(a,{undeclared:!1,unreferenced:!0,assign_to_global:!0,func_arguments:!0,nested_defuns:!0,eval:!0});var b=new x(function(c){if(a.undeclared&&c instanceof ic&&c.undeclared()&&U.warn("Undeclared symbol: {name} [{file}:{line},{col}]",{name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.assign_to_global){var d=null;c instanceof Tb&&c.left instanceof ic?d=c.left:c instanceof hb&&c.init instanceof ic&&(d=c.init),d&&(d.undeclared()||d.global()&&d.scope!==d.definition().scope)&&U.warn("{msg}: {name} [{file}:{line},{col}]",{msg:d.undeclared()?"Accidental global?":"Assignment to global",name:d.name,file:d.start.file,line:d.start.line,col:d.start.col})}a.eval&&c instanceof ic&&c.undeclared()&&"eval"==c.name&&U.warn("Eval is used [{file}:{line},{col}]",c.start),a.unreferenced&&(c instanceof ac||c instanceof hc)&&c.unreferenced()&&U.warn("{type} {name} is declared but not referenced [{file}:{line},{col}]",{type:c instanceof hc?"Label":"Symbol",name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.func_arguments&&c instanceof lb&&c.uses_arguments&&U.warn("arguments used in function {name} [{file}:{line},{col}]",{name:c.name?c.name.name:"anonymous",file:c.start.file,line:c.start.line,col:c.start.col}),a.nested_defuns&&c instanceof ob&&!(b.parent()instanceof jb)&&U.warn('Function {name} declared in nested statement "{type}" [{file}:{line},{col}]',{name:c.name.name,type:b.parent().TYPE,file:c.start.file,line:c.start.line,col:c.start.col})});this.walk(b)}),function(){function a(a,b){a.DEFMETHOD("_codegen",b)}function b(a,b){a.DEFMETHOD("needs_parens",b)}function c(a){var b=a.parent();return b instanceof Ob?!0:b instanceof Rb&&!(b instanceof Tb)?!0:b instanceof Ib&&b.expression===this?!0:b instanceof Sb&&b.condition===this?!0:b instanceof Lb&&b.expression===this?!0:void 0}function d(a,b,c){var d=a.length-1;a.forEach(function(a,e){a instanceof _||(c.indent(),a.print(c),e==d&&b||(c.newline(),b&&c.newline()))})}function e(a,b){a.length>0?b.with_block(function(){d(a,!1,b)}):b.print("{}")}function f(a,b){if(b.option("bracketize"))return void o(a.body,b);if(!a.body)return b.force_semicolon();if(a.body instanceof eb&&!b.option("screw_ie8"))return void o(a.body,b);for(var c=a.body;;)if(c instanceof wb){if(!c.alternative)return void o(a.body,b);c=c.alternative}else{if(!(c instanceof ab))break;c=c.body}i(a.body,b)}function g(a,b,c){if(c)try{a.walk(new x(function(a){if(a instanceof Rb&&"in"==a.operator)throw b})),a.print(b)}catch(d){if(d!==b)throw d;a.print(b,!0)}else a.print(b)}function h(a){return[92,47,46,43,42,63,40,41,91,93,123,125,36,94,58,124,33,10,13,0,65279,8232,8233].indexOf(a)<0}function i(a,b){b.option("bracketize")?!a||a instanceof _?b.print("{}"):a instanceof $?a.print(b):b.with_block(function(){b.indent(),a.print(b),b.newline()}):!a||a instanceof _?b.force_semicolon():a.print(b)}function j(a){for(var b=a.stack(),c=b.length,d=b[--c],e=b[--c];c>0;){if(e instanceof V&&e.body===d)return!0;if(!(e instanceof Kb&&e.car===d||e instanceof Ib&&e.expression===d&&!(e instanceof Jb)||e instanceof Mb&&e.expression===d||e instanceof Nb&&e.expression===d||e instanceof Sb&&e.condition===d||e instanceof Rb&&e.left===d||e instanceof Qb&&e.expression===d))return!1;d=e,e=b[--c]}}function k(a,b){return 0==a.args.length&&!b.option("beautify")}function m(a){for(var b=a[0],c=b.length,d=1;d =0?d.push("0x"+a.toString(16).toLowerCase(),"0"+a.toString(8)):d.push("-0x"+(-a).toString(16).toLowerCase(),"-0"+(-a).toString(8)),(b=/^(.*?)(0+)$/.exec(a))&&d.push(b[1]+"e"+b[2].length)):(b=/^0?\.(0+)(.*)$/.exec(a))&&d.push(b[2]+"e-"+(b[1].length+b[2].length),c.substr(c.indexOf("."))),m(d)}function o(a,b){return a instanceof $?void a.print(b):void b.with_block(function(){b.indent(),a.print(b),b.newline()})}function p(a,b){a.DEFMETHOD("add_source_map",function(a){b(this,a)})}function q(a,b){b.add_mapping(a.start)}U.DEFMETHOD("print",function(a,b){function c(){d.add_comments(a),d.add_source_map(a),e(d,a)}var d=this,e=d._codegen;a.push_node(d),b||d.needs_parens(a)?a.with_parens(c):c(),a.pop_node()}),U.DEFMETHOD("print_to_string",function(a){var b=P(a);return this.print(b),b.get()}),U.DEFMETHOD("add_comments",function(a){var b=a.option("comments"),c=this;if(b){var d=c.start;if(d&&!d._comments_dumped){d._comments_dumped=!0;var e=d.comments_before||[];c instanceof qb&&c.value&&c.value.walk(new x(function(a){return a.start&&a.start.comments_before&&(e=e.concat(a.start.comments_before),a.start.comments_before=[]),a instanceof nb||a instanceof Ub||a instanceof Vb?!0:void 0})),b.test?e=e.filter(function(a){return b.test(a.value)}):"function"==typeof b&&(e=e.filter(function(a){return b(c,a)})),e.forEach(function(b){/comment[134]/.test(b.type)?(a.print("//"+b.value+"\n"),a.indent()):"comment2"==b.type&&(a.print("/*"+b.value+"*/"),d.nlb?(a.print("\n"),a.indent()):a.space())})}}}),b(U,function(){return!1}),b(nb,function(a){return j(a)}),b(Vb,function(a){return j(a)}),b(Ob,function(a){var b=a.parent();return b instanceof Lb&&b.expression===this}),b(Kb,function(a){var b=a.parent();return b instanceof Ib||b instanceof Ob||b instanceof Rb||b instanceof Hb||b instanceof Lb||b instanceof Ub||b instanceof Wb||b instanceof Sb}),b(Rb,function(a){var b=a.parent();if(b instanceof Ib&&b.expression===this)return!0;if(b instanceof Ob)return!0;if(b instanceof Lb&&b.expression===this)return!0;if(b instanceof Rb){var c=b.operator,d=Qc[c],e=this.operator,f=Qc[e];if(d>f||d==f&&this===b.right)return!0}}),b(Lb,function(a){var b=a.parent();if(b instanceof Jb&&b.expression===this)try{this.walk(new x(function(a){if(a instanceof Ib)throw b}))}catch(c){if(c!==b)throw c;return!0}}),b(Ib,function(a){var b,c=a.parent();return c instanceof Jb&&c.expression===this?!0:this.expression instanceof nb&&c instanceof Lb&&c.expression===this&&(b=a.parent(1))instanceof Tb&&b.left===c}),b(Jb,function(a){var b=a.parent();return k(this,a)&&(b instanceof Lb||b instanceof Ib&&b.expression===this)?!0:void 0}),b(nc,function(a){var b=a.parent();return this.getValue()<0&&b instanceof Lb&&b.expression===this?!0:void 0}),b(rc,function(a){var b=a.parent();return b instanceof Lb&&b.expression===this?!0:void 0}),b(Tb,c),b(Sb,c),a(X,function(a,b){b.print_string(a.value),b.semicolon()}),a(W,function(a,b){b.print("debugger"),b.semicolon()}),ab.DEFMETHOD("_do_print_body",function(a){i(this.body,a)}),a(V,function(a,b){a.body.print(b),b.semicolon()}),a(kb,function(a,b){d(a.body,!0,b),b.print("")}),a(bb,function(a,b){a.label.print(b),b.colon(),a.body.print(b)}),a(Y,function(a,b){a.body.print(b),b.semicolon()}),a($,function(a,b){e(a.body,b)}),a(_,function(a,b){b.semicolon()}),a(eb,function(a,b){b.print("do"),b.space(),a._do_print_body(b),b.space(),b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.semicolon()}),a(fb,function(a,b){b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a._do_print_body(b)}),a(gb,function(a,b){b.print("for"),b.space(),b.with_parens(function(){a.init?(a.init instanceof Eb?a.init.print(b):g(a.init,b,!0),b.print(";"),b.space()):b.print(";"),a.condition?(a.condition.print(b),b.print(";"),b.space()):b.print(";"),a.step&&a.step.print(b)}),b.space(),a._do_print_body(b)}),a(hb,function(a,b){b.print("for"),b.space(),b.with_parens(function(){a.init.print(b),b.space(),b.print("in"),b.space(),a.object.print(b)}),b.space(),a._do_print_body(b)}),a(ib,function(a,b){b.print("with"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a._do_print_body(b)}),lb.DEFMETHOD("_do_print",function(a,b){var c=this;b||a.print("function"),c.name&&(a.space(),c.name.print(a)),a.with_parens(function(){c.argnames.forEach(function(b,c){c&&a.comma(),b.print(a)})}),a.space(),e(c.body,a)}),a(lb,function(a,b){a._do_print(b)}),qb.DEFMETHOD("_do_print",function(a,b){a.print(b),this.value&&(a.space(),this.value.print(a)),a.semicolon()}),a(rb,function(a,b){a._do_print(b,"return")}),a(sb,function(a,b){a._do_print(b,"throw")}),tb.DEFMETHOD("_do_print",function(a,b){a.print(b),this.label&&(a.space(),this.label.print(a)),a.semicolon()}),a(ub,function(a,b){a._do_print(b,"break")}),a(vb,function(a,b){a._do_print(b,"continue")}),a(wb,function(a,b){b.print("if"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a.alternative?(f(a,b),b.space(),b.print("else"),b.space(),i(a.alternative,b)):a._do_print_body(b)}),a(xb,function(a,b){b.print("switch"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a.body.length>0?b.with_block(function(){a.body.forEach(function(a,c){c&&b.newline(),b.indent(!0),a.print(b)})}):b.print("{}")}),yb.DEFMETHOD("_do_print_body",function(a){this.body.length>0&&(a.newline(),this.body.forEach(function(b){a.indent(),b.print(a),a.newline()}))}),a(zb,function(a,b){b.print("default:"),a._do_print_body(b)}),a(Ab,function(a,b){b.print("case"),b.space(),a.expression.print(b),b.print(":"),a._do_print_body(b)}),a(Bb,function(a,b){b.print("try"),b.space(),e(a.body,b),a.bcatch&&(b.space(),a.bcatch.print(b)),a.bfinally&&(b.space(),a.bfinally.print(b))}),a(Cb,function(a,b){b.print("catch"),b.space(),b.with_parens(function(){a.argname.print(b)}),b.space(),e(a.body,b)}),a(Db,function(a,b){b.print("finally"),b.space(),e(a.body,b)}),Eb.DEFMETHOD("_do_print",function(a,b){a.print(b),a.space(),this.definitions.forEach(function(b,c){c&&a.comma(),b.print(a)});var c=a.parent(),d=c instanceof gb||c instanceof hb,e=d&&c.init===this;e||a.semicolon()}),a(Fb,function(a,b){a._do_print(b,"var")}),a(Gb,function(a,b){a._do_print(b,"const")}),a(Hb,function(a,b){if(a.name.print(b),a.value){b.space(),b.print("="),b.space();var c=b.parent(1),d=c instanceof gb||c instanceof hb;g(a.value,b,d)}}),a(Ib,function(a,b){a.expression.print(b),a instanceof Jb&&k(a,b)||b.with_parens(function(){a.args.forEach(function(a,c){c&&b.comma(),a.print(b)})})}),a(Jb,function(a,b){b.print("new"),b.space(),Ib.prototype._codegen(a,b)}),Kb.DEFMETHOD("_do_print",function(a){this.car.print(a),this.cdr&&(a.comma(),a.should_break()&&(a.newline(),a.indent()),this.cdr.print(a))}),a(Kb,function(a,b){a._do_print(b)}),a(Mb,function(a,b){var c=a.expression;c.print(b),c instanceof nc&&c.getValue()>=0&&(/[xa-f.]/i.test(b.last())||b.print(".")),b.print("."),b.add_mapping(a.end),b.print_name(a.property)}),a(Nb,function(a,b){a.expression.print(b),b.print("["),a.property.print(b),b.print("]")}),a(Pb,function(a,b){var c=a.operator;b.print(c),/^[a-z]/i.test(c)&&b.space(),a.expression.print(b)}),a(Qb,function(a,b){a.expression.print(b),b.print(a.operator)}),a(Rb,function(a,b){a.left.print(b),b.space(),b.print(a.operator),"<"==a.operator&&a.right instanceof Pb&&"!"==a.right.operator&&a.right.expression instanceof Pb&&"--"==a.right.expression.operator?b.print(" "):b.space(),a.right.print(b)}),a(Sb,function(a,b){a.condition.print(b),b.space(),b.print("?"),b.space(),a.consequent.print(b),b.space(),b.colon(),a.alternative.print(b)}),a(Ub,function(a,b){b.with_square(function(){var c=a.elements,d=c.length;d>0&&b.space(),c.forEach(function(a,c){c&&b.comma(),a.print(b),c===d-1&&a instanceof tc&&b.comma()}),d>0&&b.space()})}),a(Vb,function(a,b){a.properties.length>0?b.with_block(function(){a.properties.forEach(function(a,c){c&&(b.print(","),b.newline()),b.indent(),a.print(b)}),b.newline()}):b.print("{}")}),a(Xb,function(a,b){var c=a.key;b.option("quote_keys")?b.print_string(c+""):("number"==typeof c||!b.option("beautify")&&+c+""==c)&&parseFloat(c)>=0?b.print(n(c)):(Ac(c)?b.option("screw_ie8"):G(c))?b.print_name(c):b.print_string(c),b.colon(),a.value.print(b)}),a(Yb,function(a,b){b.print("set"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a(Zb,function(a,b){b.print("get"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a($b,function(a,b){var c=a.definition();b.print_name(c?c.mangled_name||c.name:a.name)}),a(sc,function(a,b){b.print("void 0")}),a(tc,l),a(uc,function(a,b){b.print("1/0")}),a(rc,function(a,b){b.print("0/0")}),a(kc,function(a,b){b.print("this")}),a(lc,function(a,b){b.print(a.getValue())}),a(mc,function(a,b){b.print_string(a.getValue())}),a(nc,function(a,b){b.print(n(a.getValue()))}),a(oc,function(a,b){var c=a.getValue().toString();b.option("ascii_only")?c=b.to_ascii(c):b.option("unescape_regexps")&&(c=c.split("\\\\").map(function(a){return a.replace(/\\u[0-9a-fA-F]{4}|\\x[0-9a-fA-F]{2}/g,function(a){var b=parseInt(a.substr(2),16);return h(b)?String.fromCharCode(b):a})}).join("\\\\")),b.print(c);var d=b.parent();d instanceof Rb&&/^in/.test(d.operator)&&d.left===a&&b.print(" ")}),p(U,l),p(X,q),p(W,q),p($b,q),p(pb,q),p(ab,q),p(bb,l),p(lb,q),p(xb,q),p(yb,q),p($,q),p(kb,l),p(Jb,q),p(Bb,q),p(Cb,q),p(Db,q),p(Eb,q),p(lc,q),p(Wb,function(a,b){b.add_mapping(a.start,a.key)})}(),Q.prototype=new N,k(Q.prototype,{option:function(a){return this.options[a]},warn:function(){this.options.warnings&&U.warn.apply(U,arguments)},before:function(a,b){if(a._squeezed)return a;var c=!1;return a instanceof jb&&(a=a.hoist_declarations(this),c=!0),b(a,this),a=a.optimize(this),c&&a instanceof jb&&(a.drop_unused(this),b(a,this)),a._squeezed=!0,a}}),function(){function a(a,b){a.DEFMETHOD("optimize",function(a){var c=this;if(c._optimized)return c;var d=b(c,a);return d._optimized=!0,d===c?d:d.transform(a)})}function b(a,b,c){return c||(c={}),b&&(c.start||(c.start=b.start),c.end||(c.end=b.end)),new a(c)}function c(a,c,d){if(c instanceof U)return c.transform(a);switch(typeof c){case"string":return b(mc,d,{value:c}).optimize(a);case"number":return b(isNaN(c)?rc:nc,d,{value:c}).optimize(a);case"boolean":return b(c?xc:wc,d).optimize(a);case"undefined":return b(sc,d).optimize(a);default:if(null===c)return b(qc,d).optimize(a);if(c instanceof RegExp)return b(oc,d).optimize(a);throw new Error(n("Can't handle constant of type: {type}",{type:typeof c}))}}function d(a){if(null===a)return[];if(a instanceof $)return a.body;if(a instanceof _)return[];if(a instanceof V)return[a];throw new Error("Can't convert thing to statement array")}function e(a){return null===a?!0:a instanceof _?!0:a instanceof $?0==a.body.length:!1}function h(a){return a instanceof xb?a:(a instanceof gb||a instanceof hb||a instanceof db)&&a.body instanceof $?a.body:a}function i(a,c){function e(a){function d(a,c){return b(Y,a,{body:b(Tb,a,{operator:"=",left:b(Mb,c,{expression:b(ic,c,c),property:"$inject"}),right:b(Ub,a,{elements:a.argnames.map(function(a){return b(mc,a,{value:a.name})})})})})}return a.reduce(function(a,b){a.push(b);var e=b.start,f=e.comments_before;if(f&&f.length>0){var g=f.pop();/@ngInject/.test(g.value)&&(b instanceof ob?a.push(d(b,b.name)):b instanceof Eb?b.definitions.forEach(function(b){b.value&&b.value instanceof lb&&a.push(d(b.value,b.name))}):c.warn("Unknown statement marked with @ngInject [{file}:{line},{col}]",e))}return a},[])}function f(a){var b=[];return a.reduce(function(a,c){return c instanceof $?(p=!0,a.push.apply(a,f(c.body))):c instanceof _?p=!0:c instanceof X?b.indexOf(c.value)<0?(a.push(c),b.push(c.value)):p=!0:a.push(c),a},[])}function g(a,c){var e=c.self(),f=e instanceof lb,g=[];a:for(var i=a.length;--i>=0;){var j=a[i];switch(!0){case f&&j instanceof rb&&!j.value&&0==g.length:p=!0;continue a;case j instanceof wb:if(j.body instanceof rb){if((f&&0==g.length||g[0]instanceof rb&&!g[0].value)&&!j.body.value&&!j.alternative){p=!0;var k=b(Y,j.condition,{body:j.condition});g.unshift(k);continue a}if(g[0]instanceof rb&&j.body.value&&g[0].value&&!j.alternative){p=!0,j=j.clone(),j.alternative=g[0],g[0]=j.transform(c);continue a}if((0==g.length||g[0]instanceof rb)&&j.body.value&&!j.alternative&&f){p=!0,j=j.clone(),j.alternative=g[0]||b(rb,j,{value:b(sc,j)}),g[0]=j.transform(c);continue a}if(!j.body.value&&f){p=!0,j=j.clone(),j.condition=j.condition.negate(c),j.body=b($,j,{body:d(j.alternative).concat(g)}),j.alternative=null,g=[j.transform(c)];continue a}if(1==g.length&&f&&g[0]instanceof Y&&(!j.alternative||j.alternative instanceof Y)){p=!0,g.push(b(rb,g[0],{value:b(sc,g[0])}).transform(c)),g=d(j.alternative).concat(g),g.unshift(j);continue a}}var l=q(j.body),m=l instanceof tb?c.loopcontrol_target(l.label):null;if(l&&(l instanceof rb&&!l.value&&f||l instanceof vb&&e===h(m)||l instanceof ub&&m instanceof $&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0;var n=d(j.body).slice(0,-1);j=j.clone(),j.condition=j.condition.negate(c),j.body=b($,j,{body:d(j.alternative).concat(g)}),j.alternative=b($,j,{body:n}),g=[j.transform(c)];continue a}var l=q(j.alternative),m=l instanceof tb?c.loopcontrol_target(l.label):null;if(l&&(l instanceof rb&&!l.value&&f||l instanceof vb&&e===h(m)||l instanceof ub&&m instanceof $&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0,j=j.clone(),j.body=b($,j.body,{body:d(j.body).concat(g)}),j.alternative=b($,j.alternative,{body:d(j.alternative).slice(0,-1)}),g=[j.transform(c)];continue a}g.unshift(j);break;default:g.unshift(j)}}return g}function i(a,b){var c=!1,d=a.length,e=b.self();return a=a.reduce(function(a,d){if(c)j(b,d,a);else{if(d instanceof tb){var f=b.loopcontrol_target(d.label);d instanceof ub&&f instanceof $&&h(f)===e||d instanceof vb&&h(f)===e?d.label&&o(d.label.thedef.references,d):a.push(d)}else a.push(d);q(d)&&(c=!0)}return a},[]),p=a.length!=d,a}function k(a,c){function d(){e=Kb.from_array(e),e&&f.push(b(Y,e,{body:e})),e=[]}if(a.length<2)return a;var e=[],f=[];return a.forEach(function(a){a instanceof Y?e.push(a.body):(d(),f.push(a))}),d(),f=l(f,c),p=f.length!=a.length,f}function l(a,c){function d(a){e.pop();var b=f.body;return b instanceof Kb?b.add(a):b=Kb.cons(b,a),b.transform(c)}var e=[],f=null;return a.forEach(function(a){if(f)if(a instanceof gb){var c={};try{f.body.walk(new x(function(a){if(a instanceof Rb&&"in"==a.operator)throw c})),!a.init||a.init instanceof Eb?a.init||(a.init=f.body,e.pop()):a.init=d(a.init)}catch(g){if(g!==c)throw g}}else a instanceof wb?a.condition=d(a.condition):a instanceof ib?a.expression=d(a.expression):a instanceof qb&&a.value?a.value=d(a.value):a instanceof qb?a.value=d(b(sc,a)):a instanceof xb&&(a.expression=d(a.expression));e.push(a),f=a instanceof Y?a:null}),e}function m(a){var b=null;return a.reduce(function(a,c){return c instanceof Eb&&b&&b.TYPE==c.TYPE?(b.definitions=b.definitions.concat(c.definitions),p=!0):c instanceof gb&&b instanceof Eb&&(!c.init||c.init.TYPE==b.TYPE)?(p=!0,a.pop(),c.init?c.init.definitions=b.definitions.concat(c.init.definitions):c.init=b,a.push(c),b=c):(b=c,a.push(c)),a},[])}function n(a){a.forEach(function(a){a instanceof Y&&(a.body=function c(a){return a.transform(new N(function(a){if(a instanceof Ib&&a.expression instanceof nb)return b(Pb,a,{operator:"!",expression:a});if(a instanceof Ib)a.expression=c(a.expression);else if(a instanceof Kb)a.car=c(a.car);else if(a instanceof Sb){var d=c(a.condition);if(d!==a.condition){a.condition=d;var e=a.consequent;a.consequent=a.alternative,a.alternative=e}}return a}))}(a.body))})}var p;do p=!1,c.option("angular")&&(a=e(a)),a=f(a),c.option("dead_code")&&(a=i(a,c)),c.option("if_return")&&(a=g(a,c)),c.option("sequences")&&(a=k(a,c)),c.option("join_vars")&&(a=m(a,c));while(p);return c.option("negate_iife")&&n(a,c),a}function j(a,b,c){a.warn("Dropping unreachable code [{file}:{line},{col}]",b.start),b.walk(new x(function(b){return b instanceof Eb?(a.warn("Declarations in unreachable code! [{file}:{line},{col}]",b.start),b.remove_initializers(),c.push(b),!0):b instanceof ob?(c.push(b),!0):b instanceof jb?!0:void 0}))}function k(a,b){return a.print_to_string().length>b.print_to_string().length?b:a}function q(a){return a&&a.aborts()}function r(a,c){function e(e){e=d(e),a.body instanceof $?(a.body=a.body.clone(),a.body.body=e.concat(a.body.body.slice(1)),a.body=a.body.transform(c)):a.body=b($,a.body,{body:e}).transform(c),r(a,c)}var f=a.body instanceof $?a.body.body[0]:a.body;f instanceof wb&&(f.body instanceof ub&&c.loopcontrol_target(f.body.label)===a?(a.condition=a.condition?b(Rb,a.condition,{left:a.condition,operator:"&&",right:f.condition.negate(c)}):f.condition.negate(c),e(f.alternative)):f.alternative instanceof ub&&c.loopcontrol_target(f.alternative.label)===a&&(a.condition=a.condition?b(Rb,a.condition,{left:a.condition,operator:"&&",right:f.condition}):f.condition,e(f.body)))}function v(a,b){var c=b.option("pure_getters");b.options.pure_getters=!1;var d=a.has_side_effects(b);return b.options.pure_getters=c,d}function w(a,c){return c.option("booleans")&&c.in_boolean_context()?b(xc,a):a}a(U,function(a){return a}),U.DEFMETHOD("equivalent_to",function(a){return this.print_to_string()==a.print_to_string()}),function(a){var b=["!","delete"],c=["in","instanceof","==","!=","===","!==","<","<=",">=",">"];a(U,function(){return!1}),a(Pb,function(){return f(this.operator,b)}),a(Rb,function(){return f(this.operator,c)||("&&"==this.operator||"||"==this.operator)&&this.left.is_boolean()&&this.right.is_boolean()}),a(Sb,function(){return this.consequent.is_boolean()&&this.alternative.is_boolean()}),a(Tb,function(){return"="==this.operator&&this.right.is_boolean()}),a(Kb,function(){return this.cdr.is_boolean()}),a(xc,function(){return!0}),a(wc,function(){return!0})}(function(a,b){a.DEFMETHOD("is_boolean",b)}),function(a){a(U,function(){return!1}),a(mc,function(){return!0}),a(Pb,function(){return"typeof"==this.operator}),a(Rb,function(a){return"+"==this.operator&&(this.left.is_string(a)||this.right.is_string(a))}),a(Tb,function(a){return("="==this.operator||"+="==this.operator)&&this.right.is_string(a)}),a(Kb,function(a){return this.cdr.is_string(a)}),a(Sb,function(a){return this.consequent.is_string(a)&&this.alternative.is_string(a)}),a(Ib,function(a){return a.option("unsafe")&&this.expression instanceof ic&&"String"==this.expression.name&&this.expression.undeclared()})}(function(a,b){a.DEFMETHOD("is_string",b)}),function(a){function b(a,b){if(!b)throw new Error("Compressor must be passed");return a._eval(b)}U.DEFMETHOD("evaluate",function(b){if(!b.option("evaluate"))return[this];try{var d=this._eval(b);return[k(c(b,d,this),this),d]}catch(e){if(e!==a)throw e;return[this]}}),a(V,function(){throw new Error(n("Cannot evaluate a statement [{file}:{line},{col}]",this.start))}),a(nb,function(){throw a}),a(U,function(){throw a}),a(lc,function(){return this.getValue()}),a(Pb,function(c){var d=this.expression;switch(this.operator){case"!":return!b(d,c);case"typeof":if(d instanceof nb)return"function";if(d=b(d,c),d instanceof RegExp)throw a;return typeof d;case"void":return void b(d,c);case"~":return~b(d,c);case"-":if(d=b(d,c),0===d)throw a;return-d;case"+":return+b(d,c)}throw a}),a(Rb,function(c){var d=this.left,e=this.right;switch(this.operator){case"&&":return b(d,c)&&b(e,c);case"||":return b(d,c)||b(e,c);case"|":return b(d,c)|b(e,c);case"&":return b(d,c)&b(e,c);case"^":return b(d,c)^b(e,c);case"+":return b(d,c)+b(e,c);case"*":return b(d,c)*b(e,c);case"/":return b(d,c)/b(e,c);case"%":return b(d,c)%b(e,c);case"-":return b(d,c)-b(e,c);case"<<":return b(d,c)<>":return b(d,c)>>b(e,c);case">>>":return b(d,c)>>>b(e,c);case"==":return b(d,c)==b(e,c);case"===":return b(d,c)===b(e,c);case"!=":return b(d,c)!=b(e,c);case"!==":return b(d,c)!==b(e,c);case"<":return b(d,c)":return b(d,c)>b(e,c);case">=":return b(d,c)>=b(e,c);case"in":return b(d,c)in b(e,c);case"instanceof":return b(d,c)instanceof b(e,c)}throw a}),a(Sb,function(a){return b(this.condition,a)?b(this.consequent,a):b(this.alternative,a)}),a(ic,function(c){var d=this.definition();if(d&&d.constant&&d.init)return b(d.init,c);throw a})}(function(a,b){a.DEFMETHOD("_eval",b)}),function(a){function c(a){return b(Pb,a,{operator:"!",expression:a})}a(U,function(){return c(this)}),a(V,function(){throw new Error("Cannot negate a statement")}),a(nb,function(){return c(this)}),a(Pb,function(){return"!"==this.operator?this.expression:c(this)}),a(Kb,function(a){var b=this.clone();return b.cdr=b.cdr.negate(a),b}),a(Sb,function(a){var b=this.clone();return b.consequent=b.consequent.negate(a),b.alternative=b.alternative.negate(a),k(c(this),b)}),a(Rb,function(a){var b=this.clone(),d=this.operator;if(a.option("unsafe_comps"))switch(d){case"<=":return b.operator=">",b;case"<":return b.operator=">=",b;case">=":return b.operator="<",b;case">":return b.operator="<=",b}switch(d){case"==":return b.operator="!=",b;case"!=":return b.operator="==",b;case"===":return b.operator="!==",b;case"!==":return b.operator="===",b;case"&&":return b.operator="||",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b);case"||":return b.operator="&&",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b)}return c(this)})}(function(a,b){a.DEFMETHOD("negate",function(a){return b.call(this,a)})}),function(a){a(U,function(){return!0}),a(_,function(){return!1}),a(lc,function(){return!1}),a(kc,function(){return!1}),a(Ib,function(a){var b=a.option("pure_funcs");return b?b.indexOf(this.expression.print_to_string())<0:!0}),a(Z,function(a){for(var b=this.body.length;--b>=0;)if(this.body[b].has_side_effects(a))return!0;return!1}),a(Y,function(a){return this.body.has_side_effects(a)}),a(ob,function(){return!0}),a(nb,function(){return!1}),a(Rb,function(a){return this.left.has_side_effects(a)||this.right.has_side_effects(a)}),a(Tb,function(){return!0}),a(Sb,function(a){return this.condition.has_side_effects(a)||this.consequent.has_side_effects(a)||this.alternative.has_side_effects(a)}),a(Ob,function(a){return"delete"==this.operator||"++"==this.operator||"--"==this.operator||this.expression.has_side_effects(a)}),a(ic,function(){return!1}),a(Vb,function(a){for(var b=this.properties.length;--b>=0;)if(this.properties[b].has_side_effects(a))return!0;return!1}),a(Wb,function(a){return this.value.has_side_effects(a)}),a(Ub,function(a){for(var b=this.elements.length;--b>=0;)if(this.elements[b].has_side_effects(a))return!0;return!1}),a(Mb,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a):!0}),a(Nb,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a)||this.property.has_side_effects(a):!0}),a(Lb,function(a){return!a.option("pure_getters")}),a(Kb,function(a){return this.car.has_side_effects(a)||this.cdr.has_side_effects(a)})}(function(a,b){a.DEFMETHOD("has_side_effects",b)}),function(a){function b(){var a=this.body.length;return a>0&&q(this.body[a-1])}a(V,function(){return null}),a(pb,function(){return this}),a($,b),a(yb,b),a(wb,function(){return this.alternative&&q(this.body)&&q(this.alternative)})}(function(a,b){a.DEFMETHOD("aborts",b)}),a(X,function(a){return a.scope.has_directive(a.value)!==a.scope?b(_,a):a}),a(W,function(a,c){return c.option("drop_debugger")?b(_,a):a}),a(bb,function(a,c){return a.body instanceof ub&&c.loopcontrol_target(a.body.label)===a.body?b(_,a):0==a.label.references.length?a.body:a}),a(Z,function(a,b){return a.body=i(a.body,b),a}),a($,function(a,c){switch(a.body=i(a.body,c),a.body.length){case 1:return a.body[0];case 0:return b(_,a)}return a}),jb.DEFMETHOD("drop_unused",function(a){var c=this;if(a.option("unused")&&!(c instanceof kb)&&!c.uses_eval){var d=[],e=new u,g=this,h=new x(function(b,f){if(b!==c){if(b instanceof ob)return e.add(b.name.name,b),!0;if(b instanceof Eb&&g===c)return b.definitions.forEach(function(b){b.value&&(e.add(b.name.name,b.value),b.value.has_side_effects(a)&&b.value.walk(h))}),!0;if(b instanceof ic)return m(d,b.definition()),!0;if(b instanceof jb){var i=g;return g=b,f(),g=i,!0}}});c.walk(h);for(var i=0;i =0;){var l=i[k];if(!l.unreferenced())break;i.pop(),a.warn("Dropping unused function argument {name} [{file}:{line},{col}]",{name:l.name,file:l.start.file,line:l.start.line,col:l.start.col})}if(e instanceof ob&&e!==c)return f(e.name.definition(),d)?e:(a.warn("Dropping unused function {name} [{file}:{line},{col}]",{name:e.name.name,file:e.name.start.file,line:e.name.start.line,col:e.name.start.col}),b(_,e));if(e instanceof Eb&&!(j.parent()instanceof hb)){var m=e.definitions.filter(function(b){if(f(b.name.definition(),d))return!0;var c={name:b.name.name,file:b.name.start.file,line:b.name.start.line,col:b.name.start.col};return b.value&&b.value.has_side_effects(a)?(b._unused_side_effects=!0,a.warn("Side effects in initialization of unused variable {name} [{file}:{line},{col}]",c),!0):(a.warn("Dropping unused variable {name} [{file}:{line},{col}]",c),!1)});m=p(m,function(a,b){return!a.value&&b.value?-1:!b.value&&a.value?1:0});for(var n=[],k=0;k 0&&(n.push(o.value),o.value=Kb.from_array(n),n=[]),++k)}return n=n.length>0?b($,e,{body:[b(Y,e,{body:Kb.from_array(n)})]}):null,0!=m.length||n?0==m.length?n:(e.definitions=m,n&&(n.body.unshift(e),e=n),e):b(_,e)}if(e instanceof gb&&(g(e,this),e.init instanceof $)){var q=e.init.body.slice(0,-1);return e.init=e.init.body.slice(-1)[0].body,q.push(e),h?S.splice(q):b($,e,{body:q})}return e instanceof jb&&e!==c?e:void 0});c.transform(j)}}),jb.DEFMETHOD("hoist_declarations",function(a){var c=a.option("hoist_funs"),d=a.option("hoist_vars"),e=this;if(c||d){var f=[],h=[],i=new u,j=0,k=0;e.walk(new x(function(a){return a instanceof jb&&a!==e?!0:a instanceof Fb?(++k,!0):void 0})),d=d&&k>1;var l=new N(function(a){if(a!==e){if(a instanceof X)return f.push(a),b(_,a);if(a instanceof ob&&c)return h.push(a),b(_,a);if(a instanceof Fb&&d){a.definitions.forEach(function(a){i.set(a.name.name,a),++j});var g=a.to_assignments(),k=l.parent();return k instanceof hb&&k.init===a?null==g?a.definitions[0].name:g:k instanceof gb&&k.init===a?g:g?b(Y,a,{body:g}):b(_,a)}if(a instanceof jb)return a}});if(e=e.transform(l),j>0){var m=[];if(i.each(function(a,b){e instanceof lb&&g(function(b){return b.name==a.name.name},e.argnames)?i.del(b):(a=a.clone(),a.value=null,m.push(a),i.set(b,a))}),m.length>0){for(var n=0;n 1){if(d[1])return b(gb,a,{body:a.body});if(a instanceof fb&&c.option("dead_code")){var e=[];return j(c,a.body,e),b($,a,{body:e})}}return a}),a(fb,function(a,c){return c.option("loops")?(a=db.prototype.optimize.call(a,c),a instanceof fb&&(r(a,c),a=b(gb,a,a).transform(c)),a):a}),a(gb,function(a,c){var d=a.condition; -if(d&&(d=d.evaluate(c),a.condition=d[0]),!c.option("loops"))return a;if(d&&d.length>1&&!d[1]&&c.option("dead_code")){var e=[];return a.init instanceof V?e.push(a.init):a.init&&e.push(b(Y,a.init,{body:a.init})),j(c,a.body,e),b($,a,{body:e})}return r(a,c),a}),a(wb,function(a,c){if(!c.option("conditionals"))return a;var d=a.condition.evaluate(c);if(a.condition=d[0],d.length>1)if(d[1]){if(c.warn("Condition always true [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return a.alternative&&j(c,a.alternative,f),f.push(a.body),b($,a,{body:f}).transform(c)}}else if(c.warn("Condition always false [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return j(c,a.body,f),a.alternative&&f.push(a.alternative),b($,a,{body:f}).transform(c)}e(a.alternative)&&(a.alternative=null);var g=a.condition.negate(c),h=k(a.condition,g)===g;if(a.alternative&&h){h=!1,a.condition=g;var i=a.body;a.body=a.alternative||b(_),a.alternative=i}if(e(a.body)&&e(a.alternative))return b(Y,a.condition,{body:a.condition}).transform(c);if(a.body instanceof Y&&a.alternative instanceof Y)return b(Y,a,{body:b(Sb,a,{condition:a.condition,consequent:a.body.body,alternative:a.alternative.body})}).transform(c);if(e(a.alternative)&&a.body instanceof Y)return h?b(Y,a,{body:b(Rb,a,{operator:"||",left:g,right:a.body.body})}).transform(c):b(Y,a,{body:b(Rb,a,{operator:"&&",left:a.condition,right:a.body.body})}).transform(c);if(a.body instanceof _&&a.alternative&&a.alternative instanceof Y)return b(Y,a,{body:b(Rb,a,{operator:"||",left:a.condition,right:a.alternative.body})}).transform(c);if(a.body instanceof qb&&a.alternative instanceof qb&&a.body.TYPE==a.alternative.TYPE)return b(a.body.CTOR,a,{value:b(Sb,a,{condition:a.condition,consequent:a.body.value||b(sc,a.body).optimize(c),alternative:a.alternative.value||b(sc,a.alternative).optimize(c)})}).transform(c);if(a.body instanceof wb&&!a.body.alternative&&!a.alternative&&(a.condition=b(Rb,a.condition,{operator:"&&",left:a.condition,right:a.body.condition}).transform(c),a.body=a.body.body),q(a.body)&&a.alternative){var l=a.alternative;return a.alternative=null,b($,a,{body:[a,l]}).transform(c)}if(q(a.alternative)){var m=a.body;return a.body=a.alternative,a.condition=h?g:a.condition.negate(c),a.alternative=null,b($,a,{body:[a,m]}).transform(c)}return a}),a(xb,function(a,c){if(0==a.body.length&&c.option("conditionals"))return b(Y,a,{body:a.expression}).transform(c);for(;;){var d=a.body[a.body.length-1];if(d){var e=d.body[d.body.length-1];if(e instanceof ub&&h(c.loopcontrol_target(e.label))===a&&d.body.pop(),d instanceof zb&&0==d.body.length){a.body.pop();continue}}break}var f=a.expression.evaluate(c);a:if(2==f.length)try{if(a.expression=f[0],!c.option("dead_code"))break a;var g=f[1],i=!1,j=!1,k=!1,l=!1,m=!1,n=new N(function(d,e,f){if(d instanceof lb||d instanceof Y)return d;if(d instanceof xb&&d===a)return d=d.clone(),e(d,this),m?d:b($,d,{body:d.body.reduce(function(a,b){return a.concat(b.body)},[])}).transform(c);if(d instanceof wb||d instanceof Bb){var h=i;return i=!j,e(d,this),i=h,d}if(d instanceof ab||d instanceof xb){var h=j;return j=!0,e(d,this),j=h,d}if(d instanceof ub&&this.loopcontrol_target(d.label)===a)return i?(m=!0,d):j?d:(l=!0,f?S.skip:b(_,d));if(d instanceof yb&&this.parent()===a){if(l)return S.skip;if(d instanceof Ab){var n=d.expression.evaluate(c);if(n.length<2)throw a;return n[1]===g||k?(k=!0,q(d)&&(l=!0),e(d,this),d):S.skip}return e(d,this),d}});n.stack=c.stack.slice(),a=a.transform(n)}catch(o){if(o!==a)throw o}return a}),a(Ab,function(a,b){return a.body=i(a.body,b),a}),a(Bb,function(a,b){return a.body=i(a.body,b),a}),Eb.DEFMETHOD("remove_initializers",function(){this.definitions.forEach(function(a){a.value=null})}),Eb.DEFMETHOD("to_assignments",function(){var a=this.definitions.reduce(function(a,c){if(c.value){var d=b(ic,c.name,c.name);a.push(b(Tb,c,{operator:"=",left:d,right:c.value}))}return a},[]);return 0==a.length?null:Kb.from_array(a)}),a(Eb,function(a){return 0==a.definitions.length?b(_,a):a}),a(nb,function(a,b){return a=lb.prototype.optimize.call(a,b),b.option("unused")&&a.name&&a.name.unreferenced()&&(a.name=null),a}),a(Ib,function(a,d){if(d.option("unsafe")){var e=a.expression;if(e instanceof ic&&e.undeclared())switch(e.name){case"Array":if(1!=a.args.length)return b(Ub,a,{elements:a.args}).transform(d);break;case"Object":if(0==a.args.length)return b(Vb,a,{properties:[]});break;case"String":if(0==a.args.length)return b(mc,a,{value:""});if(a.args.length<=1)return b(Rb,a,{left:a.args[0],operator:"+",right:b(mc,a,{value:""})}).transform(d);break;case"Number":if(0==a.args.length)return b(nc,a,{value:0});if(1==a.args.length)return b(Pb,a,{expression:a.args[0],operator:"+"}).transform(d);case"Boolean":if(0==a.args.length)return b(wc,a);if(1==a.args.length)return b(Pb,a,{expression:b(Pb,null,{expression:a.args[0],operator:"!"}),operator:"!"}).transform(d);break;case"Function":if(t(a.args,function(a){return a instanceof mc}))try{var f="(function("+a.args.slice(0,-1).map(function(a){return a.value}).join(",")+"){"+a.args[a.args.length-1].value+"})()",g=M(f);g.figure_out_scope({screw_ie8:d.option("screw_ie8")});var h=new Q(d.options);g=g.transform(h),g.figure_out_scope({screw_ie8:d.option("screw_ie8")}),g.mangle_names();var i;try{g.walk(new x(function(a){if(a instanceof lb)throw i=a,g}))}catch(j){if(j!==g)throw j}var l=i.argnames.map(function(c,d){return b(mc,a.args[d],{value:c.print_to_string()})}),f=P();return $.prototype._codegen.call(i,i,f),f=f.toString().replace(/^\{|\}$/g,""),l.push(b(mc,a.args[a.args.length-1],{value:f})),a.args=l,a}catch(j){if(!(j instanceof I))throw console.log(j),j;d.warn("Error parsing code passed to new Function [{file}:{line},{col}]",a.args[a.args.length-1].start),d.warn(j.toString())}}else{if(e instanceof Mb&&"toString"==e.property&&0==a.args.length)return b(Rb,a,{left:b(mc,a,{value:""}),operator:"+",right:e.expression}).transform(d);if(e instanceof Mb&&e.expression instanceof Ub&&"join"==e.property){var m=0==a.args.length?",":a.args[0].evaluate(d)[1];if(null!=m){var n=e.expression.elements.reduce(function(a,b){if(b=b.evaluate(d),0==a.length||1==b.length)a.push(b);else{var e=a[a.length-1];if(2==e.length){var f=""+e[1]+m+b[1];a[a.length-1]=[c(d,f,e[0]),f]}else a.push(b)}return a},[]);if(0==n.length)return b(mc,a,{value:""});if(1==n.length)return n[0][0];if(""==m){var o;return o=n[0][0]instanceof mc||n[1][0]instanceof mc?n.shift()[0]:b(mc,a,{value:""}),n.reduce(function(a,c){return b(Rb,c[0],{operator:"+",left:a,right:c[0]})},o).transform(d)}var p=a.clone();return p.expression=p.expression.clone(),p.expression.expression=p.expression.expression.clone(),p.expression.expression.elements=n.map(function(a){return a[0]}),k(a,p)}}}}return d.option("side_effects")&&a.expression instanceof nb&&0==a.args.length&&!Z.prototype.has_side_effects.call(a.expression,d)?b(sc,a).transform(d):d.option("drop_console")&&a.expression instanceof Lb&&a.expression.expression instanceof ic&&"console"==a.expression.expression.name&&a.expression.expression.undeclared()?b(sc,a).transform(d):a.evaluate(d)[0]}),a(Jb,function(a,c){if(c.option("unsafe")){var d=a.expression;if(d instanceof ic&&d.undeclared())switch(d.name){case"Object":case"RegExp":case"Function":case"Error":case"Array":return b(Ib,a,a).transform(c)}}return a}),a(Kb,function(a,c){if(!c.option("side_effects"))return a;if(!a.car.has_side_effects(c)){var d;if(!(a.cdr instanceof ic&&"eval"==a.cdr.name&&a.cdr.undeclared()&&(d=c.parent())instanceof Ib&&d.expression===a))return a.cdr}if(c.option("cascade")){if(a.car instanceof Tb&&!a.car.left.has_side_effects(c)){if(a.car.left.equivalent_to(a.cdr))return a.car;if(a.cdr instanceof Ib&&a.cdr.expression.equivalent_to(a.car.left))return a.cdr.expression=a.car,a.cdr}if(!a.car.has_side_effects(c)&&!a.cdr.has_side_effects(c)&&a.car.equivalent_to(a.cdr))return a.car}return a.cdr instanceof Pb&&"void"==a.cdr.operator&&!a.cdr.expression.has_side_effects(c)?(a.cdr.operator=a.car,a.cdr):a.cdr instanceof sc?b(Pb,a,{operator:"void",expression:a.car}):a}),Ob.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")&&this.expression instanceof Kb){var b=this.expression,c=b.to_array();return this.expression=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}return this}),a(Qb,function(a,b){return a.lift_sequences(b)}),a(Pb,function(a,c){a=a.lift_sequences(c);var d=a.expression;if(c.option("booleans")&&c.in_boolean_context()){switch(a.operator){case"!":if(d instanceof Pb&&"!"==d.operator)return d.expression;break;case"typeof":return c.warn("Boolean expression always true [{file}:{line},{col}]",a.start),b(xc,a)}d instanceof Rb&&"!"==a.operator&&(a=k(a,d.negate(c)))}return a.evaluate(c)[0]}),Rb.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")){if(this.left instanceof Kb){var b=this.left,c=b.to_array();return this.left=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}if(this.right instanceof Kb&&this instanceof Tb&&!v(this.left,a)){var b=this.right,c=b.to_array();return this.right=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}}return this});var y=s("== === != !== * & | ^");a(Rb,function(a,c){var d=c.has_directive("use asm")?l:function(b,d){if(d||!a.left.has_side_effects(c)&&!a.right.has_side_effects(c)){b&&(a.operator=b);var e=a.left;a.left=a.right,a.right=e}};if(y(a.operator)&&(a.right instanceof lc&&!(a.left instanceof lc)&&(a.left instanceof Rb&&Qc[a.left.operator]>=Qc[a.operator]||d(null,!0)),/^[!=]==?$/.test(a.operator))){if(a.left instanceof ic&&a.right instanceof Sb){if(a.right.consequent instanceof ic&&a.right.consequent.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition;if(/^!=/.test(a.operator))return a.right.condition.negate(c)}if(a.right.alternative instanceof ic&&a.right.alternative.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition.negate(c);if(/^!=/.test(a.operator))return a.right.condition}}if(a.right instanceof ic&&a.left instanceof Sb){if(a.left.consequent instanceof ic&&a.left.consequent.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition;if(/^!=/.test(a.operator))return a.left.condition.negate(c)}if(a.left.alternative instanceof ic&&a.left.alternative.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition.negate(c);if(/^!=/.test(a.operator))return a.left.condition}}}if(a=a.lift_sequences(c),c.option("comparisons"))switch(a.operator){case"===":case"!==":(a.left.is_string(c)&&a.right.is_string(c)||a.left.is_boolean()&&a.right.is_boolean())&&(a.operator=a.operator.substr(0,2));case"==":case"!=":a.left instanceof mc&&"undefined"==a.left.value&&a.right instanceof Pb&&"typeof"==a.right.operator&&c.option("unsafe")&&(a.right.expression instanceof ic&&a.right.expression.undeclared()||(a.right=a.right.expression,a.left=b(sc,a.left).optimize(c),2==a.operator.length&&(a.operator+="=")))}if(c.option("booleans")&&c.in_boolean_context())switch(a.operator){case"&&":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&!e[1]||f.length>1&&!f[1])return c.warn("Boolean && always false [{file}:{line},{col}]",a.start),b(wc,a);if(e.length>1&&e[1])return f[0];if(f.length>1&&f[1])return e[0];break;case"||":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[1]||f.length>1&&f[1])return c.warn("Boolean || always true [{file}:{line},{col}]",a.start),b(xc,a);if(e.length>1&&!e[1])return f[0];if(f.length>1&&!f[1])return e[0];break;case"+":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[0]instanceof mc&&e[1]||f.length>1&&f[0]instanceof mc&&f[1])return c.warn("+ in boolean context always true [{file}:{line},{col}]",a.start),b(xc,a)}if(c.option("comparisons")){if(!(c.parent()instanceof Rb)||c.parent()instanceof Tb){var g=b(Pb,a,{operator:"!",expression:a.negate(c)});a=k(a,g)}switch(a.operator){case"<":d(">");break;case"<=":d(">=")}}return"+"==a.operator&&a.right instanceof mc&&""===a.right.getValue()&&a.left instanceof Rb&&"+"==a.left.operator&&a.left.is_string(c)?a.left:(c.option("evaluate")&&"+"==a.operator&&(a.left instanceof lc&&a.right instanceof Rb&&"+"==a.right.operator&&a.right.left instanceof lc&&a.right.is_string(c)&&(a=b(Rb,a,{operator:"+",left:b(mc,null,{value:""+a.left.getValue()+a.right.left.getValue(),start:a.left.start,end:a.right.left.end}),right:a.right.right})),a.right instanceof lc&&a.left instanceof Rb&&"+"==a.left.operator&&a.left.right instanceof lc&&a.left.is_string(c)&&(a=b(Rb,a,{operator:"+",left:a.left.left,right:b(mc,null,{value:""+a.left.right.getValue()+a.right.getValue(),start:a.left.right.start,end:a.right.end})})),a.left instanceof Rb&&"+"==a.left.operator&&a.left.is_string(c)&&a.left.right instanceof lc&&a.right instanceof Rb&&"+"==a.right.operator&&a.right.left instanceof lc&&a.right.is_string(c)&&(a=b(Rb,a,{operator:"+",left:b(Rb,a.left,{operator:"+",left:a.left.left,right:b(mc,null,{value:""+a.left.right.getValue()+a.right.left.getValue(),start:a.left.right.start,end:a.right.left.end})}),right:a.right.right}))),a.right instanceof Rb&&a.right.operator==a.operator&&("*"==a.operator||"&&"==a.operator||"||"==a.operator)?(a.left=b(Rb,a.left,{operator:a.operator,left:a.left,right:a.right.left}),a.right=a.right.right,a.transform(c)):a.evaluate(c)[0])}),a(ic,function(a,d){if(a.undeclared()){var e=d.option("global_defs");if(e&&e.hasOwnProperty(a.name))return c(d,e[a.name],a);switch(a.name){case"undefined":return b(sc,a);case"NaN":return b(rc,a);case"Infinity":return b(uc,a)}}return a}),a(sc,function(a,c){if(c.option("unsafe")){var d=c.find_parent(jb),e=d.find_variable("undefined");if(e){var f=b(ic,a,{name:"undefined",scope:d,thedef:e});return f.reference(),f}}return a});var z=["+","-","/","*","%",">>","<<",">>>","|","^","&"];a(Tb,function(a,b){return a=a.lift_sequences(b),"="==a.operator&&a.left instanceof ic&&a.right instanceof Rb&&a.right.left instanceof ic&&a.right.left.name==a.left.name&&f(a.right.operator,z)&&(a.operator=a.right.operator+"=",a.right=a.right.right),a}),a(Sb,function(a,c){if(!c.option("conditionals"))return a;if(a.condition instanceof Kb){var d=a.condition.car;return a.condition=a.condition.cdr,Kb.cons(d,a)}var e=a.condition.evaluate(c);if(e.length>1)return e[1]?(c.warn("Condition always true [{file}:{line},{col}]",a.start),a.consequent):(c.warn("Condition always false [{file}:{line},{col}]",a.start),a.alternative);var f=e[0].negate(c);k(e[0],f)===f&&(a=b(Sb,a,{condition:f,consequent:a.alternative,alternative:a.consequent}));var g=a.consequent,h=a.alternative;if(g instanceof Tb&&h instanceof Tb&&g.operator==h.operator&&g.left.equivalent_to(h.left))return b(Tb,a,{operator:g.operator,left:g.left,right:b(Sb,a,{condition:a.condition,consequent:g.right,alternative:h.right})});if(g instanceof Ib&&h.TYPE===g.TYPE&&g.args.length==h.args.length&&g.expression.equivalent_to(h.expression)){if(0==g.args.length)return b(Kb,a,{car:a.condition,cdr:g});if(1==g.args.length)return g.args[0]=b(Sb,a,{condition:a.condition,consequent:g.args[0],alternative:h.args[0]}),g}return g instanceof Sb&&g.alternative.equivalent_to(h)?b(Sb,a,{condition:b(Rb,a,{left:a.condition,operator:"&&",right:g.condition}),consequent:g.consequent,alternative:h}):a}),a(vc,function(a,c){if(c.option("booleans")){var d=c.parent();return d instanceof Rb&&("=="==d.operator||"!="==d.operator)?(c.warn("Non-strict equality against boolean: {operator} {value} [{file}:{line},{col}]",{operator:d.operator,value:a.value,file:d.start.file,line:d.start.line,col:d.start.col}),b(nc,a,{value:+a.value})):b(Pb,a,{operator:"!",expression:b(nc,a,{value:1-a.value})})}return a}),a(Nb,function(a,c){var d=a.property;if(d instanceof mc&&c.option("properties")){if(d=d.getValue(),Ac(d)?c.option("screw_ie8"):G(d))return b(Mb,a,{expression:a.expression,property:d});var e=parseFloat(d);isNaN(e)||e.toString()!=d||(a.property=b(nc,a.property,{value:e}))}return a}),a(Ub,w),a(Vb,w),a(oc,w)}(),function(){function a(a){var d="prefix"in a?a.prefix:"UnaryExpression"==a.type?!0:!1;return new(d?Pb:Qb)({start:b(a),end:c(a),operator:a.operator,expression:e(a.argument)})}function b(a){return new T({file:a.loc&&a.loc.source,line:a.loc&&a.loc.start.line,col:a.loc&&a.loc.start.column,pos:a.start,endpos:a.start})}function c(a){return new T({file:a.loc&&a.loc.source,line:a.loc&&a.loc.end.line,col:a.loc&&a.loc.end.column,pos:a.end,endpos:a.end})}function d(a,d,g){var h="function From_Moz_"+a+"(M){\n";return h+="return new mytype({\nstart: my_start_token(M),\nend: my_end_token(M)",g&&g.split(/\s*,\s*/).forEach(function(a){var b=/([a-z0-9$_]+)(=|@|>|%)([a-z0-9$_]+)/i.exec(a);if(!b)throw new Error("Can't understand property map: "+a);var c="M."+b[1],d=b[2],e=b[3];if(h+=",\n"+e+": ","@"==d)h+=c+".map(from_moz)";else if(">"==d)h+="from_moz("+c+")";else if("="==d)h+=c;else{if("%"!=d)throw new Error("Can't understand operator in propmap: "+a);h+="from_moz("+c+").body"}}),h+="\n})}",h=new Function("mytype","my_start_token","my_end_token","from_moz","return("+h+")")(d,b,c,e),f[a]=h}function e(a){g.push(a);var b=null!=a?f[a.type](a):null;return g.pop(),b}var f={TryStatement:function(a){return new Bb({start:b(a),end:c(a),body:e(a.block).body,bcatch:e(a.handlers[0]),bfinally:a.finalizer?new Db(e(a.finalizer)):null})},CatchClause:function(a){return new Cb({start:b(a),end:c(a),argname:e(a.param),body:e(a.body).body})},ObjectExpression:function(a){return new Vb({start:b(a),end:c(a),properties:a.properties.map(function(a){var d=a.key,f="Identifier"==d.type?d.name:d.value,g={start:b(d),end:c(a.value),key:f,value:e(a.value)};switch(a.kind){case"init":return new Xb(g);case"set":return g.value.name=e(d),new Yb(g);case"get":return g.value.name=e(d),new Zb(g)}})})},SequenceExpression:function(a){return Kb.from_array(a.expressions.map(e))},MemberExpression:function(a){return new(a.computed?Nb:Mb)({start:b(a),end:c(a),property:a.computed?e(a.property):a.property.name,expression:e(a.object)})},SwitchCase:function(a){return new(a.test?Ab:zb)({start:b(a),end:c(a),expression:e(a.test),body:a.consequent.map(e)})},Literal:function(a){var d=a.value,e={start:b(a),end:c(a)};if(null===d)return new qc(e);switch(typeof d){case"string":return e.value=d,new mc(e);case"number":return e.value=d,new nc(e);case"boolean":return new(d?xc:wc)(e);default:return e.value=d,new oc(e)}},UnaryExpression:a,UpdateExpression:a,Identifier:function(a){var d=g[g.length-2];return new("this"==a.name?kc:"LabeledStatement"==d.type?hc:"VariableDeclarator"==d.type&&d.id===a?"const"==d.kind?cc:bc:"FunctionExpression"==d.type?d.id===a?fc:dc:"FunctionDeclaration"==d.type?d.id===a?ec:dc:"CatchClause"==d.type?gc:"BreakStatement"==d.type||"ContinueStatement"==d.type?jc:ic)({start:b(a),end:c(a),name:a.name})}};d("Node",U),d("Program",kb,"body@body"),d("Function",nb,"id>name, params@argnames, body%body"),d("EmptyStatement",_),d("BlockStatement",$,"body@body"),d("ExpressionStatement",Y,"expression>body"),d("IfStatement",wb,"test>condition, consequent>body, alternate>alternative"),d("LabeledStatement",bb,"label>label, body>body"),d("BreakStatement",ub,"label>label"),d("ContinueStatement",vb,"label>label"),d("WithStatement",ib,"object>expression, body>body"),d("SwitchStatement",xb,"discriminant>expression, cases@body"),d("ReturnStatement",rb,"argument>value"),d("ThrowStatement",sb,"argument>value"),d("WhileStatement",fb,"test>condition, body>body"),d("DoWhileStatement",eb,"test>condition, body>body"),d("ForStatement",gb,"init>init, test>condition, update>step, body>body"),d("ForInStatement",hb,"left>init, right>object, body>body"),d("DebuggerStatement",W),d("FunctionDeclaration",ob,"id>name, params@argnames, body%body"),d("VariableDeclaration",Fb,"declarations@definitions"),d("VariableDeclarator",Hb,"id>name, init>value"),d("ThisExpression",kc),d("ArrayExpression",Ub,"elements@elements"),d("FunctionExpression",nb,"id>name, params@argnames, body%body"),d("BinaryExpression",Rb,"operator=operator, left>left, right>right"),d("AssignmentExpression",Tb,"operator=operator, left>left, right>right"),d("LogicalExpression",Rb,"operator=operator, left>left, right>right"),d("ConditionalExpression",Sb,"test>condition, consequent>consequent, alternate>alternative"),d("NewExpression",Jb,"callee>expression, arguments@args"),d("CallExpression",Ib,"callee>expression, arguments@args");var g=null;U.from_mozilla_ast=function(a){var b=g;g=[];var c=e(a);return g=b,c}}(),a.array_to_hash=c,a.slice=d,a.characters=e,a.member=f,a.find_if=g,a.repeat_string=h,a.DefaultsError=i,a.defaults=j,a.merge=k,a.noop=l,a.MAP=S,a.push_uniq=m,a.string_template=n,a.remove=o,a.mergeSort=p,a.set_difference=q,a.set_intersection=r,a.makePredicate=s,a.all=t,a.Dictionary=u,a.DEFNODE=v,a.AST_Token=T,a.AST_Node=U,a.AST_Statement=V,a.AST_Debugger=W,a.AST_Directive=X,a.AST_SimpleStatement=Y,a.walk_body=w,a.AST_Block=Z,a.AST_BlockStatement=$,a.AST_EmptyStatement=_,a.AST_StatementWithBody=ab,a.AST_LabeledStatement=bb,a.AST_IterationStatement=cb,a.AST_DWLoop=db,a.AST_Do=eb,a.AST_While=fb,a.AST_For=gb,a.AST_ForIn=hb,a.AST_With=ib,a.AST_Scope=jb,a.AST_Toplevel=kb,a.AST_Lambda=lb,a.AST_Accessor=mb,a.AST_Function=nb,a.AST_Defun=ob,a.AST_Jump=pb,a.AST_Exit=qb,a.AST_Return=rb,a.AST_Throw=sb,a.AST_LoopControl=tb,a.AST_Break=ub,a.AST_Continue=vb,a.AST_If=wb,a.AST_Switch=xb,a.AST_SwitchBranch=yb,a.AST_Default=zb,a.AST_Case=Ab,a.AST_Try=Bb,a.AST_Catch=Cb,a.AST_Finally=Db,a.AST_Definitions=Eb,a.AST_Var=Fb,a.AST_Const=Gb,a.AST_VarDef=Hb,a.AST_Call=Ib,a.AST_New=Jb,a.AST_Seq=Kb,a.AST_PropAccess=Lb,a.AST_Dot=Mb,a.AST_Sub=Nb,a.AST_Unary=Ob,a.AST_UnaryPrefix=Pb,a.AST_UnaryPostfix=Qb,a.AST_Binary=Rb,a.AST_Conditional=Sb,a.AST_Assign=Tb,a.AST_Array=Ub,a.AST_Object=Vb,a.AST_ObjectProperty=Wb,a.AST_ObjectKeyVal=Xb,a.AST_ObjectSetter=Yb,a.AST_ObjectGetter=Zb,a.AST_Symbol=$b,a.AST_SymbolAccessor=_b,a.AST_SymbolDeclaration=ac,a.AST_SymbolVar=bc,a.AST_SymbolConst=cc,a.AST_SymbolFunarg=dc,a.AST_SymbolDefun=ec,a.AST_SymbolLambda=fc,a.AST_SymbolCatch=gc,a.AST_Label=hc,a.AST_SymbolRef=ic,a.AST_LabelRef=jc,a.AST_This=kc,a.AST_Constant=lc,a.AST_String=mc,a.AST_Number=nc,a.AST_RegExp=oc,a.AST_Atom=pc,a.AST_Null=qc,a.AST_NaN=rc,a.AST_Undefined=sc,a.AST_Hole=tc,a.AST_Infinity=uc,a.AST_Boolean=vc,a.AST_False=wc,a.AST_True=xc,a.TreeWalker=x,a.KEYWORDS=yc,a.KEYWORDS_ATOM=zc,a.RESERVED_WORDS=Ac,a.KEYWORDS_BEFORE_EXPRESSION=Bc,a.OPERATOR_CHARS=Cc,a.RE_HEX_NUMBER=Dc,a.RE_OCT_NUMBER=Ec,a.RE_DEC_NUMBER=Fc,a.OPERATORS=Gc,a.WHITESPACE_CHARS=Hc,a.PUNC_BEFORE_EXPRESSION=Ic,a.PUNC_CHARS=Jc,a.REGEXP_MODIFIERS=Kc,a.UNICODE=Lc,a.is_letter=y,a.is_digit=z,a.is_alphanumeric_char=A,a.is_unicode_combining_mark=B,a.is_unicode_connector_punctuation=C,a.is_identifier=D,a.is_identifier_start=E,a.is_identifier_char=F,a.is_identifier_string=G,a.parse_js_number=H,a.JS_Parse_Error=I,a.js_error=J,a.is_token=K,a.EX_EOF=Mc,a.tokenizer=L,a.UNARY_PREFIX=Nc,a.UNARY_POSTFIX=Oc,a.ASSIGNMENT=Pc,a.PRECEDENCE=Qc,a.STATEMENTS_WITH_LABELS=Rc,a.ATOMIC_START_TOKEN=Sc,a.parse=M,a.TreeTransformer=N,a.SymbolDef=O,a.base54=Tc,a.OutputStream=P,a.Compressor=Q,a.SourceMap=R}({},function(){return this}()),"function"!=typeof Blob&&"object"!=typeof Blob||"undefined"==typeof URL)if("function"!=typeof Blob&&"object"!=typeof Blob||"undefined"==typeof webkitURL)var Blob=function(a){"use strict";var b=a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder||function(a){var b=function(a){return Object.prototype.toString.call(a).match(/^\[object\s(.*)\]$/)[1]},c=function(){this.data=[]},d=function(a,b,c){this.data=a,this.size=a.length,this.type=b,this.encoding=c},e=c.prototype,f=d.prototype,g=a.FileReaderSync,h=function(a){this.code=this[this.name=a]},i="NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR".split(" "),j=i.length,k=a.URL||a.webkitURL||a,l=k.createObjectURL,m=k.revokeObjectURL,n=k,o=a.btoa,p=a.atob,q=a.ArrayBuffer,r=a.Uint8Array;for(d.fake=f.fake=!0;j--;)h.prototype[i[j]]=j+1;return k.createObjectURL||(n=a.URL={}),n.createObjectURL=function(a){var b,c=a.type;return null===c&&(c="application/octet-stream"),a instanceof d?(b="data:"+c,"base64"===a.encoding?b+";base64,"+a.data:"URI"===a.encoding?b+","+decodeURIComponent(a.data):o?b+";base64,"+o(a.data):b+","+encodeURIComponent(a.data)):l?l.call(k,a):void 0},n.revokeObjectURL=function(a){"data:"!==a.substring(0,5)&&m&&m.call(k,a)},e.append=function(a){var c=this.data;if(r&&(a instanceof q||a instanceof r)){for(var e="",f=new r(a),i=0,j=f.length;j>i;i++)e+=String.fromCharCode(f[i]);c.push(e)}else if("Blob"===b(a)||"File"===b(a)){if(!g)throw new h("NOT_READABLE_ERR");var k=new g;c.push(k.readAsBinaryString(a))}else a instanceof d?"base64"===a.encoding&&p?c.push(p(a.data)):"URI"===a.encoding?c.push(decodeURIComponent(a.data)):"raw"===a.encoding&&c.push(a.data):("string"!=typeof a&&(a+=""),c.push(unescape(encodeURIComponent(a))))},e.getBlob=function(a){return arguments.length||(a=null),new d(this.data.join(""),a,"raw")},e.toString=function(){return"[object BlobBuilder]"},f.slice=function(a,b,c){var e=arguments.length;return 3>e&&(c=null),new d(this.data.slice(a,e>1?b:this.data.length),c,this.encoding)},f.toString=function(){return"[object Blob]"},c}(a);return function(a,c){var d=c?c.type||"":"",e=new b;if(a)for(var f=0,g=a.length;g>f;f++)e.append(a[f]);return e.getBlob(d)}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content||this);else self.URL=webkitURL;/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ +!function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.JSZip=a():"undefined"!=typeof global?global.JSZip=a():"undefined"!=typeof self&&(self.JSZip=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g >2,g=(3&b)<<4|c>>4,h=(15&c)<<2|e>>6,i=63&e,isNaN(c)?h=i=64:isNaN(e)&&(i=64),j=j+d.charAt(f)+d.charAt(g)+d.charAt(h)+d.charAt(i);return j},c.decode=function(a){var b,c,e,f,g,h,i,j="",k=0;for(a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");k >4,c=(15&g)<<4|h>>2,e=(3&h)<<6|i,j+=String.fromCharCode(b),64!=h&&(j+=String.fromCharCode(c)),64!=i&&(j+=String.fromCharCode(e));return j}},{}],2:[function(a,b){"use strict";function c(){this.compressedSize=0,this.uncompressedSize=0,this.crc32=0,this.compressionMethod=null,this.compressedContent=null}c.prototype={getContent:function(){return null},getCompressedContent:function(){return null}},b.exports=c},{}],3:[function(a,b,c){"use strict";c.STORE={magic:"\x00\x00",compress:function(a){return a},uncompress:function(a){return a},compressInputType:null,uncompressInputType:null},c.DEFLATE=a("./flate")},{"./flate":6}],4:[function(a,b){"use strict";function c(){this.data=null,this.length=0,this.index=0}var d=a("./utils");c.prototype={checkOffset:function(a){this.checkIndex(this.index+a)},checkIndex:function(a){if(this.lengtha)throw new Error("End of data reached (data length = "+this.length+", asked index = "+a+"). Corrupted zip ?")},setIndex:function(a){this.checkIndex(a),this.index=a},skip:function(a){this.setIndex(this.index+a)},byteAt:function(){},readInt:function(a){var b,c=0;for(this.checkOffset(a),b=this.index+a-1;b>=this.index;b--)c=(c<<8)+this.byteAt(b);return this.index+=a,c},readString:function(a){return d.transformTo("string",this.readData(a))},readData:function(){},lastIndexOfSignature:function(){},readDate:function(){var a=this.readInt(4);return new Date((a>>25&127)+1980,(a>>21&15)-1,a>>16&31,a>>11&31,a>>5&63,(31&a)<<1)}},b.exports=c},{"./utils":14}],5:[function(a,b,c){"use strict";c.base64=!1,c.binary=!1,c.dir=!1,c.date=null,c.compression=null},{}],6:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Uint32Array,e=a("pako");c.uncompressInputType=d?"uint8array":"array",c.compressInputType=d?"uint8array":"array",c.magic="\b\x00",c.compress=function(a){return e.deflateRaw(a)},c.uncompress=function(a){return e.inflateRaw(a)}},{pako:19}],7:[function(a,b){"use strict";function c(a,b){return this instanceof c?(this.files={},this.root="",a&&this.load(a,b),void(this.clone=function(){var a=new c;for(var b in this)"function"!=typeof this[b]&&(a[b]=this[b]);return a})):new c(a,b)}c.prototype=a("./object"),c.prototype.load=a("./load"),c.support=a("./support"),c.defaults=a("./defaults"),c.utils=a("./utils"),c.base64=a("./base64"),c.compressions=a("./compressions"),b.exports=c},{"./base64":1,"./compressions":3,"./defaults":5,"./load":8,"./object":9,"./support":12,"./utils":14}],8:[function(a,b){"use strict";var c=a("./base64"),d=a("./zipEntries");b.exports=function(a,b){var e,f,g,h;for(b=b||{},b.base64&&(a=c.decode(a)),f=new d(a,b),e=f.files,g=0;g c;c++)d+=String.fromCharCode(255&a),a>>>=8;return d},r=function(){var a,b,c={};for(a=0;a 0?a.substring(0,b):""},v=function(a){return"/"!=a.slice(-1)&&(a+="/"),this.files[a]||t.call(this,a,null,{dir:!0}),this.files[a]},w=function(a,b){var c,d=new k;return a._data instanceof k?(d.uncompressedSize=a._data.uncompressedSize,d.crc32=a._data.crc32,0===d.uncompressedSize||a.options.dir?(b=j.STORE,d.compressedContent="",d.crc32=0):a._data.compressionMethod===b.magic?d.compressedContent=a._data.getCompressedContent():(c=a._data.getContent(),d.compressedContent=b.compress(f.transformTo(b.compressInputType,c)))):(c=n(a),(!c||0===c.length||a.options.dir)&&(b=j.STORE,c=""),d.uncompressedSize=c.length,d.crc32=this.crc32(c),d.compressedContent=b.compress(f.transformTo(b.compressInputType,c))),d.compressedSize=d.compressedContent.length,d.compressionMethod=b.magic,d},x=function(a,b,c,d){var e,f,h=(c.compressedContent,this.utf8encode(b.name)),i=h!==b.name,j=b.options,k="",l="";e=j.date.getHours(),e<<=6,e|=j.date.getMinutes(),e<<=5,e|=j.date.getSeconds()/2,f=j.date.getFullYear()-1980,f<<=4,f|=j.date.getMonth()+1,f<<=5,f|=j.date.getDate(),i&&(l=q(1,1)+q(this.crc32(h),4)+h,k+="up"+q(l.length,2)+l);var m="";m+="\n\x00",m+=i?"\x00\b":"\x00\x00",m+=c.compressionMethod,m+=q(e,2),m+=q(f,2),m+=q(c.crc32,4),m+=q(c.compressedSize,4),m+=q(c.uncompressedSize,4),m+=q(h.length,2),m+=q(k.length,2);var n=g.LOCAL_FILE_HEADER+m+h+k,o=g.CENTRAL_FILE_HEADER+"\x00"+m+"\x00\x00\x00\x00\x00\x00"+(b.options.dir===!0?"\x00\x00\x00":"\x00\x00\x00\x00")+q(d,4)+h+k;return{fileRecord:n,dirRecord:o,compressedObject:c}},y=function(){this.data=[]};y.prototype={append:function(a){a=f.transformTo("string",a),this.data.push(a)},finalize:function(){return this.data.join("")}};var z=function(a){this.data=new Uint8Array(a),this.index=0};z.prototype={append:function(a){0!==a.length&&(a=f.transformTo("uint8array",a),this.data.set(a,this.index),this.index+=a.length)},finalize:function(){return this.data}};var A={load:function(){throw new Error("Load method is not defined. Is the file jszip-load.js included ?")},filter:function(a){var b,c,d,e,f=[];for(b in this.files)this.files.hasOwnProperty(b)&&(d=this.files[b],e=new p(d.name,d._data,r(d.options)),c=b.slice(this.root.length,b.length),b.slice(0,this.root.length)===this.root&&a(c,e)&&f.push(e));return f},file:function(a,b,c){if(1===arguments.length){if(f.isRegExp(a)){var d=a;return this.filter(function(a,b){return!b.options.dir&&d.test(a)})}return this.filter(function(b,c){return!c.options.dir&&b===a})[0]||null}return a=this.root+a,t.call(this,a,b,c),this},folder:function(a){if(!a)return this;if(f.isRegExp(a))return this.filter(function(b,c){return c.options.dir&&a.test(b)});var b=this.root+a,c=v.call(this,b),d=this.clone();return d.root=c.name,d},remove:function(a){a=this.root+a;var b=this.files[a];if(b||("/"!=a.slice(-1)&&(a+="/"),b=this.files[a]),b)if(b.options.dir)for(var c=this.filter(function(b,c){return c.name.slice(0,a.length)===a}),d=0;d i;i++)h=c?a[i]:a.charCodeAt(i),g=255&(b^h),e=d[g],b=b>>>8^e;return-1^b},utf8encode:function(a){if(c){var b=c.encode(a);return f.transformTo("string",b)}if(e.nodebuffer)return f.transformTo("string",l(a,"utf-8"));for(var d=[],g=0,h=0;h i?d[g++]=String.fromCharCode(i):i>127&&2048>i?(d[g++]=String.fromCharCode(i>>6|192),d[g++]=String.fromCharCode(63&i|128)):(d[g++]=String.fromCharCode(i>>12|224),d[g++]=String.fromCharCode(i>>6&63|128),d[g++]=String.fromCharCode(63&i|128))}return d.join("")},utf8decode:function(a){var b=[],c=0,g=f.getTypeOf(a),h="string"!==g,i=0,j=0,k=0,l=0;if(d)return d.decode(f.transformTo("uint8array",a));if(e.nodebuffer)return f.transformTo("nodebuffer",a).toString("utf-8");for(;i j?(b[c++]=String.fromCharCode(j),i++):j>191&&224>j?(k=h?a[i+1]:a.charCodeAt(i+1),b[c++]=String.fromCharCode((31&j)<<6|63&k),i+=2):(k=h?a[i+1]:a.charCodeAt(i+1),l=h?a[i+2]:a.charCodeAt(i+2),b[c++]=String.fromCharCode((15&j)<<12|(63&k)<<6|63&l),i+=3);return b.join("")}};b.exports=A},{"./base64":1,"./compressedObject":2,"./compressions":3,"./defaults":5,"./nodeBuffer":17,"./signature":10,"./support":12,"./utils":14}],10:[function(a,b,c){"use strict";c.LOCAL_FILE_HEADER="PK",c.CENTRAL_FILE_HEADER="PK",c.CENTRAL_DIRECTORY_END="PK",c.ZIP64_CENTRAL_DIRECTORY_LOCATOR="PK",c.ZIP64_CENTRAL_DIRECTORY_END="PK",c.DATA_DESCRIPTOR="PK\b"},{}],11:[function(a,b){"use strict";function c(a,b){this.data=a,b||(this.data=e.string2binary(this.data)),this.length=this.data.length,this.index=0}var d=a("./dataReader"),e=a("./utils");c.prototype=new d,c.prototype.byteAt=function(a){return this.data.charCodeAt(a)},c.prototype.lastIndexOfSignature=function(a){return this.data.lastIndexOf(a)},c.prototype.readData=function(a){this.checkOffset(a);var b=this.data.slice(this.index,this.index+a);return this.index+=a,b},b.exports=c},{"./dataReader":4,"./utils":14}],12:[function(a,b,c){var d=a("__browserify_process");if(c.base64=!0,c.array=!0,c.string=!0,c.arraybuffer="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof Uint8Array,c.nodebuffer=!d.browser,c.uint8array="undefined"!=typeof Uint8Array,"undefined"==typeof ArrayBuffer)c.blob=!1;else{var e=new ArrayBuffer(0);try{c.blob=0===new Blob([e],{type:"application/zip"}).size}catch(f){try{var g=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder||window.MSBlobBuilder,h=new g;h.append(e),c.blob=0===h.getBlob("application/zip").size}catch(f){c.blob=!1}}}},{__browserify_process:18}],13:[function(a,b){"use strict";function c(a){a&&(this.data=a,this.length=this.data.length,this.index=0)}var d=a("./dataReader");c.prototype=new d,c.prototype.byteAt=function(a){return this.data[a]},c.prototype.lastIndexOfSignature=function(a){for(var b=a.charCodeAt(0),c=a.charCodeAt(1),d=a.charCodeAt(2),e=a.charCodeAt(3),f=this.length-4;f>=0;--f)if(this.data[f]===b&&this.data[f+1]===c&&this.data[f+2]===d&&this.data[f+3]===e)return f;return-1},c.prototype.readData=function(a){this.checkOffset(a);var b=this.data.subarray(this.index,this.index+a);return this.index+=a,b},b.exports=c},{"./dataReader":4}],14:[function(a,b,c){"use strict";function d(a){return a}function e(a,b){for(var c=0;c g&&b>1;)try{d.push("array"===f||"nodebuffer"===f?String.fromCharCode.apply(null,a.slice(g,Math.min(g+b,e))):String.fromCharCode.apply(null,a.subarray(g,Math.min(g+b,e)))),g+=b}catch(i){b=Math.floor(b/2)}return d.join("")}function g(a,b){for(var c=0;c b?"0":"")+b.toString(16).toUpperCase();return d},c.findCompression=function(a){for(var b in i)if(i.hasOwnProperty(b)&&i[b].magic===a)return i[b];return null},c.isRegExp=function(a){return"[object RegExp]"===Object.prototype.toString.call(a)}},{"./compressions":3,"./nodeBuffer":17,"./support":12}],15:[function(a,b){"use strict";function c(a,b){this.files=[],this.loadOptions=b,a&&this.load(a)}var d=a("./stringReader"),e=a("./nodeBufferReader"),f=a("./uint8ArrayReader"),g=a("./utils"),h=a("./signature"),i=a("./zipEntry"),j=a("./support");c.prototype={checkSignature:function(a){var b=this.reader.readString(4);if(b!==a)throw new Error("Corrupted zip or bug : unexpected signature ("+g.pretty(b)+", expected "+g.pretty(a)+")")},readBlockEndOfCentral:function(){this.diskNumber=this.reader.readInt(2),this.diskWithCentralDirStart=this.reader.readInt(2),this.centralDirRecordsOnThisDisk=this.reader.readInt(2),this.centralDirRecords=this.reader.readInt(2),this.centralDirSize=this.reader.readInt(4),this.centralDirOffset=this.reader.readInt(4),this.zipCommentLength=this.reader.readInt(2),this.zipComment=this.reader.readString(this.zipCommentLength)},readBlockZip64EndOfCentral:function(){this.zip64EndOfCentralSize=this.reader.readInt(8),this.versionMadeBy=this.reader.readString(2),this.versionNeeded=this.reader.readInt(2),this.diskNumber=this.reader.readInt(4),this.diskWithCentralDirStart=this.reader.readInt(4),this.centralDirRecordsOnThisDisk=this.reader.readInt(8),this.centralDirRecords=this.reader.readInt(8),this.centralDirSize=this.reader.readInt(8),this.centralDirOffset=this.reader.readInt(8),this.zip64ExtensibleData={};for(var a,b,c,d=this.zip64EndOfCentralSize-44,e=0;d>e;)a=this.reader.readInt(2),b=this.reader.readInt(4),c=this.reader.readString(b),this.zip64ExtensibleData[a]={id:a,length:b,value:c}},readBlockZip64EndOfCentralLocator:function(){if(this.diskWithZip64CentralDirStart=this.reader.readInt(4),this.relativeOffsetEndOfZip64CentralDir=this.reader.readInt(8),this.disksCount=this.reader.readInt(4),this.disksCount>1)throw new Error("Multi-volumes zip are not supported")},readLocalFiles:function(){var a,b;for(a=0;a 0)){var d=c.shift();d()}},!0),function(a){c.push(a),window.postMessage("process-tick","*")}}return function(a){setTimeout(a,0)}}(),c.title="browser",c.browser=!0,c.env={},c.argv=[],c.binding=function(){throw new Error("process.binding is not supported")},c.cwd=function(){return"/"},c.chdir=function(){throw new Error("process.chdir is not supported")}},{}],19:[function(a,b){"use strict";var c=a("./lib/zlib/utils").assign,d=a("./lib/deflate"),e=a("./lib/inflate"),f=a("./lib/zlib/constants"),g={};c(g,d,e,f),b.exports=g},{"./lib/deflate":20,"./lib/inflate":21,"./lib/zlib/constants":23,"./lib/zlib/utils":31}],20:[function(a,b,c){"use strict";function d(a,b){var c=new r(b);if(c.push(a,!0),c.err)throw c.msg;return c.result}function e(a,b){return b=b||{},b.raw=!0,d(a,b)}function f(a,b){return b=b||{},b.gzip=!0,d(a,b)}var g=a("./zlib/deflate.js"),h=a("./zlib/utils"),i=a("./zlib/messages"),j=a("./zlib/zstream"),k=0,l=4,m=0,n=1,o=-1,p=0,q=8,r=function(a){this.options=h.assign({level:o,method:q,chunkSize:16384,windowBits:15,memLevel:8,strategy:p},a||{});var b=this.options;b.raw&&b.windowBits>0?b.windowBits=-b.windowBits:b.gzip&&b.windowBits>0&&b.windowBits<16&&(b.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new j;var c=g.deflateInit2(this.strm,b.level,b.method,b.windowBits,b.memLevel,b.strategy);if(c!==m)throw new Error(i[c])};r.prototype.push=function(a,b){var c,d,e=this.strm,f=this.options.chunkSize;if(this.ended)return!1;d=b===~~b?b:b===!0?l:k,e.next_in=a,e.next_in_index=0,e.avail_in=e.next_in.length,e.next_out=new h.Buf8(f);do{if(e.avail_out=this.options.chunkSize,e.next_out_index=0,c=g.deflate(e,d),c!==n&&c!==m)return this.onEnd(c),this.ended=!0,!1;e.next_out_index&&(this.onData(h.shrinkBuf(e.next_out,e.next_out_index)),(e.avail_in>0||0===e.avail_out)&&(e.next_out=new h.Buf8(this.options.chunkSize)))}while(e.avail_in>0||0===e.avail_out);return d===l?(c=g.deflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===m):!0},r.prototype.onData=function(a){this.chunks.push(a)},r.prototype.onEnd=function(a){a===m&&(this.result=h.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Deflate=r,c.deflate=d,c.deflateRaw=e,c.gzip=f},{"./zlib/deflate.js":25,"./zlib/messages":29,"./zlib/utils":31,"./zlib/zstream":32}],21:[function(a,b,c){"use strict";function d(a,b){var c=new k(b);if(c.push(a,!0),c.err)throw c.msg;return c.result}function e(a,b){return b=b||{},b.raw=!0,d(a,b)}var f=a("./zlib/inflate.js"),g=a("./zlib/utils"),h=a("./zlib/constants"),i=a("./zlib/messages"),j=a("./zlib/zstream"),k=function(a){this.options=g.assign({chunkSize:16384,windowBits:0},a||{});var b=this.options;b.raw&&b.windowBits>=0&&b.windowBits<16&&(b.windowBits=-b.windowBits,0===b.windowBits&&(b.windowBits=-15)),!(b.windowBits>=0&&b.windowBits<16)||a&&a.windowBits||(b.windowBits+=32),b.windowBits>15&&b.windowBits<48&&0===(15&b.windowBits)&&(b.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new j;var c=f.inflateInit2(this.strm,b.windowBits);if(c!==h.Z_OK)throw new Error(i[c])};k.prototype.push=function(a,b){var c,d,e=this.strm,i=this.options.chunkSize;if(this.ended)return!1;d=h.Z_NO_FLUSH,e.next_in=a,e.next_in_index=0,e.avail_in=e.next_in.length,e.next_out=new g.Buf8(i);do{if(e.avail_out=this.options.chunkSize,e.next_out_index=0,c=f.inflate(e,d),c!==h.Z_STREAM_END&&c!==h.Z_OK)return this.onEnd(c),this.ended=!0,!1;e.next_out_index&&(this.onData(g.shrinkBuf(e.next_out,e.next_out_index)),(e.avail_in>0||0===e.avail_out)&&(e.next_out=new g.Buf8(this.options.chunkSize)))}while(e.avail_in>0||0===e.avail_out);return d=b===~~b?b:b===!0?h.Z_FINISH:h.Z_NO_FLUSH,d===h.Z_FINISH?(c=f.inflateEnd(this.strm),this.onEnd(c),this.ended=!0,c===h.Z_OK):!0},k.prototype.onData=function(a){this.chunks.push(a)},k.prototype.onEnd=function(a){a===h.Z_OK&&(this.result=g.flattenChunks(this.chunks)),this.chunks=[],this.err=a,this.msg=this.strm.msg},c.Inflate=k,c.inflate=d,c.inflateRaw=e},{"./zlib/constants":23,"./zlib/inflate.js":27,"./zlib/messages":29,"./zlib/utils":31,"./zlib/zstream":32}],22:[function(a,b){"use strict"; +function c(a,b,c,d){for(var e=65535&a|0,f=a>>>16&65535|0,g=0;0!==c;){g=c>2e3?2e3:c,c-=g;do e=e+b[d++]|0,f=f+e|0;while(--g);e%=65521,f%=65521}return e|f<<16|0}b.exports=c},{}],23:[function(a,b){b.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}},{}],24:[function(a,b){"use strict";function c(){for(var a,b=[],c=0;256>c;c++){a=c;for(var d=0;8>d;d++)a=1&a?3988292384^a>>>1:a>>>1;b[c]=a}return b}function d(a,b,c,d){var f=e,g=d+c;a=-1^a;for(var h=d;g>h;h++)a=a>>>8^f[255&(a^b[h])];return-1^a}var e=c();b.exports=d},{}],25:[function(a,b,c){"use strict";function d(a,b){return a.msg=F[b],b}function e(a){return(a<<1)-(a>4?9:0)}function f(a){for(var b=a.length;--b;)a[b]=0}function g(a){var b=a.state,c=b.pending;c>a.avail_out&&(c=a.avail_out),0!==c&&(B.arraySet(a.next_out,b.pending_buf,b.pending_out,c,a.next_out_index),a.next_out_index+=c,b.pending_out+=c,a.total_out+=c,a.avail_out-=c,b.pending-=c,0===b.pending&&(b.pending_out=0))}function h(a,b){C._tr_flush_block(a,a.block_start>=0?a.block_start:-1,a.strstart-a.block_start,b),a.block_start=a.strstart,g(a.strm)}function i(a,b){a.pending_buf[a.pending++]=b}function j(a,b){a.pending_buf[a.pending++]=b>>>8&255,a.pending_buf[a.pending++]=255&b}function k(a,b,c,d){var e=a.avail_in;return e>d&&(e=d),0===e?0:(a.avail_in-=e,B.arraySet(b,a.next_in,a.next_in_index,e,c),1===a.state.wrap?a.adler=D(a.adler,b,e,c):2===a.state.wrap&&(a.adler=E(a.adler,b,e,c)),a.next_in_index+=e,a.total_in+=e,e)}function l(a,b){var c,d,e=a.max_chain_length,f=a.strstart,g=a.prev_length,h=a.nice_match,i=a.strstart>a.w_size-ib?a.strstart-(a.w_size-ib):0,j=a.window,k=a.w_mask,l=a.prev,m=a.strstart+hb,n=j[f+g-1],o=j[f+g];a.prev_length>=a.good_match&&(e>>=2),h>a.lookahead&&(h=a.lookahead);do if(c=b,j[c+g]===o&&j[c+g-1]===n&&j[c]===j[f]&&j[++c]===j[f+1]){f+=2,c++;do;while(j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&j[++f]===j[++c]&&m>f);if(d=hb-(m-f),f=m-hb,d>g){if(a.match_start=b,g=d,d>=h)break;n=j[f+g-1],o=j[f+g]}}while((b=l[b&k])>i&&0!==--e);return g<=a.lookahead?g:a.lookahead}function m(a){var b,c,d,e,f,g=a.w_size;do{if(e=a.window_size-a.lookahead-a.strstart,a.strstart>=g+(g-ib)){B.arraySet(a.window,a.window,g,g,0),a.match_start-=g,a.strstart-=g,a.block_start-=g,c=a.hash_size,b=c;do d=a.head[--b],a.head[b]=d>=g?d-g:0;while(--c);c=g,b=c;do d=a.prev[--b],a.prev[b]=d>=g?d-g:0;while(--c);e+=g}if(0===a.strm.avail_in)break;if(c=k(a.strm,a.window,a.strstart+a.lookahead,e),a.lookahead+=c,a.lookahead+a.insert>=gb)for(f=a.strstart-a.insert,a.ins_h=a.window[f],a.ins_h=(a.ins_h< a.pending_buf_size-5&&(c=a.pending_buf_size-5);;){if(a.lookahead<=1){if(m(a),0===a.lookahead&&b===G)return rb;if(0===a.lookahead)break}a.strstart+=a.lookahead,a.lookahead=0;var d=a.block_start+c;if((0===a.strstart||a.strstart>=d)&&(a.lookahead=a.strstart-d,a.strstart=d,h(a,!1),0===a.strm.avail_out))return rb;if(a.strstart-a.block_start>=a.w_size-ib&&(h(a,!1),0===a.strm.avail_out))return rb}return a.insert=0,b===J?(h(a,!0),0===a.strm.avail_out?tb:ub):a.strstart>a.block_start&&(h(a,!1),0===a.strm.avail_out)?rb:rb}function o(a,b){for(var c,d;;){if(a.lookahead =gb&&(a.ins_h=(a.ins_h< =gb)if(d=C._tr_tally(a,a.strstart-a.match_start,a.match_length-gb),a.lookahead-=a.match_length,a.match_length<=a.max_lazy_match&&a.lookahead>=gb){a.match_length--;do a.strstart++,a.ins_h=(a.ins_h< =gb&&(a.ins_h=(a.ins_h< 4096)&&(a.match_length=gb-1)),a.prev_length>=gb&&a.match_length<=a.prev_length){e=a.strstart+a.lookahead-gb,d=C._tr_tally(a,a.strstart-1-a.prev_match,a.prev_length-gb),a.lookahead-=a.prev_length-1,a.prev_length-=2;do++a.strstart<=e&&(a.ins_h=(a.ins_h< =gb&&a.strstart>0&&(e=a.strstart-1,d=g[e],d===g[++e]&&d===g[++e]&&d===g[++e])){f=a.strstart+hb;do;while(d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&d===g[++e]&&f>e);a.match_length=hb-(f-e),a.match_length>a.lookahead&&(a.match_length=a.lookahead)}if(a.match_length>=gb?(c=C._tr_tally(a,1,a.match_length-gb),a.lookahead-=a.match_length,a.strstart+=a.match_length,a.match_length=0):(c=C._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++),c&&(h(a,!1),0===a.strm.avail_out))return rb}return a.insert=0,b===J?(h(a,!0),0===a.strm.avail_out?tb:ub):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?rb:sb}function r(a,b){for(var c;;){if(0===a.lookahead&&(m(a),0===a.lookahead)){if(b===G)return rb;break}if(a.match_length=0,c=C._tr_tally(a,0,a.window[a.strstart]),a.lookahead--,a.strstart++,c&&(h(a,!1),0===a.strm.avail_out))return rb}return a.insert=0,b===J?(h(a,!0),0===a.strm.avail_out?tb:ub):a.last_lit&&(h(a,!1),0===a.strm.avail_out)?rb:sb}function s(a){a.window_size=2*a.w_size,f(a.head),a.max_lazy_match=A[a.level].max_lazy,a.good_match=A[a.level].good_length,a.nice_match=A[a.level].nice_length,a.max_chain_length=A[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=gb-1,a.match_available=0,a.ins_h=0}function t(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=X,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new B.Buf16(2*eb),this.dyn_dtree=new B.Buf16(2*(2*cb+1)),this.bl_tree=new B.Buf16(2*(2*db+1)),f(this.dyn_ltree),f(this.dyn_dtree),f(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new B.Buf16(fb+1),this.heap=new B.Buf16(2*bb+1),f(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new B.Buf16(2*bb+1),f(this.depth),this.l_buf=0,this.lit_bufsize=0,this.last_lit=0,this.d_buf=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0,this.high_water=0}function u(a){var b;return a&&a.state?(a.total_in=a.total_out=0,a.data_type=W,b=a.state,b.pending=0,b.pending_out=0,b.wrap<0&&(b.wrap=-b.wrap),b.status=b.wrap?kb:pb,a.adler=2===b.wrap?0:1,b.last_flush=G,C._tr_init(b),L):d(a,N)}function v(a){var b=u(a);return b===L&&s(a.state),b}function w(a,b,c,e,f,g){if(!a)return d(a,N);var h=1;if(b===Q&&(b=6),0>e?(h=0,e=-e):e>15&&(h=2,e-=16),1>f||f>Y||c!==X||8>e||e>15||0>b||b>9||0>g||g>U)return d(a,N);8===e&&(e=9);var i=new t;return a.state=i,i.strm=a,i.wrap=h,i.gzhead=null,i.w_bits=e,i.w_size=1< >1,i.l_buf=3*i.lit_bufsize,i.level=b,i.strategy=g,i.method=c,v(a)}function x(a,b){return w(a,b,X,Z,$,V)}function y(a,b){var c,h;if(!a||!a.state||b>K||0>b)return d(a,N);if(h=a.state,!a.next_out||!a.next_in&&0!==a.avail_in||h.status===qb&&b!==J)return d(a,0===a.avail_out?P:N);if(h.strm=a,c=h.last_flush,h.last_flush=b,h.status===kb)if(2===h.wrap){if(a.adler=0,i(h,31),i(h,139),i(h,8),h.gzhead)throw new Error("Custom GZIP headers not supported");i(h,0),i(h,0),i(h,0),i(h,0),i(h,0),i(h,9===h.level?2:h.strategy>=S||h.level<2?4:0),i(h,vb),h.status=pb}else{var k=X+(h.w_bits-8<<4)<<8,l=-1;l=h.strategy>=S||h.level<2?0:h.level<6?1:6===h.level?2:3,k|=l<<6,0!==h.strstart&&(k|=jb),k+=31-k%31,h.status=pb,j(h,k),0!==h.strstart&&(j(h,a.adler>>>16),j(h,65535&a.adler)),a.adler=1}if(0!==h.pending){if(g(a),0===a.avail_out)return h.last_flush=-1,L}else if(0===a.avail_in&&e(b)<=e(c)&&b!==J)return d(a,P);if(h.status===qb&&0!==a.avail_in)return d(a,P);if(0!==a.avail_in||0!==h.lookahead||b!==G&&h.status!==qb){var m=h.strategy===S?r(h,b):h.strategy===T?q(h,b):A[h.level].func(h,b);if((m===tb||m===ub)&&(h.status=qb),m===rb||m===tb)return 0===a.avail_out&&(h.last_flush=-1),L;if(m===sb&&(b===H?C._tr_align(h):b!==K&&(C._tr_stored_block(h,0,0,!1),b===I&&(f(h.head),0===h.lookahead&&(h.strstart=0,h.block_start=0,h.insert=0))),g(a),0===a.avail_out))return h.last_flush=-1,L}return b!==J?L:h.wrap<=0?M:(2===h.wrap?(i(h,255&a.adler),i(h,a.adler>>8&255),i(h,a.adler>>16&255),i(h,a.adler>>24&255),i(h,255&a.total_in),i(h,a.total_in>>8&255),i(h,a.total_in>>16&255),i(h,a.total_in>>24&255)):(j(h,a.adler>>>16),j(h,65535&a.adler)),g(a),h.wrap>0&&(h.wrap=-h.wrap),0!==h.pending?L:M)}function z(a){var b=a.state.status;return b!==kb&&b!==lb&&b!==mb&&b!==nb&&b!==ob&&b!==pb&&b!==qb?d(a,N):(a.state=null,b===pb?d(a,O):L)}var A,B=a("./utils"),C=a("./trees"),D=a("./adler32"),E=a("./crc32"),F=a("./messages"),G=0,H=1,I=3,J=4,K=5,L=0,M=1,N=-2,O=-3,P=-5,Q=-1,R=1,S=2,T=3,U=4,V=0,W=2,X=8,Y=9,Z=15,$=8,_=29,ab=256,bb=ab+1+_,cb=30,db=19,eb=2*bb+1,fb=15,gb=3,hb=258,ib=hb+gb+1,jb=32,kb=42,lb=69,mb=73,nb=91,ob=103,pb=113,qb=666,rb=1,sb=2,tb=3,ub=4,vb=3,wb=function(a,b,c,d,e){this.good_length=a,this.max_lazy=b,this.nice_length=c,this.max_chain=d,this.func=e};A=[new wb(0,0,0,0,n),new wb(4,4,8,4,o),new wb(4,5,16,8,o),new wb(4,6,32,32,o),new wb(4,4,16,16,p),new wb(8,16,32,32,p),new wb(8,16,128,128,p),new wb(8,32,128,256,p),new wb(32,128,258,1024,p),new wb(32,258,258,4096,p)],c.deflateInit=x,c.deflateInit2=w,c.deflateReset=v,c.deflate=y,c.deflateEnd=z,c.deflateInfo="pako deflate (from Nodeca project)"},{"./adler32":22,"./crc32":24,"./messages":29,"./trees":30,"./utils":31}],26:[function(a,b){"use strict";var c=30,d=12;b.exports=function(a,b){var e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C;e=a.state,f=a.next_in_index,B=a.next_in,g=f+(a.avail_in-5),h=a.next_out_index,C=a.next_out,i=h-(b-a.avail_out),j=h+(a.avail_out-257),k=e.dmax,l=e.wsize,m=e.whave,n=e.wnext,o=e.window,p=e.hold,q=e.bits,r=e.lencode,s=e.distcode,t=(1< q&&(p+=B[f++]< >>24,p>>>=w,q-=w,w=v>>>16&255,0===w)C[h++]=65535&v;else{if(!(16&w)){if(0===(64&w)){v=r[(65535&v)+(p&(1<q&&(p+=B[f++]< >>=w,q-=w),15>q&&(p+=B[f++]<>>24,p>>>=w,q-=w,w=v>>>16&255,!(16&w)){if(0===(64&w)){v=s[(65535&v)+(p&(1<q&&(p+=B[f++]< q&&(p+=B[f++]<k){a.msg="invalid distance too far back",e.mode=c;break a}if(p>>>=w,q-=w,w=h-i,y>w){if(w=y-w,w>m&&e.sane){a.msg="invalid distance too far back",e.mode=c;break a}if(z=0,A=o,0===n){if(z+=l-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}else if(w>n){if(z+=l+n-w,w-=n,x>w){x-=w;do C[h++]=o[z++];while(--w);if(z=0,x>n){w=n,x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}}}else if(z+=n-w,x>w){x-=w;do C[h++]=o[z++];while(--w);z=h-y,A=C}for(;x>2;)C[h++]=A[z++],C[h++]=A[z++],C[h++]=A[z++],x-=3;x&&(C[h++]=A[z++],x>1&&(C[h++]=A[z++]))}else{z=h-y;do C[h++]=C[z++],C[h++]=C[z++],C[h++]=C[z++],x-=3;while(x>2);x&&(C[h++]=C[z++],x>1&&(C[h++]=C[z++]))}break}}break}}while(g>f&&j>h);x=q>>3,f-=x,q-=x<<3,p&=(1<f?5+(g-f):5-(f-g),a.avail_out=j>h?257+(j-h):257-(h-j),e.hold=p,e.bits=q}},{}],27:[function(a,b,c){"use strict";function d(a){return(a>>>24&255)+(a>>>8&65280)+((65280&a)<<8)+((255&a)<<24)}function e(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.next_index=0,this.lens=new s.Buf16(320),this.work=new s.Buf16(288),this.codes=new s.Buf32(rb),this.sane=0,this.back=0,this.was=0}function f(a,b,c,d,e,f,g,h){this.type=a,this.lens=b,this.lens_index=c,this.codes=d,this.table=e,this.table_index=f,this.bits=g,this.work=h}function g(a){var b;return a&&a.state?(b=a.state,a.total_in=a.total_out=b.total=0,b.wrap&&(a.adler=1&b.wrap),b.mode=L,b.last=0,b.havedict=0,b.dmax=32768,b.head=null,b.hold=0,b.bits=0,b.lencode=new s.Buf32(rb),b.distcode=new s.Buf32(rb),b.sane=1,b.back=-1,D):G}function h(a){var b;return a&&a.state?(b=a.state,b.wsize=0,b.whave=0,b.wnext=0,g(a)):G}function i(a,b){var c,d;return a&&a.state?(d=a.state,0>b?(c=0,b=-b):(c=(b>>4)+1,48>b&&(b&=15)),b&&(8>b||b>15)?G:(null!==d.window&&d.wbits!==b&&(d.window=null),d.wrap=c,d.wbits=b,h(a))):G}function j(a,b){var c,d;return a?(d=new e,a.state=d,d.window=null,c=i(a,b),c!==D&&(a.state=null),c):G}function k(a){return j(a,tb)}function l(a,b,c){var d;return a&&a.state?(d=a.state,0>b?(d.hold=0,d.bits=0,D):b>16||d.bits+b>32?G:(c&=(1<b;)a.lens[b++]=8;for(;256>b;)a.lens[b++]=9;for(;280>b;)a.lens[b++]=7;for(;288>b;)a.lens[b++]=8;for(c=9,w(new f(y,a.lens,0,288,q,0,c,a.work)),b=0;32>b;)a.lens[b++]=5;c=5,w(new f(z,a.lens,0,32,r,0,c,a.work)),ub=!1}a.lencode=q,a.lenbits=9,a.distcode=r,a.distbits=5}function n(a,b,c,d){var e,f=a.state;return null===f.window&&(f.wsize=1<=f.wsize?(s.arraySet(f.window,b,c-f.wsize,f.wsize,0),f.wnext=0,f.whave=f.wsize):(e=f.wsize-f.wnext,e>d&&(e=d),s.arraySet(f.window,b,c-d,e,f.wnext),d-=e,d?(s.arraySet(f.window,b,c-d,d,0),f.wnext=d,f.whave=f.wsize):(f.wnext+=e,f.wnext===f.wsize&&(f.wnext=0),f.whave o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,c.check=u(c.check,Cb,2,0),l=0,o=0,c.mode=M;break}if(c.flags=0,c.head&&(c.head.done=-1),!(1&c.wrap)||(((255&l)<<8)+(l>>8))%31){a.msg="incorrect header check",c.mode=mb;break}if((15&l)!==K){a.msg="unknown compression method",c.mode=mb;break}if(l>>>=4,o-=4,xb=(15&l)+8,0===c.wbits)c.wbits=xb;else if(xb>c.wbits){a.msg="invalid window size",c.mode=mb;break}c.dmax=1< o;){if(0===j)break a;j--,l+=e[h++]< >8&1),512&c.flags&&(Cb[0]=255&l,Cb[1]=l>>>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0,c.mode=N;case N:for(;32>o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,Cb[2]=l>>>16&255,Cb[3]=l>>>24&255,c.check=u(c.check,Cb,4,0)),l=0,o=0,c.mode=O;case O:for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >8),512&c.flags&&(Cb[0]=255&l,Cb[1]=l>>>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0,c.mode=P;case P:if(1024&c.flags){for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >>8&255,c.check=u(c.check,Cb,2,0)),l=0,o=0}else c.head&&(c.head.extra=null);c.mode=Q;case Q:if(1024&c.flags){if(r=c.length,r>j&&(r=j),r){if(c.head&&c.head.extra)throw xb=c.head.extra_len-c.length,"Review & implement right";512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,c.length-=r}if(c.length)break a}c.length=0,c.mode=R;case R:if(2048&c.flags){if(0===j)break a;r=0;do xb=e[h+r++],c.head&&c.head.name&&c.length r);if(512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,xb)break a}else c.head&&(c.head.name=null);c.length=0,c.mode=S;case S:if(4096&c.flags){if(0===j)break a;r=0;do xb=e[h+r++],c.head&&c.head.comment&&c.length r);if(512&c.flags&&(c.check=u(c.check,e,r,h)),j-=r,h+=r,xb)break a}else c.head&&(c.head.comment=null);c.mode=T;case T:if(512&c.flags){for(;16>o;){if(0===j)break a;j--,l+=e[h++]< >9&1,c.head.done=1),a.adler=c.check=0,c.mode=W;break;case U:for(;32>o;){if(0===j)break a;j--,l+=e[h++]< >>=7&o,o-=7&o,c.mode=jb;break}for(;3>o;){if(0===j)break a;j--,l+=e[h++]< >>=1,o-=1,3&l){case 0:c.mode=Y;break;case 1:if(m(c),c.mode=cb,b===C){l>>>=2,o-=2;break a}break;case 2:c.mode=_;break;case 3:a.msg="invalid block type",c.mode=mb}l>>>=2,o-=2;break;case Y:for(l>>>=7&o,o-=7&o;32>o;){if(0===j)break a;j--,l+=e[h++]< >>16^65535)){a.msg="invalid stored block lengths",c.mode=mb;break}if(c.length=65535&l,l=0,o=0,c.mode=Z,b===C)break a;case Z:c.mode=$;case $:if(r=c.length){if(r>j&&(r=j),r>k&&(r=k),0===r)break a;s.arraySet(g,e,h,r,i),j-=r,h+=r,k-=r,i+=r,c.length-=r;break}c.mode=W;break;case _:for(;14>o;){if(0===j)break a;j--,l+=e[h++]< >>=5,o-=5,c.ndist=(31&l)+1,l>>>=5,o-=5,c.ncode=(15&l)+4,l>>>=4,o-=4,c.nlen>286||c.ndist>30){a.msg="too many length or distance symbols",c.mode=mb;break}c.have=0,c.mode=ab;case ab:for(;c.have o;){if(0===j)break a;j--,l+=e[h++]< >>=3,o-=3}for(;c.have<19;)c.lens[Db[c.have++]]=0;if(s.arraySet(c.lencode,c.codes,0,c.codes.length,0),c.lenbits=7,zb=new f(x,c.lens,0,19,c.lencode,0,c.lenbits,c.work),yb=w(zb),c.lenbits=zb.bits,yb){a.msg="invalid code lengths set",c.mode=mb;break}c.have=0,c.mode=bb;case bb:for(;c.have >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< tb)l>>>=rb,o-=rb,c.lens[c.have++]=tb;else{if(16===tb){for(Ab=rb+2;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,0===c.have){a.msg="invalid bit length repeat",c.mode=mb;break}xb=c.lens[c.have-1],r=3+(3&l),l>>>=2,o-=2}else if(17===tb){for(Ab=rb+3;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,xb=0,r=3+(7&l),l>>>=3,o-=3}else{for(Ab=rb+7;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=rb,o-=rb,xb=0,r=11+(127&l),l>>>=7,o-=7}if(c.have+r>c.nlen+c.ndist){a.msg="invalid bit length repeat",c.mode=mb;break}for(;r--;)c.lens[c.have++]=xb}}if(c.mode===mb)break;if(0===c.lens[256]){a.msg="invalid code -- missing end-of-block",c.mode=mb;break}if(s.arraySet(c.lencode,c.codes,0,c.codes.length,0),c.lenbits=9,zb=new f(y,c.lens,0,c.nlen,c.lencode,0,c.lenbits,c.work),yb=w(zb),c.lenbits=zb.bits,yb){a.msg="invalid literal/lengths set",c.mode=mb;break}if(c.distbits=6,s.arraySet(c.distcode,c.codes,0,c.codes.length,0),zb=new f(z,c.lens,c.nlen,c.ndist,c.distcode,0,c.distbits,c.work),yb=w(zb),c.distbits=zb.bits,yb){a.msg="invalid distances set",c.mode=mb;break}if(c.mode=cb,b===C)break a;case cb:c.mode=db;case db:if(j>=6&&k>=258){a.next_out_index=i,a.avail_out=k,a.next_in_index=h,a.avail_in=j,c.hold=l,c.bits=o,v(a,q),i=a.next_out_index,g=a.next_out,k=a.avail_out,h=a.next_in_index,e=a.next_in,j=a.avail_in,l=c.hold,o=c.bits,c.mode===W&&(c.back=-1);break}for(c.back=0;Bb=c.lencode[l&(1< >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< >ub)],rb=Bb>>>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=ub+rb);){if(0===j)break a;j--,l+=e[h++]< >>=ub,o-=ub,c.back+=ub}if(l>>>=rb,o-=rb,c.back+=rb,c.length=tb,0===sb){c.mode=ib;break}if(32&sb){c.back=-1,c.mode=W;break}if(64&sb){a.msg="invalid literal/length code",c.mode=mb;break}c.extra=15&sb,c.mode=eb;case eb:if(c.extra){for(Ab=c.extra;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=c.extra,o-=c.extra,c.back+=c.extra}c.was=c.length,c.mode=fb;case fb:for(;Bb=c.distcode[l&(1< >>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=rb);){if(0===j)break a;j--,l+=e[h++]< >ub)],rb=Bb>>>24,sb=Bb>>>16&255,tb=65535&Bb,!(o>=ub+rb);){if(0===j)break a;j--,l+=e[h++]< >>=ub,o-=ub,c.back+=ub}if(l>>>=rb,o-=rb,c.back+=rb,64&sb){a.msg="invalid distance code",c.mode=mb;break}c.offset=tb,c.extra=15&sb,c.mode=gb;case gb:if(c.extra){for(Ab=c.extra;Ab>o;){if(0===j)break a;j--,l+=e[h++]< >>=c.extra,o-=c.extra,c.back+=c.extra}if(c.offset>c.dmax){a.msg="invalid distance too far back",c.mode=mb;break}c.mode=hb;case hb:if(0===k)break a;if(r=q-k,c.offset>r){if(r=c.offset-r,r>c.whave&&c.sane){a.msg="invalid distance too far back",c.mode=mb;break}r>c.wnext?(r-=c.wnext,pb=c.wsize-r):pb=c.wnext-r,r>c.length&&(r=c.length),qb=c.window}else qb=g,pb=i-c.offset,r=c.length;r>k&&(r=k),k-=r,c.length-=r;do g[i++]=qb[pb++];while(--r);0===c.length&&(c.mode=db);break;case ib:if(0===k)break a;g[i++]=c.length,k--,c.mode=db;break;case jb:if(c.wrap){for(;32>o;){if(0===j)break a;j--,l|=e[h++]< o;){if(0===j)break a;j--,l+=e[h++]< =B;B++)N[B]=0;for(C=0;x>C;C++)N[w[a.lens_index+C]]++;for(F=z,E=d;E>=1&&0===N[E];E--);if(F>E&&(F=E),0===E)return y[a.table_index++]=20971520,y[a.table_index++]=20971520,a.bits=1,0;for(D=1;E>D&&0===N[D];D++);for(D>F&&(F=D),I=1,B=1;d>=B;B++)if(I<<=1,I-=N[B],0>I)return-1;if(I>0&&(v===g||1!==E))return-1;for(O[1]=0,B=1;d>B;B++)O[B+1]=O[B]+N[B];for(C=0;x>C;C++)0!==w[a.lens_index+C]&&(A[O[w[a.lens_index+C]]++]=C);switch(v){case g:L=P=A,r=19;break;case h:L=j,M-=257,P=k,Q-=257,r=256;break;default:L=l,P=m,r=-1}if(K=0,C=0,B=D,q=a.table_index,G=F,H=0,o=-1,J=1< e||v===i&&J>f)return 1;for(var R=0;;){R++,s=B-H,A[C] r?(t=P[Q+A[C]],u=L[M+A[C]]):(t=96,u=0),b=1< >H)+n]=s<<24|t<<16|u|0;while(0!==n);for(b=1< >=1;if(0!==b?(K&=b-1,K+=b):K=0,C++,0===--N[B]){if(B===E)break;B=w[a.lens_index+A[C]]}if(B>F&&(K&p)!==o){for(0===H&&(H=F),q+=D,G=B-H,I=1< G+H&&(I-=N[G+H],!(0>=I));)G++,I<<=1;if(J+=1< e||v===i&&J>f)return 1;o=K&p,y[o]=F<<24|G<<16|q-a.table_index}}return 0!==K&&(y[q+K]=B-H<<24|64<<16|0),a.table_index+=J,a.bits=F,0}},{"./utils":31}],29:[function(a,b){"use strict";b.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}},{}],30:[function(a,b,c){"use strict";function d(a){for(var b=a.length;--b;)a[b]=0}function e(a){return 256>a?gb[a]:gb[256+(a>>>7)]}function f(a,b){a.pending_buf[a.pending++]=255&b,a.pending_buf[a.pending++]=b>>>8&255}function g(a,b,c){a.bi_valid>V-c?(a.bi_buf|=b< >V-a.bi_valid,a.bi_valid+=c-V):(a.bi_buf|=b< >>=1,c<<=1;while(--b>0);return c>>>1}function j(a){16===a.bi_valid?(f(a,a.bi_buf),a.bi_buf=0,a.bi_valid=0):a.bi_valid>=8&&(a.pending_buf[a.pending++]=255&a.bi_buf,a.bi_buf>>=8,a.bi_valid-=8)}function k(a,b){var c,d,e,f,g,h,i=b.dyn_tree,j=b.max_code,k=b.stat_desc.static_tree,l=b.stat_desc.has_stree,m=b.stat_desc.extra_bits,n=b.stat_desc.extra_base,o=b.stat_desc.max_length,p=0;for(f=0;U>=f;f++)a.bl_count[f]=0;for(i[2*a.heap[a.heap_max]+1]=0,c=a.heap_max+1;T>c;c++)d=a.heap[c],f=i[2*i[2*d+1]+1]+1,f>o&&(f=o,p++),i[2*d+1]=f,d>j||(a.bl_count[f]++,g=0,d>=n&&(g=m[d-n]),h=i[2*d],a.opt_len+=h*(f+g),l&&(a.static_len+=h*(k[2*d+1]+g)));if(0!==p){do{for(f=o-1;0===a.bl_count[f];)f--;a.bl_count[f]--,a.bl_count[f+1]+=2,a.bl_count[o]--,p-=2}while(p>0);for(f=o;0!==f;f--)for(d=a.bl_count[f];0!==d;)e=a.heap[--c],e>j||(i[2*e+1]!==f&&(a.opt_len+=(f-i[2*e+1])*i[2*e],i[2*e+1]=f),d--)}}function l(a,b,c){var d,e,f=new Array(U+1),g=0;for(d=1;U>=d;d++)f[d]=g=g+c[d-1]<<1;for(e=0;b>=e;e++){var h=a[2*e+1];0!==h&&(a[2*e]=i(f[h]++,h))}}function m(){var a,b,c,d,e,f=new Array(U+1);for(c=0,d=0;O-1>d;d++)for(ib[d]=c,a=0;a<1<<_[d];a++)hb[c++]=d;for(hb[c-1]=d,e=0,d=0;16>d;d++)for(jb[d]=e,a=0;a<1< >=7;R>d;d++)for(jb[d]=e<<7,a=0;a<1< =b;b++)f[b]=0;for(a=0;143>=a;)eb[2*a+1]=8,a++,f[8]++;for(;255>=a;)eb[2*a+1]=9,a++,f[9]++;for(;279>=a;)eb[2*a+1]=7,a++,f[7]++;for(;287>=a;)eb[2*a+1]=8,a++,f[8]++;for(l(eb,Q+1,f),a=0;R>a;a++)fb[2*a+1]=5,fb[2*a]=i(a,5);kb=new nb(eb,_,P+1,Q,U),lb=new nb(fb,ab,0,R,U),mb=new nb(new Array(0),bb,0,S,W)}function n(a){var b;for(b=0;Q>b;b++)a.dyn_ltree[2*b]=0;for(b=0;R>b;b++)a.dyn_dtree[2*b]=0;for(b=0;S>b;b++)a.bl_tree[2*b]=0;a.dyn_ltree[2*X]=1,a.opt_len=a.static_len=0,a.last_lit=a.matches=0}function o(a){a.bi_valid>8?f(a,a.bi_buf):a.bi_valid>0&&(a.pending_buf[a.pending++]=a.bi_buf),a.bi_buf=0,a.bi_valid=0}function p(a,b,c,d){o(a),d&&(f(a,c),f(a,~c)),E.arraySet(a.pending_buf,a.window,b,c,a.pending),a.pending+=c}function q(a,b,c,d){var e=2*b,f=2*c;return a[e]c;c++)0!==f[2*c]?(a.heap[++a.heap_len]=j=c,a.depth[c]=0):f[2*c+1]=0;for(;a.heap_len<2;)e=a.heap[++a.heap_len]=2>j?++j:0,f[2*e]=1,a.depth[e]=0,a.opt_len--,h&&(a.static_len-=g[2*e+1]);for(b.max_code=j,c=a.heap_len>>1;c>=1;c--)r(a,f,c);e=i;do c=a.heap[1],a.heap[1]=a.heap[a.heap_len--],r(a,f,1),d=a.heap[1],a.heap[--a.heap_max]=c,a.heap[--a.heap_max]=d,f[2*e]=f[2*c]+f[2*d],a.depth[e]=(a.depth[c]>=a.depth[d]?a.depth[c]:a.depth[d])+1,f[2*c+1]=f[2*d+1]=e,a.heap[1]=e++,r(a,f,1);while(a.heap_len>=2);a.heap[--a.heap_max]=a.heap[1],k(a,b),l(f,j,a.bl_count)}function u(a,b,c){var d,e,f=-1,g=b[1],h=0,i=7,j=4;for(0===g&&(i=138,j=3),b[2*(c+1)+1]=65535,d=0;c>=d;d++)e=g,g=b[2*(d+1)+1],++hh?a.bl_tree[2*e]+=h:0!==e?(e!==f&&a.bl_tree[2*e]++,a.bl_tree[2*Y]++):10>=h?a.bl_tree[2*Z]++:a.bl_tree[2*$]++,h=0,f=e,0===g?(i=138,j=3):e===g?(i=6,j=3):(i=7,j=4)) +}function v(a,b,c){var d,e,f=-1,i=b[1],j=0,k=7,l=4;for(0===i&&(k=138,l=3),d=0;c>=d;d++)if(e=i,i=b[2*(d+1)+1],!(++j j){do h(a,e,a.bl_tree);while(0!==--j)}else 0!==e?(e!==f&&(h(a,e,a.bl_tree),j--),h(a,Y,a.bl_tree),g(a,j-3,2)):10>=j?(h(a,Z,a.bl_tree),g(a,j-3,3)):(h(a,$,a.bl_tree),g(a,j-11,7));j=0,f=e,0===i?(k=138,l=3):e===i?(k=6,l=3):(k=7,l=4)}}function w(a){var b;for(u(a,a.dyn_ltree,a.l_desc.max_code),u(a,a.dyn_dtree,a.d_desc.max_code),t(a,a.bl_desc),b=S-1;b>=3&&0===a.bl_tree[2*cb[b]+1];b--);return a.opt_len+=3*(b+1)+5+5+4,b}function x(a,b,c,d){var e;for(g(a,b-257,5),g(a,c-1,5),g(a,d-4,4),e=0;d>e;e++)g(a,a.bl_tree[2*cb[e]+1],3);v(a,a.dyn_ltree,b-1),v(a,a.dyn_dtree,c-1)}function y(a){var b,c=4093624447;for(b=0;31>=b;b++,c>>>=1)if(1&c&&0!==a.dyn_ltree[2*b])return G;if(0!==a.dyn_ltree[18]||0!==a.dyn_ltree[20]||0!==a.dyn_ltree[26])return H;for(b=32;P>b;b++)if(0!==a.dyn_ltree[2*b])return H;return G}function z(a){pb||(m(),pb=!0),a.l_desc=new ob(a.dyn_ltree,kb),a.d_desc=new ob(a.dyn_dtree,lb),a.bl_desc=new ob(a.bl_tree,mb),a.bi_buf=0,a.bi_valid=0,n(a)}function A(a,b,c,d){g(a,(J<<1)+(d?1:0),3),p(a,b,c,!0)}function B(a){g(a,K<<1,3),h(a,X,eb),j(a)}function C(a,b,c,d){var e,f,h=0;a.level>0?(a.strm.data_type===I&&(a.strm.data_type=y(a)),t(a,a.l_desc),t(a,a.d_desc),h=w(a),e=a.opt_len+3+7>>>3,f=a.static_len+3+7>>>3,e>=f&&(e=f)):e=f=c+5,e>=c+4&&-1!==b?A(a,b,c,d):a.strategy===F||f===e?(g(a,(K<<1)+(d?1:0),3),s(a,eb,fb)):(g(a,(L<<1)+(d?1:0),3),x(a,a.l_desc.max_code+1,a.d_desc.max_code+1,h+1),s(a,a.dyn_ltree,a.dyn_dtree)),n(a),d&&o(a)}function D(a,b,c){return a.pending_buf[a.d_buf+2*a.last_lit]=b>>>8&255,a.pending_buf[a.d_buf+2*a.last_lit+1]=255&b,a.pending_buf[a.l_buf+a.last_lit]=255&c,a.last_lit++,0===b?a.dyn_ltree[2*c]++:(a.matches++,b--,a.dyn_ltree[2*(hb[c]+P+1)]++,a.dyn_dtree[2*e(b)]++),a.last_lit===a.lit_bufsize-1}var E=a("./utils"),F=4,G=0,H=1,I=2,J=0,K=1,L=2,M=3,N=258,O=29,P=256,Q=P+1+O,R=30,S=19,T=2*Q+1,U=15,V=16,W=7,X=256,Y=16,Z=17,$=18,_=[0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0],ab=[0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13],bb=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7],cb=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],db=512,eb=new Array(2*(Q+2));d(eb);var fb=new Array(2*R);d(fb);var gb=new Array(db);d(gb);var hb=new Array(N-M+1);d(hb);var ib=new Array(O);d(ib);var jb=new Array(R);d(jb);var kb,lb,mb,nb=function(a,b,c,d,e){this.static_tree=a,this.extra_bits=b,this.extra_base=c,this.elems=d,this.max_length=e,this.has_stree=a&&a.length},ob=function(a,b){this.dyn_tree=a,this.max_code=0,this.stat_desc=b},pb=!1;c._tr_init=z,c._tr_stored_block=A,c._tr_flush_block=C,c._tr_tally=D,c._tr_align=B},{"./utils":31}],31:[function(a,b,c){"use strict";var d="undefined"!=typeof Uint8Array&&"undefined"!=typeof Uint16Array&&"undefined"!=typeof Int32Array;c.assign=function(a){for(var b=Array.prototype.slice.call(arguments,1);b.length;){var c=b.shift();if(c){if("object"!=typeof c)throw new TypeError(c+"must be non-object");for(var d in c)c.hasOwnProperty(d)&&(a[d]=c[d])}}return a},c.shrinkBuf=function(a,b){return a.length===b?a:a.subarray?a.subarray(0,b):(a.length=b,a)};var e={arraySet:function(a,b,c,d,e){if(b.subarray)return void a.set(b.subarray(c,c+d),e);for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){var b,c,d,e,f,g;for(d=0,b=0,c=a.length;c>b;b++)d+=a[b].length;for(g=new Uint8Array(d),e=0,b=0,c=a.length;c>b;b++)f=a[b],g.set(f,e),e+=f.length;return g}},f={arraySet:function(a,b,c,d,e){for(var f=0;d>f;f++)a[e+f]=b[c+f]},flattenChunks:function(a){return[].concat.apply([],a)}};c.setTyped=function(a){a?(c.Buf8=Uint8Array,c.Buf16=Uint16Array,c.Buf32=Int32Array,c.assign(c,e)):(c.Buf8=Array,c.Buf16=Array,c.Buf32=Array,c.assign(c,f))},c.setTyped(d)},{}],32:[function(a,b){"use strict";function c(){this.next_in=null,this.next_in_index=0,this.avail_in=0,this.total_in=0,this.next_out=null,this.next_out_index=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}b.exports=c},{}]},{},[7])(7)}),function(a,b){function c(a){for(var b=Object.create(null),c=0;c =0;)if(b[c]==a)return!0;return!1}function g(a,b){for(var c=0,d=b.length;d>c;++c)if(a(b[c]))return b[c]}function h(a,b){if(0>=b)return"";if(1==b)return a;var c=h(a,b>>1);return c+=c,1&b&&(c+=a),c}function i(a,b){Error.call(this,a),this.msg=a,this.defs=b}function j(a,b,c){a===!0&&(a={});var d=a||{};if(c)for(var e in d)d.hasOwnProperty(e)&&!b.hasOwnProperty(e)&&i.croak("`"+e+"` is not a supported option",b);for(var e in b)b.hasOwnProperty(e)&&(d[e]=a&&a.hasOwnProperty(e)?a[e]:b[e]);return d}function k(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c]);return a}function l(){}function m(a,b){a.indexOf(b)<0&&a.push(b)}function n(a,b){return a.replace(/\{(.+?)\}/g,function(a,c){return b[c]})}function o(a,b){for(var c=a.length;--c>=0;)a[c]===b&&a.splice(c,1)}function p(a,b){function c(a,c){for(var d=[],e=0,f=0,g=0;e =0})}function s(a){function b(a){if(1==a.length)return c+="return str === "+JSON.stringify(a[0])+";";c+="switch(str){";for(var b=0;b 3){d.sort(function(a,b){return b.length-a.length}),c+="switch(str.length){";for(var e=0;e =0;)if(!b(a[c]))return!1;return!0}function u(){this._values=Object.create(null),this._size=0}function v(a,b,c,d){arguments.length<4&&(d=U),b=b?b.split(/\s+/):[];var e=b;d&&d.PROPS&&(b=b.concat(d.PROPS));for(var f="return function AST_"+a+"(props){ if (props) { ",g=b.length;--g>=0;)f+="this."+b[g]+" = props."+b[g]+";";var h=d&&new d;(h&&h.initialize||c&&c.initialize)&&(f+="this.initialize();"),f+="}}";var i=new Function(f)();if(h&&(i.prototype=h,i.BASE=d),d&&d.SUBCLASSES.push(i),i.prototype.CTOR=i,i.PROPS=b||null,i.SELF_PROPS=e,i.SUBCLASSES=[],a&&(i.prototype.TYPE=i.TYPE=a),c)for(g in c)c.hasOwnProperty(g)&&(/^\$/.test(g)?i[g.substr(1)]=c[g]:i.prototype[g]=c[g]);return i.DEFMETHOD=function(a,b){this.prototype[a]=b},i}function w(a,b){a.body instanceof V?a.body._walk(b):a.body.forEach(function(a){a._walk(b)})}function x(a){this.visit=a,this.stack=[]}function y(a){return a>=97&&122>=a||a>=65&&90>=a||a>=170&&Lc.letter.test(String.fromCharCode(a))}function z(a){return a>=48&&57>=a}function A(a){return z(a)||y(a)}function B(a){return Lc.non_spacing_mark.test(a)||Lc.space_combining_mark.test(a)}function C(a){return Lc.connector_punctuation.test(a)}function D(a){return!Ac(a)&&/^[a-z_$][a-z0-9_$]*$/i.test(a)}function E(a){return 36==a||95==a||y(a)}function F(a){var b=a.charCodeAt(0);return E(b)||z(b)||8204==b||8205==b||B(a)||C(a)}function G(a){var b=a.length;if(0==b)return!1;if(!E(a.charCodeAt(0)))return!1;for(;--b>=0;)if(!F(a.charAt(b)))return!1;return!0}function H(a){return Dc.test(a)?parseInt(a.substr(2),16):Ec.test(a)?parseInt(a.substr(1),8):Fc.test(a)?parseFloat(a):void 0}function I(a,b,c,d){this.message=a,this.line=b,this.col=c,this.pos=d,this.stack=(new Error).stack}function J(a,b,c,d,e){throw new I(a,c,d,e)}function K(a,b,c){return a.type==b&&(null==c||a.value==c)}function L(a,b,c){function d(){return y.text.charAt(y.pos)}function e(a,b){var c=y.text.charAt(y.pos++);if(a&&!c)throw Mc;return"\n"==c?(y.newline_before=y.newline_before||!b,++y.line,y.col=0):++y.col,c}function f(a){for(;a-->0;)e()}function g(a){return y.text.substr(y.pos,a.length)==a}function h(a,b){var c=y.text.indexOf(a,y.pos);if(b&&-1==c)throw Mc;return c}function i(){y.tokline=y.line,y.tokcol=y.col,y.tokpos=y.pos}function j(a,c,d){y.regex_allowed="operator"==a&&!Oc(c)||"keyword"==a&&Bc(c)||"punc"==a&&Ic(c),B="punc"==a&&"."==c;var e={type:a,value:c,line:y.tokline,col:y.tokcol,pos:y.tokpos,endpos:y.pos,nlb:y.newline_before,file:b};if(!d){e.comments_before=y.comments_before,y.comments_before=[];for(var f=0,g=e.comments_before.length;g>f;f++)e.nlb=e.nlb||e.comments_before[f].nlb}return y.newline_before=!1,new T(e)}function k(){for(;Hc(d());)e()}function l(a){for(var b,c="",f=0;(b=d())&&a(b,f++);)c+=e();return c}function m(a){J(a,b,y.tokline,y.tokcol,y.tokpos)}function n(a){var b=!1,c=!1,d=!1,e="."==a,f=l(function(f,g){var h=f.charCodeAt(0);switch(h){case 120:case 88:return d?!1:d=!0;case 101:case 69:return d?!0:b?!1:b=c=!0;case 45:return c||0==g&&!a;case 43:return c;case c=!1,46:return e||d||b?!1:e=!0}return A(h)});a&&(f=a+f);var g=H(f);return isNaN(g)?void m("Invalid syntax: "+f):j("num",g)}function o(a){var b=e(!0,a);switch(b.charCodeAt(0)){case 110:return"\n";case 114:return"\r";case 116:return" ";case 98:return"\b";case 118:return"";case 102:return"\f";case 48:return"\x00";case 120:return String.fromCharCode(p(2));case 117:return String.fromCharCode(p(4));case 10:return"";default:return b}}function p(a){for(var b=0;a>0;--a){var c=parseInt(e(!0),16);isNaN(c)&&m("Invalid hex-character pattern in string"),b=b<<4|c}return b}function q(a){var b,c=y.regex_allowed,d=h("\n");return-1==d?(b=y.text.substr(y.pos),y.pos=y.text.length):(b=y.text.substring(y.pos,d),y.pos=d),y.comments_before.push(j(a,b,!0)),y.regex_allowed=c,x()}function r(){for(var a,b,c=!1,f="",g=!1;null!=(a=d());)if(c)"u"!=a&&m("Expecting UnicodeEscapeSequence -- uXXXX"),a=o(),F(a)||m("Unicode char: "+a.charCodeAt(0)+" is not valid in identifier"),f+=a,c=!1;else if("\\"==a)g=c=!0,e();else{if(!F(a))break;f+=e()}return yc(f)&&g&&(b=f.charCodeAt(0).toString(16).toUpperCase(),f="\\u"+"0000".substr(b.length)+b+f.slice(1)),f}function s(a){function b(a){if(!d())return a;var c=a+d();return Gc(c)?(e(),b(c)):a}return j("operator",b(a||e()))}function t(){switch(e(),d()){case"/":return e(),q("comment1");case"*":return e(),D()}return y.regex_allowed?G(""):s("/")}function u(){return e(),z(d().charCodeAt(0))?n("."):j("punc",".")}function v(){var a=r();return B?j("name",a):zc(a)?j("atom",a):yc(a)?Gc(a)?j("operator",a):j("keyword",a):j("name",a)}function w(a,b){return function(c){try{return b(c)}catch(d){if(d!==Mc)throw d;m(a)}}}function x(a){if(null!=a)return G(a);if(k(),i(),c){if(g("")&&y.newline_before)return f(3),q("comment4")}var b=d();if(!b)return j("eof");var h=b.charCodeAt(0);switch(h){case 34:case 39:return C();case 46:return u();case 47:return t()}return z(h)?n():Jc(b)?j("punc",e()):Cc(b)?s():92==h||E(h)?v():void m("Unexpected character '"+b+"'")}var y={text:a.replace(/\r\n?|[\n\u2028\u2029]/g,"\n").replace(/\uFEFF/g,""),filename:b,pos:0,tokpos:0,line:1,tokline:0,col:0,tokcol:0,newline_before:!1,regex_allowed:!1,comments_before:[]},B=!1,C=w("Unterminated string constant",function(){for(var a=e(),b="";;){var c=e(!0);if("\\"==c){var d=0,f=null;c=l(function(a){if(a>="0"&&"7">=a){if(!f)return f=a,++d;if("3">=f&&2>=d)return++d;if(f>="4"&&1>=d)return++d}return!1}),c=d>0?String.fromCharCode(parseInt(c,8)):o(!0)}else if(c==a)break;b+=c}return j("string",b)}),D=w("Unterminated multiline comment",function(){var a=y.regex_allowed,b=h("*/",!0),c=y.text.substring(y.pos,b),d=c.split("\n"),e=d.length;y.pos=b+2,y.line+=e-1,e>1?y.col=d[e-1].length:y.col+=d[e-1].length,y.col+=2;var f=y.newline_before=y.newline_before||c.indexOf("\n")>=0;return y.comments_before.push(j("comment2",c,!0)),y.regex_allowed=a,y.newline_before=f,x()}),G=w("Unterminated regular expression",function(a){for(var b,c=!1,d=!1;b=e(!0);)if(c)a+="\\"+b,c=!1;else if("["==b)d=!0,a+=b;else if("]"==b&&d)d=!1,a+=b;else{if("/"==b&&!d)break;"\\"==b?c=!0:a+=b}var f=r();return j("regexp",new RegExp(a,f))});return x.context=function(a){return a&&(y=a),y},x}function M(a,b){function c(a,b){return K(Q.token,a,b)}function d(){return Q.peeked||(Q.peeked=Q.input())}function e(){return Q.prev=Q.token,Q.peeked?(Q.token=Q.peeked,Q.peeked=null):Q.token=Q.input(),Q.in_directives=Q.in_directives&&("string"==Q.token.type||c("punc",";")),Q.token}function f(){return Q.prev}function h(a,b,c,d){var e=Q.input.context();J(a,e.filename,null!=b?b:e.tokline,null!=c?c:e.tokcol,null!=d?d:e.tokpos)}function i(a,b){h(b,a.line,a.col)}function k(a){null==a&&(a=Q.token),i(a,"Unexpected token: "+a.type+" ("+a.value+")")}function l(a,b){return c(a,b)?e():void i(Q.token,"Unexpected token "+Q.token.type+" «"+Q.token.value+"», expected "+a+" «"+b+"»")}function m(a){return l("punc",a)}function n(){return!b.strict&&(Q.token.nlb||c("eof")||c("punc","}"))}function o(){c("punc",";")?e():n()||k()}function p(){m("(");var a=yb(!0);return m(")"),a}function q(a){return function(){var b=Q.token,c=a(),d=f();return c.start=b,c.end=d,c}}function r(){(c("operator","/")||c("operator","/="))&&(Q.peeked=null,Q.token=Q.input(Q.token.value.substr(1)))}function s(){var a=I(hc);g(function(b){return b.name==a.name},Q.labels)&&h("Label "+a.name+" defined twice"),m(":"),Q.labels.push(a);var b=R();return Q.labels.pop(),b instanceof cb||a.references.forEach(function(b){b instanceof vb&&(b=b.label.start,h("Continue label `"+a.name+"` refers to non-IterationStatement.",b.line,b.col,b.pos))}),new bb({body:b,label:a})}function t(a){return new Y({body:(a=yb(!0),o(),a)})}function u(a){var b,c=null;n()||(c=I(jc,!0)),null!=c?(b=g(function(a){return a.name==c.name},Q.labels),b||h("Undefined label "+c.name),c.thedef=b):0==Q.in_loop&&h(a.TYPE+" not inside a loop or switch"),o();var d=new a({label:c});return b&&b.references.push(d),d}function v(){m("(");var a=null;return!c("punc",";")&&(a=c("keyword","var")?(e(),T(!0)):yb(!0,!0),c("operator","in"))?(a instanceof Fb&&a.definitions.length>1&&h("Only one variable declaration allowed in for..in loop"),e(),x(a)):w(a)}function w(a){m(";");var b=c("punc",";")?null:yb(!0);m(";");var d=c("punc",")")?null:yb(!0);return m(")"),new gb({init:a,condition:b,step:d,body:P(R)})}function x(a){var b=a instanceof Fb?a.definitions[0].name:null,c=yb(!0);return m(")"),new hb({init:a,name:b,object:c,body:P(R)})}function y(){var a=p(),b=R(),d=null;return c("keyword","else")&&(e(),d=R()),new wb({condition:a,body:b,alternative:d})}function z(){m("{");for(var a=[];!c("punc","}");)c("eof")&&k(),a.push(R());return e(),a}function A(){m("{");for(var a,b=[],d=null,g=null;!c("punc","}");)c("eof")&&k(),c("keyword","case")?(g&&(g.end=f()),d=[],g=new Ab({start:(a=Q.token,e(),a),expression:yb(!0),body:d}),b.push(g),m(":")):c("keyword","default")?(g&&(g.end=f()),d=[],g=new zb({start:(a=Q.token,e(),m(":"),a),body:d}),b.push(g)):(d||k(),d.push(R()));return g&&(g.end=f()),e(),b}function B(){var a=z(),b=null,d=null;if(c("keyword","catch")){var g=Q.token;e(),m("(");var i=I(gc);m(")"),b=new Cb({start:g,argname:i,body:z(),end:f()})}if(c("keyword","finally")){var g=Q.token;e(),d=new Db({start:g,body:z(),end:f()})}return b||d||h("Missing catch/finally blocks"),new Bb({body:a,bcatch:b,bfinally:d})}function C(a,b){for(var d=[];d.push(new Hb({start:Q.token,name:I(b?cc:bc),value:c("operator","=")?(e(),yb(!1,a)):null,end:f()})),c("punc",",");)e();return d}function D(){var a,b=Q.token;switch(b.type){case"name":case"keyword":a=H(ic);break;case"num":a=new nc({start:b,end:b,value:b.value});break;case"string":a=new mc({start:b,end:b,value:b.value});break;case"regexp":a=new oc({start:b,end:b,value:b.value});break;case"atom":switch(b.value){case"false":a=new wc({start:b,end:b});break;case"true":a=new xc({start:b,end:b});break;case"null":a=new qc({start:b,end:b})}}return e(),a}function E(a,b,d){for(var f=!0,g=[];!c("punc",a)&&(f?f=!1:m(","),!b||!c("punc",a));)g.push(c("punc",",")&&d?new tc({start:Q.token,end:Q.token}):yb(!1));return e(),g}function F(){var a=Q.token;switch(e(),a.type){case"num":case"string":case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function G(){var a=Q.token;switch(e(),a.type){case"name":case"operator":case"keyword":case"atom":return a.value;default:k()}}function H(a){var b=Q.token.value;return new("this"==b?kc:a)({name:String(b),start:Q.token,end:Q.token})}function I(a,b){if(!c("name"))return b||h("Name expected"),null;var d=H(a);return e(),d}function M(a,b,c){return"++"!=b&&"--"!=b||O(c)||h("Invalid use of "+b+" operator"),new a({operator:b,expression:c})}function N(a){return pb(lb(!0),0,a)}function O(a){return b.strict?a instanceof kc?!1:a instanceof Lb||a instanceof $b:!0}function P(a){++Q.in_loop;var b=a();return--Q.in_loop,b}b=j(b,{strict:!1,filename:null,toplevel:null,expression:!1,html5_comments:!0});var Q={input:"string"==typeof a?L(a,b.filename,b.html5_comments):a,token:null,prev:null,peeked:null,in_function:0,in_directives:!0,in_loop:0,labels:[]};Q.token=e();var R=q(function(){var a;switch(r(),Q.token.type){case"string":var b=Q.in_directives,g=t();return b&&g.body instanceof mc&&!c("punc",",")?new X({value:g.body.value}):g;case"num":case"regexp":case"operator":case"atom":return t();case"name":return K(d(),"punc",":")?s():t();case"punc":switch(Q.token.value){case"{":return new $({start:Q.token,body:z(),end:f()});case"[":case"(":return t();case";":return e(),new _;default:k()}case"keyword":switch(a=Q.token.value,e(),a){case"break":return u(ub);case"continue":return u(vb);case"debugger":return o(),new W;case"do":return new eb({body:P(R),condition:(l("keyword","while"),a=p(),o(),a)});case"while":return new fb({condition:p(),body:P(R)});case"for":return v();case"function":return S(ob);case"if":return y();case"return":return 0==Q.in_function&&h("'return' outside of function"),new rb({value:c("punc",";")?(e(),null):n()?null:(a=yb(!0),o(),a)});case"switch":return new xb({expression:p(),body:P(A)});case"throw":return Q.token.nlb&&h("Illegal newline after 'throw'"),new sb({value:(a=yb(!0),o(),a)});case"try":return B();case"var":return a=T(),o(),a;case"const":return a=U(),o(),a;case"with":return new ib({expression:p(),body:R()});default:k()}}}),S=function(a){var b=a===ob,d=c("name")?I(b?ec:fc):null;return b&&!d&&k(),m("("),new a({name:d,argnames:function(a,b){for(;!c("punc",")");)a?a=!1:m(","),b.push(I(dc));return e(),b}(!0,[]),body:function(a,b){++Q.in_function,Q.in_directives=!0,Q.in_loop=0,Q.labels=[];var c=z();return--Q.in_function,Q.in_loop=a,Q.labels=b,c}(Q.in_loop,Q.labels)})},T=function(a){return new Fb({start:f(),definitions:C(a,!1),end:f()})},U=function(){return new Gb({start:f(),definitions:C(!1,!0),end:f()})},V=function(){var a=Q.token;l("operator","new");var b,d=Z(!1);return c("punc","(")?(e(),b=E(")")):b=[],jb(new Jb({start:a,expression:d,args:b,end:f()}),!0)},Z=function(a){if(c("operator","new"))return V();var b=Q.token;if(c("punc")){switch(b.value){case"(":e();var d=yb(!0);return d.start=b,d.end=Q.token,m(")"),jb(d,a);case"[":return jb(ab(),a);case"{":return jb(db(),a)}k()}if(c("keyword","function")){e();var g=S(nb);return g.start=b,g.end=f(),jb(g,a)}return Sc[Q.token.type]?jb(D(),a):void k()},ab=q(function(){return m("["),new Ub({elements:E("]",!b.strict,!0)})}),db=q(function(){m("{");for(var a=!0,d=[];!c("punc","}")&&(a?a=!1:m(","),b.strict||!c("punc","}"));){var g=Q.token,h=g.type,i=F();if("name"==h&&!c("punc",":")){if("get"==i){d.push(new Zb({start:g,key:D(),value:S(mb),end:f()}));continue}if("set"==i){d.push(new Yb({start:g,key:D(),value:S(mb),end:f()}));continue}}m(":"),d.push(new Xb({start:g,key:i,value:yb(!1),end:f()}))}return e(),new Vb({properties:d})}),jb=function(a,b){var d=a.start;if(c("punc","."))return e(),jb(new Mb({start:d,expression:a,property:G(),end:f()}),b);if(c("punc","[")){e();var g=yb(!0);return m("]"),jb(new Nb({start:d,expression:a,property:g,end:f()}),b)}return b&&c("punc","(")?(e(),jb(new Ib({start:d,expression:a,args:E(")"),end:f()}),!0)):a},lb=function(a){var b=Q.token;if(c("operator")&&Nc(b.value)){e(),r();var d=M(Pb,b.value,lb(a));return d.start=b,d.end=f(),d}for(var g=Z(a);c("operator")&&Oc(Q.token.value)&&!Q.token.nlb;)g=M(Qb,Q.token.value,g),g.start=b,g.end=Q.token,e();return g},pb=function(a,b,d){var f=c("operator")?Q.token.value:null;"in"==f&&d&&(f=null);var g=null!=f?Qc[f]:null;if(null!=g&&g>b){e();var h=pb(lb(!0),g,d);return pb(new Rb({start:a.start,left:a,operator:f,right:h,end:h.end}),b,d)}return a},qb=function(a){var b=Q.token,d=N(a);if(c("operator","?")){e();var g=yb(!1);return m(":"),new Sb({start:b,condition:d,consequent:g,alternative:yb(!1,a),end:f()})}return d},tb=function(a){var b=Q.token,d=qb(a),g=Q.token.value;if(c("operator")&&Pc(g)){if(O(d))return e(),new Tb({start:b,left:d,operator:g,right:tb(a),end:f()});h("Invalid assignment")}return d},yb=function(a,b){var f=Q.token,g=tb(b);return a&&c("punc",",")?(e(),new Kb({start:f,car:g,cdr:yb(!0,b),end:d()})):g};return b.expression?yb(!0):function(){for(var a=Q.token,d=[];!c("eof");)d.push(R());var e=f(),g=b.toplevel;return g?(g.body=g.body.concat(d),g.end=e):g=new kb({start:a,body:d,end:e}),g}()}function N(a,b){x.call(this),this.before=a,this.after=b}function O(a,b,c){this.name=c.name,this.orig=[c],this.scope=a,this.references=[],this.global=!1,this.mangled_name=null,this.undeclared=!1,this.constant=!1,this.index=b}function P(a){function b(a,b){return a.replace(/[\u0080-\uffff]/g,function(a){var c=a.charCodeAt(0).toString(16);if(c.length<=2&&!b){for(;c.length<2;)c="0"+c;return"\\x"+c}for(;c.length<4;)c="0"+c;return"\\u"+c})}function c(c){var d=0,e=0;return c=c.replace(/[\\\b\f\n\r\t\x22\x27\u2028\u2029\0]/g,function(a){switch(a){case"\\":return"\\\\";case"\b":return"\\b";case"\f":return"\\f";case"\n":return"\\n";case"\r":return"\\r";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";case'"':return++d,'"';case"'":return++e,"'";case"\x00":return"\\x00"}return a}),a.ascii_only&&(c=b(c)),d>e?"'"+c.replace(/\x27/g,"\\'")+"'":'"'+c.replace(/\x22/g,'\\"')+'"'}function d(b){var d=c(b);return a.inline_script&&(d=d.replace(/<\x2fscript([>\/\t\n\f\r ])/gi,"<\\/script$1")),d}function e(c){return c=c.toString(),a.ascii_only&&(c=b(c,!0)),c}function f(b){return h(" ",a.indent_start+v-b*a.indent_level)}function g(){return C.charAt(C.length-1)}function i(){a.max_line_len&&w>a.max_line_len&&k("\n")}function k(b){b=String(b);var c=b.charAt(0);if(B&&(c&&!(";}".indexOf(c)<0)||/[;]$/.test(C)||(a.semicolons||D(c)?(z+=";",w++,y++):(z+="\n",y++,x++,w=0),a.beautify||(A=!1)),B=!1,i()),!a.beautify&&a.preserve_line&&L[L.length-1])for(var d=L[L.length-1].start.line;d>x;)z+="\n",y++,x++,w=0,A=!1;if(A){var e=g();(F(e)&&(F(c)||"\\"==c)||/^[\+\-\/]$/.test(c)&&c==e)&&(z+=" ",w++,y++),A=!1}var f=b.split(/\r?\n/),h=f.length-1;x+=h,0==h?w+=f[h].length:w=f[h].length,y+=b.length,C=b,z+=b}function m(){B=!1,k(";")}function n(){return v+a.indent_level}function o(a){var b;return k("{"),I(),H(n(),function(){b=a()}),G(),k("}"),b}function p(a){k("(");var b=a();return k(")"),b}function q(a){k("[");var b=a();return k("]"),b}function r(){k(","),E()}function t(){k(":"),a.space_colon&&E()}function u(){return z}a=j(a,{indent_start:0,indent_level:4,quote_keys:!1,space_colon:!0,ascii_only:!1,unescape_regexps:!1,inline_script:!1,width:80,max_line_len:32e3,beautify:!1,source_map:null,bracketize:!1,semicolons:!0,comments:!1,preserve_line:!1,screw_ie8:!1,preamble:null},!0);var v=0,w=0,x=1,y=0,z="",A=!1,B=!1,C=null,D=s("( [ + * / - , ."),E=a.beautify?function(){k(" ")}:function(){A=!0},G=a.beautify?function(b){a.beautify&&k(f(b?.5:0))}:l,H=a.beautify?function(a,b){a===!0&&(a=n());var c=v;v=a;var d=b();return v=c,d}:function(a,b){return b()},I=a.beautify?function(){k("\n")}:l,J=a.beautify?function(){k(";")}:function(){B=!0},K=a.source_map?function(b,c){try{b&&a.source_map.add(b.file||"?",x,w,b.line,b.col,c||"name"!=b.type?c:b.value)}catch(d){U.warn("Couldn't figure out mapping for {file}:{line},{col} → {cline},{ccol} [{name}]",{file:b.file,line:b.line,col:b.col,cline:x,ccol:w,name:c||""})}}:l;a.preamble&&k(a.preamble.replace(/\r\n?|[\n\u2028\u2029]|\s*$/g,"\n"));var L=[];return{get:u,toString:u,indent:G,indentation:function(){return v},current_width:function(){return w-v},should_break:function(){return a.width&&this.current_width()>=a.width},newline:I,print:k,space:E,comma:r,colon:t,last:function(){return C},semicolon:J,force_semicolon:m,to_ascii:b,print_name:function(a){k(e(a))},print_string:function(a){k(d(a))},next_indent:n,with_indent:H,with_block:o,with_parens:p,with_square:q,add_mapping:K,option:function(b){return a[b]},line:function(){return x},col:function(){return w},pos:function(){return y},push_node:function(a){L.push(a)},pop_node:function(){return L.pop()},stack:function(){return L},parent:function(a){return L[L.length-2-(a||0)]}}}function Q(a,b){return this instanceof Q?(N.call(this,this.before,this.after),void(this.options=j(a,{sequences:!b,properties:!b,dead_code:!b,drop_debugger:!b,unsafe:!1,unsafe_comps:!1,conditionals:!b,comparisons:!b,evaluate:!b,booleans:!b,loops:!b,unused:!b,hoist_funs:!b,keep_fargs:!1,hoist_vars:!1,if_return:!b,join_vars:!b,cascade:!b,side_effects:!b,pure_getters:!1,pure_funcs:null,negate_iife:!b,screw_ie8:!1,drop_console:!1,angular:!1,warnings:!0,global_defs:{}},!0))):new Q(a,b)}function R(a){function b(b,e,f,g,h,i){if(d){var j=d.originalPositionFor({line:g,column:h});if(null===j.source)return;b=j.source,g=j.line,h=j.column,i=j.name}c.addMapping({generated:{line:e+a.dest_line_diff,column:f},original:{line:g+a.orig_line_diff,column:h},source:b,name:i})}a=j(a,{file:null,root:null,orig:null,orig_line_diff:0,dest_line_diff:0});var c=new MOZ_SourceMap.SourceMapGenerator({file:a.file,sourceRoot:a.root}),d=a.orig&&new MOZ_SourceMap.SourceMapConsumer(a.orig);return{add:b,get:function(){return c},toString:function(){return c.toString()}}}b.UglifyJS=a,i.prototype=Object.create(Error.prototype),i.prototype.constructor=i,i.croak=function(a,b){throw new i(a,b)};var S=function(){function a(a,f,g){function h(){var h=f(a[i],i),l=h instanceof d;return l&&(h=h.v),h instanceof b?(h=h.v,h instanceof c?k.push.apply(k,g?h.v.slice().reverse():h.v):k.push(h)):h!==e&&(h instanceof c?j.push.apply(j,g?h.v.slice().reverse():h.v):j.push(h)),l}var i,j=[],k=[];if(a instanceof Array)if(g){for(i=a.length;--i>=0&&!h(););j.reverse(),k.reverse()}else for(i=0;i SymbolDef for all variables/functions defined in this scope",functions:"[Object/S] like `variables`, but only lists function declarations",uses_with:"[boolean/S] tells whether this scope uses the `with` statement",uses_eval:"[boolean/S] tells whether this scope contains a direct call to the global `eval`",parent_scope:"[AST_Scope?/S] link to the parent scope",enclosed:"[SymbolDef*/S] a list of all symbol definitions that are accessed from this scope or any subscopes",cname:"[integer/S] current index for mangling variables (used internally by the mangler)"}},Z),kb=v("Toplevel","globals",{$documentation:"The toplevel scope",$propdoc:{globals:"[Object/S] a map of name -> SymbolDef for all undeclared names"},wrap_enclose:function(a){var b=this,c=[],d=[]; +a.forEach(function(a){var b=a.split(":");c.push(b[0]),d.push(b[1])});var e="(function("+d.join(",")+"){ '$ORIG'; })("+c.join(",")+")";return e=M(e),e=e.transform(new N(function(a){return a instanceof X&&"$ORIG"==a.value?S.splice(b.body):void 0}))},wrap_commonjs:function(a,b){var c=this,d=[];b&&(c.figure_out_scope(),c.walk(new x(function(a){a instanceof ac&&a.definition().global&&(g(function(b){return b.name==a.name},d)||d.push(a))})));var e="(function(exports, global){ global['"+a+"'] = exports; '$ORIG'; '$EXPORTS'; }({}, (function(){return this}())))";return e=M(e),e=e.transform(new N(function(a){if(a instanceof Y&&(a=a.body,a instanceof mc))switch(a.getValue()){case"$ORIG":return S.splice(c.body);case"$EXPORTS":var b=[];return d.forEach(function(a){b.push(new Y({body:new Tb({left:new Nb({expression:new ic({name:"exports"}),property:new mc({value:a.name})}),operator:"=",right:new ic(a)})}))}),S.splice(b)}}))}},jb),lb=v("Lambda","name argnames uses_arguments",{$documentation:"Base class for functions",$propdoc:{name:"[AST_SymbolDeclaration?] the name of this function",argnames:"[AST_SymbolFunarg*] array of function arguments",uses_arguments:"[boolean/S] tells whether this function accesses the arguments array"},_walk:function(a){return a._visit(this,function(){this.name&&this.name._walk(a),this.argnames.forEach(function(b){b._walk(a)}),w(this,a)})}},jb),mb=v("Accessor",null,{$documentation:"A setter/getter function. The `name` property is always null."},lb),nb=v("Function",null,{$documentation:"A function expression"},lb),ob=v("Defun",null,{$documentation:"A function definition"},lb),pb=v("Jump",null,{$documentation:"Base class for “jumps” (for now that's `return`, `throw`, `break` and `continue`)"},V),qb=v("Exit","value",{$documentation:"Base class for “exits” (`return` and `throw`)",$propdoc:{value:"[AST_Node?] the value returned or thrown by this statement; could be null for AST_Return"},_walk:function(a){return a._visit(this,this.value&&function(){this.value._walk(a)})}},pb),rb=v("Return",null,{$documentation:"A `return` statement"},qb),sb=v("Throw",null,{$documentation:"A `throw` statement"},qb),tb=v("LoopControl","label",{$documentation:"Base class for loop control statements (`break` and `continue`)",$propdoc:{label:"[AST_LabelRef?] the label, or null if none"},_walk:function(a){return a._visit(this,this.label&&function(){this.label._walk(a)})}},pb),ub=v("Break",null,{$documentation:"A `break` statement"},tb),vb=v("Continue",null,{$documentation:"A `continue` statement"},tb),wb=v("If","condition alternative",{$documentation:"A `if` statement",$propdoc:{condition:"[AST_Node] the `if` condition",alternative:"[AST_Statement?] the `else` part, or null if not present"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.body._walk(a),this.alternative&&this.alternative._walk(a)})}},ab),xb=v("Switch","expression",{$documentation:"A `switch` statement",$propdoc:{expression:"[AST_Node] the `switch` “discriminant”"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},Z),yb=v("SwitchBranch",null,{$documentation:"Base class for `switch` branches"},Z),zb=v("Default",null,{$documentation:"A `default` switch branch"},yb),Ab=v("Case","expression",{$documentation:"A `case` switch branch",$propdoc:{expression:"[AST_Node] the `case` expression"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),w(this,a)})}},yb),Bb=v("Try","bcatch bfinally",{$documentation:"A `try` statement",$propdoc:{bcatch:"[AST_Catch?] the catch block, or null if not present",bfinally:"[AST_Finally?] the finally block, or null if not present"},_walk:function(a){return a._visit(this,function(){w(this,a),this.bcatch&&this.bcatch._walk(a),this.bfinally&&this.bfinally._walk(a)})}},Z),Cb=v("Catch","argname",{$documentation:"A `catch` node; only makes sense as part of a `try` statement",$propdoc:{argname:"[AST_SymbolCatch] symbol for the exception"},_walk:function(a){return a._visit(this,function(){this.argname._walk(a),w(this,a)})}},Z),Db=v("Finally",null,{$documentation:"A `finally` node; only makes sense as part of a `try` statement"},Z),Eb=v("Definitions","definitions",{$documentation:"Base class for `var` or `const` nodes (variable declarations/initializations)",$propdoc:{definitions:"[AST_VarDef*] array of variable definitions"},_walk:function(a){return a._visit(this,function(){this.definitions.forEach(function(b){b._walk(a)})})}},V),Fb=v("Var",null,{$documentation:"A `var` statement"},Eb),Gb=v("Const",null,{$documentation:"A `const` statement"},Eb),Hb=v("VarDef","name value",{$documentation:"A variable declaration; only appears in a AST_Definitions node",$propdoc:{name:"[AST_SymbolVar|AST_SymbolConst] name of the variable",value:"[AST_Node?] initializer, or null of there's no initializer"},_walk:function(a){return a._visit(this,function(){this.name._walk(a),this.value&&this.value._walk(a)})}}),Ib=v("Call","expression args",{$documentation:"A function call expression",$propdoc:{expression:"[AST_Node] expression to invoke as function",args:"[AST_Node*] array of arguments"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.args.forEach(function(b){b._walk(a)})})}}),Jb=v("New",null,{$documentation:"An object instantiation. Derives from a function call since it has exactly the same properties"},Ib),Kb=v("Seq","car cdr",{$documentation:"A sequence expression (two comma-separated expressions)",$propdoc:{car:"[AST_Node] first element in sequence",cdr:"[AST_Node] second element in sequence"},$cons:function(a,b){var c=new Kb(a);return c.car=a,c.cdr=b,c},$from_array:function(a){if(0==a.length)return null;if(1==a.length)return a[0].clone();for(var b=null,c=a.length;--c>=0;)b=Kb.cons(a[c],b);for(var d=b;d;){if(d.cdr&&!d.cdr.cdr){d.cdr=d.cdr.car;break}d=d.cdr}return b},to_array:function(){for(var a=this,b=[];a;){if(b.push(a.car),a.cdr&&!(a.cdr instanceof Kb)){b.push(a.cdr);break}a=a.cdr}return b},add:function(a){for(var b=this;b;){if(!(b.cdr instanceof Kb)){var c=Kb.cons(b.cdr,a);return b.cdr=c}b=b.cdr}},_walk:function(a){return a._visit(this,function(){this.car._walk(a),this.cdr&&this.cdr._walk(a)})}}),Lb=v("PropAccess","expression property",{$documentation:'Base class for property access expressions, i.e. `a.foo` or `a["foo"]`',$propdoc:{expression:"[AST_Node] the “container” expression",property:"[AST_Node|string] the property to access. For AST_Dot this is always a plain string, while for AST_Sub it's an arbitrary AST_Node"}}),Mb=v("Dot",null,{$documentation:"A dotted property access expression",_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}},Lb),Nb=v("Sub",null,{$documentation:'Index-style property access, i.e. `a["foo"]`',_walk:function(a){return a._visit(this,function(){this.expression._walk(a),this.property._walk(a)})}},Lb),Ob=v("Unary","operator expression",{$documentation:"Base class for unary expressions",$propdoc:{operator:"[string] the operator",expression:"[AST_Node] expression that this unary operator applies to"},_walk:function(a){return a._visit(this,function(){this.expression._walk(a)})}}),Pb=v("UnaryPrefix",null,{$documentation:"Unary prefix expression, i.e. `typeof i` or `++i`"},Ob),Qb=v("UnaryPostfix",null,{$documentation:"Unary postfix expression, i.e. `i++`"},Ob),Rb=v("Binary","left operator right",{$documentation:"Binary expression, i.e. `a + b`",$propdoc:{left:"[AST_Node] left-hand side expression",operator:"[string] the operator",right:"[AST_Node] right-hand side expression"},_walk:function(a){return a._visit(this,function(){this.left._walk(a),this.right._walk(a)})}}),Sb=v("Conditional","condition consequent alternative",{$documentation:"Conditional expression using the ternary operator, i.e. `a ? b : c`",$propdoc:{condition:"[AST_Node]",consequent:"[AST_Node]",alternative:"[AST_Node]"},_walk:function(a){return a._visit(this,function(){this.condition._walk(a),this.consequent._walk(a),this.alternative._walk(a)})}}),Tb=v("Assign",null,{$documentation:"An assignment expression — `a = b + 5`"},Rb),Ub=v("Array","elements",{$documentation:"An array literal",$propdoc:{elements:"[AST_Node*] array of elements"},_walk:function(a){return a._visit(this,function(){this.elements.forEach(function(b){b._walk(a)})})}}),Vb=v("Object","properties",{$documentation:"An object literal",$propdoc:{properties:"[AST_ObjectProperty*] array of properties"},_walk:function(a){return a._visit(this,function(){this.properties.forEach(function(b){b._walk(a)})})}}),Wb=v("ObjectProperty","key value",{$documentation:"Base class for literal object properties",$propdoc:{key:"[string] the property name converted to a string for ObjectKeyVal. For setters and getters this is an arbitrary AST_Node.",value:"[AST_Node] property value. For setters and getters this is an AST_Function."},_walk:function(a){return a._visit(this,function(){this.value._walk(a)})}}),Xb=v("ObjectKeyVal",null,{$documentation:"A key: value object property"},Wb),Yb=v("ObjectSetter",null,{$documentation:"An object setter property"},Wb),Zb=v("ObjectGetter",null,{$documentation:"An object getter property"},Wb),$b=v("Symbol","scope name thedef",{$propdoc:{name:"[string] name of this symbol",scope:"[AST_Scope/S] the current scope (not necessarily the definition scope)",thedef:"[SymbolDef/S] the definition of this symbol"},$documentation:"Base class for all symbols"}),_b=v("SymbolAccessor",null,{$documentation:"The name of a property accessor (setter/getter function)"},$b),ac=v("SymbolDeclaration","init",{$documentation:"A declaration symbol (symbol in var/const, function name or argument, symbol in catch)",$propdoc:{init:"[AST_Node*/S] array of initializers for this declaration."}},$b),bc=v("SymbolVar",null,{$documentation:"Symbol defining a variable"},ac),cc=v("SymbolConst",null,{$documentation:"A constant declaration"},ac),dc=v("SymbolFunarg",null,{$documentation:"Symbol naming a function argument"},bc),ec=v("SymbolDefun",null,{$documentation:"Symbol defining a function"},ac),fc=v("SymbolLambda",null,{$documentation:"Symbol naming a function expression"},ac),gc=v("SymbolCatch",null,{$documentation:"Symbol naming the exception in catch"},ac),hc=v("Label","references",{$documentation:"Symbol naming a label (declaration)",$propdoc:{references:"[AST_LoopControl*] a list of nodes referring to this label"},initialize:function(){this.references=[],this.thedef=this}},$b),ic=v("SymbolRef",null,{$documentation:"Reference to some symbol (not definition/declaration)"},$b),jc=v("LabelRef",null,{$documentation:"Reference to a label symbol"},$b),kc=v("This",null,{$documentation:"The `this` symbol"},$b),lc=v("Constant",null,{$documentation:"Base class for all constants",getValue:function(){return this.value}}),mc=v("String","value",{$documentation:"A string literal",$propdoc:{value:"[string] the contents of this string"}},lc),nc=v("Number","value",{$documentation:"A number literal",$propdoc:{value:"[number] the numeric value"}},lc),oc=v("RegExp","value",{$documentation:"A regexp literal",$propdoc:{value:"[RegExp] the actual regexp"}},lc),pc=v("Atom",null,{$documentation:"Base class for atoms"},lc),qc=v("Null",null,{$documentation:"The `null` atom",value:null},pc),rc=v("NaN",null,{$documentation:"The impossible value",value:0/0},pc),sc=v("Undefined",null,{$documentation:"The `undefined` value",value:void 0},pc),tc=v("Hole",null,{$documentation:"A hole in an array",value:void 0},pc),uc=v("Infinity",null,{$documentation:"The `Infinity` value",value:1/0},pc),vc=v("Boolean",null,{$documentation:"Base class for booleans"},pc),wc=v("False",null,{$documentation:"The `false` atom",value:!1},vc),xc=v("True",null,{$documentation:"The `true` atom",value:!0},vc);x.prototype={_visit:function(a,b){this.stack.push(a);var c=this.visit(a,b?function(){b.call(a)}:l);return!c&&b&&b.call(a),this.stack.pop(),c},parent:function(a){return this.stack[this.stack.length-2-(a||0)]},push:function(a){this.stack.push(a)},pop:function(){return this.stack.pop()},self:function(){return this.stack[this.stack.length-1]},find_parent:function(a){for(var b=this.stack,c=b.length;--c>=0;){var d=b[c];if(d instanceof a)return d}},has_directive:function(a){return this.find_parent(jb).has_directive(a)},in_boolean_context:function(){for(var a=this.stack,b=a.length,c=a[--b];b>0;){var d=a[--b];if(d instanceof wb&&d.condition===c||d instanceof Sb&&d.condition===c||d instanceof db&&d.condition===c||d instanceof gb&&d.condition===c||d instanceof Pb&&"!"==d.operator&&d.expression===c)return!0;if(!(d instanceof Rb)||"&&"!=d.operator&&"||"!=d.operator)return!1;c=d}},loopcontrol_target:function(a){var b=this.stack;if(a)for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof bb&&d.label.name==a.name)return d.body}else for(var c=b.length;--c>=0;){var d=b[c];if(d instanceof xb||d instanceof cb)return d}}};var yc="break case catch const continue debugger default delete do else finally for function if in instanceof new return switch throw try typeof var void while with",zc="false null true",Ac="abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized this throws transient volatile yield "+zc+" "+yc,Bc="return new delete throw else case";yc=s(yc),Ac=s(Ac),Bc=s(Bc),zc=s(zc);var Cc=s(e("+-*&%=<>!?|~^")),Dc=/^0x[0-9a-f]+$/i,Ec=/^0[0-7]+$/,Fc=/^\d*\.?\d*(?:e[+-]?\d*(?:\d\.?|\.?\d)\d*)?$/i,Gc=s(["in","instanceof","typeof","new","void","delete","++","--","+","-","!","~","&","|","^","*","/","%",">>","<<",">>>","<",">","<=",">=","==","===","!=","!==","?","=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&=","&&","||"]),Hc=s(e(" \n\r \f ")),Ic=s(e("[{(,.;:")),Jc=s(e("[]{}(),;:")),Kc=s(e("gmsiy")),Lc={letter:new RegExp("[\\u0041-\\u005A\\u0061-\\u007A\\u00AA\\u00B5\\u00BA\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u0523\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0621-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971\\u0972\\u097B-\\u097F\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C33\\u0C35-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D28\\u0D2A-\\u0D39\\u0D3D\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC\\u0EDD\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8B\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10D0-\\u10FA\\u10FC\\u1100-\\u1159\\u115F-\\u11A2\\u11A8-\\u11F9\\u1200-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u1676\\u1681-\\u169A\\u16A0-\\u16EA\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u1900-\\u191C\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19A9\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u2094\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2183\\u2184\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2C6F\\u2C71-\\u2C7D\\u2C80-\\u2CE4\\u2D00-\\u2D25\\u2D30-\\u2D65\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005\\u3006\\u3031-\\u3035\\u303B\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31B7\\u31F0-\\u31FF\\u3400\\u4DB5\\u4E00\\u9FC3\\uA000-\\uA48C\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA65F\\uA662-\\uA66E\\uA67F-\\uA697\\uA717-\\uA71F\\uA722-\\uA788\\uA78B\\uA78C\\uA7FB-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA90A-\\uA925\\uA930-\\uA946\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAC00\\uD7A3\\uF900-\\uFA2D\\uFA30-\\uFA6A\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),non_spacing_mark:new RegExp("[\\u0300-\\u036F\\u0483-\\u0487\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u0610-\\u061A\\u064B-\\u065E\\u0670\\u06D6-\\u06DC\\u06DF-\\u06E4\\u06E7\\u06E8\\u06EA-\\u06ED\\u0711\\u0730-\\u074A\\u07A6-\\u07B0\\u07EB-\\u07F3\\u0816-\\u0819\\u081B-\\u0823\\u0825-\\u0827\\u0829-\\u082D\\u0900-\\u0902\\u093C\\u0941-\\u0948\\u094D\\u0951-\\u0955\\u0962\\u0963\\u0981\\u09BC\\u09C1-\\u09C4\\u09CD\\u09E2\\u09E3\\u0A01\\u0A02\\u0A3C\\u0A41\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A70\\u0A71\\u0A75\\u0A81\\u0A82\\u0ABC\\u0AC1-\\u0AC5\\u0AC7\\u0AC8\\u0ACD\\u0AE2\\u0AE3\\u0B01\\u0B3C\\u0B3F\\u0B41-\\u0B44\\u0B4D\\u0B56\\u0B62\\u0B63\\u0B82\\u0BC0\\u0BCD\\u0C3E-\\u0C40\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C62\\u0C63\\u0CBC\\u0CBF\\u0CC6\\u0CCC\\u0CCD\\u0CE2\\u0CE3\\u0D41-\\u0D44\\u0D4D\\u0D62\\u0D63\\u0DCA\\u0DD2-\\u0DD4\\u0DD6\\u0E31\\u0E34-\\u0E3A\\u0E47-\\u0E4E\\u0EB1\\u0EB4-\\u0EB9\\u0EBB\\u0EBC\\u0EC8-\\u0ECD\\u0F18\\u0F19\\u0F35\\u0F37\\u0F39\\u0F71-\\u0F7E\\u0F80-\\u0F84\\u0F86\\u0F87\\u0F90-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u102D-\\u1030\\u1032-\\u1037\\u1039\\u103A\\u103D\\u103E\\u1058\\u1059\\u105E-\\u1060\\u1071-\\u1074\\u1082\\u1085\\u1086\\u108D\\u109D\\u135F\\u1712-\\u1714\\u1732-\\u1734\\u1752\\u1753\\u1772\\u1773\\u17B7-\\u17BD\\u17C6\\u17C9-\\u17D3\\u17DD\\u180B-\\u180D\\u18A9\\u1920-\\u1922\\u1927\\u1928\\u1932\\u1939-\\u193B\\u1A17\\u1A18\\u1A56\\u1A58-\\u1A5E\\u1A60\\u1A62\\u1A65-\\u1A6C\\u1A73-\\u1A7C\\u1A7F\\u1B00-\\u1B03\\u1B34\\u1B36-\\u1B3A\\u1B3C\\u1B42\\u1B6B-\\u1B73\\u1B80\\u1B81\\u1BA2-\\u1BA5\\u1BA8\\u1BA9\\u1C2C-\\u1C33\\u1C36\\u1C37\\u1CD0-\\u1CD2\\u1CD4-\\u1CE0\\u1CE2-\\u1CE8\\u1CED\\u1DC0-\\u1DE6\\u1DFD-\\u1DFF\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2CEF-\\u2CF1\\u2DE0-\\u2DFF\\u302A-\\u302F\\u3099\\u309A\\uA66F\\uA67C\\uA67D\\uA6F0\\uA6F1\\uA802\\uA806\\uA80B\\uA825\\uA826\\uA8C4\\uA8E0-\\uA8F1\\uA926-\\uA92D\\uA947-\\uA951\\uA980-\\uA982\\uA9B3\\uA9B6-\\uA9B9\\uA9BC\\uAA29-\\uAA2E\\uAA31\\uAA32\\uAA35\\uAA36\\uAA43\\uAA4C\\uAAB0\\uAAB2-\\uAAB4\\uAAB7\\uAAB8\\uAABE\\uAABF\\uAAC1\\uABE5\\uABE8\\uABED\\uFB1E\\uFE00-\\uFE0F\\uFE20-\\uFE26]"),space_combining_mark:new RegExp("[\\u0903\\u093E-\\u0940\\u0949-\\u094C\\u094E\\u0982\\u0983\\u09BE-\\u09C0\\u09C7\\u09C8\\u09CB\\u09CC\\u09D7\\u0A03\\u0A3E-\\u0A40\\u0A83\\u0ABE-\\u0AC0\\u0AC9\\u0ACB\\u0ACC\\u0B02\\u0B03\\u0B3E\\u0B40\\u0B47\\u0B48\\u0B4B\\u0B4C\\u0B57\\u0BBE\\u0BBF\\u0BC1\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCC\\u0BD7\\u0C01-\\u0C03\\u0C41-\\u0C44\\u0C82\\u0C83\\u0CBE\\u0CC0-\\u0CC4\\u0CC7\\u0CC8\\u0CCA\\u0CCB\\u0CD5\\u0CD6\\u0D02\\u0D03\\u0D3E-\\u0D40\\u0D46-\\u0D48\\u0D4A-\\u0D4C\\u0D57\\u0D82\\u0D83\\u0DCF-\\u0DD1\\u0DD8-\\u0DDF\\u0DF2\\u0DF3\\u0F3E\\u0F3F\\u0F7F\\u102B\\u102C\\u1031\\u1038\\u103B\\u103C\\u1056\\u1057\\u1062-\\u1064\\u1067-\\u106D\\u1083\\u1084\\u1087-\\u108C\\u108F\\u109A-\\u109C\\u17B6\\u17BE-\\u17C5\\u17C7\\u17C8\\u1923-\\u1926\\u1929-\\u192B\\u1930\\u1931\\u1933-\\u1938\\u19B0-\\u19C0\\u19C8\\u19C9\\u1A19-\\u1A1B\\u1A55\\u1A57\\u1A61\\u1A63\\u1A64\\u1A6D-\\u1A72\\u1B04\\u1B35\\u1B3B\\u1B3D-\\u1B41\\u1B43\\u1B44\\u1B82\\u1BA1\\u1BA6\\u1BA7\\u1BAA\\u1C24-\\u1C2B\\u1C34\\u1C35\\u1CE1\\u1CF2\\uA823\\uA824\\uA827\\uA880\\uA881\\uA8B4-\\uA8C3\\uA952\\uA953\\uA983\\uA9B4\\uA9B5\\uA9BA\\uA9BB\\uA9BD-\\uA9C0\\uAA2F\\uAA30\\uAA33\\uAA34\\uAA4D\\uAA7B\\uABE3\\uABE4\\uABE6\\uABE7\\uABE9\\uABEA\\uABEC]"),connector_punctuation:new RegExp("[\\u005F\\u203F\\u2040\\u2054\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFF3F]")};I.prototype.toString=function(){return this.message+" (line: "+this.line+", col: "+this.col+", pos: "+this.pos+")\n\n"+this.stack};var Mc={},Nc=s(["typeof","void","delete","--","++","!","~","-","+"]),Oc=s(["--","++"]),Pc=s(["=","+=","-=","/=","*=","%=",">>=","<<=",">>>=","|=","^=","&="]),Qc=function(a,b){for(var c=0;c ","<=",">=","in","instanceof"],[">>","<<",">>>"],["+","-"],["*","/","%"]],{}),Rc=c(["for","do","while","switch"]),Sc=c(["atom","num","string","regexp","name"]);N.prototype=new x,function(a){function b(b,c){b.DEFMETHOD("transform",function(b,d){var e,f;return b.push(this),b.before&&(e=b.before(this,c,d)),e===a&&(b.after?(b.stack[b.stack.length-1]=e=this.clone(),c(e,b),f=b.after(e,d),f!==a&&(e=f)):(e=this,c(e,b))),b.pop(),e})}function c(a,b){return S(a,function(a){return a.transform(b,!0)})}b(U,l),b(bb,function(a,b){a.label=a.label.transform(b),a.body=a.body.transform(b)}),b(Y,function(a,b){a.body=a.body.transform(b)}),b(Z,function(a,b){a.body=c(a.body,b)}),b(db,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b)}),b(gb,function(a,b){a.init&&(a.init=a.init.transform(b)),a.condition&&(a.condition=a.condition.transform(b)),a.step&&(a.step=a.step.transform(b)),a.body=a.body.transform(b)}),b(hb,function(a,b){a.init=a.init.transform(b),a.object=a.object.transform(b),a.body=a.body.transform(b)}),b(ib,function(a,b){a.expression=a.expression.transform(b),a.body=a.body.transform(b)}),b(qb,function(a,b){a.value&&(a.value=a.value.transform(b))}),b(tb,function(a,b){a.label&&(a.label=a.label.transform(b))}),b(wb,function(a,b){a.condition=a.condition.transform(b),a.body=a.body.transform(b),a.alternative&&(a.alternative=a.alternative.transform(b))}),b(xb,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Ab,function(a,b){a.expression=a.expression.transform(b),a.body=c(a.body,b)}),b(Bb,function(a,b){a.body=c(a.body,b),a.bcatch&&(a.bcatch=a.bcatch.transform(b)),a.bfinally&&(a.bfinally=a.bfinally.transform(b))}),b(Cb,function(a,b){a.argname=a.argname.transform(b),a.body=c(a.body,b)}),b(Eb,function(a,b){a.definitions=c(a.definitions,b)}),b(Hb,function(a,b){a.name=a.name.transform(b),a.value&&(a.value=a.value.transform(b))}),b(lb,function(a,b){a.name&&(a.name=a.name.transform(b)),a.argnames=c(a.argnames,b),a.body=c(a.body,b)}),b(Ib,function(a,b){a.expression=a.expression.transform(b),a.args=c(a.args,b)}),b(Kb,function(a,b){a.car=a.car.transform(b),a.cdr=a.cdr.transform(b)}),b(Mb,function(a,b){a.expression=a.expression.transform(b)}),b(Nb,function(a,b){a.expression=a.expression.transform(b),a.property=a.property.transform(b)}),b(Ob,function(a,b){a.expression=a.expression.transform(b)}),b(Rb,function(a,b){a.left=a.left.transform(b),a.right=a.right.transform(b)}),b(Sb,function(a,b){a.condition=a.condition.transform(b),a.consequent=a.consequent.transform(b),a.alternative=a.alternative.transform(b)}),b(Ub,function(a,b){a.elements=c(a.elements,b)}),b(Vb,function(a,b){a.properties=c(a.properties,b)}),b(Wb,function(a,b){a.value=a.value.transform(b)})}(),O.prototype={unmangleable:function(a){return this.global&&!(a&&a.toplevel)||this.undeclared||!(a&&a.eval)&&(this.scope.uses_eval||this.scope.uses_with)},mangle:function(a){if(!this.mangled_name&&!this.unmangleable(a)){var b=this.scope;!a.screw_ie8&&this.orig[0]instanceof fc&&(b=b.parent_scope),this.mangled_name=b.next_mangled(a,this)}}},kb.DEFMETHOD("figure_out_scope",function(a){a=j(a,{screw_ie8:!1});var b=this,c=b.parent_scope=null,d=null,e=0,f=new x(function(b,g){if(a.screw_ie8&&b instanceof Cb){var h=c;return c=new jb(b),c.init_scope_vars(e),c.parent_scope=h,g(),c=h,!0}if(b instanceof jb){b.init_scope_vars(e);var h=b.parent_scope=c,i=d;return d=c=b,++e,g(),--e,c=h,d=i,!0}if(b instanceof X)return b.scope=c,m(c.directives,b.value),!0;if(b instanceof ib)for(var j=c;j;j=j.parent_scope)j.uses_with=!0;else if(b instanceof $b&&(b.scope=c),b instanceof fc)d.def_function(b);else if(b instanceof ec)(b.scope=d.parent_scope).def_function(b);else if(b instanceof bc||b instanceof cc){var k=d.def_variable(b);k.constant=b instanceof cc,k.init=f.parent().value}else b instanceof gc&&(a.screw_ie8?c:d).def_variable(b)});b.walk(f);var g=null,h=b.globals=new u,f=new x(function(a,c){if(a instanceof lb){var d=g;return g=a,c(),g=d,!0}if(a instanceof ic){var e=a.name,i=a.scope.find_variable(e);if(i)a.thedef=i;else{var j;if(h.has(e)?j=h.get(e):(j=new O(b,h.size(),a),j.undeclared=!0,j.global=!0,h.set(e,j)),a.thedef=j,"eval"==e&&f.parent()instanceof Ib)for(var k=a.scope;k&&!k.uses_eval;k=k.parent_scope)k.uses_eval=!0;g&&"arguments"==e&&(g.uses_arguments=!0)}return a.reference(),!0}});b.walk(f)}),jb.DEFMETHOD("init_scope_vars",function(a){this.directives=[],this.variables=new u,this.functions=new u,this.uses_with=!1,this.uses_eval=!1,this.parent_scope=null,this.enclosed=[],this.cname=-1,this.nesting=a}),jb.DEFMETHOD("strict",function(){return this.has_directive("use strict")}),lb.DEFMETHOD("init_scope_vars",function(){jb.prototype.init_scope_vars.apply(this,arguments),this.uses_arguments=!1}),ic.DEFMETHOD("reference",function(){var a=this.definition();a.references.push(this);for(var b=this.scope;b&&(m(b.enclosed,a),b!==a.scope);)b=b.parent_scope;this.frame=this.scope.nesting-a.scope.nesting}),jb.DEFMETHOD("find_variable",function(a){return a instanceof $b&&(a=a.name),this.variables.get(a)||this.parent_scope&&this.parent_scope.find_variable(a)}),jb.DEFMETHOD("has_directive",function(a){return this.parent_scope&&this.parent_scope.has_directive(a)||(this.directives.indexOf(a)>=0?this:null)}),jb.DEFMETHOD("def_function",function(a){this.functions.set(a.name,this.def_variable(a))}),jb.DEFMETHOD("def_variable",function(a){var b;return this.variables.has(a.name)?(b=this.variables.get(a.name),b.orig.push(a)):(b=new O(this,this.variables.size(),a),this.variables.set(a.name,b),b.global=!this.parent_scope),a.thedef=b}),jb.DEFMETHOD("next_mangled",function(a){var b=this.enclosed;a:for(;;){var c=Tc(++this.cname);if(D(c)&&!(a.except.indexOf(c)>=0)){for(var d=b.length;--d>=0;){var e=b[d],f=e.mangled_name||e.unmangleable(a)&&e.name;if(c==f)continue a}return c}}}),nb.DEFMETHOD("next_mangled",function(a,b){for(var c=b.orig[0]instanceof dc&&this.name&&this.name.definition();;){var d=lb.prototype.next_mangled.call(this,a,b);if(!c||c.mangled_name!=d)return d}}),jb.DEFMETHOD("references",function(a){return a instanceof $b&&(a=a.definition()),this.enclosed.indexOf(a)<0?null:a}),$b.DEFMETHOD("unmangleable",function(a){return this.definition().unmangleable(a)}),_b.DEFMETHOD("unmangleable",function(){return!0}),hc.DEFMETHOD("unmangleable",function(){return!1}),$b.DEFMETHOD("unreferenced",function(){return 0==this.definition().references.length&&!(this.scope.uses_eval||this.scope.uses_with)}),$b.DEFMETHOD("undeclared",function(){return this.definition().undeclared}),jc.DEFMETHOD("undeclared",function(){return!1}),hc.DEFMETHOD("undeclared",function(){return!1}),$b.DEFMETHOD("definition",function(){return this.thedef}),$b.DEFMETHOD("global",function(){return this.definition().global}),kb.DEFMETHOD("_default_mangler_options",function(a){return j(a,{except:[],eval:!1,sort:!1,toplevel:!1,screw_ie8:!1})}),kb.DEFMETHOD("mangle_names",function(a){a=this._default_mangler_options(a);var b=-1,c=[],d=new x(function(e,f){if(e instanceof bb){var g=b;return f(),b=g,!0}if(e instanceof jb){var h=(d.parent(),[]);return e.variables.each(function(b){a.except.indexOf(b.name)<0&&h.push(b)}),a.sort&&h.sort(function(a,b){return b.references.length-a.references.length}),void c.push.apply(c,h)}if(e instanceof hc){var i;do i=Tc(++b);while(!D(i));return e.mangled_name=i,!0}return a.screw_ie8&&e instanceof gc?void c.push(e.definition()):void 0});this.walk(d),c.forEach(function(b){b.mangle(a)})}),kb.DEFMETHOD("compute_char_frequency",function(a){a=this._default_mangler_options(a);var b=new x(function(b){b instanceof lc?Tc.consider(b.print_to_string()):b instanceof rb?Tc.consider("return"):b instanceof sb?Tc.consider("throw"):b instanceof vb?Tc.consider("continue"):b instanceof ub?Tc.consider("break"):b instanceof W?Tc.consider("debugger"):b instanceof X?Tc.consider(b.value):b instanceof fb?Tc.consider("while"):b instanceof eb?Tc.consider("do while"):b instanceof wb?(Tc.consider("if"),b.alternative&&Tc.consider("else")):b instanceof Fb?Tc.consider("var"):b instanceof Gb?Tc.consider("const"):b instanceof lb?Tc.consider("function"):b instanceof gb?Tc.consider("for"):b instanceof hb?Tc.consider("for in"):b instanceof xb?Tc.consider("switch"):b instanceof Ab?Tc.consider("case"):b instanceof zb?Tc.consider("default"):b instanceof ib?Tc.consider("with"):b instanceof Yb?Tc.consider("set"+b.key):b instanceof Zb?Tc.consider("get"+b.key):b instanceof Xb?Tc.consider(b.key):b instanceof Jb?Tc.consider("new"):b instanceof kc?Tc.consider("this"):b instanceof Bb?Tc.consider("try"):b instanceof Cb?Tc.consider("catch"):b instanceof Db?Tc.consider("finally"):b instanceof $b&&b.unmangleable(a)?Tc.consider(b.name):b instanceof Ob||b instanceof Rb?Tc.consider(b.operator):b instanceof Mb&&Tc.consider(b.property)});this.walk(b),Tc.sort()});var Tc=function(){function a(){d=Object.create(null),c=e.split("").map(function(a){return a.charCodeAt(0)}),c.forEach(function(a){d[a]=0})}function b(a){var b="",d=54;do b+=String.fromCharCode(c[a%d]),a=Math.floor(a/d),d=64;while(a>0);return b}var c,d,e="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ$_0123456789";return b.consider=function(a){for(var b=a.length;--b>=0;){var c=a.charCodeAt(b);c in d&&++d[c]}},b.sort=function(){c=p(c,function(a,b){return z(a)&&!z(b)?1:z(b)&&!z(a)?-1:d[b]-d[a]})},b.reset=a,a(),b.get=function(){return c},b.freq=function(){return d},b}();kb.DEFMETHOD("scope_warnings",function(a){a=j(a,{undeclared:!1,unreferenced:!0,assign_to_global:!0,func_arguments:!0,nested_defuns:!0,eval:!0});var b=new x(function(c){if(a.undeclared&&c instanceof ic&&c.undeclared()&&U.warn("Undeclared symbol: {name} [{file}:{line},{col}]",{name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.assign_to_global){var d=null;c instanceof Tb&&c.left instanceof ic?d=c.left:c instanceof hb&&c.init instanceof ic&&(d=c.init),d&&(d.undeclared()||d.global()&&d.scope!==d.definition().scope)&&U.warn("{msg}: {name} [{file}:{line},{col}]",{msg:d.undeclared()?"Accidental global?":"Assignment to global",name:d.name,file:d.start.file,line:d.start.line,col:d.start.col}) +}a.eval&&c instanceof ic&&c.undeclared()&&"eval"==c.name&&U.warn("Eval is used [{file}:{line},{col}]",c.start),a.unreferenced&&(c instanceof ac||c instanceof hc)&&c.unreferenced()&&U.warn("{type} {name} is declared but not referenced [{file}:{line},{col}]",{type:c instanceof hc?"Label":"Symbol",name:c.name,file:c.start.file,line:c.start.line,col:c.start.col}),a.func_arguments&&c instanceof lb&&c.uses_arguments&&U.warn("arguments used in function {name} [{file}:{line},{col}]",{name:c.name?c.name.name:"anonymous",file:c.start.file,line:c.start.line,col:c.start.col}),a.nested_defuns&&c instanceof ob&&!(b.parent()instanceof jb)&&U.warn('Function {name} declared in nested statement "{type}" [{file}:{line},{col}]',{name:c.name.name,type:b.parent().TYPE,file:c.start.file,line:c.start.line,col:c.start.col})});this.walk(b)}),function(){function a(a,b){a.DEFMETHOD("_codegen",b)}function b(a,b){a.DEFMETHOD("needs_parens",b)}function c(a){var b=a.parent();return b instanceof Ob?!0:b instanceof Rb&&!(b instanceof Tb)?!0:b instanceof Ib&&b.expression===this?!0:b instanceof Sb&&b.condition===this?!0:b instanceof Lb&&b.expression===this?!0:void 0}function d(a,b,c){var d=a.length-1;a.forEach(function(a,e){a instanceof _||(c.indent(),a.print(c),e==d&&b||(c.newline(),b&&c.newline()))})}function e(a,b){a.length>0?b.with_block(function(){d(a,!1,b)}):b.print("{}")}function f(a,b){if(b.option("bracketize"))return void o(a.body,b);if(!a.body)return b.force_semicolon();if(a.body instanceof eb&&!b.option("screw_ie8"))return void o(a.body,b);for(var c=a.body;;)if(c instanceof wb){if(!c.alternative)return void o(a.body,b);c=c.alternative}else{if(!(c instanceof ab))break;c=c.body}i(a.body,b)}function g(a,b,c){if(c)try{a.walk(new x(function(a){if(a instanceof Rb&&"in"==a.operator)throw b})),a.print(b)}catch(d){if(d!==b)throw d;a.print(b,!0)}else a.print(b)}function h(a){return[92,47,46,43,42,63,40,41,91,93,123,125,36,94,58,124,33,10,13,0,65279,8232,8233].indexOf(a)<0}function i(a,b){b.option("bracketize")?!a||a instanceof _?b.print("{}"):a instanceof $?a.print(b):b.with_block(function(){b.indent(),a.print(b),b.newline()}):!a||a instanceof _?b.force_semicolon():a.print(b)}function j(a){for(var b=a.stack(),c=b.length,d=b[--c],e=b[--c];c>0;){if(e instanceof V&&e.body===d)return!0;if(!(e instanceof Kb&&e.car===d||e instanceof Ib&&e.expression===d&&!(e instanceof Jb)||e instanceof Mb&&e.expression===d||e instanceof Nb&&e.expression===d||e instanceof Sb&&e.condition===d||e instanceof Rb&&e.left===d||e instanceof Qb&&e.expression===d))return!1;d=e,e=b[--c]}}function k(a,b){return 0==a.args.length&&!b.option("beautify")}function m(a){for(var b=a[0],c=b.length,d=1;d =0?d.push("0x"+a.toString(16).toLowerCase(),"0"+a.toString(8)):d.push("-0x"+(-a).toString(16).toLowerCase(),"-0"+(-a).toString(8)),(b=/^(.*?)(0+)$/.exec(a))&&d.push(b[1]+"e"+b[2].length)):(b=/^0?\.(0+)(.*)$/.exec(a))&&d.push(b[2]+"e-"+(b[1].length+b[2].length),c.substr(c.indexOf("."))),m(d)}function o(a,b){return a instanceof $?void a.print(b):void b.with_block(function(){b.indent(),a.print(b),b.newline()})}function p(a,b){a.DEFMETHOD("add_source_map",function(a){b(this,a)})}function q(a,b){b.add_mapping(a.start)}U.DEFMETHOD("print",function(a,b){function c(){d.add_comments(a),d.add_source_map(a),e(d,a)}var d=this,e=d._codegen;a.push_node(d),b||d.needs_parens(a)?a.with_parens(c):c(),a.pop_node()}),U.DEFMETHOD("print_to_string",function(a){var b=P(a);return this.print(b),b.get()}),U.DEFMETHOD("add_comments",function(a){var b=a.option("comments"),c=this;if(b){var d=c.start;if(d&&!d._comments_dumped){d._comments_dumped=!0;var e=d.comments_before||[];c instanceof qb&&c.value&&c.value.walk(new x(function(a){return a.start&&a.start.comments_before&&(e=e.concat(a.start.comments_before),a.start.comments_before=[]),a instanceof nb||a instanceof Ub||a instanceof Vb?!0:void 0})),b.test?e=e.filter(function(a){return b.test(a.value)}):"function"==typeof b&&(e=e.filter(function(a){return b(c,a)})),e.forEach(function(b){/comment[134]/.test(b.type)?(a.print("//"+b.value+"\n"),a.indent()):"comment2"==b.type&&(a.print("/*"+b.value+"*/"),d.nlb?(a.print("\n"),a.indent()):a.space())})}}}),b(U,function(){return!1}),b(nb,function(a){return j(a)}),b(Vb,function(a){return j(a)}),b(Ob,function(a){var b=a.parent();return b instanceof Lb&&b.expression===this}),b(Kb,function(a){var b=a.parent();return b instanceof Ib||b instanceof Ob||b instanceof Rb||b instanceof Hb||b instanceof Lb||b instanceof Ub||b instanceof Wb||b instanceof Sb}),b(Rb,function(a){var b=a.parent();if(b instanceof Ib&&b.expression===this)return!0;if(b instanceof Ob)return!0;if(b instanceof Lb&&b.expression===this)return!0;if(b instanceof Rb){var c=b.operator,d=Qc[c],e=this.operator,f=Qc[e];if(d>f||d==f&&this===b.right)return!0}}),b(Lb,function(a){var b=a.parent();if(b instanceof Jb&&b.expression===this)try{this.walk(new x(function(a){if(a instanceof Ib)throw b}))}catch(c){if(c!==b)throw c;return!0}}),b(Ib,function(a){var b,c=a.parent();return c instanceof Jb&&c.expression===this?!0:this.expression instanceof nb&&c instanceof Lb&&c.expression===this&&(b=a.parent(1))instanceof Tb&&b.left===c}),b(Jb,function(a){var b=a.parent();return k(this,a)&&(b instanceof Lb||b instanceof Ib&&b.expression===this)?!0:void 0}),b(nc,function(a){var b=a.parent();return this.getValue()<0&&b instanceof Lb&&b.expression===this?!0:void 0}),b(rc,function(a){var b=a.parent();return b instanceof Lb&&b.expression===this?!0:void 0}),b(Tb,c),b(Sb,c),a(X,function(a,b){b.print_string(a.value),b.semicolon()}),a(W,function(a,b){b.print("debugger"),b.semicolon()}),ab.DEFMETHOD("_do_print_body",function(a){i(this.body,a)}),a(V,function(a,b){a.body.print(b),b.semicolon()}),a(kb,function(a,b){d(a.body,!0,b),b.print("")}),a(bb,function(a,b){a.label.print(b),b.colon(),a.body.print(b)}),a(Y,function(a,b){a.body.print(b),b.semicolon()}),a($,function(a,b){e(a.body,b)}),a(_,function(a,b){b.semicolon()}),a(eb,function(a,b){b.print("do"),b.space(),a._do_print_body(b),b.space(),b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.semicolon()}),a(fb,function(a,b){b.print("while"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a._do_print_body(b)}),a(gb,function(a,b){b.print("for"),b.space(),b.with_parens(function(){a.init?(a.init instanceof Eb?a.init.print(b):g(a.init,b,!0),b.print(";"),b.space()):b.print(";"),a.condition?(a.condition.print(b),b.print(";"),b.space()):b.print(";"),a.step&&a.step.print(b)}),b.space(),a._do_print_body(b)}),a(hb,function(a,b){b.print("for"),b.space(),b.with_parens(function(){a.init.print(b),b.space(),b.print("in"),b.space(),a.object.print(b)}),b.space(),a._do_print_body(b)}),a(ib,function(a,b){b.print("with"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a._do_print_body(b)}),lb.DEFMETHOD("_do_print",function(a,b){var c=this;b||a.print("function"),c.name&&(a.space(),c.name.print(a)),a.with_parens(function(){c.argnames.forEach(function(b,c){c&&a.comma(),b.print(a)})}),a.space(),e(c.body,a)}),a(lb,function(a,b){a._do_print(b)}),qb.DEFMETHOD("_do_print",function(a,b){a.print(b),this.value&&(a.space(),this.value.print(a)),a.semicolon()}),a(rb,function(a,b){a._do_print(b,"return")}),a(sb,function(a,b){a._do_print(b,"throw")}),tb.DEFMETHOD("_do_print",function(a,b){a.print(b),this.label&&(a.space(),this.label.print(a)),a.semicolon()}),a(ub,function(a,b){a._do_print(b,"break")}),a(vb,function(a,b){a._do_print(b,"continue")}),a(wb,function(a,b){b.print("if"),b.space(),b.with_parens(function(){a.condition.print(b)}),b.space(),a.alternative?(f(a,b),b.space(),b.print("else"),b.space(),i(a.alternative,b)):a._do_print_body(b)}),a(xb,function(a,b){b.print("switch"),b.space(),b.with_parens(function(){a.expression.print(b)}),b.space(),a.body.length>0?b.with_block(function(){a.body.forEach(function(a,c){c&&b.newline(),b.indent(!0),a.print(b)})}):b.print("{}")}),yb.DEFMETHOD("_do_print_body",function(a){this.body.length>0&&(a.newline(),this.body.forEach(function(b){a.indent(),b.print(a),a.newline()}))}),a(zb,function(a,b){b.print("default:"),a._do_print_body(b)}),a(Ab,function(a,b){b.print("case"),b.space(),a.expression.print(b),b.print(":"),a._do_print_body(b)}),a(Bb,function(a,b){b.print("try"),b.space(),e(a.body,b),a.bcatch&&(b.space(),a.bcatch.print(b)),a.bfinally&&(b.space(),a.bfinally.print(b))}),a(Cb,function(a,b){b.print("catch"),b.space(),b.with_parens(function(){a.argname.print(b)}),b.space(),e(a.body,b)}),a(Db,function(a,b){b.print("finally"),b.space(),e(a.body,b)}),Eb.DEFMETHOD("_do_print",function(a,b){a.print(b),a.space(),this.definitions.forEach(function(b,c){c&&a.comma(),b.print(a)});var c=a.parent(),d=c instanceof gb||c instanceof hb,e=d&&c.init===this;e||a.semicolon()}),a(Fb,function(a,b){a._do_print(b,"var")}),a(Gb,function(a,b){a._do_print(b,"const")}),a(Hb,function(a,b){if(a.name.print(b),a.value){b.space(),b.print("="),b.space();var c=b.parent(1),d=c instanceof gb||c instanceof hb;g(a.value,b,d)}}),a(Ib,function(a,b){a.expression.print(b),a instanceof Jb&&k(a,b)||b.with_parens(function(){a.args.forEach(function(a,c){c&&b.comma(),a.print(b)})})}),a(Jb,function(a,b){b.print("new"),b.space(),Ib.prototype._codegen(a,b)}),Kb.DEFMETHOD("_do_print",function(a){this.car.print(a),this.cdr&&(a.comma(),a.should_break()&&(a.newline(),a.indent()),this.cdr.print(a))}),a(Kb,function(a,b){a._do_print(b)}),a(Mb,function(a,b){var c=a.expression;c.print(b),c instanceof nc&&c.getValue()>=0&&(/[xa-f.]/i.test(b.last())||b.print(".")),b.print("."),b.add_mapping(a.end),b.print_name(a.property)}),a(Nb,function(a,b){a.expression.print(b),b.print("["),a.property.print(b),b.print("]")}),a(Pb,function(a,b){var c=a.operator;b.print(c),/^[a-z]/i.test(c)&&b.space(),a.expression.print(b)}),a(Qb,function(a,b){a.expression.print(b),b.print(a.operator)}),a(Rb,function(a,b){a.left.print(b),b.space(),b.print(a.operator),"<"==a.operator&&a.right instanceof Pb&&"!"==a.right.operator&&a.right.expression instanceof Pb&&"--"==a.right.expression.operator?b.print(" "):b.space(),a.right.print(b)}),a(Sb,function(a,b){a.condition.print(b),b.space(),b.print("?"),b.space(),a.consequent.print(b),b.space(),b.colon(),a.alternative.print(b)}),a(Ub,function(a,b){b.with_square(function(){var c=a.elements,d=c.length;d>0&&b.space(),c.forEach(function(a,c){c&&b.comma(),a.print(b),c===d-1&&a instanceof tc&&b.comma()}),d>0&&b.space()})}),a(Vb,function(a,b){a.properties.length>0?b.with_block(function(){a.properties.forEach(function(a,c){c&&(b.print(","),b.newline()),b.indent(),a.print(b)}),b.newline()}):b.print("{}")}),a(Xb,function(a,b){var c=a.key;b.option("quote_keys")?b.print_string(c+""):("number"==typeof c||!b.option("beautify")&&+c+""==c)&&parseFloat(c)>=0?b.print(n(c)):(Ac(c)?b.option("screw_ie8"):G(c))?b.print_name(c):b.print_string(c),b.colon(),a.value.print(b)}),a(Yb,function(a,b){b.print("set"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a(Zb,function(a,b){b.print("get"),b.space(),a.key.print(b),a.value._do_print(b,!0)}),a($b,function(a,b){var c=a.definition();b.print_name(c?c.mangled_name||c.name:a.name)}),a(sc,function(a,b){b.print("void 0")}),a(tc,l),a(uc,function(a,b){b.print("1/0")}),a(rc,function(a,b){b.print("0/0")}),a(kc,function(a,b){b.print("this")}),a(lc,function(a,b){b.print(a.getValue())}),a(mc,function(a,b){b.print_string(a.getValue())}),a(nc,function(a,b){b.print(n(a.getValue()))}),a(oc,function(a,b){var c=a.getValue().toString();b.option("ascii_only")?c=b.to_ascii(c):b.option("unescape_regexps")&&(c=c.split("\\\\").map(function(a){return a.replace(/\\u[0-9a-fA-F]{4}|\\x[0-9a-fA-F]{2}/g,function(a){var b=parseInt(a.substr(2),16);return h(b)?String.fromCharCode(b):a})}).join("\\\\")),b.print(c);var d=b.parent();d instanceof Rb&&/^in/.test(d.operator)&&d.left===a&&b.print(" ")}),p(U,l),p(X,q),p(W,q),p($b,q),p(pb,q),p(ab,q),p(bb,l),p(lb,q),p(xb,q),p(yb,q),p($,q),p(kb,l),p(Jb,q),p(Bb,q),p(Cb,q),p(Db,q),p(Eb,q),p(lc,q),p(Wb,function(a,b){b.add_mapping(a.start,a.key)})}(),Q.prototype=new N,k(Q.prototype,{option:function(a){return this.options[a]},warn:function(){this.options.warnings&&U.warn.apply(U,arguments)},before:function(a,b){if(a._squeezed)return a;var c=!1;return a instanceof jb&&(a=a.hoist_declarations(this),c=!0),b(a,this),a=a.optimize(this),c&&a instanceof jb&&(a.drop_unused(this),b(a,this)),a._squeezed=!0,a}}),function(){function a(a,b){a.DEFMETHOD("optimize",function(a){var c=this;if(c._optimized)return c;var d=b(c,a);return d._optimized=!0,d===c?d:d.transform(a)})}function b(a,b,c){return c||(c={}),b&&(c.start||(c.start=b.start),c.end||(c.end=b.end)),new a(c)}function c(a,c,d){if(c instanceof U)return c.transform(a);switch(typeof c){case"string":return b(mc,d,{value:c}).optimize(a);case"number":return b(isNaN(c)?rc:nc,d,{value:c}).optimize(a);case"boolean":return b(c?xc:wc,d).optimize(a);case"undefined":return b(sc,d).optimize(a);default:if(null===c)return b(qc,d).optimize(a);if(c instanceof RegExp)return b(oc,d).optimize(a);throw new Error(n("Can't handle constant of type: {type}",{type:typeof c}))}}function d(a){if(null===a)return[];if(a instanceof $)return a.body;if(a instanceof _)return[];if(a instanceof V)return[a];throw new Error("Can't convert thing to statement array")}function e(a){return null===a?!0:a instanceof _?!0:a instanceof $?0==a.body.length:!1}function h(a){return a instanceof xb?a:(a instanceof gb||a instanceof hb||a instanceof db)&&a.body instanceof $?a.body:a}function i(a,c){function e(a){function d(a,c){return b(Y,a,{body:b(Tb,a,{operator:"=",left:b(Mb,c,{expression:b(ic,c,c),property:"$inject"}),right:b(Ub,a,{elements:a.argnames.map(function(a){return b(mc,a,{value:a.name})})})})})}return a.reduce(function(a,b){a.push(b);var e=b.start,f=e.comments_before;if(f&&f.length>0){var g=f.pop();/@ngInject/.test(g.value)&&(b instanceof ob?a.push(d(b,b.name)):b instanceof Eb?b.definitions.forEach(function(b){b.value&&b.value instanceof lb&&a.push(d(b.value,b.name))}):c.warn("Unknown statement marked with @ngInject [{file}:{line},{col}]",e))}return a},[])}function f(a){var b=[];return a.reduce(function(a,c){return c instanceof $?(p=!0,a.push.apply(a,f(c.body))):c instanceof _?p=!0:c instanceof X?b.indexOf(c.value)<0?(a.push(c),b.push(c.value)):p=!0:a.push(c),a},[])}function g(a,c){var e=c.self(),f=e instanceof lb,g=[];a:for(var i=a.length;--i>=0;){var j=a[i];switch(!0){case f&&j instanceof rb&&!j.value&&0==g.length:p=!0;continue a;case j instanceof wb:if(j.body instanceof rb){if((f&&0==g.length||g[0]instanceof rb&&!g[0].value)&&!j.body.value&&!j.alternative){p=!0;var k=b(Y,j.condition,{body:j.condition});g.unshift(k);continue a}if(g[0]instanceof rb&&j.body.value&&g[0].value&&!j.alternative){p=!0,j=j.clone(),j.alternative=g[0],g[0]=j.transform(c);continue a}if((0==g.length||g[0]instanceof rb)&&j.body.value&&!j.alternative&&f){p=!0,j=j.clone(),j.alternative=g[0]||b(rb,j,{value:b(sc,j)}),g[0]=j.transform(c);continue a}if(!j.body.value&&f){p=!0,j=j.clone(),j.condition=j.condition.negate(c),j.body=b($,j,{body:d(j.alternative).concat(g)}),j.alternative=null,g=[j.transform(c)];continue a}if(1==g.length&&f&&g[0]instanceof Y&&(!j.alternative||j.alternative instanceof Y)){p=!0,g.push(b(rb,g[0],{value:b(sc,g[0])}).transform(c)),g=d(j.alternative).concat(g),g.unshift(j);continue a}}var l=q(j.body),m=l instanceof tb?c.loopcontrol_target(l.label):null;if(l&&(l instanceof rb&&!l.value&&f||l instanceof vb&&e===h(m)||l instanceof ub&&m instanceof $&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0;var n=d(j.body).slice(0,-1);j=j.clone(),j.condition=j.condition.negate(c),j.body=b($,j,{body:d(j.alternative).concat(g)}),j.alternative=b($,j,{body:n}),g=[j.transform(c)];continue a}var l=q(j.alternative),m=l instanceof tb?c.loopcontrol_target(l.label):null;if(l&&(l instanceof rb&&!l.value&&f||l instanceof vb&&e===h(m)||l instanceof ub&&m instanceof $&&e===m)){l.label&&o(l.label.thedef.references,l),p=!0,j=j.clone(),j.body=b($,j.body,{body:d(j.body).concat(g)}),j.alternative=b($,j.alternative,{body:d(j.alternative).slice(0,-1)}),g=[j.transform(c)];continue a}g.unshift(j);break;default:g.unshift(j)}}return g}function i(a,b){var c=!1,d=a.length,e=b.self();return a=a.reduce(function(a,d){if(c)j(b,d,a);else{if(d instanceof tb){var f=b.loopcontrol_target(d.label);d instanceof ub&&f instanceof $&&h(f)===e||d instanceof vb&&h(f)===e?d.label&&o(d.label.thedef.references,d):a.push(d)}else a.push(d);q(d)&&(c=!0)}return a},[]),p=a.length!=d,a}function k(a,c){function d(){e=Kb.from_array(e),e&&f.push(b(Y,e,{body:e})),e=[]}if(a.length<2)return a;var e=[],f=[];return a.forEach(function(a){a instanceof Y?e.push(a.body):(d(),f.push(a))}),d(),f=l(f,c),p=f.length!=a.length,f}function l(a,c){function d(a){e.pop();var b=f.body;return b instanceof Kb?b.add(a):b=Kb.cons(b,a),b.transform(c)}var e=[],f=null;return a.forEach(function(a){if(f)if(a instanceof gb){var c={};try{f.body.walk(new x(function(a){if(a instanceof Rb&&"in"==a.operator)throw c})),!a.init||a.init instanceof Eb?a.init||(a.init=f.body,e.pop()):a.init=d(a.init)}catch(g){if(g!==c)throw g}}else a instanceof wb?a.condition=d(a.condition):a instanceof ib?a.expression=d(a.expression):a instanceof qb&&a.value?a.value=d(a.value):a instanceof qb?a.value=d(b(sc,a)):a instanceof xb&&(a.expression=d(a.expression));e.push(a),f=a instanceof Y?a:null}),e}function m(a){var b=null;return a.reduce(function(a,c){return c instanceof Eb&&b&&b.TYPE==c.TYPE?(b.definitions=b.definitions.concat(c.definitions),p=!0):c instanceof gb&&b instanceof Eb&&(!c.init||c.init.TYPE==b.TYPE)?(p=!0,a.pop(),c.init?c.init.definitions=b.definitions.concat(c.init.definitions):c.init=b,a.push(c),b=c):(b=c,a.push(c)),a},[])}function n(a){a.forEach(function(a){a instanceof Y&&(a.body=function c(a){return a.transform(new N(function(a){if(a instanceof Ib&&a.expression instanceof nb)return b(Pb,a,{operator:"!",expression:a});if(a instanceof Ib)a.expression=c(a.expression);else if(a instanceof Kb)a.car=c(a.car);else if(a instanceof Sb){var d=c(a.condition);if(d!==a.condition){a.condition=d;var e=a.consequent;a.consequent=a.alternative,a.alternative=e}}return a}))}(a.body))})}var p;do p=!1,c.option("angular")&&(a=e(a)),a=f(a),c.option("dead_code")&&(a=i(a,c)),c.option("if_return")&&(a=g(a,c)),c.option("sequences")&&(a=k(a,c)),c.option("join_vars")&&(a=m(a,c));while(p);return c.option("negate_iife")&&n(a,c),a}function j(a,b,c){a.warn("Dropping unreachable code [{file}:{line},{col}]",b.start),b.walk(new x(function(b){return b instanceof Eb?(a.warn("Declarations in unreachable code! [{file}:{line},{col}]",b.start),b.remove_initializers(),c.push(b),!0):b instanceof ob?(c.push(b),!0):b instanceof jb?!0:void 0}))}function k(a,b){return a.print_to_string().length>b.print_to_string().length?b:a}function q(a){return a&&a.aborts()}function r(a,c){function e(e){e=d(e),a.body instanceof $?(a.body=a.body.clone(),a.body.body=e.concat(a.body.body.slice(1)),a.body=a.body.transform(c)):a.body=b($,a.body,{body:e}).transform(c),r(a,c)}var f=a.body instanceof $?a.body.body[0]:a.body;f instanceof wb&&(f.body instanceof ub&&c.loopcontrol_target(f.body.label)===a?(a.condition=a.condition?b(Rb,a.condition,{left:a.condition,operator:"&&",right:f.condition.negate(c)}):f.condition.negate(c),e(f.alternative)):f.alternative instanceof ub&&c.loopcontrol_target(f.alternative.label)===a&&(a.condition=a.condition?b(Rb,a.condition,{left:a.condition,operator:"&&",right:f.condition}):f.condition,e(f.body)))}function v(a,b){var c=b.option("pure_getters");b.options.pure_getters=!1;var d=a.has_side_effects(b);return b.options.pure_getters=c,d}function w(a,c){return c.option("booleans")&&c.in_boolean_context()?b(xc,a):a}a(U,function(a){return a}),U.DEFMETHOD("equivalent_to",function(a){return this.print_to_string()==a.print_to_string()}),function(a){var b=["!","delete"],c=["in","instanceof","==","!=","===","!==","<","<=",">=",">"];a(U,function(){return!1}),a(Pb,function(){return f(this.operator,b)}),a(Rb,function(){return f(this.operator,c)||("&&"==this.operator||"||"==this.operator)&&this.left.is_boolean()&&this.right.is_boolean()}),a(Sb,function(){return this.consequent.is_boolean()&&this.alternative.is_boolean()}),a(Tb,function(){return"="==this.operator&&this.right.is_boolean()}),a(Kb,function(){return this.cdr.is_boolean()}),a(xc,function(){return!0}),a(wc,function(){return!0})}(function(a,b){a.DEFMETHOD("is_boolean",b)}),function(a){a(U,function(){return!1}),a(mc,function(){return!0}),a(Pb,function(){return"typeof"==this.operator}),a(Rb,function(a){return"+"==this.operator&&(this.left.is_string(a)||this.right.is_string(a))}),a(Tb,function(a){return("="==this.operator||"+="==this.operator)&&this.right.is_string(a)}),a(Kb,function(a){return this.cdr.is_string(a)}),a(Sb,function(a){return this.consequent.is_string(a)&&this.alternative.is_string(a)}),a(Ib,function(a){return a.option("unsafe")&&this.expression instanceof ic&&"String"==this.expression.name&&this.expression.undeclared()})}(function(a,b){a.DEFMETHOD("is_string",b)}),function(a){function b(a,b){if(!b)throw new Error("Compressor must be passed");return a._eval(b)}U.DEFMETHOD("evaluate",function(b){if(!b.option("evaluate"))return[this];try{var d=this._eval(b);return[k(c(b,d,this),this),d]}catch(e){if(e!==a)throw e;return[this]}}),a(V,function(){throw new Error(n("Cannot evaluate a statement [{file}:{line},{col}]",this.start))}),a(nb,function(){throw a}),a(U,function(){throw a}),a(lc,function(){return this.getValue()}),a(Pb,function(c){var d=this.expression;switch(this.operator){case"!":return!b(d,c);case"typeof":if(d instanceof nb)return"function";if(d=b(d,c),d instanceof RegExp)throw a;return typeof d;case"void":return void b(d,c);case"~":return~b(d,c);case"-":if(d=b(d,c),0===d)throw a;return-d;case"+":return+b(d,c)}throw a}),a(Rb,function(c){var d=this.left,e=this.right;switch(this.operator){case"&&":return b(d,c)&&b(e,c);case"||":return b(d,c)||b(e,c);case"|":return b(d,c)|b(e,c);case"&":return b(d,c)&b(e,c);case"^":return b(d,c)^b(e,c);case"+":return b(d,c)+b(e,c);case"*":return b(d,c)*b(e,c);case"/":return b(d,c)/b(e,c);case"%":return b(d,c)%b(e,c);case"-":return b(d,c)-b(e,c);case"<<":return b(d,c)<>":return b(d,c)>>b(e,c);case">>>":return b(d,c)>>>b(e,c);case"==":return b(d,c)==b(e,c);case"===":return b(d,c)===b(e,c);case"!=":return b(d,c)!=b(e,c);case"!==":return b(d,c)!==b(e,c);case"<":return b(d,c)":return b(d,c)>b(e,c);case">=":return b(d,c)>=b(e,c);case"in":return b(d,c)in b(e,c);case"instanceof":return b(d,c)instanceof b(e,c)}throw a}),a(Sb,function(a){return b(this.condition,a)?b(this.consequent,a):b(this.alternative,a)}),a(ic,function(c){var d=this.definition();if(d&&d.constant&&d.init)return b(d.init,c);throw a})}(function(a,b){a.DEFMETHOD("_eval",b)}),function(a){function c(a){return b(Pb,a,{operator:"!",expression:a})}a(U,function(){return c(this)}),a(V,function(){throw new Error("Cannot negate a statement")}),a(nb,function(){return c(this)}),a(Pb,function(){return"!"==this.operator?this.expression:c(this)}),a(Kb,function(a){var b=this.clone();return b.cdr=b.cdr.negate(a),b}),a(Sb,function(a){var b=this.clone();return b.consequent=b.consequent.negate(a),b.alternative=b.alternative.negate(a),k(c(this),b)}),a(Rb,function(a){var b=this.clone(),d=this.operator;if(a.option("unsafe_comps"))switch(d){case"<=":return b.operator=">",b;case"<":return b.operator=">=",b;case">=":return b.operator="<",b;case">":return b.operator="<=",b}switch(d){case"==":return b.operator="!=",b;case"!=":return b.operator="==",b;case"===":return b.operator="!==",b;case"!==":return b.operator="===",b;case"&&":return b.operator="||",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b);case"||":return b.operator="&&",b.left=b.left.negate(a),b.right=b.right.negate(a),k(c(this),b)}return c(this)})}(function(a,b){a.DEFMETHOD("negate",function(a){return b.call(this,a)})}),function(a){a(U,function(){return!0}),a(_,function(){return!1}),a(lc,function(){return!1}),a(kc,function(){return!1}),a(Ib,function(a){var b=a.option("pure_funcs");return b?b.indexOf(this.expression.print_to_string())<0:!0}),a(Z,function(a){for(var b=this.body.length;--b>=0;)if(this.body[b].has_side_effects(a))return!0;return!1}),a(Y,function(a){return this.body.has_side_effects(a)}),a(ob,function(){return!0}),a(nb,function(){return!1}),a(Rb,function(a){return this.left.has_side_effects(a)||this.right.has_side_effects(a)}),a(Tb,function(){return!0}),a(Sb,function(a){return this.condition.has_side_effects(a)||this.consequent.has_side_effects(a)||this.alternative.has_side_effects(a)}),a(Ob,function(a){return"delete"==this.operator||"++"==this.operator||"--"==this.operator||this.expression.has_side_effects(a)}),a(ic,function(){return!1}),a(Vb,function(a){for(var b=this.properties.length;--b>=0;)if(this.properties[b].has_side_effects(a))return!0;return!1}),a(Wb,function(a){return this.value.has_side_effects(a)}),a(Ub,function(a){for(var b=this.elements.length;--b>=0;)if(this.elements[b].has_side_effects(a))return!0;return!1}),a(Mb,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a):!0}),a(Nb,function(a){return a.option("pure_getters")?this.expression.has_side_effects(a)||this.property.has_side_effects(a):!0}),a(Lb,function(a){return!a.option("pure_getters")}),a(Kb,function(a){return this.car.has_side_effects(a)||this.cdr.has_side_effects(a)})}(function(a,b){a.DEFMETHOD("has_side_effects",b)}),function(a){function b(){var a=this.body.length;return a>0&&q(this.body[a-1])}a(V,function(){return null}),a(pb,function(){return this}),a($,b),a(yb,b),a(wb,function(){return this.alternative&&q(this.body)&&q(this.alternative)})}(function(a,b){a.DEFMETHOD("aborts",b)}),a(X,function(a){return a.scope.has_directive(a.value)!==a.scope?b(_,a):a}),a(W,function(a,c){return c.option("drop_debugger")?b(_,a):a}),a(bb,function(a,c){return a.body instanceof ub&&c.loopcontrol_target(a.body.label)===a.body?b(_,a):0==a.label.references.length?a.body:a}),a(Z,function(a,b){return a.body=i(a.body,b),a}),a($,function(a,c){switch(a.body=i(a.body,c),a.body.length){case 1:return a.body[0];case 0:return b(_,a)}return a}),jb.DEFMETHOD("drop_unused",function(a){var c=this;if(a.option("unused")&&!(c instanceof kb)&&!c.uses_eval){var d=[],e=new u,g=this,h=new x(function(b,f){if(b!==c){if(b instanceof ob)return e.add(b.name.name,b),!0;if(b instanceof Eb&&g===c)return b.definitions.forEach(function(b){b.value&&(e.add(b.name.name,b.value),b.value.has_side_effects(a)&&b.value.walk(h))}),!0;if(b instanceof ic)return m(d,b.definition()),!0;if(b instanceof jb){var i=g;return g=b,f(),g=i,!0}}});c.walk(h);for(var i=0;i =0;){var l=i[k];if(!l.unreferenced())break;i.pop(),a.warn("Dropping unused function argument {name} [{file}:{line},{col}]",{name:l.name,file:l.start.file,line:l.start.line,col:l.start.col})}if(e instanceof ob&&e!==c)return f(e.name.definition(),d)?e:(a.warn("Dropping unused function {name} [{file}:{line},{col}]",{name:e.name.name,file:e.name.start.file,line:e.name.start.line,col:e.name.start.col}),b(_,e));if(e instanceof Eb&&!(j.parent()instanceof hb)){var m=e.definitions.filter(function(b){if(f(b.name.definition(),d))return!0;var c={name:b.name.name,file:b.name.start.file,line:b.name.start.line,col:b.name.start.col};return b.value&&b.value.has_side_effects(a)?(b._unused_side_effects=!0,a.warn("Side effects in initialization of unused variable {name} [{file}:{line},{col}]",c),!0):(a.warn("Dropping unused variable {name} [{file}:{line},{col}]",c),!1)});m=p(m,function(a,b){return!a.value&&b.value?-1:!b.value&&a.value?1:0});for(var n=[],k=0;k 0&&(n.push(o.value),o.value=Kb.from_array(n),n=[]),++k)}return n=n.length>0?b($,e,{body:[b(Y,e,{body:Kb.from_array(n)})]}):null,0!=m.length||n?0==m.length?n:(e.definitions=m,n&&(n.body.unshift(e),e=n),e):b(_,e)}if(e instanceof gb&&(g(e,this),e.init instanceof $)){var q=e.init.body.slice(0,-1);return e.init=e.init.body.slice(-1)[0].body,q.push(e),h?S.splice(q):b($,e,{body:q})}return e instanceof jb&&e!==c?e:void 0});c.transform(j)}}),jb.DEFMETHOD("hoist_declarations",function(a){var c=a.option("hoist_funs"),d=a.option("hoist_vars"),e=this;if(c||d){var f=[],h=[],i=new u,j=0,k=0;e.walk(new x(function(a){return a instanceof jb&&a!==e?!0:a instanceof Fb?(++k,!0):void 0})),d=d&&k>1;var l=new N(function(a){if(a!==e){if(a instanceof X)return f.push(a),b(_,a);if(a instanceof ob&&c)return h.push(a),b(_,a);if(a instanceof Fb&&d){a.definitions.forEach(function(a){i.set(a.name.name,a),++j});var g=a.to_assignments(),k=l.parent();return k instanceof hb&&k.init===a?null==g?a.definitions[0].name:g:k instanceof gb&&k.init===a?g:g?b(Y,a,{body:g}):b(_,a)}if(a instanceof jb)return a}});if(e=e.transform(l),j>0){var m=[];if(i.each(function(a,b){e instanceof lb&&g(function(b){return b.name==a.name.name},e.argnames)?i.del(b):(a=a.clone(),a.value=null,m.push(a),i.set(b,a))}),m.length>0){for(var n=0;n 1){if(d[1])return b(gb,a,{body:a.body});if(a instanceof fb&&c.option("dead_code")){var e=[];return j(c,a.body,e),b($,a,{body:e})}}return a}),a(fb,function(a,c){return c.option("loops")?(a=db.prototype.optimize.call(a,c),a instanceof fb&&(r(a,c),a=b(gb,a,a).transform(c)),a):a}),a(gb,function(a,c){var d=a.condition;if(d&&(d=d.evaluate(c),a.condition=d[0]),!c.option("loops"))return a;if(d&&d.length>1&&!d[1]&&c.option("dead_code")){var e=[];return a.init instanceof V?e.push(a.init):a.init&&e.push(b(Y,a.init,{body:a.init})),j(c,a.body,e),b($,a,{body:e})}return r(a,c),a}),a(wb,function(a,c){if(!c.option("conditionals"))return a;var d=a.condition.evaluate(c);if(a.condition=d[0],d.length>1)if(d[1]){if(c.warn("Condition always true [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return a.alternative&&j(c,a.alternative,f),f.push(a.body),b($,a,{body:f}).transform(c)}}else if(c.warn("Condition always false [{file}:{line},{col}]",a.condition.start),c.option("dead_code")){var f=[];return j(c,a.body,f),a.alternative&&f.push(a.alternative),b($,a,{body:f}).transform(c)}e(a.alternative)&&(a.alternative=null);var g=a.condition.negate(c),h=k(a.condition,g)===g;if(a.alternative&&h){h=!1,a.condition=g;var i=a.body;a.body=a.alternative||b(_),a.alternative=i}if(e(a.body)&&e(a.alternative))return b(Y,a.condition,{body:a.condition}).transform(c);if(a.body instanceof Y&&a.alternative instanceof Y)return b(Y,a,{body:b(Sb,a,{condition:a.condition,consequent:a.body.body,alternative:a.alternative.body})}).transform(c);if(e(a.alternative)&&a.body instanceof Y)return h?b(Y,a,{body:b(Rb,a,{operator:"||",left:g,right:a.body.body})}).transform(c):b(Y,a,{body:b(Rb,a,{operator:"&&",left:a.condition,right:a.body.body})}).transform(c); +if(a.body instanceof _&&a.alternative&&a.alternative instanceof Y)return b(Y,a,{body:b(Rb,a,{operator:"||",left:a.condition,right:a.alternative.body})}).transform(c);if(a.body instanceof qb&&a.alternative instanceof qb&&a.body.TYPE==a.alternative.TYPE)return b(a.body.CTOR,a,{value:b(Sb,a,{condition:a.condition,consequent:a.body.value||b(sc,a.body).optimize(c),alternative:a.alternative.value||b(sc,a.alternative).optimize(c)})}).transform(c);if(a.body instanceof wb&&!a.body.alternative&&!a.alternative&&(a.condition=b(Rb,a.condition,{operator:"&&",left:a.condition,right:a.body.condition}).transform(c),a.body=a.body.body),q(a.body)&&a.alternative){var l=a.alternative;return a.alternative=null,b($,a,{body:[a,l]}).transform(c)}if(q(a.alternative)){var m=a.body;return a.body=a.alternative,a.condition=h?g:a.condition.negate(c),a.alternative=null,b($,a,{body:[a,m]}).transform(c)}return a}),a(xb,function(a,c){if(0==a.body.length&&c.option("conditionals"))return b(Y,a,{body:a.expression}).transform(c);for(;;){var d=a.body[a.body.length-1];if(d){var e=d.body[d.body.length-1];if(e instanceof ub&&h(c.loopcontrol_target(e.label))===a&&d.body.pop(),d instanceof zb&&0==d.body.length){a.body.pop();continue}}break}var f=a.expression.evaluate(c);a:if(2==f.length)try{if(a.expression=f[0],!c.option("dead_code"))break a;var g=f[1],i=!1,j=!1,k=!1,l=!1,m=!1,n=new N(function(d,e,f){if(d instanceof lb||d instanceof Y)return d;if(d instanceof xb&&d===a)return d=d.clone(),e(d,this),m?d:b($,d,{body:d.body.reduce(function(a,b){return a.concat(b.body)},[])}).transform(c);if(d instanceof wb||d instanceof Bb){var h=i;return i=!j,e(d,this),i=h,d}if(d instanceof ab||d instanceof xb){var h=j;return j=!0,e(d,this),j=h,d}if(d instanceof ub&&this.loopcontrol_target(d.label)===a)return i?(m=!0,d):j?d:(l=!0,f?S.skip:b(_,d));if(d instanceof yb&&this.parent()===a){if(l)return S.skip;if(d instanceof Ab){var n=d.expression.evaluate(c);if(n.length<2)throw a;return n[1]===g||k?(k=!0,q(d)&&(l=!0),e(d,this),d):S.skip}return e(d,this),d}});n.stack=c.stack.slice(),a=a.transform(n)}catch(o){if(o!==a)throw o}return a}),a(Ab,function(a,b){return a.body=i(a.body,b),a}),a(Bb,function(a,b){return a.body=i(a.body,b),a}),Eb.DEFMETHOD("remove_initializers",function(){this.definitions.forEach(function(a){a.value=null})}),Eb.DEFMETHOD("to_assignments",function(){var a=this.definitions.reduce(function(a,c){if(c.value){var d=b(ic,c.name,c.name);a.push(b(Tb,c,{operator:"=",left:d,right:c.value}))}return a},[]);return 0==a.length?null:Kb.from_array(a)}),a(Eb,function(a){return 0==a.definitions.length?b(_,a):a}),a(nb,function(a,b){return a=lb.prototype.optimize.call(a,b),b.option("unused")&&a.name&&a.name.unreferenced()&&(a.name=null),a}),a(Ib,function(a,d){if(d.option("unsafe")){var e=a.expression;if(e instanceof ic&&e.undeclared())switch(e.name){case"Array":if(1!=a.args.length)return b(Ub,a,{elements:a.args}).transform(d);break;case"Object":if(0==a.args.length)return b(Vb,a,{properties:[]});break;case"String":if(0==a.args.length)return b(mc,a,{value:""});if(a.args.length<=1)return b(Rb,a,{left:a.args[0],operator:"+",right:b(mc,a,{value:""})}).transform(d);break;case"Number":if(0==a.args.length)return b(nc,a,{value:0});if(1==a.args.length)return b(Pb,a,{expression:a.args[0],operator:"+"}).transform(d);case"Boolean":if(0==a.args.length)return b(wc,a);if(1==a.args.length)return b(Pb,a,{expression:b(Pb,null,{expression:a.args[0],operator:"!"}),operator:"!"}).transform(d);break;case"Function":if(t(a.args,function(a){return a instanceof mc}))try{var f="(function("+a.args.slice(0,-1).map(function(a){return a.value}).join(",")+"){"+a.args[a.args.length-1].value+"})()",g=M(f);g.figure_out_scope({screw_ie8:d.option("screw_ie8")});var h=new Q(d.options);g=g.transform(h),g.figure_out_scope({screw_ie8:d.option("screw_ie8")}),g.mangle_names();var i;try{g.walk(new x(function(a){if(a instanceof lb)throw i=a,g}))}catch(j){if(j!==g)throw j}var l=i.argnames.map(function(c,d){return b(mc,a.args[d],{value:c.print_to_string()})}),f=P();return $.prototype._codegen.call(i,i,f),f=f.toString().replace(/^\{|\}$/g,""),l.push(b(mc,a.args[a.args.length-1],{value:f})),a.args=l,a}catch(j){if(!(j instanceof I))throw console.log(j),j;d.warn("Error parsing code passed to new Function [{file}:{line},{col}]",a.args[a.args.length-1].start),d.warn(j.toString())}}else{if(e instanceof Mb&&"toString"==e.property&&0==a.args.length)return b(Rb,a,{left:b(mc,a,{value:""}),operator:"+",right:e.expression}).transform(d);if(e instanceof Mb&&e.expression instanceof Ub&&"join"==e.property){var m=0==a.args.length?",":a.args[0].evaluate(d)[1];if(null!=m){var n=e.expression.elements.reduce(function(a,b){if(b=b.evaluate(d),0==a.length||1==b.length)a.push(b);else{var e=a[a.length-1];if(2==e.length){var f=""+e[1]+m+b[1];a[a.length-1]=[c(d,f,e[0]),f]}else a.push(b)}return a},[]);if(0==n.length)return b(mc,a,{value:""});if(1==n.length)return n[0][0];if(""==m){var o;return o=n[0][0]instanceof mc||n[1][0]instanceof mc?n.shift()[0]:b(mc,a,{value:""}),n.reduce(function(a,c){return b(Rb,c[0],{operator:"+",left:a,right:c[0]})},o).transform(d)}var p=a.clone();return p.expression=p.expression.clone(),p.expression.expression=p.expression.expression.clone(),p.expression.expression.elements=n.map(function(a){return a[0]}),k(a,p)}}}}return d.option("side_effects")&&a.expression instanceof nb&&0==a.args.length&&!Z.prototype.has_side_effects.call(a.expression,d)?b(sc,a).transform(d):d.option("drop_console")&&a.expression instanceof Lb&&a.expression.expression instanceof ic&&"console"==a.expression.expression.name&&a.expression.expression.undeclared()?b(sc,a).transform(d):a.evaluate(d)[0]}),a(Jb,function(a,c){if(c.option("unsafe")){var d=a.expression;if(d instanceof ic&&d.undeclared())switch(d.name){case"Object":case"RegExp":case"Function":case"Error":case"Array":return b(Ib,a,a).transform(c)}}return a}),a(Kb,function(a,c){if(!c.option("side_effects"))return a;if(!a.car.has_side_effects(c)){var d;if(!(a.cdr instanceof ic&&"eval"==a.cdr.name&&a.cdr.undeclared()&&(d=c.parent())instanceof Ib&&d.expression===a))return a.cdr}if(c.option("cascade")){if(a.car instanceof Tb&&!a.car.left.has_side_effects(c)){if(a.car.left.equivalent_to(a.cdr))return a.car;if(a.cdr instanceof Ib&&a.cdr.expression.equivalent_to(a.car.left))return a.cdr.expression=a.car,a.cdr}if(!a.car.has_side_effects(c)&&!a.cdr.has_side_effects(c)&&a.car.equivalent_to(a.cdr))return a.car}return a.cdr instanceof Pb&&"void"==a.cdr.operator&&!a.cdr.expression.has_side_effects(c)?(a.cdr.operator=a.car,a.cdr):a.cdr instanceof sc?b(Pb,a,{operator:"void",expression:a.car}):a}),Ob.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")&&this.expression instanceof Kb){var b=this.expression,c=b.to_array();return this.expression=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}return this}),a(Qb,function(a,b){return a.lift_sequences(b)}),a(Pb,function(a,c){a=a.lift_sequences(c);var d=a.expression;if(c.option("booleans")&&c.in_boolean_context()){switch(a.operator){case"!":if(d instanceof Pb&&"!"==d.operator)return d.expression;break;case"typeof":return c.warn("Boolean expression always true [{file}:{line},{col}]",a.start),b(xc,a)}d instanceof Rb&&"!"==a.operator&&(a=k(a,d.negate(c)))}return a.evaluate(c)[0]}),Rb.DEFMETHOD("lift_sequences",function(a){if(a.option("sequences")){if(this.left instanceof Kb){var b=this.left,c=b.to_array();return this.left=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}if(this.right instanceof Kb&&this instanceof Tb&&!v(this.left,a)){var b=this.right,c=b.to_array();return this.right=c.pop(),c.push(this),b=Kb.from_array(c).transform(a)}}return this});var y=s("== === != !== * & | ^");a(Rb,function(a,c){var d=c.has_directive("use asm")?l:function(b,d){if(d||!a.left.has_side_effects(c)&&!a.right.has_side_effects(c)){b&&(a.operator=b);var e=a.left;a.left=a.right,a.right=e}};if(y(a.operator)&&(a.right instanceof lc&&!(a.left instanceof lc)&&(a.left instanceof Rb&&Qc[a.left.operator]>=Qc[a.operator]||d(null,!0)),/^[!=]==?$/.test(a.operator))){if(a.left instanceof ic&&a.right instanceof Sb){if(a.right.consequent instanceof ic&&a.right.consequent.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition;if(/^!=/.test(a.operator))return a.right.condition.negate(c)}if(a.right.alternative instanceof ic&&a.right.alternative.definition()===a.left.definition()){if(/^==/.test(a.operator))return a.right.condition.negate(c);if(/^!=/.test(a.operator))return a.right.condition}}if(a.right instanceof ic&&a.left instanceof Sb){if(a.left.consequent instanceof ic&&a.left.consequent.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition;if(/^!=/.test(a.operator))return a.left.condition.negate(c)}if(a.left.alternative instanceof ic&&a.left.alternative.definition()===a.right.definition()){if(/^==/.test(a.operator))return a.left.condition.negate(c);if(/^!=/.test(a.operator))return a.left.condition}}}if(a=a.lift_sequences(c),c.option("comparisons"))switch(a.operator){case"===":case"!==":(a.left.is_string(c)&&a.right.is_string(c)||a.left.is_boolean()&&a.right.is_boolean())&&(a.operator=a.operator.substr(0,2));case"==":case"!=":a.left instanceof mc&&"undefined"==a.left.value&&a.right instanceof Pb&&"typeof"==a.right.operator&&c.option("unsafe")&&(a.right.expression instanceof ic&&a.right.expression.undeclared()||(a.right=a.right.expression,a.left=b(sc,a.left).optimize(c),2==a.operator.length&&(a.operator+="=")))}if(c.option("booleans")&&c.in_boolean_context())switch(a.operator){case"&&":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&!e[1]||f.length>1&&!f[1])return c.warn("Boolean && always false [{file}:{line},{col}]",a.start),b(wc,a);if(e.length>1&&e[1])return f[0];if(f.length>1&&f[1])return e[0];break;case"||":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[1]||f.length>1&&f[1])return c.warn("Boolean || always true [{file}:{line},{col}]",a.start),b(xc,a);if(e.length>1&&!e[1])return f[0];if(f.length>1&&!f[1])return e[0];break;case"+":var e=a.left.evaluate(c),f=a.right.evaluate(c);if(e.length>1&&e[0]instanceof mc&&e[1]||f.length>1&&f[0]instanceof mc&&f[1])return c.warn("+ in boolean context always true [{file}:{line},{col}]",a.start),b(xc,a)}if(c.option("comparisons")){if(!(c.parent()instanceof Rb)||c.parent()instanceof Tb){var g=b(Pb,a,{operator:"!",expression:a.negate(c)});a=k(a,g)}switch(a.operator){case"<":d(">");break;case"<=":d(">=")}}return"+"==a.operator&&a.right instanceof mc&&""===a.right.getValue()&&a.left instanceof Rb&&"+"==a.left.operator&&a.left.is_string(c)?a.left:(c.option("evaluate")&&"+"==a.operator&&(a.left instanceof lc&&a.right instanceof Rb&&"+"==a.right.operator&&a.right.left instanceof lc&&a.right.is_string(c)&&(a=b(Rb,a,{operator:"+",left:b(mc,null,{value:""+a.left.getValue()+a.right.left.getValue(),start:a.left.start,end:a.right.left.end}),right:a.right.right})),a.right instanceof lc&&a.left instanceof Rb&&"+"==a.left.operator&&a.left.right instanceof lc&&a.left.is_string(c)&&(a=b(Rb,a,{operator:"+",left:a.left.left,right:b(mc,null,{value:""+a.left.right.getValue()+a.right.getValue(),start:a.left.right.start,end:a.right.end})})),a.left instanceof Rb&&"+"==a.left.operator&&a.left.is_string(c)&&a.left.right instanceof lc&&a.right instanceof Rb&&"+"==a.right.operator&&a.right.left instanceof lc&&a.right.is_string(c)&&(a=b(Rb,a,{operator:"+",left:b(Rb,a.left,{operator:"+",left:a.left.left,right:b(mc,null,{value:""+a.left.right.getValue()+a.right.left.getValue(),start:a.left.right.start,end:a.right.left.end})}),right:a.right.right}))),a.right instanceof Rb&&a.right.operator==a.operator&&("*"==a.operator||"&&"==a.operator||"||"==a.operator)?(a.left=b(Rb,a.left,{operator:a.operator,left:a.left,right:a.right.left}),a.right=a.right.right,a.transform(c)):a.evaluate(c)[0])}),a(ic,function(a,d){if(a.undeclared()){var e=d.option("global_defs");if(e&&e.hasOwnProperty(a.name))return c(d,e[a.name],a);switch(a.name){case"undefined":return b(sc,a);case"NaN":return b(rc,a);case"Infinity":return b(uc,a)}}return a}),a(sc,function(a,c){if(c.option("unsafe")){var d=c.find_parent(jb),e=d.find_variable("undefined");if(e){var f=b(ic,a,{name:"undefined",scope:d,thedef:e});return f.reference(),f}}return a});var z=["+","-","/","*","%",">>","<<",">>>","|","^","&"];a(Tb,function(a,b){return a=a.lift_sequences(b),"="==a.operator&&a.left instanceof ic&&a.right instanceof Rb&&a.right.left instanceof ic&&a.right.left.name==a.left.name&&f(a.right.operator,z)&&(a.operator=a.right.operator+"=",a.right=a.right.right),a}),a(Sb,function(a,c){if(!c.option("conditionals"))return a;if(a.condition instanceof Kb){var d=a.condition.car;return a.condition=a.condition.cdr,Kb.cons(d,a)}var e=a.condition.evaluate(c);if(e.length>1)return e[1]?(c.warn("Condition always true [{file}:{line},{col}]",a.start),a.consequent):(c.warn("Condition always false [{file}:{line},{col}]",a.start),a.alternative);var f=e[0].negate(c);k(e[0],f)===f&&(a=b(Sb,a,{condition:f,consequent:a.alternative,alternative:a.consequent}));var g=a.consequent,h=a.alternative;if(g instanceof Tb&&h instanceof Tb&&g.operator==h.operator&&g.left.equivalent_to(h.left))return b(Tb,a,{operator:g.operator,left:g.left,right:b(Sb,a,{condition:a.condition,consequent:g.right,alternative:h.right})});if(g instanceof Ib&&h.TYPE===g.TYPE&&g.args.length==h.args.length&&g.expression.equivalent_to(h.expression)){if(0==g.args.length)return b(Kb,a,{car:a.condition,cdr:g});if(1==g.args.length)return g.args[0]=b(Sb,a,{condition:a.condition,consequent:g.args[0],alternative:h.args[0]}),g}return g instanceof Sb&&g.alternative.equivalent_to(h)?b(Sb,a,{condition:b(Rb,a,{left:a.condition,operator:"&&",right:g.condition}),consequent:g.consequent,alternative:h}):a}),a(vc,function(a,c){if(c.option("booleans")){var d=c.parent();return d instanceof Rb&&("=="==d.operator||"!="==d.operator)?(c.warn("Non-strict equality against boolean: {operator} {value} [{file}:{line},{col}]",{operator:d.operator,value:a.value,file:d.start.file,line:d.start.line,col:d.start.col}),b(nc,a,{value:+a.value})):b(Pb,a,{operator:"!",expression:b(nc,a,{value:1-a.value})})}return a}),a(Nb,function(a,c){var d=a.property;if(d instanceof mc&&c.option("properties")){if(d=d.getValue(),Ac(d)?c.option("screw_ie8"):G(d))return b(Mb,a,{expression:a.expression,property:d});var e=parseFloat(d);isNaN(e)||e.toString()!=d||(a.property=b(nc,a.property,{value:e}))}return a}),a(Ub,w),a(Vb,w),a(oc,w)}(),function(){function a(a){var d="prefix"in a?a.prefix:"UnaryExpression"==a.type?!0:!1;return new(d?Pb:Qb)({start:b(a),end:c(a),operator:a.operator,expression:e(a.argument)})}function b(a){return new T({file:a.loc&&a.loc.source,line:a.loc&&a.loc.start.line,col:a.loc&&a.loc.start.column,pos:a.start,endpos:a.start})}function c(a){return new T({file:a.loc&&a.loc.source,line:a.loc&&a.loc.end.line,col:a.loc&&a.loc.end.column,pos:a.end,endpos:a.end})}function d(a,d,g){var h="function From_Moz_"+a+"(M){\n";return h+="return new mytype({\nstart: my_start_token(M),\nend: my_end_token(M)",g&&g.split(/\s*,\s*/).forEach(function(a){var b=/([a-z0-9$_]+)(=|@|>|%)([a-z0-9$_]+)/i.exec(a);if(!b)throw new Error("Can't understand property map: "+a);var c="M."+b[1],d=b[2],e=b[3];if(h+=",\n"+e+": ","@"==d)h+=c+".map(from_moz)";else if(">"==d)h+="from_moz("+c+")";else if("="==d)h+=c;else{if("%"!=d)throw new Error("Can't understand operator in propmap: "+a);h+="from_moz("+c+").body"}}),h+="\n})}",h=new Function("mytype","my_start_token","my_end_token","from_moz","return("+h+")")(d,b,c,e),f[a]=h}function e(a){g.push(a);var b=null!=a?f[a.type](a):null;return g.pop(),b}var f={TryStatement:function(a){return new Bb({start:b(a),end:c(a),body:e(a.block).body,bcatch:e(a.handlers[0]),bfinally:a.finalizer?new Db(e(a.finalizer)):null})},CatchClause:function(a){return new Cb({start:b(a),end:c(a),argname:e(a.param),body:e(a.body).body})},ObjectExpression:function(a){return new Vb({start:b(a),end:c(a),properties:a.properties.map(function(a){var d=a.key,f="Identifier"==d.type?d.name:d.value,g={start:b(d),end:c(a.value),key:f,value:e(a.value)};switch(a.kind){case"init":return new Xb(g);case"set":return g.value.name=e(d),new Yb(g);case"get":return g.value.name=e(d),new Zb(g)}})})},SequenceExpression:function(a){return Kb.from_array(a.expressions.map(e))},MemberExpression:function(a){return new(a.computed?Nb:Mb)({start:b(a),end:c(a),property:a.computed?e(a.property):a.property.name,expression:e(a.object)})},SwitchCase:function(a){return new(a.test?Ab:zb)({start:b(a),end:c(a),expression:e(a.test),body:a.consequent.map(e)})},Literal:function(a){var d=a.value,e={start:b(a),end:c(a)};if(null===d)return new qc(e);switch(typeof d){case"string":return e.value=d,new mc(e);case"number":return e.value=d,new nc(e);case"boolean":return new(d?xc:wc)(e);default:return e.value=d,new oc(e)}},UnaryExpression:a,UpdateExpression:a,Identifier:function(a){var d=g[g.length-2];return new("this"==a.name?kc:"LabeledStatement"==d.type?hc:"VariableDeclarator"==d.type&&d.id===a?"const"==d.kind?cc:bc:"FunctionExpression"==d.type?d.id===a?fc:dc:"FunctionDeclaration"==d.type?d.id===a?ec:dc:"CatchClause"==d.type?gc:"BreakStatement"==d.type||"ContinueStatement"==d.type?jc:ic)({start:b(a),end:c(a),name:a.name})}};d("Node",U),d("Program",kb,"body@body"),d("Function",nb,"id>name, params@argnames, body%body"),d("EmptyStatement",_),d("BlockStatement",$,"body@body"),d("ExpressionStatement",Y,"expression>body"),d("IfStatement",wb,"test>condition, consequent>body, alternate>alternative"),d("LabeledStatement",bb,"label>label, body>body"),d("BreakStatement",ub,"label>label"),d("ContinueStatement",vb,"label>label"),d("WithStatement",ib,"object>expression, body>body"),d("SwitchStatement",xb,"discriminant>expression, cases@body"),d("ReturnStatement",rb,"argument>value"),d("ThrowStatement",sb,"argument>value"),d("WhileStatement",fb,"test>condition, body>body"),d("DoWhileStatement",eb,"test>condition, body>body"),d("ForStatement",gb,"init>init, test>condition, update>step, body>body"),d("ForInStatement",hb,"left>init, right>object, body>body"),d("DebuggerStatement",W),d("FunctionDeclaration",ob,"id>name, params@argnames, body%body"),d("VariableDeclaration",Fb,"declarations@definitions"),d("VariableDeclarator",Hb,"id>name, init>value"),d("ThisExpression",kc),d("ArrayExpression",Ub,"elements@elements"),d("FunctionExpression",nb,"id>name, params@argnames, body%body"),d("BinaryExpression",Rb,"operator=operator, left>left, right>right"),d("AssignmentExpression",Tb,"operator=operator, left>left, right>right"),d("LogicalExpression",Rb,"operator=operator, left>left, right>right"),d("ConditionalExpression",Sb,"test>condition, consequent>consequent, alternate>alternative"),d("NewExpression",Jb,"callee>expression, arguments@args"),d("CallExpression",Ib,"callee>expression, arguments@args");var g=null;U.from_mozilla_ast=function(a){var b=g;g=[];var c=e(a);return g=b,c}}(),a.array_to_hash=c,a.slice=d,a.characters=e,a.member=f,a.find_if=g,a.repeat_string=h,a.DefaultsError=i,a.defaults=j,a.merge=k,a.noop=l,a.MAP=S,a.push_uniq=m,a.string_template=n,a.remove=o,a.mergeSort=p,a.set_difference=q,a.set_intersection=r,a.makePredicate=s,a.all=t,a.Dictionary=u,a.DEFNODE=v,a.AST_Token=T,a.AST_Node=U,a.AST_Statement=V,a.AST_Debugger=W,a.AST_Directive=X,a.AST_SimpleStatement=Y,a.walk_body=w,a.AST_Block=Z,a.AST_BlockStatement=$,a.AST_EmptyStatement=_,a.AST_StatementWithBody=ab,a.AST_LabeledStatement=bb,a.AST_IterationStatement=cb,a.AST_DWLoop=db,a.AST_Do=eb,a.AST_While=fb,a.AST_For=gb,a.AST_ForIn=hb,a.AST_With=ib,a.AST_Scope=jb,a.AST_Toplevel=kb,a.AST_Lambda=lb,a.AST_Accessor=mb,a.AST_Function=nb,a.AST_Defun=ob,a.AST_Jump=pb,a.AST_Exit=qb,a.AST_Return=rb,a.AST_Throw=sb,a.AST_LoopControl=tb,a.AST_Break=ub,a.AST_Continue=vb,a.AST_If=wb,a.AST_Switch=xb,a.AST_SwitchBranch=yb,a.AST_Default=zb,a.AST_Case=Ab,a.AST_Try=Bb,a.AST_Catch=Cb,a.AST_Finally=Db,a.AST_Definitions=Eb,a.AST_Var=Fb,a.AST_Const=Gb,a.AST_VarDef=Hb,a.AST_Call=Ib,a.AST_New=Jb,a.AST_Seq=Kb,a.AST_PropAccess=Lb,a.AST_Dot=Mb,a.AST_Sub=Nb,a.AST_Unary=Ob,a.AST_UnaryPrefix=Pb,a.AST_UnaryPostfix=Qb,a.AST_Binary=Rb,a.AST_Conditional=Sb,a.AST_Assign=Tb,a.AST_Array=Ub,a.AST_Object=Vb,a.AST_ObjectProperty=Wb,a.AST_ObjectKeyVal=Xb,a.AST_ObjectSetter=Yb,a.AST_ObjectGetter=Zb,a.AST_Symbol=$b,a.AST_SymbolAccessor=_b,a.AST_SymbolDeclaration=ac,a.AST_SymbolVar=bc,a.AST_SymbolConst=cc,a.AST_SymbolFunarg=dc,a.AST_SymbolDefun=ec,a.AST_SymbolLambda=fc,a.AST_SymbolCatch=gc,a.AST_Label=hc,a.AST_SymbolRef=ic,a.AST_LabelRef=jc,a.AST_This=kc,a.AST_Constant=lc,a.AST_String=mc,a.AST_Number=nc,a.AST_RegExp=oc,a.AST_Atom=pc,a.AST_Null=qc,a.AST_NaN=rc,a.AST_Undefined=sc,a.AST_Hole=tc,a.AST_Infinity=uc,a.AST_Boolean=vc,a.AST_False=wc,a.AST_True=xc,a.TreeWalker=x,a.KEYWORDS=yc,a.KEYWORDS_ATOM=zc,a.RESERVED_WORDS=Ac,a.KEYWORDS_BEFORE_EXPRESSION=Bc,a.OPERATOR_CHARS=Cc,a.RE_HEX_NUMBER=Dc,a.RE_OCT_NUMBER=Ec,a.RE_DEC_NUMBER=Fc,a.OPERATORS=Gc,a.WHITESPACE_CHARS=Hc,a.PUNC_BEFORE_EXPRESSION=Ic,a.PUNC_CHARS=Jc,a.REGEXP_MODIFIERS=Kc,a.UNICODE=Lc,a.is_letter=y,a.is_digit=z,a.is_alphanumeric_char=A,a.is_unicode_combining_mark=B,a.is_unicode_connector_punctuation=C,a.is_identifier=D,a.is_identifier_start=E,a.is_identifier_char=F,a.is_identifier_string=G,a.parse_js_number=H,a.JS_Parse_Error=I,a.js_error=J,a.is_token=K,a.EX_EOF=Mc,a.tokenizer=L,a.UNARY_PREFIX=Nc,a.UNARY_POSTFIX=Oc,a.ASSIGNMENT=Pc,a.PRECEDENCE=Qc,a.STATEMENTS_WITH_LABELS=Rc,a.ATOMIC_START_TOKEN=Sc,a.parse=M,a.TreeTransformer=N,a.SymbolDef=O,a.base54=Tc,a.OutputStream=P,a.Compressor=Q,a.SourceMap=R}({},function(){return this}()),"function"!=typeof Blob&&"object"!=typeof Blob||"undefined"==typeof URL)if("function"!=typeof Blob&&"object"!=typeof Blob||"undefined"==typeof webkitURL)var Blob=function(a){"use strict";var b=a.BlobBuilder||a.WebKitBlobBuilder||a.MozBlobBuilder||a.MSBlobBuilder||function(a){var b=function(a){return Object.prototype.toString.call(a).match(/^\[object\s(.*)\]$/)[1]},c=function(){this.data=[]},d=function(a,b,c){this.data=a,this.size=a.length,this.type=b,this.encoding=c},e=c.prototype,f=d.prototype,g=a.FileReaderSync,h=function(a){this.code=this[this.name=a]},i="NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR".split(" "),j=i.length,k=a.URL||a.webkitURL||a,l=k.createObjectURL,m=k.revokeObjectURL,n=k,o=a.btoa,p=a.atob,q=a.ArrayBuffer,r=a.Uint8Array;for(d.fake=f.fake=!0;j--;)h.prototype[i[j]]=j+1;return k.createObjectURL||(n=a.URL={}),n.createObjectURL=function(a){var b,c=a.type;return null===c&&(c="application/octet-stream"),a instanceof d?(b="data:"+c,"base64"===a.encoding?b+";base64,"+a.data:"URI"===a.encoding?b+","+decodeURIComponent(a.data):o?b+";base64,"+o(a.data):b+","+encodeURIComponent(a.data)):l?l.call(k,a):void 0},n.revokeObjectURL=function(a){"data:"!==a.substring(0,5)&&m&&m.call(k,a)},e.append=function(a){var c=this.data;if(r&&(a instanceof q||a instanceof r)){for(var e="",f=new r(a),i=0,j=f.length;j>i;i++)e+=String.fromCharCode(f[i]);c.push(e)}else if("Blob"===b(a)||"File"===b(a)){if(!g)throw new h("NOT_READABLE_ERR");var k=new g;c.push(k.readAsBinaryString(a))}else a instanceof d?"base64"===a.encoding&&p?c.push(p(a.data)):"URI"===a.encoding?c.push(decodeURIComponent(a.data)):"raw"===a.encoding&&c.push(a.data):("string"!=typeof a&&(a+=""),c.push(unescape(encodeURIComponent(a))))},e.getBlob=function(a){return arguments.length||(a=null),new d(this.data.join(""),a,"raw")},e.toString=function(){return"[object BlobBuilder]"},f.slice=function(a,b,c){var e=arguments.length;return 3>e&&(c=null),new d(this.data.slice(a,e>1?b:this.data.length),c,this.encoding)},f.toString=function(){return"[object Blob]"},c}(a);return function(a,c){var d=c?c.type||"":"",e=new b;if(a)for(var f=0,g=a.length;g>f;f++)e.append(a[f]);return e.getBlob(d)}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content||this);else self.URL=webkitURL;/*! @source http://purl.eligrey.com/github/FileSaver.js/blob/master/FileSaver.js */ var saveAs=saveAs||navigator.msSaveOrOpenBlob&&navigator.msSaveOrOpenBlob.bind(navigator)||function(a){"use strict";if(!/MSIE [1-9]\./.test(navigator.userAgent)){var b=a.document,c=function(){return a.URL||a.webkitURL||a},d=a.URL||a.webkitURL||a,e=b.createElementNS("http://www.w3.org/1999/xhtml","a"),f=!a.externalHost&&"download"in e,g=a.webkitRequestFileSystem,h=a.requestFileSystem||g||a.mozRequestFileSystem,i=function(b){(a.setImmediate||a.setTimeout)(function(){throw b},0)},j="application/octet-stream",k=0,l=[],m=function(){for(var a=l.length;a--;){var b=l[a];"string"==typeof b?d.revokeObjectURL(b):b.remove()}l.length=0},n=function(a,b,c){b=[].concat(b);for(var d=b.length;d--;){var e=a["on"+b[d]];if("function"==typeof e)try{e.call(a,c||a)}catch(f){i(f)}}},o=function(d,i){var m,o,p,q=this,r=d.type,s=!1,t=function(){var a=c().createObjectURL(d);return l.push(a),a},u=function(){n(q,"writestart progress write writeend".split(" "))},v=function(){(s||!m)&&(m=t(d)),o?o.location.href=m:window.open(m,"_blank"),q.readyState=q.DONE,u()},w=function(a){return function(){return q.readyState!==q.DONE?a.apply(this,arguments):void 0}},x={create:!0,exclusive:!1};if(q.readyState=q.INIT,i||(i="download"),f){m=t(d),b=a.document,e=b.createElementNS("http://www.w3.org/1999/xhtml","a"),e.href=m,e.download=i;var y=b.createEvent("MouseEvents");return y.initMouseEvent("click",!0,!1,a,0,0,0,0,0,!1,!1,!1,!1,0,null),e.dispatchEvent(y),q.readyState=q.DONE,void u()}return a.chrome&&r&&r!==j&&(p=d.slice||d.webkitSlice,d=p.call(d,0,d.size,j),s=!0),g&&"download"!==i&&(i+=".download"),(r===j||g)&&(o=a),h?(k+=d.size,void h(a.TEMPORARY,k,w(function(a){a.root.getDirectory("saved",x,w(function(a){var b=function(){a.getFile(i,x,w(function(a){a.createWriter(w(function(b){b.onwriteend=function(b){o.location.href=a.toURL(),l.push(a),q.readyState=q.DONE,n(q,"writeend",b)},b.onerror=function(){var a=b.error;a.code!==a.ABORT_ERR&&v()},"writestart progress write abort".split(" ").forEach(function(a){b["on"+a]=q["on"+a]}),b.write(d),q.abort=function(){b.abort(),q.readyState=q.DONE},q.readyState=q.WRITING}),v)}),v)};a.getFile(i,{create:!1},w(function(a){a.remove(),b()}),w(function(a){a.code===a.NOT_FOUND_ERR?b():v()}))}),v)}),v)):void v()},p=o.prototype,q=function(a,b){return new o(a,b)};return p.abort=function(){var a=this;a.readyState=a.DONE,n(a,"abort")},p.readyState=p.INIT=0,p.WRITING=1,p.DONE=2,p.error=p.onwritestart=p.onprogress=p.onwrite=p.onabort=p.onerror=p.onwriteend=null,a.addEventListener("unload",m,!1),q}}("undefined"!=typeof self&&self||"undefined"!=typeof window&&window||this.content);"undefined"!=typeof module&&(module.exports=saveAs);/*! * Bootstrap v3.1.1 (http://getbootstrap.com) * Copyright 2011-2014 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) */ -var __js={"affix.js":"/* ========================================================================\n * Bootstrap: affix.js v3.1.1\n * http://getbootstrap.com/javascript/#affix\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // AFFIX CLASS DEFINITION\n // ======================\n\n var Affix = function (element, options) {\n this.options = $.extend({}, Affix.DEFAULTS, options)\n this.$window = $(window)\n .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this))\n .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this))\n\n this.$element = $(element)\n this.affixed =\n this.unpin =\n this.pinnedOffset = null\n\n this.checkPosition()\n }\n\n Affix.RESET = 'affix affix-top affix-bottom'\n\n Affix.DEFAULTS = {\n offset: 0\n }\n\n Affix.prototype.getPinnedOffset = function () {\n if (this.pinnedOffset) return this.pinnedOffset\n this.$element.removeClass(Affix.RESET).addClass('affix')\n var scrollTop = this.$window.scrollTop()\n var position = this.$element.offset()\n return (this.pinnedOffset = position.top - scrollTop)\n }\n\n Affix.prototype.checkPositionWithEventLoop = function () {\n setTimeout($.proxy(this.checkPosition, this), 1)\n }\n\n Affix.prototype.checkPosition = function () {\n if (!this.$element.is(':visible')) return\n\n var scrollHeight = $(document).height()\n var scrollTop = this.$window.scrollTop()\n var position = this.$element.offset()\n var offset = this.options.offset\n var offsetTop = offset.top\n var offsetBottom = offset.bottom\n\n if (typeof offset != 'object') offsetBottom = offsetTop = offset\n if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element)\n if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element)\n\n var affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ? false :\n offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - offsetBottom) ? 'bottom' :\n offsetTop != null && (scrollTop <= offsetTop) ? 'top' : false\n\n if (this.affixed === affix) return\n if (this.unpin != null) this.$element.css('top', '')\n\n var affixType = 'affix' + (affix ? '-' + affix : '')\n var e = $.Event(affixType + '.bs.affix')\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n this.affixed = affix\n this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null\n\n this.$element\n .removeClass(Affix.RESET)\n .addClass(affixType)\n .trigger($.Event(affixType.replace('affix', 'affixed')))\n\n if (affix == 'bottom') {\n this.$element.offset({ top: position.top })\n }\n }\n\n\n // AFFIX PLUGIN DEFINITION\n // =======================\n\n var old = $.fn.affix\n\n $.fn.affix = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.affix')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.affix', (data = new Affix(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.affix.Constructor = Affix\n\n\n // AFFIX NO CONFLICT\n // =================\n\n $.fn.affix.noConflict = function () {\n $.fn.affix = old\n return this\n }\n\n\n // AFFIX DATA-API\n // ==============\n\n $(window).on('load', function () {\n $('[data-spy=\"affix\"]').each(function () {\n var $spy = $(this)\n var data = $spy.data()\n\n data.offset = data.offset || {}\n\n if (data.offsetBottom) data.offset.bottom = data.offsetBottom\n if (data.offsetTop) data.offset.top = data.offsetTop\n\n $spy.affix(data)\n })\n })\n\n}(jQuery);\n","alert.js":"/* ========================================================================\n * Bootstrap: alert.js v3.1.1\n * http://getbootstrap.com/javascript/#alerts\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // ALERT CLASS DEFINITION\n // ======================\n\n var dismiss = '[data-dismiss=\"alert\"]'\n var Alert = function (el) {\n $(el).on('click', dismiss, this.close)\n }\n\n Alert.prototype.close = function (e) {\n var $this = $(this)\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') // strip for ie7\n }\n\n var $parent = $(selector)\n\n if (e) e.preventDefault()\n\n if (!$parent.length) {\n $parent = $this.hasClass('alert') ? $this : $this.parent()\n }\n\n $parent.trigger(e = $.Event('close.bs.alert'))\n\n if (e.isDefaultPrevented()) return\n\n $parent.removeClass('in')\n\n function removeElement() {\n $parent.trigger('closed.bs.alert').remove()\n }\n\n $.support.transition && $parent.hasClass('fade') ?\n $parent\n .one($.support.transition.end, removeElement)\n .emulateTransitionEnd(150) :\n removeElement()\n }\n\n\n // ALERT PLUGIN DEFINITION\n // =======================\n\n var old = $.fn.alert\n\n $.fn.alert = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.alert')\n\n if (!data) $this.data('bs.alert', (data = new Alert(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n $.fn.alert.Constructor = Alert\n\n\n // ALERT NO CONFLICT\n // =================\n\n $.fn.alert.noConflict = function () {\n $.fn.alert = old\n return this\n }\n\n\n // ALERT DATA-API\n // ==============\n\n $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close)\n\n}(jQuery);\n","button.js":"/* ========================================================================\n * Bootstrap: button.js v3.1.1\n * http://getbootstrap.com/javascript/#buttons\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // BUTTON PUBLIC CLASS DEFINITION\n // ==============================\n\n var Button = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Button.DEFAULTS, options)\n this.isLoading = false\n }\n\n Button.DEFAULTS = {\n loadingText: 'loading...'\n }\n\n Button.prototype.setState = function (state) {\n var d = 'disabled'\n var $el = this.$element\n var val = $el.is('input') ? 'val' : 'html'\n var data = $el.data()\n\n state = state + 'Text'\n\n if (!data.resetText) $el.data('resetText', $el[val]())\n\n $el[val](data[state] || this.options[state])\n\n // push to event loop to allow forms to submit\n setTimeout($.proxy(function () {\n if (state == 'loadingText') {\n this.isLoading = true\n $el.addClass(d).attr(d, d)\n } else if (this.isLoading) {\n this.isLoading = false\n $el.removeClass(d).removeAttr(d)\n }\n }, this), 0)\n }\n\n Button.prototype.toggle = function () {\n var changed = true\n var $parent = this.$element.closest('[data-toggle=\"buttons\"]')\n\n if ($parent.length) {\n var $input = this.$element.find('input')\n if ($input.prop('type') == 'radio') {\n if ($input.prop('checked') && this.$element.hasClass('active')) changed = false\n else $parent.find('.active').removeClass('active')\n }\n if (changed) $input.prop('checked', !this.$element.hasClass('active')).trigger('change')\n }\n\n if (changed) this.$element.toggleClass('active')\n }\n\n\n // BUTTON PLUGIN DEFINITION\n // ========================\n\n var old = $.fn.button\n\n $.fn.button = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.button')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.button', (data = new Button(this, options)))\n\n if (option == 'toggle') data.toggle()\n else if (option) data.setState(option)\n })\n }\n\n $.fn.button.Constructor = Button\n\n\n // BUTTON NO CONFLICT\n // ==================\n\n $.fn.button.noConflict = function () {\n $.fn.button = old\n return this\n }\n\n\n // BUTTON DATA-API\n // ===============\n\n $(document).on('click.bs.button.data-api', '[data-toggle^=button]', function (e) {\n var $btn = $(e.target)\n if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')\n $btn.button('toggle')\n e.preventDefault()\n })\n\n}(jQuery);\n","carousel.js":"/* ========================================================================\n * Bootstrap: carousel.js v3.1.1\n * http://getbootstrap.com/javascript/#carousel\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CAROUSEL CLASS DEFINITION\n // =========================\n\n var Carousel = function (element, options) {\n this.$element = $(element)\n this.$indicators = this.$element.find('.carousel-indicators')\n this.options = options\n this.paused =\n this.sliding =\n this.interval =\n this.$active =\n this.$items = null\n\n this.options.pause == 'hover' && this.$element\n .on('mouseenter', $.proxy(this.pause, this))\n .on('mouseleave', $.proxy(this.cycle, this))\n }\n\n Carousel.DEFAULTS = {\n interval: 5000,\n pause: 'hover',\n wrap: true\n }\n\n Carousel.prototype.cycle = function (e) {\n e || (this.paused = false)\n\n this.interval && clearInterval(this.interval)\n\n this.options.interval\n && !this.paused\n && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))\n\n return this\n }\n\n Carousel.prototype.getActiveIndex = function () {\n this.$active = this.$element.find('.item.active')\n this.$items = this.$active.parent().children('.item')\n\n return this.$items.index(this.$active)\n }\n\n Carousel.prototype.to = function (pos) {\n var that = this\n var activeIndex = this.getActiveIndex()\n\n if (pos > (this.$items.length - 1) || pos < 0) return\n\n if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, \"slid\". not a typo. past tense of \"to slide\".\n if (activeIndex == pos) return this.pause().cycle()\n\n return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))\n }\n\n Carousel.prototype.pause = function (e) {\n e || (this.paused = true)\n\n if (this.$element.find('.next, .prev').length && $.support.transition) {\n this.$element.trigger($.support.transition.end)\n this.cycle(true)\n }\n\n this.interval = clearInterval(this.interval)\n\n return this\n }\n\n Carousel.prototype.next = function () {\n if (this.sliding) return\n return this.slide('next')\n }\n\n Carousel.prototype.prev = function () {\n if (this.sliding) return\n return this.slide('prev')\n }\n\n Carousel.prototype.slide = function (type, next) {\n var $active = this.$element.find('.item.active')\n var $next = next || $active[type]()\n var isCycling = this.interval\n var direction = type == 'next' ? 'left' : 'right'\n var fallback = type == 'next' ? 'first' : 'last'\n var that = this\n\n if (!$next.length) {\n if (!this.options.wrap) return\n $next = this.$element.find('.item')[fallback]()\n }\n\n if ($next.hasClass('active')) return this.sliding = false\n\n var e = $.Event('slide.bs.carousel', { relatedTarget: $next[0], direction: direction })\n this.$element.trigger(e)\n if (e.isDefaultPrevented()) return\n\n this.sliding = true\n\n isCycling && this.pause()\n\n if (this.$indicators.length) {\n this.$indicators.find('.active').removeClass('active')\n this.$element.one('slid.bs.carousel', function () { // yes, \"slid\". not a typo. past tense of \"to slide\".\n var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])\n $nextIndicator && $nextIndicator.addClass('active')\n })\n }\n\n if ($.support.transition && this.$element.hasClass('slide')) {\n $next.addClass(type)\n $next[0].offsetWidth // force reflow\n $active.addClass(direction)\n $next.addClass(direction)\n $active\n .one($.support.transition.end, function () {\n $next.removeClass([type, direction].join(' ')).addClass('active')\n $active.removeClass(['active', direction].join(' '))\n that.sliding = false\n setTimeout(function () { that.$element.trigger('slid.bs.carousel') }, 0) // yes, \"slid\". not a typo. past tense of \"to slide\".\n })\n .emulateTransitionEnd($active.css('transition-duration').slice(0, -1) * 1000)\n } else {\n $active.removeClass('active')\n $next.addClass('active')\n this.sliding = false\n this.$element.trigger('slid.bs.carousel') // yes, \"slid\". not a typo. past tense of \"to slide\".\n }\n\n isCycling && this.cycle()\n\n return this\n }\n\n\n // CAROUSEL PLUGIN DEFINITION\n // ==========================\n\n var old = $.fn.carousel\n\n $.fn.carousel = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.carousel')\n var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option)\n var action = typeof option == 'string' ? option : options.slide\n\n if (!data) $this.data('bs.carousel', (data = new Carousel(this, options)))\n if (typeof option == 'number') data.to(option)\n else if (action) data[action]()\n else if (options.interval) data.pause().cycle()\n })\n }\n\n $.fn.carousel.Constructor = Carousel\n\n\n // CAROUSEL NO CONFLICT\n // ====================\n\n $.fn.carousel.noConflict = function () {\n $.fn.carousel = old\n return this\n }\n\n\n // CAROUSEL DATA-API\n // =================\n\n $(document).on('click.bs.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {\n var $this = $(this), href\n var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n var options = $.extend({}, $target.data(), $this.data())\n var slideIndex = $this.attr('data-slide-to')\n if (slideIndex) options.interval = false\n\n $target.carousel(options)\n\n if (slideIndex = $this.attr('data-slide-to')) {\n $target.data('bs.carousel').to(slideIndex)\n }\n\n e.preventDefault()\n })\n\n $(window).on('load', function () {\n $('[data-ride=\"carousel\"]').each(function () {\n var $carousel = $(this)\n $carousel.carousel($carousel.data())\n })\n })\n\n}(jQuery);\n","collapse.js":"/* ========================================================================\n * Bootstrap: collapse.js v3.1.1\n * http://getbootstrap.com/javascript/#collapse\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // COLLAPSE PUBLIC CLASS DEFINITION\n // ================================\n\n var Collapse = function (element, options) {\n this.$element = $(element)\n this.options = $.extend({}, Collapse.DEFAULTS, options)\n this.transitioning = null\n\n if (this.options.parent) this.$parent = $(this.options.parent)\n if (this.options.toggle) this.toggle()\n }\n\n Collapse.DEFAULTS = {\n toggle: true\n }\n\n Collapse.prototype.dimension = function () {\n var hasWidth = this.$element.hasClass('width')\n return hasWidth ? 'width' : 'height'\n }\n\n Collapse.prototype.show = function () {\n if (this.transitioning || this.$element.hasClass('in')) return\n\n var startEvent = $.Event('show.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n var actives = this.$parent && this.$parent.find('> .panel > .in')\n\n if (actives && actives.length) {\n var hasData = actives.data('bs.collapse')\n if (hasData && hasData.transitioning) return\n actives.collapse('hide')\n hasData || actives.data('bs.collapse', null)\n }\n\n var dimension = this.dimension()\n\n this.$element\n .removeClass('collapse')\n .addClass('collapsing')[dimension](0)\n\n this.transitioning = 1\n\n var complete = function (e) {\n if (e && e.target != this.$element[0]) return\n this.$element\n .removeClass('collapsing')\n .addClass('collapse in')[dimension]('auto')\n this.transitioning = 0\n this.$element.trigger('shown.bs.collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n var scrollSize = $.camelCase(['scroll', dimension].join('-'))\n\n this.$element\n .one($.support.transition.end, $.proxy(complete, this))\n .emulateTransitionEnd(350)[dimension](this.$element[0][scrollSize])\n }\n\n Collapse.prototype.hide = function () {\n if (this.transitioning || !this.$element.hasClass('in')) return\n\n var startEvent = $.Event('hide.bs.collapse')\n this.$element.trigger(startEvent)\n if (startEvent.isDefaultPrevented()) return\n\n var dimension = this.dimension()\n\n this.$element[dimension](this.$element[dimension]())[0].offsetHeight\n\n this.$element\n .addClass('collapsing')\n .removeClass('collapse')\n .removeClass('in')\n\n this.transitioning = 1\n\n var complete = function (e) {\n if (e && e.target != this.$element[0]) return\n this.transitioning = 0\n this.$element\n .trigger('hidden.bs.collapse')\n .removeClass('collapsing')\n .addClass('collapse')\n }\n\n if (!$.support.transition) return complete.call(this)\n\n this.$element\n [dimension](0)\n .one($.support.transition.end, $.proxy(complete, this))\n .emulateTransitionEnd(350)\n }\n\n Collapse.prototype.toggle = function () {\n this[this.$element.hasClass('in') ? 'hide' : 'show']()\n }\n\n\n // COLLAPSE PLUGIN DEFINITION\n // ==========================\n\n var old = $.fn.collapse\n\n $.fn.collapse = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.collapse')\n var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data && options.toggle && option == 'show') option = !option\n if (!data) $this.data('bs.collapse', (data = new Collapse(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.collapse.Constructor = Collapse\n\n\n // COLLAPSE NO CONFLICT\n // ====================\n\n $.fn.collapse.noConflict = function () {\n $.fn.collapse = old\n return this\n }\n\n\n // COLLAPSE DATA-API\n // =================\n\n $(document).on('click.bs.collapse.data-api', '[data-toggle=\"collapse\"]', function (e) {\n var $this = $(this), href\n var target = $this.attr('data-target')\n || e.preventDefault()\n || (href = $this.attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '') //strip for ie7\n var $target = $(target)\n var data = $target.data('bs.collapse')\n var option = data ? 'toggle' : $this.data()\n var parent = $this.attr('data-parent')\n var $parent = parent && $(parent)\n\n if (!data || !data.transitioning) {\n if ($parent) $parent.find('[data-toggle=\"collapse\"][data-parent=\"' + parent + '\"]').not($this).addClass('collapsed')\n $this[$target.hasClass('in') ? 'addClass' : 'removeClass']('collapsed')\n }\n\n $target.collapse(option)\n })\n\n}(jQuery);\n","dropdown.js":"/* ========================================================================\n * Bootstrap: dropdown.js v3.1.1\n * http://getbootstrap.com/javascript/#dropdowns\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // DROPDOWN CLASS DEFINITION\n // =========================\n\n var backdrop = '.dropdown-backdrop'\n var toggle = '[data-toggle=\"dropdown\"]'\n var Dropdown = function (element) {\n $(element).on('click.bs.dropdown', this.toggle)\n }\n\n Dropdown.prototype.toggle = function (e) {\n var $this = $(this)\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n clearMenus()\n\n if (!isActive) {\n if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) {\n // if mobile we use a backdrop because click events don't delegate\n $(' ').insertAfter($(this)).on('click', clearMenus)\n }\n\n var relatedTarget = { relatedTarget: this }\n $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget))\n\n if (e.isDefaultPrevented()) return\n\n $this.trigger('focus')\n\n $parent\n .toggleClass('open')\n .trigger('shown.bs.dropdown', relatedTarget)\n }\n\n return false\n }\n\n Dropdown.prototype.keydown = function (e) {\n if (!/(38|40|27)/.test(e.keyCode)) return\n\n var $this = $(this)\n\n e.preventDefault()\n e.stopPropagation()\n\n if ($this.is('.disabled, :disabled')) return\n\n var $parent = getParent($this)\n var isActive = $parent.hasClass('open')\n\n if (!isActive || (isActive && e.keyCode == 27)) {\n if (e.which == 27) $parent.find(toggle).trigger('focus')\n return $this.trigger('click')\n }\n\n var desc = ' li:not(.divider):visible a'\n var $items = $parent.find('[role=\"menu\"]' + desc + ', [role=\"listbox\"]' + desc)\n\n if (!$items.length) return\n\n var index = $items.index($items.filter(':focus'))\n\n if (e.keyCode == 38 && index > 0) index-- // up\n if (e.keyCode == 40 && index < $items.length - 1) index++ // down\n if (!~index) index = 0\n\n $items.eq(index).trigger('focus')\n }\n\n function clearMenus(e) {\n $(backdrop).remove()\n $(toggle).each(function () {\n var $parent = getParent($(this))\n var relatedTarget = { relatedTarget: this }\n if (!$parent.hasClass('open')) return\n $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget))\n if (e.isDefaultPrevented()) return\n $parent.removeClass('open').trigger('hidden.bs.dropdown', relatedTarget)\n })\n }\n\n function getParent($this) {\n var selector = $this.attr('data-target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n }\n\n var $parent = selector && $(selector)\n\n return $parent && $parent.length ? $parent : $this.parent()\n }\n\n\n // DROPDOWN PLUGIN DEFINITION\n // ==========================\n\n var old = $.fn.dropdown\n\n $.fn.dropdown = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.dropdown')\n\n if (!data) $this.data('bs.dropdown', (data = new Dropdown(this)))\n if (typeof option == 'string') data[option].call($this)\n })\n }\n\n $.fn.dropdown.Constructor = Dropdown\n\n\n // DROPDOWN NO CONFLICT\n // ====================\n\n $.fn.dropdown.noConflict = function () {\n $.fn.dropdown = old\n return this\n }\n\n\n // APPLY TO STANDARD DROPDOWN ELEMENTS\n // ===================================\n\n $(document)\n .on('click.bs.dropdown.data-api', clearMenus)\n .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })\n .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle)\n .on('keydown.bs.dropdown.data-api', toggle + ', [role=\"menu\"], [role=\"listbox\"]', Dropdown.prototype.keydown)\n\n}(jQuery);\n","modal.js":"/* ========================================================================\n * Bootstrap: modal.js v3.1.1\n * http://getbootstrap.com/javascript/#modals\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // MODAL CLASS DEFINITION\n // ======================\n\n var Modal = function (element, options) {\n this.options = options\n this.$body = $(document.body)\n this.$element = $(element)\n this.$backdrop =\n this.isShown = null\n this.scrollbarWidth = 0\n\n if (this.options.remote) {\n this.$element\n .find('.modal-content')\n .load(this.options.remote, $.proxy(function () {\n this.$element.trigger('loaded.bs.modal')\n }, this))\n }\n }\n\n Modal.DEFAULTS = {\n backdrop: true,\n keyboard: true,\n show: true\n }\n\n Modal.prototype.toggle = function (_relatedTarget) {\n return this.isShown ? this.hide() : this.show(_relatedTarget)\n }\n\n Modal.prototype.show = function (_relatedTarget) {\n var that = this\n var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget })\n\n this.$element.trigger(e)\n\n if (this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = true\n\n this.checkScrollbar()\n this.$body.addClass('modal-open')\n\n this.setScrollbar()\n this.escape()\n\n this.$element.on('click.dismiss.bs.modal', '[data-dismiss=\"modal\"]', $.proxy(this.hide, this))\n\n this.backdrop(function () {\n var transition = $.support.transition && that.$element.hasClass('fade')\n\n if (!that.$element.parent().length) {\n that.$element.appendTo(that.$body) // don't move modals dom position\n }\n\n that.$element\n .show()\n .scrollTop(0)\n\n if (transition) {\n that.$element[0].offsetWidth // force reflow\n }\n\n that.$element\n .addClass('in')\n .attr('aria-hidden', false)\n\n that.enforceFocus()\n\n var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget })\n\n transition ?\n that.$element.find('.modal-dialog') // wait for modal to slide in\n .one($.support.transition.end, function () {\n that.$element.trigger('focus').trigger(e)\n })\n .emulateTransitionEnd(300) :\n that.$element.trigger('focus').trigger(e)\n })\n }\n\n Modal.prototype.hide = function (e) {\n if (e) e.preventDefault()\n\n e = $.Event('hide.bs.modal')\n\n this.$element.trigger(e)\n\n if (!this.isShown || e.isDefaultPrevented()) return\n\n this.isShown = false\n\n this.$body.removeClass('modal-open')\n\n this.resetScrollbar()\n this.escape()\n\n $(document).off('focusin.bs.modal')\n\n this.$element\n .removeClass('in')\n .attr('aria-hidden', true)\n .off('click.dismiss.bs.modal')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$element\n .one($.support.transition.end, $.proxy(this.hideModal, this))\n .emulateTransitionEnd(300) :\n this.hideModal()\n }\n\n Modal.prototype.enforceFocus = function () {\n $(document)\n .off('focusin.bs.modal') // guard against infinite focus loop\n .on('focusin.bs.modal', $.proxy(function (e) {\n if (this.$element[0] !== e.target && !this.$element.has(e.target).length) {\n this.$element.trigger('focus')\n }\n }, this))\n }\n\n Modal.prototype.escape = function () {\n if (this.isShown && this.options.keyboard) {\n this.$element.on('keyup.dismiss.bs.modal', $.proxy(function (e) {\n e.which == 27 && this.hide()\n }, this))\n } else if (!this.isShown) {\n this.$element.off('keyup.dismiss.bs.modal')\n }\n }\n\n Modal.prototype.hideModal = function () {\n var that = this\n this.$element.hide()\n this.backdrop(function () {\n that.removeBackdrop()\n that.$element.trigger('hidden.bs.modal')\n })\n }\n\n Modal.prototype.removeBackdrop = function () {\n this.$backdrop && this.$backdrop.remove()\n this.$backdrop = null\n }\n\n Modal.prototype.backdrop = function (callback) {\n var animate = this.$element.hasClass('fade') ? 'fade' : ''\n\n if (this.isShown && this.options.backdrop) {\n var doAnimate = $.support.transition && animate\n\n this.$backdrop = $('')\n .appendTo(this.$body)\n\n this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) {\n if (e.target !== e.currentTarget) return\n this.options.backdrop == 'static'\n ? this.$element[0].focus.call(this.$element[0])\n : this.hide.call(this)\n }, this))\n\n if (doAnimate) this.$backdrop[0].offsetWidth // force reflow\n\n this.$backdrop.addClass('in')\n\n if (!callback) return\n\n doAnimate ?\n this.$backdrop\n .one($.support.transition.end, callback)\n .emulateTransitionEnd(150) :\n callback()\n\n } else if (!this.isShown && this.$backdrop) {\n this.$backdrop.removeClass('in')\n\n $.support.transition && this.$element.hasClass('fade') ?\n this.$backdrop\n .one($.support.transition.end, callback)\n .emulateTransitionEnd(150) :\n callback()\n\n } else if (callback) {\n callback()\n }\n }\n\n Modal.prototype.checkScrollbar = function () {\n if (document.body.clientWidth >= window.innerWidth) return\n this.scrollbarWidth = this.scrollbarWidth || this.measureScrollbar()\n }\n\n Modal.prototype.setScrollbar = function () {\n var bodyPad = parseInt(this.$body.css('padding-right') || 0)\n if (this.scrollbarWidth) this.$body.css('padding-right', bodyPad + this.scrollbarWidth)\n }\n\n Modal.prototype.resetScrollbar = function () {\n this.$body.css('padding-right', '')\n }\n\n Modal.prototype.measureScrollbar = function () { // thx walsh\n var scrollDiv = document.createElement('div')\n scrollDiv.className = 'modal-scrollbar-measure'\n this.$body.append(scrollDiv)\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth\n this.$body[0].removeChild(scrollDiv)\n return scrollbarWidth\n }\n\n\n // MODAL PLUGIN DEFINITION\n // =======================\n\n var old = $.fn.modal\n\n $.fn.modal = function (option, _relatedTarget) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.modal')\n var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option)\n\n if (!data) $this.data('bs.modal', (data = new Modal(this, options)))\n if (typeof option == 'string') data[option](_relatedTarget)\n else if (options.show) data.show(_relatedTarget)\n })\n }\n\n $.fn.modal.Constructor = Modal\n\n\n // MODAL NO CONFLICT\n // =================\n\n $.fn.modal.noConflict = function () {\n $.fn.modal = old\n return this\n }\n\n\n // MODAL DATA-API\n // ==============\n\n $(document).on('click.bs.modal.data-api', '[data-toggle=\"modal\"]', function (e) {\n var $this = $(this)\n var href = $this.attr('href')\n var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\\s]+$)/, ''))) //strip for ie7\n var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data())\n\n if ($this.is('a')) e.preventDefault()\n\n $target\n .modal(option, this)\n .one('hide', function () {\n $this.is(':visible') && $this.trigger('focus')\n })\n })\n\n}(jQuery);\n","popover.js":"/* ========================================================================\n * Bootstrap: popover.js v3.1.1\n * http://getbootstrap.com/javascript/#popovers\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // POPOVER PUBLIC CLASS DEFINITION\n // ===============================\n\n var Popover = function (element, options) {\n this.init('popover', element, options)\n }\n\n if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js')\n\n Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, {\n placement: 'right',\n trigger: 'click',\n content: '',\n template: ''\n })\n\n\n // NOTE: POPOVER EXTENDS tooltip.js\n // ================================\n\n Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype)\n\n Popover.prototype.constructor = Popover\n\n Popover.prototype.getDefaults = function () {\n return Popover.DEFAULTS\n }\n\n Popover.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n var content = this.getContent()\n\n $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)\n $tip.find('.popover-content').empty()[ // we use append for html objects to maintain js events\n this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text'\n ](content)\n\n $tip.removeClass('fade top bottom left right in')\n\n // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do\n // this manually by checking the contents.\n if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide()\n }\n\n Popover.prototype.hasContent = function () {\n return this.getTitle() || this.getContent()\n }\n\n Popover.prototype.getContent = function () {\n var $e = this.$element\n var o = this.options\n\n return $e.attr('data-content')\n || (typeof o.content == 'function' ?\n o.content.call($e[0]) :\n o.content)\n }\n\n Popover.prototype.arrow = function () {\n return this.$arrow = this.$arrow || this.tip().find('.arrow')\n }\n\n Popover.prototype.tip = function () {\n if (!this.$tip) this.$tip = $(this.options.template)\n return this.$tip\n }\n\n\n // POPOVER PLUGIN DEFINITION\n // =========================\n\n var old = $.fn.popover\n\n $.fn.popover = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.popover')\n var options = typeof option == 'object' && option\n\n if (!data && option == 'destroy') return\n if (!data) $this.data('bs.popover', (data = new Popover(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.popover.Constructor = Popover\n\n\n // POPOVER NO CONFLICT\n // ===================\n\n $.fn.popover.noConflict = function () {\n $.fn.popover = old\n return this\n }\n\n}(jQuery);\n","scrollspy.js":"/* ========================================================================\n * Bootstrap: scrollspy.js v3.1.1\n * http://getbootstrap.com/javascript/#scrollspy\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // SCROLLSPY CLASS DEFINITION\n // ==========================\n\n function ScrollSpy(element, options) {\n var href\n var process = $.proxy(this.process, this)\n\n this.$element = $(element).is('body') ? $(window) : $(element)\n this.$body = $('body')\n this.$scrollElement = this.$element.on('scroll.bs.scrollspy', process)\n this.options = $.extend({}, ScrollSpy.DEFAULTS, options)\n this.selector = (this.options.target\n || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\\s]+$)/, '')) //strip for ie7\n || '') + ' .nav li > a'\n this.offsets = $([])\n this.targets = $([])\n this.activeTarget = null\n\n this.refresh()\n this.process()\n }\n\n ScrollSpy.DEFAULTS = {\n offset: 10\n }\n\n ScrollSpy.prototype.refresh = function () {\n var offsetMethod = this.$element[0] == window ? 'offset' : 'position'\n\n this.offsets = $([])\n this.targets = $([])\n\n var self = this\n\n this.$body\n .find(this.selector)\n .map(function () {\n var $el = $(this)\n var href = $el.data('target') || $el.attr('href')\n var $href = /^#./.test(href) && $(href)\n\n return ($href\n && $href.length\n && $href.is(':visible')\n && [[ $href[offsetMethod]().top + (!$.isWindow(self.$scrollElement.get(0)) && self.$scrollElement.scrollTop()), href ]]) || null\n })\n .sort(function (a, b) { return a[0] - b[0] })\n .each(function () {\n self.offsets.push(this[0])\n self.targets.push(this[1])\n })\n }\n\n ScrollSpy.prototype.process = function () {\n var scrollTop = this.$scrollElement.scrollTop() + this.options.offset\n var scrollHeight = this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight)\n var maxScroll = scrollHeight - this.$scrollElement.height()\n var offsets = this.offsets\n var targets = this.targets\n var activeTarget = this.activeTarget\n var i\n\n if (scrollTop >= maxScroll) {\n return activeTarget != (i = targets.last()[0]) && this.activate(i)\n }\n\n if (activeTarget && scrollTop <= offsets[0]) {\n return activeTarget != (i = targets[0]) && this.activate(i)\n }\n\n for (i = offsets.length; i--;) {\n activeTarget != targets[i]\n && scrollTop >= offsets[i]\n && (!offsets[i + 1] || scrollTop <= offsets[i + 1])\n && this.activate( targets[i] )\n }\n }\n\n ScrollSpy.prototype.activate = function (target) {\n this.activeTarget = target\n\n $(this.selector)\n .parentsUntil(this.options.target, '.active')\n .removeClass('active')\n\n var selector = this.selector +\n '[data-target=\"' + target + '\"],' +\n this.selector + '[href=\"' + target + '\"]'\n\n var active = $(selector)\n .parents('li')\n .addClass('active')\n\n if (active.parent('.dropdown-menu').length) {\n active = active\n .closest('li.dropdown')\n .addClass('active')\n }\n\n active.trigger('activate.bs.scrollspy')\n }\n\n\n // SCROLLSPY PLUGIN DEFINITION\n // ===========================\n\n var old = $.fn.scrollspy\n\n $.fn.scrollspy = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.scrollspy')\n var options = typeof option == 'object' && option\n\n if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.scrollspy.Constructor = ScrollSpy\n\n\n // SCROLLSPY NO CONFLICT\n // =====================\n\n $.fn.scrollspy.noConflict = function () {\n $.fn.scrollspy = old\n return this\n }\n\n\n // SCROLLSPY DATA-API\n // ==================\n\n $(window).on('load.bs.scrollspy.data-api', function () {\n $('[data-spy=\"scroll\"]').each(function () {\n var $spy = $(this)\n $spy.scrollspy($spy.data())\n })\n })\n\n}(jQuery);\n","tab.js":"/* ========================================================================\n * Bootstrap: tab.js v3.1.1\n * http://getbootstrap.com/javascript/#tabs\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TAB CLASS DEFINITION\n // ====================\n\n var Tab = function (element) {\n this.element = $(element)\n }\n\n Tab.prototype.show = function () {\n var $this = this.element\n var $ul = $this.closest('ul:not(.dropdown-menu)')\n var selector = $this.data('target')\n\n if (!selector) {\n selector = $this.attr('href')\n selector = selector && selector.replace(/.*(?=#[^\\s]*$)/, '') //strip for ie7\n }\n\n if ($this.parent('li').hasClass('active')) return\n\n var previous = $ul.find('.active:last a')[0]\n var e = $.Event('show.bs.tab', {\n relatedTarget: previous\n })\n\n $this.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n var $target = $(selector)\n\n this.activate($this.parent('li'), $ul)\n this.activate($target, $target.parent(), function () {\n $this.trigger({\n type: 'shown.bs.tab',\n relatedTarget: previous\n })\n })\n }\n\n Tab.prototype.activate = function (element, container, callback) {\n var $active = container.find('> .active')\n var transition = callback\n && $.support.transition\n && $active.hasClass('fade')\n\n function next() {\n $active\n .removeClass('active')\n .find('> .dropdown-menu > .active')\n .removeClass('active')\n\n element.addClass('active')\n\n if (transition) {\n element[0].offsetWidth // reflow for transition\n element.addClass('in')\n } else {\n element.removeClass('fade')\n }\n\n if (element.parent('.dropdown-menu')) {\n element.closest('li.dropdown').addClass('active')\n }\n\n callback && callback()\n }\n\n transition ?\n $active\n .one($.support.transition.end, next)\n .emulateTransitionEnd(150) :\n next()\n\n $active.removeClass('in')\n }\n\n\n // TAB PLUGIN DEFINITION\n // =====================\n\n var old = $.fn.tab\n\n $.fn.tab = function ( option ) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tab')\n\n if (!data) $this.data('bs.tab', (data = new Tab(this)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.tab.Constructor = Tab\n\n\n // TAB NO CONFLICT\n // ===============\n\n $.fn.tab.noConflict = function () {\n $.fn.tab = old\n return this\n }\n\n\n // TAB DATA-API\n // ============\n\n $(document).on('click.bs.tab.data-api', '[data-toggle=\"tab\"], [data-toggle=\"pill\"]', function (e) {\n e.preventDefault()\n $(this).tab('show')\n })\n\n}(jQuery);\n","tooltip.js":"/* ========================================================================\n * Bootstrap: tooltip.js v3.1.1\n * http://getbootstrap.com/javascript/#tooltip\n * Inspired by the original jQuery.tipsy by Jason Frame\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // TOOLTIP PUBLIC CLASS DEFINITION\n // ===============================\n\n var Tooltip = function (element, options) {\n this.type =\n this.options =\n this.enabled =\n this.timeout =\n this.hoverState =\n this.$element = null\n\n this.init('tooltip', element, options)\n }\n\n Tooltip.DEFAULTS = {\n animation: true,\n placement: 'top',\n selector: false,\n template: '',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n container: false,\n viewport: {\n selector: 'body',\n padding: 0\n }\n }\n\n Tooltip.prototype.init = function (type, element, options) {\n this.enabled = true\n this.type = type\n this.$element = $(element)\n this.options = this.getOptions(options)\n this.$viewport = this.options.viewport && $(this.options.viewport.selector || this.options.viewport)\n\n var triggers = this.options.trigger.split(' ')\n\n for (var i = triggers.length; i--;) {\n var trigger = triggers[i]\n\n if (trigger == 'click') {\n this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))\n } else if (trigger != 'manual') {\n var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin'\n var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout'\n\n this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))\n this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))\n }\n }\n\n this.options.selector ?\n (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :\n this.fixTitle()\n }\n\n Tooltip.prototype.getDefaults = function () {\n return Tooltip.DEFAULTS\n }\n\n Tooltip.prototype.getOptions = function (options) {\n options = $.extend({}, this.getDefaults(), this.$element.data(), options)\n\n if (options.delay && typeof options.delay == 'number') {\n options.delay = {\n show: options.delay,\n hide: options.delay\n }\n }\n\n return options\n }\n\n Tooltip.prototype.getDelegateOptions = function () {\n var options = {}\n var defaults = this.getDefaults()\n\n this._options && $.each(this._options, function (key, value) {\n if (defaults[key] != value) options[key] = value\n })\n\n return options\n }\n\n Tooltip.prototype.enter = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'in'\n\n if (!self.options.delay || !self.options.delay.show) return self.show()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'in') self.show()\n }, self.options.delay.show)\n }\n\n Tooltip.prototype.leave = function (obj) {\n var self = obj instanceof this.constructor ?\n obj : $(obj.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type)\n\n clearTimeout(self.timeout)\n\n self.hoverState = 'out'\n\n if (!self.options.delay || !self.options.delay.hide) return self.hide()\n\n self.timeout = setTimeout(function () {\n if (self.hoverState == 'out') self.hide()\n }, self.options.delay.hide)\n }\n\n Tooltip.prototype.show = function () {\n var e = $.Event('show.bs.' + this.type)\n\n if (this.hasContent() && this.enabled) {\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n var that = this;\n\n var $tip = this.tip()\n\n this.setContent()\n\n if (this.options.animation) $tip.addClass('fade')\n\n var placement = typeof this.options.placement == 'function' ?\n this.options.placement.call(this, $tip[0], this.$element[0]) :\n this.options.placement\n\n var autoToken = /\\s?auto?\\s?/i\n var autoPlace = autoToken.test(placement)\n if (autoPlace) placement = placement.replace(autoToken, '') || 'top'\n\n $tip\n .detach()\n .css({ top: 0, left: 0, display: 'block' })\n .addClass(placement)\n\n this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)\n\n var pos = this.getPosition()\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (autoPlace) {\n var orgPlacement = placement\n var $parent = this.$element.parent()\n var parentDim = this.getPosition($parent)\n\n placement = placement == 'bottom' && pos.top + pos.height + actualHeight - parentDim.scroll > parentDim.height ? 'top' :\n placement == 'top' && pos.top - parentDim.scroll - actualHeight < 0 ? 'bottom' :\n placement == 'right' && pos.right + actualWidth > parentDim.width ? 'left' :\n placement == 'left' && pos.left - actualWidth < parentDim.left ? 'right' :\n placement\n\n $tip\n .removeClass(orgPlacement)\n .addClass(placement)\n }\n\n var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight)\n\n this.applyPlacement(calculatedOffset, placement)\n this.hoverState = null\n\n var complete = function() {\n that.$element.trigger('shown.bs.' + that.type)\n }\n\n $.support.transition && this.$tip.hasClass('fade') ?\n $tip\n .one($.support.transition.end, complete)\n .emulateTransitionEnd(150) :\n complete()\n }\n }\n\n Tooltip.prototype.applyPlacement = function (offset, placement) {\n var $tip = this.tip()\n var width = $tip[0].offsetWidth\n var height = $tip[0].offsetHeight\n\n // manually read margins because getBoundingClientRect includes difference\n var marginTop = parseInt($tip.css('margin-top'), 10)\n var marginLeft = parseInt($tip.css('margin-left'), 10)\n\n // we must check for NaN for ie 8/9\n if (isNaN(marginTop)) marginTop = 0\n if (isNaN(marginLeft)) marginLeft = 0\n\n offset.top = offset.top + marginTop\n offset.left = offset.left + marginLeft\n\n // $.fn.offset doesn't round pixel values\n // so we use setOffset directly with our own function B-0\n $.offset.setOffset($tip[0], $.extend({\n using: function (props) {\n $tip.css({\n top: Math.round(props.top),\n left: Math.round(props.left)\n })\n }\n }, offset), 0)\n\n $tip.addClass('in')\n\n // check to see if placing tip in new offset caused the tip to resize itself\n var actualWidth = $tip[0].offsetWidth\n var actualHeight = $tip[0].offsetHeight\n\n if (placement == 'top' && actualHeight != height) {\n offset.top = offset.top + height - actualHeight\n }\n\n var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight)\n\n if (delta.left) offset.left += delta.left\n else offset.top += delta.top\n\n var arrowDelta = delta.left ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight\n var arrowPosition = delta.left ? 'left' : 'top'\n var arrowOffsetPosition = delta.left ? 'offsetWidth' : 'offsetHeight'\n\n $tip.offset(offset)\n this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], arrowPosition)\n }\n\n Tooltip.prototype.replaceArrow = function (delta, dimension, position) {\n this.arrow().css(position, delta ? (50 * (1 - delta / dimension) + '%') : '')\n }\n\n Tooltip.prototype.setContent = function () {\n var $tip = this.tip()\n var title = this.getTitle()\n\n $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)\n $tip.removeClass('fade in top bottom left right')\n }\n\n Tooltip.prototype.hide = function () {\n var that = this\n var $tip = this.tip()\n var e = $.Event('hide.bs.' + this.type)\n\n function complete() {\n if (that.hoverState != 'in') $tip.detach()\n that.$element.trigger('hidden.bs.' + that.type)\n }\n\n this.$element.trigger(e)\n\n if (e.isDefaultPrevented()) return\n\n $tip.removeClass('in')\n\n $.support.transition && this.$tip.hasClass('fade') ?\n $tip\n .one($.support.transition.end, complete)\n .emulateTransitionEnd(150) :\n complete()\n\n this.hoverState = null\n\n return this\n }\n\n Tooltip.prototype.fixTitle = function () {\n var $e = this.$element\n if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {\n $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')\n }\n }\n\n Tooltip.prototype.hasContent = function () {\n return this.getTitle()\n }\n\n Tooltip.prototype.getPosition = function ($element) {\n $element = $element || this.$element\n var el = $element[0]\n var isBody = el.tagName == 'BODY'\n return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : null, {\n scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop(),\n width: isBody ? $(window).width() : $element.outerWidth(),\n height: isBody ? $(window).height() : $element.outerHeight()\n }, isBody ? {top: 0, left: 0} : $element.offset())\n }\n\n Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) {\n return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } :\n placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } :\n /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width }\n\n }\n\n Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) {\n var delta = { top: 0, left: 0 }\n if (!this.$viewport) return delta\n\n var viewportPadding = this.options.viewport && this.options.viewport.padding || 0\n var viewportDimensions = this.getPosition(this.$viewport)\n\n if (/right|left/.test(placement)) {\n var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll\n var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight\n if (topEdgeOffset < viewportDimensions.top) { // top overflow\n delta.top = viewportDimensions.top - topEdgeOffset\n } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow\n delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset\n }\n } else {\n var leftEdgeOffset = pos.left - viewportPadding\n var rightEdgeOffset = pos.left + viewportPadding + actualWidth\n if (leftEdgeOffset < viewportDimensions.left) { // left overflow\n delta.left = viewportDimensions.left - leftEdgeOffset\n } else if (rightEdgeOffset > viewportDimensions.width) { // right overflow\n delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset\n }\n }\n\n return delta\n }\n\n Tooltip.prototype.getTitle = function () {\n var title\n var $e = this.$element\n var o = this.options\n\n title = $e.attr('data-original-title')\n || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title)\n\n return title\n }\n\n Tooltip.prototype.tip = function () {\n return this.$tip = this.$tip || $(this.options.template)\n }\n\n Tooltip.prototype.arrow = function () {\n return this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')\n }\n\n Tooltip.prototype.validate = function () {\n if (!this.$element[0].parentNode) {\n this.hide()\n this.$element = null\n this.options = null\n }\n }\n\n Tooltip.prototype.enable = function () {\n this.enabled = true\n }\n\n Tooltip.prototype.disable = function () {\n this.enabled = false\n }\n\n Tooltip.prototype.toggleEnabled = function () {\n this.enabled = !this.enabled\n }\n\n Tooltip.prototype.toggle = function (e) {\n var self = e ? $(e.currentTarget)[this.type](this.getDelegateOptions()).data('bs.' + this.type) : this\n self.tip().hasClass('in') ? self.leave(self) : self.enter(self)\n }\n\n Tooltip.prototype.destroy = function () {\n clearTimeout(this.timeout)\n this.hide().$element.off('.' + this.type).removeData('bs.' + this.type)\n }\n\n\n // TOOLTIP PLUGIN DEFINITION\n // =========================\n\n var old = $.fn.tooltip\n\n $.fn.tooltip = function (option) {\n return this.each(function () {\n var $this = $(this)\n var data = $this.data('bs.tooltip')\n var options = typeof option == 'object' && option\n\n if (!data && option == 'destroy') return\n if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options)))\n if (typeof option == 'string') data[option]()\n })\n }\n\n $.fn.tooltip.Constructor = Tooltip\n\n\n // TOOLTIP NO CONFLICT\n // ===================\n\n $.fn.tooltip.noConflict = function () {\n $.fn.tooltip = old\n return this\n }\n\n}(jQuery);\n","transition.js":"/* ========================================================================\n * Bootstrap: transition.js v3.1.1\n * http://getbootstrap.com/javascript/#transitions\n * ========================================================================\n * Copyright 2011-2014 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * ======================================================================== */\n\n\n+function ($) {\n 'use strict';\n\n // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/)\n // ============================================================\n\n function transitionEnd() {\n var el = document.createElement('bootstrap')\n\n var transEndEventNames = {\n WebkitTransition : 'webkitTransitionEnd',\n MozTransition : 'transitionend',\n OTransition : 'oTransitionEnd otransitionend',\n transition : 'transitionend'\n }\n\n for (var name in transEndEventNames) {\n if (el.style[name] !== undefined) {\n return { end: transEndEventNames[name] }\n }\n }\n\n return false // explicit for ie8 ( ._.)\n }\n\n // http://blog.alexmaccaw.com/css-transitions\n $.fn.emulateTransitionEnd = function (duration) {\n var called = false, $el = this\n $(this).one($.support.transition.end, function () { called = true })\n var callback = function () { if (!called) $($el).trigger($.support.transition.end) }\n setTimeout(callback, duration)\n return this\n }\n\n $(function () {\n $.support.transition = transitionEnd()\n })\n\n}(jQuery);\n"},__less={"alerts.less":"//\n// Alerts\n// --------------------------------------------------\n\n\n// Base styles\n// -------------------------\n\n.alert {\n padding: @alert-padding;\n margin-bottom: @line-height-computed;\n border: 1px solid transparent;\n border-radius: @alert-border-radius;\n\n // Headings for larger alerts\n h4 {\n margin-top: 0;\n // Specified for the h4 to prevent conflicts of changing @headings-color\n color: inherit;\n }\n // Provide class for links that match alerts\n .alert-link {\n font-weight: @alert-link-font-weight;\n }\n\n // Improve alignment and spacing of inner content\n > p,\n > ul {\n margin-bottom: 0;\n }\n > p + p {\n margin-top: 5px;\n }\n}\n\n// Dismissable alerts\n//\n// Expand the right padding and account for the close button's positioning.\n\n.alert-dismissable {\n padding-right: (@alert-padding + 20);\n\n // Adjust close link position\n .close {\n position: relative;\n top: -2px;\n right: -21px;\n color: inherit;\n }\n}\n\n// Alternate styles\n//\n// Generate contextual modifier classes for colorizing the alert.\n\n.alert-success {\n .alert-variant(@alert-success-bg; @alert-success-border; @alert-success-text);\n}\n.alert-info {\n .alert-variant(@alert-info-bg; @alert-info-border; @alert-info-text);\n}\n.alert-warning {\n .alert-variant(@alert-warning-bg; @alert-warning-border; @alert-warning-text);\n}\n.alert-danger {\n .alert-variant(@alert-danger-bg; @alert-danger-border; @alert-danger-text);\n}\n","badges.less":"//\n// Badges\n// --------------------------------------------------\n\n\n// Base class\n.badge {\n display: inline-block;\n min-width: 10px;\n padding: 3px 7px;\n font-size: @font-size-small;\n font-weight: @badge-font-weight;\n color: @badge-color;\n line-height: @badge-line-height;\n vertical-align: baseline;\n white-space: nowrap;\n text-align: center;\n background-color: @badge-bg;\n border-radius: @badge-border-radius;\n\n // Empty badges collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for badges in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n .btn-xs & {\n top: 0;\n padding: 1px 5px;\n }\n\n // Hover state, but only for links\n a& {\n &:hover,\n &:focus {\n color: @badge-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Account for badges in navs\n a.list-group-item.active > &,\n .nav-pills > .active > a > & {\n color: @badge-active-color;\n background-color: @badge-active-bg;\n }\n .nav-pills > li > a > & {\n margin-left: 3px;\n }\n}\n","bootstrap.less":'// Core variables and mixins\n@import "variables.less";\n@import "mixins.less";\n\n// Reset and dependencies\n@import "normalize.less";\n@import "print.less";\n@import "glyphicons.less";\n\n// Core CSS\n@import "scaffolding.less";\n@import "type.less";\n@import "code.less";\n@import "grid.less";\n@import "tables.less";\n@import "forms.less";\n@import "buttons.less";\n\n// Components\n@import "component-animations.less";\n@import "dropdowns.less";\n@import "button-groups.less";\n@import "input-groups.less";\n@import "navs.less";\n@import "navbar.less";\n@import "breadcrumbs.less";\n@import "pagination.less";\n@import "pager.less";\n@import "labels.less";\n@import "badges.less";\n@import "jumbotron.less";\n@import "thumbnails.less";\n@import "alerts.less";\n@import "progress-bars.less";\n@import "media.less";\n@import "list-group.less";\n@import "panels.less";\n@import "responsive-embed.less";\n@import "wells.less";\n@import "close.less";\n\n// Components w/ JavaScript\n@import "modals.less";\n@import "tooltip.less";\n@import "popovers.less";\n@import "carousel.less";\n\n// Utility classes\n@import "utilities.less";\n@import "responsive-utilities.less";\n',"breadcrumbs.less":'//\n// Breadcrumbs\n// --------------------------------------------------\n\n\n.breadcrumb {\n padding: @breadcrumb-padding-vertical @breadcrumb-padding-horizontal;\n margin-bottom: @line-height-computed;\n list-style: none;\n background-color: @breadcrumb-bg;\n border-radius: @border-radius-base;\n\n > li {\n display: inline-block;\n\n + li:before {\n content: "@{breadcrumb-separator}\\00a0"; // Unicode space added since inline-block means non-collapsing white-space\n padding: 0 5px;\n color: @breadcrumb-color;\n }\n }\n\n > .active {\n color: @breadcrumb-active-color;\n }\n}\n',"button-groups.less":'//\n// Button groups\n// --------------------------------------------------\n\n// Make the div behave like a button\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-block;\n vertical-align: middle; // match .btn alignment given font-size hack above\n > .btn {\n position: relative;\n float: left;\n // Bring the "active" button to the front\n &:hover,\n &:focus,\n &:active,\n &.active {\n z-index: 2;\n }\n &:focus {\n // Remove focus outline when dropdown JS adds it after closing the menu\n outline: 0;\n }\n }\n}\n\n// Prevent double borders when buttons are next to each other\n.btn-group {\n .btn + .btn,\n .btn + .btn-group,\n .btn-group + .btn,\n .btn-group + .btn-group {\n margin-left: -1px;\n }\n}\n\n// Optional: Group multiple button groups together for a toolbar\n.btn-toolbar {\n margin-left: -5px; // Offset the first child\'s margin\n &:extend(.clearfix all);\n\n .btn-group,\n .input-group {\n float: left;\n }\n > .btn,\n > .btn-group,\n > .input-group {\n margin-left: 5px;\n }\n}\n\n.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {\n border-radius: 0;\n}\n\n// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match\n.btn-group > .btn:first-child {\n margin-left: 0;\n &:not(:last-child):not(.dropdown-toggle) {\n .border-right-radius(0);\n }\n}\n// Need .dropdown-toggle since :last-child doesn\'t apply given a .dropdown-menu immediately after it\n.btn-group > .btn:last-child:not(:first-child),\n.btn-group > .dropdown-toggle:not(:first-child) {\n .border-left-radius(0);\n}\n\n// Custom edits for including btn-groups within btn-groups (useful for including dropdown buttons within a btn-group)\n.btn-group > .btn-group {\n float: left;\n}\n.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group > .btn-group:first-child {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-right-radius(0);\n }\n}\n.btn-group > .btn-group:last-child > .btn:first-child {\n .border-left-radius(0);\n}\n\n// On active and open, don\'t show outline\n.btn-group .dropdown-toggle:active,\n.btn-group.open .dropdown-toggle {\n outline: 0;\n}\n\n\n// Sizing\n//\n// Remix the default button sizing classes into new ones for easier manipulation.\n\n.btn-group-xs > .btn { &:extend(.btn-xs); }\n.btn-group-sm > .btn { &:extend(.btn-sm); }\n.btn-group-lg > .btn { &:extend(.btn-lg); }\n\n\n// Split button dropdowns\n// ----------------------\n\n// Give the line between buttons some depth\n.btn-group > .btn + .dropdown-toggle {\n padding-left: 8px;\n padding-right: 8px;\n}\n.btn-group > .btn-lg + .dropdown-toggle {\n padding-left: 12px;\n padding-right: 12px;\n}\n\n// The clickable button for toggling the menu\n// Remove the gradient and set the same inset shadow as the :active state\n.btn-group.open .dropdown-toggle {\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n\n // Show no shadow for `.btn-link` since it has no other button styles.\n &.btn-link {\n .box-shadow(none);\n }\n}\n\n\n// Reposition the caret\n.btn .caret {\n margin-left: 0;\n}\n// Carets in other button sizes\n.btn-lg .caret {\n border-width: @caret-width-large @caret-width-large 0;\n border-bottom-width: 0;\n}\n// Upside down carets for .dropup\n.dropup .btn-lg .caret {\n border-width: 0 @caret-width-large @caret-width-large;\n}\n\n\n// Vertical button groups\n// ----------------------\n\n.btn-group-vertical {\n > .btn,\n > .btn-group,\n > .btn-group > .btn {\n display: block;\n float: none;\n width: 100%;\n max-width: 100%;\n }\n\n // Clear floats so dropdown menus can be properly placed\n > .btn-group {\n &:extend(.clearfix all);\n > .btn {\n float: none;\n }\n }\n\n > .btn + .btn,\n > .btn + .btn-group,\n > .btn-group + .btn,\n > .btn-group + .btn-group {\n margin-top: -1px;\n margin-left: 0;\n }\n}\n\n.btn-group-vertical > .btn {\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n &:first-child:not(:last-child) {\n border-top-right-radius: @border-radius-base;\n .border-bottom-radius(0);\n }\n &:last-child:not(:first-child) {\n border-bottom-left-radius: @border-radius-base;\n .border-top-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {\n border-radius: 0;\n}\n.btn-group-vertical > .btn-group:first-child:not(:last-child) {\n > .btn:last-child,\n > .dropdown-toggle {\n .border-bottom-radius(0);\n }\n}\n.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {\n .border-top-radius(0);\n}\n\n\n\n// Justified button groups\n// ----------------------\n\n.btn-group-justified {\n display: table;\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n > .btn,\n > .btn-group {\n float: none;\n display: table-cell;\n width: 1%;\n }\n > .btn-group .btn {\n width: 100%;\n }\n}\n\n\n// Checkbox and radio options\n//\n// In order to support the browser\'s form validation feedback, powered by the\n// `required` attribute, we have to "hide" the inputs via `opacity`. We cannot\n// use `display: none;` or `visibility: hidden;` as that also hides the popover.\n// This way, we ensure a DOM element is visible to position the popover from.\n//\n// See https://github.com/twbs/bootstrap/pull/12794 for more.\n\n[data-toggle="buttons"] > .btn > input[type="radio"],\n[data-toggle="buttons"] > .btn > input[type="checkbox"] {\n position: absolute;\n z-index: -1;\n opacity: 0;\n}\n',"buttons.less":'//\n// Buttons\n// --------------------------------------------------\n\n\n// Base styles\n// --------------------------------------------------\n\n.btn {\n display: inline-block;\n margin-bottom: 0; // For input.btn\n font-weight: @btn-font-weight;\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid transparent;\n white-space: nowrap;\n .button-size(@padding-base-vertical; @padding-base-horizontal; @font-size-base; @line-height-base; @border-radius-base);\n .user-select(none);\n\n &,\n &:active,\n &.active {\n &:focus {\n .tab-focus();\n }\n }\n\n &:hover,\n &:focus {\n color: @btn-default-color;\n text-decoration: none;\n }\n\n &:active,\n &.active {\n outline: 0;\n background-image: none;\n .box-shadow(inset 0 3px 5px rgba(0,0,0,.125));\n }\n\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n cursor: not-allowed;\n pointer-events: none; // Future-proof disabling of clicks\n .opacity(.65);\n .box-shadow(none);\n }\n}\n\n\n// Alternate buttons\n// --------------------------------------------------\n\n.btn-default {\n .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);\n}\n.btn-primary {\n .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);\n}\n// Success appears as green\n.btn-success {\n .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);\n}\n// Info appears as blue-green\n.btn-info {\n .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);\n}\n// Warning appears as orange\n.btn-warning {\n .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);\n}\n// Danger and error appear as red\n.btn-danger {\n .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);\n}\n\n\n// Link buttons\n// -------------------------\n\n// Make a button look and behave like a link\n.btn-link {\n color: @link-color;\n font-weight: normal;\n cursor: pointer;\n border-radius: 0;\n\n &,\n &:active,\n &[disabled],\n fieldset[disabled] & {\n background-color: transparent;\n .box-shadow(none);\n }\n &,\n &:hover,\n &:focus,\n &:active {\n border-color: transparent;\n }\n &:hover,\n &:focus {\n color: @link-hover-color;\n text-decoration: underline;\n background-color: transparent;\n }\n &[disabled],\n fieldset[disabled] & {\n &:hover,\n &:focus {\n color: @btn-link-disabled-color;\n text-decoration: none;\n }\n }\n}\n\n\n// Button Sizes\n// --------------------------------------------------\n\n.btn-lg {\n // line-height: ensure even-numbered height of button next to large input\n .button-size(@padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n.btn-sm {\n // line-height: ensure proper height of button next to small input\n .button-size(@padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n.btn-xs {\n .button-size(@padding-xs-vertical; @padding-xs-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n\n\n// Block button\n// --------------------------------------------------\n\n.btn-block {\n display: block;\n width: 100%;\n padding-left: 0;\n padding-right: 0;\n}\n\n// Vertically space out multiple block buttons\n.btn-block + .btn-block {\n margin-top: 5px;\n}\n\n// Specificity overrides\ninput[type="submit"],\ninput[type="reset"],\ninput[type="button"] {\n &.btn-block {\n width: 100%;\n }\n}\n',"carousel.less":"//\n// Carousel\n// --------------------------------------------------\n\n\n// Wrapper for the slide container and indicators\n.carousel {\n position: relative;\n}\n\n.carousel-inner {\n position: relative;\n overflow: hidden;\n width: 100%;\n\n > .item {\n display: none;\n position: relative;\n .transition(.6s ease-in-out left);\n\n // Account for jankitude on images\n > img,\n > a > img {\n &:extend(.img-responsive);\n line-height: 1;\n }\n }\n\n > .active,\n > .next,\n > .prev { display: block; }\n\n > .active {\n left: 0;\n }\n\n > .next,\n > .prev {\n position: absolute;\n top: 0;\n width: 100%;\n }\n\n > .next {\n left: 100%;\n }\n > .prev {\n left: -100%;\n }\n > .next.left,\n > .prev.right {\n left: 0;\n }\n\n > .active.left {\n left: -100%;\n }\n > .active.right {\n left: 100%;\n }\n\n}\n\n// Left/right controls for nav\n// ---------------------------\n\n.carousel-control {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n width: @carousel-control-width;\n .opacity(@carousel-control-opacity);\n font-size: @carousel-control-font-size;\n color: @carousel-control-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n // We can't have this transition here because WebKit cancels the carousel\n // animation if you trip this while in the middle of another animation.\n\n // Set gradients for backgrounds\n &.left {\n #gradient > .horizontal(@start-color: rgba(0,0,0,.5); @end-color: rgba(0,0,0,.0001));\n }\n &.right {\n left: auto;\n right: 0;\n #gradient > .horizontal(@start-color: rgba(0,0,0,.0001); @end-color: rgba(0,0,0,.5));\n }\n\n // Hover/focus state\n &:hover,\n &:focus {\n outline: 0;\n color: @carousel-control-color;\n text-decoration: none;\n .opacity(.9);\n }\n\n // Toggles\n .icon-prev,\n .icon-next,\n .glyphicon-chevron-left,\n .glyphicon-chevron-right {\n position: absolute;\n top: 50%;\n z-index: 5;\n display: inline-block;\n }\n .icon-prev,\n .glyphicon-chevron-left {\n left: 50%;\n margin-left: -10px;\n }\n .icon-next,\n .glyphicon-chevron-right {\n right: 50%;\n margin-right: -10px;\n }\n .icon-prev,\n .icon-next {\n width: 20px;\n height: 20px;\n margin-top: -10px;\n font-family: serif;\n }\n\n\n .icon-prev {\n &:before {\n content: '\\2039';// SINGLE LEFT-POINTING ANGLE QUOTATION MARK (U+2039)\n }\n }\n .icon-next {\n &:before {\n content: '\\203a';// SINGLE RIGHT-POINTING ANGLE QUOTATION MARK (U+203A)\n }\n }\n}\n\n// Optional indicator pips\n//\n// Add an unordered list with the following class and add a list item for each\n// slide your carousel holds.\n\n.carousel-indicators {\n position: absolute;\n bottom: 10px;\n left: 50%;\n z-index: 15;\n width: 60%;\n margin-left: -30%;\n padding-left: 0;\n list-style: none;\n text-align: center;\n\n li {\n display: inline-block;\n width: 10px;\n height: 10px;\n margin: 1px;\n text-indent: -999px;\n border: 1px solid @carousel-indicator-border-color;\n border-radius: 10px;\n cursor: pointer;\n\n // IE8-9 hack for event handling\n //\n // Internet Explorer 8-9 does not support clicks on elements without a set\n // `background-color`. We cannot use `filter` since that's not viewed as a\n // background color by the browser. Thus, a hack is needed.\n //\n // For IE8, we set solid black as it doesn't support `rgba()`. For IE9, we\n // set alpha transparency for the best results possible.\n background-color: #000 \\9; // IE8\n background-color: rgba(0,0,0,0); // IE9\n }\n .active {\n margin: 0;\n width: 12px;\n height: 12px;\n background-color: @carousel-indicator-active-bg;\n }\n}\n\n// Optional captions\n// -----------------------------\n// Hidden by default for smaller viewports\n.carousel-caption {\n position: absolute;\n left: 15%;\n right: 15%;\n bottom: 20px;\n z-index: 10;\n padding-top: 20px;\n padding-bottom: 20px;\n color: @carousel-caption-color;\n text-align: center;\n text-shadow: @carousel-text-shadow;\n & .btn {\n text-shadow: none; // No shadow for button elements in carousel-caption\n }\n}\n\n\n// Scale up controls for tablets and up\n@media screen and (min-width: @screen-sm-min) {\n\n // Scale up the controls a smidge\n .carousel-control {\n .glyphicon-chevron-left,\n .glyphicon-chevron-right,\n .icon-prev,\n .icon-next {\n width: 30px;\n height: 30px;\n margin-top: -15px;\n font-size: 30px;\n }\n .glyphicon-chevron-left,\n .icon-prev {\n margin-left: -15px;\n }\n .glyphicon-chevron-right,\n .icon-next {\n margin-right: -15px;\n }\n }\n\n // Show and left align the captions\n .carousel-caption {\n left: 20%;\n right: 20%;\n padding-bottom: 30px;\n }\n\n // Move up the indicators\n .carousel-indicators {\n bottom: 20px;\n }\n}\n","close.less":'//\n// Close icons\n// --------------------------------------------------\n\n\n.close {\n float: right;\n font-size: (@font-size-base * 1.5);\n font-weight: @close-font-weight;\n line-height: 1;\n color: @close-color;\n text-shadow: @close-text-shadow;\n .opacity(.2);\n\n &:hover,\n &:focus {\n color: @close-color;\n text-decoration: none;\n cursor: pointer;\n .opacity(.5);\n }\n\n // Additional properties for button version\n // iOS requires the button element instead of an anchor tag.\n // If you want the anchor version, it requires `href="#"`.\n button& {\n padding: 0;\n cursor: pointer;\n background: transparent;\n border: 0;\n -webkit-appearance: none;\n }\n}\n',"code.less":"//\n// Code (inline and block)\n// --------------------------------------------------\n\n\n// Inline and block code styles\ncode,\nkbd,\npre,\nsamp {\n font-family: @font-family-monospace;\n}\n\n// Inline code\ncode {\n padding: 2px 4px;\n font-size: 90%;\n color: @code-color;\n background-color: @code-bg;\n border-radius: @border-radius-base;\n}\n\n// User input typically entered via keyboard\nkbd {\n padding: 2px 4px;\n font-size: 90%;\n color: @kbd-color;\n background-color: @kbd-bg;\n border-radius: @border-radius-small;\n box-shadow: inset 0 -1px 0 rgba(0,0,0,.25);\n}\n\n// Blocks of code\npre {\n display: block;\n padding: ((@line-height-computed - 1) / 2);\n margin: 0 0 (@line-height-computed / 2);\n font-size: (@font-size-base - 1); // 14px to 13px\n line-height: @line-height-base;\n word-break: break-all;\n word-wrap: break-word;\n color: @pre-color;\n background-color: @pre-bg;\n border: 1px solid @pre-border-color;\n border-radius: @border-radius-base;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n padding: 0;\n font-size: inherit;\n color: inherit;\n white-space: pre-wrap;\n background-color: transparent;\n border-radius: 0;\n }\n}\n\n// Enable scrollable blocks of code\n.pre-scrollable {\n max-height: @pre-scrollable-max-height;\n overflow-y: scroll;\n}\n","component-animations.less":"//\n// Component animations\n// --------------------------------------------------\n\n// Heads up!\n//\n// We don't use the `.opacity()` mixin here since it causes a bug with text\n// fields in IE7-8. Source: https://github.com/twbs/bootstrap/pull/3552.\n\n.fade {\n opacity: 0;\n .transition(opacity .15s linear);\n &.in {\n opacity: 1;\n }\n}\n\n.collapse {\n display: none;\n\n &.in { display: block; }\n tr&.in { display: table-row; }\n tbody&.in { display: table-row-group; }\n}\n\n.collapsing {\n position: relative;\n height: 0;\n overflow: hidden;\n .transition(height .35s ease);\n}\n","dropdowns.less":'//\n// Dropdown menus\n// --------------------------------------------------\n\n\n// Dropdown arrow/caret\n.caret {\n display: inline-block;\n width: 0;\n height: 0;\n margin-left: 2px;\n vertical-align: middle;\n border-top: @caret-width-base solid;\n border-right: @caret-width-base solid transparent;\n border-left: @caret-width-base solid transparent;\n}\n\n// The dropdown wrapper (div)\n.dropdown {\n position: relative;\n}\n\n// Prevent the focus on the dropdown toggle when closing dropdowns\n.dropdown-toggle:focus {\n outline: 0;\n}\n\n// The dropdown menu (ul)\n.dropdown-menu {\n position: absolute;\n top: 100%;\n left: 0;\n z-index: @zindex-dropdown;\n display: none; // none by default, but block on "open" of the menu\n float: left;\n min-width: 160px;\n padding: 5px 0;\n margin: 2px 0 0; // override default ul\n list-style: none;\n font-size: @font-size-base;\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\n background-color: @dropdown-bg;\n border: 1px solid @dropdown-fallback-border; // IE8 fallback\n border: 1px solid @dropdown-border;\n border-radius: @border-radius-base;\n .box-shadow(0 6px 12px rgba(0,0,0,.175));\n background-clip: padding-box;\n\n // Aligns the dropdown menu to right\n //\n // Deprecated as of 3.1.0 in favor of `.dropdown-menu-[dir]`\n &.pull-right {\n right: 0;\n left: auto;\n }\n\n // Dividers (basically an hr) within the dropdown\n .divider {\n .nav-divider(@dropdown-divider-bg);\n }\n\n // Links within the dropdown menu\n > li > a {\n display: block;\n padding: 3px 20px;\n clear: both;\n font-weight: normal;\n line-height: @line-height-base;\n color: @dropdown-link-color;\n white-space: nowrap; // prevent links from randomly breaking onto new lines\n }\n}\n\n// Hover/Focus state\n.dropdown-menu > li > a {\n &:hover,\n &:focus {\n text-decoration: none;\n color: @dropdown-link-hover-color;\n background-color: @dropdown-link-hover-bg;\n }\n}\n\n// Active state\n.dropdown-menu > .active > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-active-color;\n text-decoration: none;\n outline: 0;\n background-color: @dropdown-link-active-bg;\n }\n}\n\n// Disabled state\n//\n// Gray out text and ensure the hover/focus state remains gray\n\n.dropdown-menu > .disabled > a {\n &,\n &:hover,\n &:focus {\n color: @dropdown-link-disabled-color;\n }\n}\n// Nuke hover/focus effects\n.dropdown-menu > .disabled > a {\n &:hover,\n &:focus {\n text-decoration: none;\n background-color: transparent;\n background-image: none; // Remove CSS gradient\n .reset-filter();\n cursor: not-allowed;\n }\n}\n\n// Open state for the dropdown\n.open {\n // Show the menu\n > .dropdown-menu {\n display: block;\n }\n\n // Remove the outline when :focus is triggered\n > a {\n outline: 0;\n }\n}\n\n// Menu positioning\n//\n// Add extra class to `.dropdown-menu` to flip the alignment of the dropdown\n// menu with the parent.\n.dropdown-menu-right {\n left: auto; // Reset the default from `.dropdown-menu`\n right: 0;\n}\n// With v3, we enabled auto-flipping if you have a dropdown within a right\n// aligned nav component. To enable the undoing of that, we provide an override\n// to restore the default dropdown menu alignment.\n//\n// This is only for left-aligning a dropdown menu within a `.navbar-right` or\n// `.pull-right` nav component.\n.dropdown-menu-left {\n left: 0;\n right: auto;\n}\n\n// Dropdown section headers\n.dropdown-header {\n display: block;\n padding: 3px 20px;\n font-size: @font-size-small;\n line-height: @line-height-base;\n color: @dropdown-header-color;\n}\n\n// Backdrop to catch body clicks on mobile, etc.\n.dropdown-backdrop {\n position: fixed;\n left: 0;\n right: 0;\n bottom: 0;\n top: 0;\n z-index: (@zindex-dropdown - 10);\n}\n\n// Right aligned dropdowns\n.pull-right > .dropdown-menu {\n right: 0;\n left: auto;\n}\n\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\n//\n// Just add .dropup after the standard .dropdown class and you\'re set, bro.\n// TODO: abstract this so that the navbar fixed styles are not placed here?\n\n.dropup,\n.navbar-fixed-bottom .dropdown {\n // Reverse the caret\n .caret {\n border-top: 0;\n border-bottom: @caret-width-base solid;\n content: "";\n }\n // Different positioning for bottom up menu\n .dropdown-menu {\n top: auto;\n bottom: 100%;\n margin-bottom: 1px;\n }\n}\n\n\n// Component alignment\n//\n// Reiterate per navbar.less and the modified component alignment there.\n\n@media (min-width: @grid-float-breakpoint) {\n .navbar-right {\n .dropdown-menu {\n .dropdown-menu-right();\n }\n // Necessary for overrides of the default right aligned menu.\n // Will remove come v4 in all likelihood.\n .dropdown-menu-left {\n .dropdown-menu-left();\n }\n }\n}\n\n',"forms.less":'//\n// Forms\n// --------------------------------------------------\n\n\n// Normalize non-controls\n//\n// Restyle and baseline non-control form elements.\n\nfieldset {\n padding: 0;\n margin: 0;\n border: 0;\n // Chrome and Firefox set a `min-width: -webkit-min-content;` on fieldsets,\n // so we reset that to ensure it behaves more like a standard block element.\n // See https://github.com/twbs/bootstrap/issues/12359.\n min-width: 0;\n}\n\nlegend {\n display: block;\n width: 100%;\n padding: 0;\n margin-bottom: @line-height-computed;\n font-size: (@font-size-base * 1.5);\n line-height: inherit;\n color: @legend-color;\n border: 0;\n border-bottom: 1px solid @legend-border-color;\n}\n\nlabel {\n display: inline-block;\n max-width: 100%; // Force IE8 to wrap long content (see https://github.com/twbs/bootstrap/issues/13141)\n margin-bottom: 5px;\n font-weight: bold;\n}\n\n\n// Normalize form controls\n//\n// While most of our form styles require extra classes, some basic normalization\n// is required to ensure optimum display with or without those classes to better\n// address browser inconsistencies.\n\n// Override content-box in Normalize (* isn\'t specific enough)\ninput[type="search"] {\n .box-sizing(border-box);\n}\n\n// Position radios and checkboxes better\ninput[type="radio"],\ninput[type="checkbox"] {\n margin: 4px 0 0;\n margin-top: 1px \\9; // IE8-9\n line-height: normal;\n}\n\n// Set the height of file controls to match text inputs\ninput[type="file"] {\n display: block;\n}\n\n// Make range inputs behave like textual form controls\ninput[type="range"] {\n display: block;\n width: 100%;\n}\n\n// Make multiple select elements height not fixed\nselect[multiple],\nselect[size] {\n height: auto;\n}\n\n// Focus for file, radio, and checkbox\ninput[type="file"]:focus,\ninput[type="radio"]:focus,\ninput[type="checkbox"]:focus {\n .tab-focus();\n}\n\n// Adjust output element\noutput {\n display: block;\n padding-top: (@padding-base-vertical + 1);\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n}\n\n\n// Common form controls\n//\n// Shared size and type resets for form controls. Apply `.form-control` to any\n// of the following form controls:\n//\n// select\n// textarea\n// input[type="text"]\n// input[type="password"]\n// input[type="datetime"]\n// input[type="datetime-local"]\n// input[type="date"]\n// input[type="month"]\n// input[type="time"]\n// input[type="week"]\n// input[type="number"]\n// input[type="email"]\n// input[type="url"]\n// input[type="search"]\n// input[type="tel"]\n// input[type="color"]\n\n.form-control {\n display: block;\n width: 100%;\n height: @input-height-base; // Make inputs at least the height of their button counterpart (base line-height + padding + border)\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n line-height: @line-height-base;\n color: @input-color;\n background-color: @input-bg;\n background-image: none; // Reset unusual Firefox-on-Android default style; see https://github.com/necolas/normalize.css/issues/214\n border: 1px solid @input-border;\n border-radius: @input-border-radius;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075));\n .transition(~"border-color ease-in-out .15s, box-shadow ease-in-out .15s");\n\n // Customize the `:focus` state to imitate native WebKit styles.\n .form-control-focus();\n\n // Placeholder\n .placeholder();\n\n // Disabled and read-only inputs\n //\n // HTML5 says that controls under a fieldset > legend:first-child won\'t be\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\n // don\'t honor that edge case; we style them as disabled anyway.\n &[disabled],\n &[readonly],\n fieldset[disabled] & {\n cursor: not-allowed;\n background-color: @input-bg-disabled;\n opacity: 1; // iOS fix for unreadable disabled content\n }\n\n // Reset height for `textarea`s\n textarea& {\n height: auto;\n }\n}\n\n\n// Search inputs in iOS\n//\n// This overrides the extra rounded corners on search inputs in iOS so that our\n// `.form-control` class can properly style them. Note that this cannot simply\n// be added to `.form-control` as it\'s not specific enough. For details, see\n// https://github.com/twbs/bootstrap/issues/11586.\n\ninput[type="search"] {\n -webkit-appearance: none;\n}\n\n\n// Special styles for iOS date input\n//\n// In Mobile Safari, date inputs require a pixel line-height that matches the\n// given height of the input. Since this fucks up everything else, we have to\n// appropriately reset it for Internet Explorer and the size variations.\n\ninput[type="date"],\ninput[type="time"],\ninput[type="datetime-local"],\ninput[type="month"] {\n line-height: @input-height-base;\n // IE8+ misaligns the text within date inputs, so we reset\n line-height: @line-height-base ~"\\0";\n\n &.input-sm {\n line-height: @input-height-small;\n }\n &.input-lg {\n line-height: @input-height-large;\n }\n}\n\n\n// Form groups\n//\n// Designed to help with the organization and spacing of vertical forms. For\n// horizontal forms, use the predefined grid classes.\n\n.form-group {\n margin-bottom: 15px;\n}\n\n\n// Checkboxes and radios\n//\n// Indent the labels to position radios/checkboxes as hanging controls.\n\n.radio,\n.checkbox {\n display: block;\n min-height: @line-height-computed; // clear the floating input if there is no label text\n margin-top: 10px;\n margin-bottom: 10px;\n\n label {\n padding-left: 20px;\n margin-bottom: 0;\n font-weight: normal;\n cursor: pointer;\n }\n}\n.radio input[type="radio"],\n.radio-inline input[type="radio"],\n.checkbox input[type="checkbox"],\n.checkbox-inline input[type="checkbox"] {\n float: left;\n margin-left: -20px;\n}\n.radio + .radio,\n.checkbox + .checkbox {\n margin-top: -5px; // Move up sibling radios or checkboxes for tighter spacing\n}\n\n// Radios and checkboxes on same line\n.radio-inline,\n.checkbox-inline {\n display: inline-block;\n padding-left: 20px;\n margin-bottom: 0;\n vertical-align: middle;\n font-weight: normal;\n cursor: pointer;\n}\n.radio-inline + .radio-inline,\n.checkbox-inline + .checkbox-inline {\n margin-top: 0;\n margin-left: 10px; // space out consecutive inline controls\n}\n\n// Apply same disabled cursor tweak as for inputs\n//\n// Note: Neither radios nor checkboxes can be readonly.\ninput[type="radio"],\ninput[type="checkbox"],\n.radio,\n.radio-inline,\n.checkbox,\n.checkbox-inline {\n &[disabled],\n fieldset[disabled] & {\n cursor: not-allowed;\n }\n}\n\n\n// Form control sizing\n//\n// Build on `.form-control` with modifier classes to decrease or increase the\n// height and font-size of form controls.\n\n.input-sm {\n .input-size(@input-height-small; @padding-small-vertical; @padding-small-horizontal; @font-size-small; @line-height-small; @border-radius-small);\n}\n\n.input-lg {\n .input-size(@input-height-large; @padding-large-vertical; @padding-large-horizontal; @font-size-large; @line-height-large; @border-radius-large);\n}\n\n\n// Form control feedback states\n//\n// Apply contextual and semantic states to individual form controls.\n\n.has-feedback {\n // Enable absolute positioning\n position: relative;\n\n // Ensure icons don\'t overlap text\n .form-control {\n padding-right: (@input-height-base * 1.25);\n }\n}\n// Feedback icon (requires .glyphicon classes)\n.form-control-feedback {\n position: absolute;\n top: (@line-height-computed + 5); // Height of the `label` and its margin\n right: 0;\n z-index: 2; // Ensure icon is above input groups\n display: block;\n width: @input-height-base;\n height: @input-height-base;\n line-height: @input-height-base;\n text-align: center;\n}\n.input-lg + .form-control-feedback {\n width: @input-height-large;\n height: @input-height-large;\n line-height: @input-height-large;\n}\n.input-sm + .form-control-feedback {\n width: @input-height-small;\n height: @input-height-small;\n line-height: @input-height-small;\n}\n\n// Feedback states\n.has-success {\n .form-control-validation(@state-success-text; @state-success-text; @state-success-bg);\n}\n.has-warning {\n .form-control-validation(@state-warning-text; @state-warning-text; @state-warning-bg);\n}\n.has-error {\n .form-control-validation(@state-danger-text; @state-danger-text; @state-danger-bg);\n}\n\n\n// Static form control text\n//\n// Apply class to a `p` element to make any string of text align with labels in\n// a horizontal form layout.\n\n.form-control-static {\n margin-bottom: 0; // Remove default margin from `p`\n}\n\n\n// Help text\n//\n// Apply to any element you wish to create light text for placement immediately\n// below a form control. Use for general help, formatting, or instructional text.\n\n.help-block {\n display: block; // account for any element using help-block\n margin-top: 5px;\n margin-bottom: 10px;\n color: lighten(@text-color, 25%); // lighten the text some for contrast\n}\n\n\n\n// Inline forms\n//\n// Make forms appear inline(-block) by adding the `.form-inline` class. Inline\n// forms begin stacked on extra small (mobile) devices and then go inline when\n// viewports reach <768px.\n//\n// Requires wrapping inputs and labels with `.form-group` for proper display of\n// default HTML form controls and our custom form controls (e.g., input groups).\n//\n// Heads up! This is mixin-ed into `.navbar-form` in navbars.less.\n\n.form-inline {\n\n // Kick in the inline\n @media (min-width: @screen-sm-min) {\n // Inline-block all the things for "inline"\n .form-group {\n display: inline-block;\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // In navbar-form, allow folks to *not* use `.form-group`\n .form-control {\n display: inline-block;\n width: auto; // Prevent labels from stacking above inputs in `.form-group`\n vertical-align: middle;\n }\n\n .input-group {\n display: inline-table;\n vertical-align: middle;\n\n .input-group-addon,\n .input-group-btn,\n .form-control {\n width: auto;\n }\n }\n\n // Input groups need that 100% width though\n .input-group > .form-control {\n width: 100%;\n }\n\n .control-label {\n margin-bottom: 0;\n vertical-align: middle;\n }\n\n // Remove default margin on radios/checkboxes that were used for stacking, and\n // then undo the floating of radios and checkboxes to match (which also avoids\n // a bug in WebKit: https://github.com/twbs/bootstrap/issues/1969).\n .radio,\n .checkbox {\n display: inline-block;\n margin-top: 0;\n margin-bottom: 0;\n padding-left: 0;\n vertical-align: middle;\n }\n .radio input[type="radio"],\n .checkbox input[type="checkbox"] {\n float: none;\n margin-left: 0;\n }\n\n // Validation states\n //\n // Reposition the icon because it\'s now within a grid column and columns have\n // `position: relative;` on them. Also accounts for the grid gutter padding.\n .has-feedback .form-control-feedback {\n top: 0;\n }\n }\n}\n\n\n// Horizontal forms\n//\n// Horizontal forms are built on grid classes and allow you to create forms with\n// labels on the left and inputs on the right.\n\n.form-horizontal {\n\n // Consistent vertical alignment of radios and checkboxes\n //\n // Labels also get some reset styles, but that is scoped to a media query below.\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n margin-top: 0;\n margin-bottom: 0;\n padding-top: (@padding-base-vertical + 1); // Default padding plus a border\n }\n // Account for padding we\'re adding to ensure the alignment and of help text\n // and other content below items\n .radio,\n .checkbox {\n min-height: (@line-height-computed + (@padding-base-vertical + 1));\n }\n\n // Make form groups behave like rows\n .form-group {\n .make-row();\n }\n\n .form-control-static {\n padding-top: (@padding-base-vertical + 1);\n padding-bottom: (@padding-base-vertical + 1);\n }\n\n // Reset spacing and right align labels, but scope to media queries so that\n // labels on narrow viewports stack the same as a default form example.\n @media (min-width: @screen-sm-min) {\n .control-label {\n text-align: right;\n margin-bottom: 0;\n padding-top: (@padding-base-vertical + 1); // Default padding plus a border\n }\n }\n\n // Validation states\n //\n // Reposition the icon because it\'s now within a grid column and columns have\n // `position: relative;` on them. Also accounts for the grid gutter padding.\n .has-feedback .form-control-feedback {\n top: 0;\n right: (@grid-gutter-width / 2);\n }\n}\n',"glyphicons.less":'//\n// Glyphicons for Bootstrap\n//\n// Since icons are fonts, they can be placed anywhere text is placed and are\n// thus automatically sized to match the surrounding child. To use, create an\n// inline element with the appropriate classes, like so:\n//\n// Star\n\n// Import the fonts\n@font-face {\n font-family: \'Glyphicons Halflings\';\n src: ~"url(\'@{icon-font-path}@{icon-font-name}.eot\')";\n src: ~"url(\'@{icon-font-path}@{icon-font-name}.eot?#iefix\') format(\'embedded-opentype\')",\n ~"url(\'@{icon-font-path}@{icon-font-name}.woff\') format(\'woff\')",\n ~"url(\'@{icon-font-path}@{icon-font-name}.ttf\') format(\'truetype\')",\n ~"url(\'@{icon-font-path}@{icon-font-name}.svg#@{icon-font-svg-id}\') format(\'svg\')";\n}\n\n// Catchall baseclass\n.glyphicon {\n position: relative;\n top: 1px;\n display: inline-block;\n font-family: \'Glyphicons Halflings\';\n font-style: normal;\n font-weight: normal;\n line-height: 1;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n// Individual icons\n.glyphicon-asterisk { &:before { content: "\\2a"; } }\n.glyphicon-plus { &:before { content: "\\2b"; } }\n.glyphicon-euro { &:before { content: "\\20ac"; } }\n.glyphicon-minus { &:before { content: "\\2212"; } }\n.glyphicon-cloud { &:before { content: "\\2601"; } }\n.glyphicon-envelope { &:before { content: "\\2709"; } }\n.glyphicon-pencil { &:before { content: "\\270f"; } }\n.glyphicon-glass { &:before { content: "\\e001"; } }\n.glyphicon-music { &:before { content: "\\e002"; } }\n.glyphicon-search { &:before { content: "\\e003"; } }\n.glyphicon-heart { &:before { content: "\\e005"; } }\n.glyphicon-star { &:before { content: "\\e006"; } }\n.glyphicon-star-empty { &:before { content: "\\e007"; } }\n.glyphicon-user { &:before { content: "\\e008"; } }\n.glyphicon-film { &:before { content: "\\e009"; } }\n.glyphicon-th-large { &:before { content: "\\e010"; } }\n.glyphicon-th { &:before { content: "\\e011"; } }\n.glyphicon-th-list { &:before { content: "\\e012"; } }\n.glyphicon-ok { &:before { content: "\\e013"; } }\n.glyphicon-remove { &:before { content: "\\e014"; } }\n.glyphicon-zoom-in { &:before { content: "\\e015"; } }\n.glyphicon-zoom-out { &:before { content: "\\e016"; } }\n.glyphicon-off { &:before { content: "\\e017"; } }\n.glyphicon-signal { &:before { content: "\\e018"; } }\n.glyphicon-cog { &:before { content: "\\e019"; } }\n.glyphicon-trash { &:before { content: "\\e020"; } }\n.glyphicon-home { &:before { content: "\\e021"; } }\n.glyphicon-file { &:before { content: "\\e022"; } }\n.glyphicon-time { &:before { content: "\\e023"; } }\n.glyphicon-road { &:before { content: "\\e024"; } }\n.glyphicon-download-alt { &:before { content: "\\e025"; } }\n.glyphicon-download { &:before { content: "\\e026"; } }\n.glyphicon-upload { &:before { content: "\\e027"; } }\n.glyphicon-inbox { &:before { content: "\\e028"; } }\n.glyphicon-play-circle { &:before { content: "\\e029"; } }\n.glyphicon-repeat { &:before { content: "\\e030"; } }\n.glyphicon-refresh { &:before { content: "\\e031"; } }\n.glyphicon-list-alt { &:before { content: "\\e032"; } }\n.glyphicon-lock { &:before { content: "\\e033"; } }\n.glyphicon-flag { &:before { content: "\\e034"; } }\n.glyphicon-headphones { &:before { content: "\\e035"; } }\n.glyphicon-volume-off { &:before { content: "\\e036"; } }\n.glyphicon-volume-down { &:before { content: "\\e037"; } }\n.glyphicon-volume-up { &:before { content: "\\e038"; } }\n.glyphicon-qrcode { &:before { content: "\\e039"; } }\n.glyphicon-barcode { &:before { content: "\\e040"; } }\n.glyphicon-tag { &:before { content: "\\e041"; } }\n.glyphicon-tags { &:before { content: "\\e042"; } }\n.glyphicon-book { &:before { content: "\\e043"; } }\n.glyphicon-bookmark { &:before { content: "\\e044"; } }\n.glyphicon-print { &:before { content: "\\e045"; } }\n.glyphicon-camera { &:before { content: "\\e046"; } }\n.glyphicon-font { &:before { content: "\\e047"; } }\n.glyphicon-bold { &:before { content: "\\e048"; } }\n.glyphicon-italic { &:before { content: "\\e049"; } }\n.glyphicon-text-height { &:before { content: "\\e050"; } }\n.glyphicon-text-width { &:before { content: "\\e051"; } }\n.glyphicon-align-left { &:before { content: "\\e052"; } }\n.glyphicon-align-center { &:before { content: "\\e053"; } }\n.glyphicon-align-right { &:before { content: "\\e054"; } }\n.glyphicon-align-justify { &:before { content: "\\e055"; } }\n.glyphicon-list { &:before { content: "\\e056"; } }\n.glyphicon-indent-left { &:before { content: "\\e057"; } }\n.glyphicon-indent-right { &:before { content: "\\e058"; } }\n.glyphicon-facetime-video { &:before { content: "\\e059"; } }\n.glyphicon-picture { &:before { content: "\\e060"; } }\n.glyphicon-map-marker { &:before { content: "\\e062"; } }\n.glyphicon-adjust { &:before { content: "\\e063"; } }\n.glyphicon-tint { &:before { content: "\\e064"; } }\n.glyphicon-edit { &:before { content: "\\e065"; } }\n.glyphicon-share { &:before { content: "\\e066"; } }\n.glyphicon-check { &:before { content: "\\e067"; } }\n.glyphicon-move { &:before { content: "\\e068"; } }\n.glyphicon-step-backward { &:before { content: "\\e069"; } }\n.glyphicon-fast-backward { &:before { content: "\\e070"; } }\n.glyphicon-backward { &:before { content: "\\e071"; } }\n.glyphicon-play { &:before { content: "\\e072"; } }\n.glyphicon-pause { &:before { content: "\\e073"; } }\n.glyphicon-stop { &:before { content: "\\e074"; } }\n.glyphicon-forward { &:before { content: "\\e075"; } }\n.glyphicon-fast-forward { &:before { content: "\\e076"; } }\n.glyphicon-step-forward { &:before { content: "\\e077"; } }\n.glyphicon-eject { &:before { content: "\\e078"; } }\n.glyphicon-chevron-left { &:before { content: "\\e079"; } }\n.glyphicon-chevron-right { &:before { content: "\\e080"; } }\n.glyphicon-plus-sign { &:before { content: "\\e081"; } }\n.glyphicon-minus-sign { &:before { content: "\\e082"; } }\n.glyphicon-remove-sign { &:before { content: "\\e083"; } }\n.glyphicon-ok-sign { &:before { content: "\\e084"; } }\n.glyphicon-question-sign { &:before { content: "\\e085"; } }\n.glyphicon-info-sign { &:before { content: "\\e086"; } }\n.glyphicon-screenshot { &:before { content: "\\e087"; } }\n.glyphicon-remove-circle { &:before { content: "\\e088"; } }\n.glyphicon-ok-circle { &:before { content: "\\e089"; } }\n.glyphicon-ban-circle { &:before { content: "\\e090"; } }\n.glyphicon-arrow-left { &:before { content: "\\e091"; } }\n.glyphicon-arrow-right { &:before { content: "\\e092"; } }\n.glyphicon-arrow-up { &:before { content: "\\e093"; } }\n.glyphicon-arrow-down { &:before { content: "\\e094"; } }\n.glyphicon-share-alt { &:before { content: "\\e095"; } }\n.glyphicon-resize-full { &:before { content: "\\e096"; } }\n.glyphicon-resize-small { &:before { content: "\\e097"; } }\n.glyphicon-exclamation-sign { &:before { content: "\\e101"; } }\n.glyphicon-gift { &:before { content: "\\e102"; } }\n.glyphicon-leaf { &:before { content: "\\e103"; } }\n.glyphicon-fire { &:before { content: "\\e104"; } }\n.glyphicon-eye-open { &:before { content: "\\e105"; } }\n.glyphicon-eye-close { &:before { content: "\\e106"; } }\n.glyphicon-warning-sign { &:before { content: "\\e107"; } }\n.glyphicon-plane { &:before { content: "\\e108"; } }\n.glyphicon-calendar { &:before { content: "\\e109"; } }\n.glyphicon-random { &:before { content: "\\e110"; } }\n.glyphicon-comment { &:before { content: "\\e111"; } }\n.glyphicon-magnet { &:before { content: "\\e112"; } }\n.glyphicon-chevron-up { &:before { content: "\\e113"; } }\n.glyphicon-chevron-down { &:before { content: "\\e114"; } }\n.glyphicon-retweet { &:before { content: "\\e115"; } }\n.glyphicon-shopping-cart { &:before { content: "\\e116"; } }\n.glyphicon-folder-close { &:before { content: "\\e117"; } }\n.glyphicon-folder-open { &:before { content: "\\e118"; } }\n.glyphicon-resize-vertical { &:before { content: "\\e119"; } }\n.glyphicon-resize-horizontal { &:before { content: "\\e120"; } }\n.glyphicon-hdd { &:before { content: "\\e121"; } }\n.glyphicon-bullhorn { &:before { content: "\\e122"; } }\n.glyphicon-bell { &:before { content: "\\e123"; } }\n.glyphicon-certificate { &:before { content: "\\e124"; } }\n.glyphicon-thumbs-up { &:before { content: "\\e125"; } }\n.glyphicon-thumbs-down { &:before { content: "\\e126"; } }\n.glyphicon-hand-right { &:before { content: "\\e127"; } }\n.glyphicon-hand-left { &:before { content: "\\e128"; } }\n.glyphicon-hand-up { &:before { content: "\\e129"; } }\n.glyphicon-hand-down { &:before { content: "\\e130"; } }\n.glyphicon-circle-arrow-right { &:before { content: "\\e131"; } }\n.glyphicon-circle-arrow-left { &:before { content: "\\e132"; } }\n.glyphicon-circle-arrow-up { &:before { content: "\\e133"; } }\n.glyphicon-circle-arrow-down { &:before { content: "\\e134"; } }\n.glyphicon-globe { &:before { content: "\\e135"; } }\n.glyphicon-wrench { &:before { content: "\\e136"; } }\n.glyphicon-tasks { &:before { content: "\\e137"; } }\n.glyphicon-filter { &:before { content: "\\e138"; } }\n.glyphicon-briefcase { &:before { content: "\\e139"; } }\n.glyphicon-fullscreen { &:before { content: "\\e140"; } }\n.glyphicon-dashboard { &:before { content: "\\e141"; } }\n.glyphicon-paperclip { &:before { content: "\\e142"; } }\n.glyphicon-heart-empty { &:before { content: "\\e143"; } }\n.glyphicon-link { &:before { content: "\\e144"; } }\n.glyphicon-phone { &:before { content: "\\e145"; } }\n.glyphicon-pushpin { &:before { content: "\\e146"; } }\n.glyphicon-usd { &:before { content: "\\e148"; } }\n.glyphicon-gbp { &:before { content: "\\e149"; } }\n.glyphicon-sort { &:before { content: "\\e150"; } }\n.glyphicon-sort-by-alphabet { &:before { content: "\\e151"; } }\n.glyphicon-sort-by-alphabet-alt { &:before { content: "\\e152"; } }\n.glyphicon-sort-by-order { &:before { content: "\\e153"; } }\n.glyphicon-sort-by-order-alt { &:before { content: "\\e154"; } }\n.glyphicon-sort-by-attributes { &:before { content: "\\e155"; } }\n.glyphicon-sort-by-attributes-alt { &:before { content: "\\e156"; } }\n.glyphicon-unchecked { &:before { content: "\\e157"; } }\n.glyphicon-expand { &:before { content: "\\e158"; } }\n.glyphicon-collapse-down { &:before { content: "\\e159"; } }\n.glyphicon-collapse-up { &:before { content: "\\e160"; } }\n.glyphicon-log-in { &:before { content: "\\e161"; } }\n.glyphicon-flash { &:before { content: "\\e162"; } }\n.glyphicon-log-out { &:before { content: "\\e163"; } }\n.glyphicon-new-window { &:before { content: "\\e164"; } }\n.glyphicon-record { &:before { content: "\\e165"; } }\n.glyphicon-save { &:before { content: "\\e166"; } }\n.glyphicon-open { &:before { content: "\\e167"; } }\n.glyphicon-saved { &:before { content: "\\e168"; } }\n.glyphicon-import { &:before { content: "\\e169"; } }\n.glyphicon-export { &:before { content: "\\e170"; } }\n.glyphicon-send { &:before { content: "\\e171"; } }\n.glyphicon-floppy-disk { &:before { content: "\\e172"; } }\n.glyphicon-floppy-saved { &:before { content: "\\e173"; } }\n.glyphicon-floppy-remove { &:before { content: "\\e174"; } }\n.glyphicon-floppy-save { &:before { content: "\\e175"; } }\n.glyphicon-floppy-open { &:before { content: "\\e176"; } }\n.glyphicon-credit-card { &:before { content: "\\e177"; } }\n.glyphicon-transfer { &:before { content: "\\e178"; } }\n.glyphicon-cutlery { &:before { content: "\\e179"; } }\n.glyphicon-header { &:before { content: "\\e180"; } }\n.glyphicon-compressed { &:before { content: "\\e181"; } }\n.glyphicon-earphone { &:before { content: "\\e182"; } }\n.glyphicon-phone-alt { &:before { content: "\\e183"; } }\n.glyphicon-tower { &:before { content: "\\e184"; } }\n.glyphicon-stats { &:before { content: "\\e185"; } }\n.glyphicon-sd-video { &:before { content: "\\e186"; } }\n.glyphicon-hd-video { &:before { content: "\\e187"; } }\n.glyphicon-subtitles { &:before { content: "\\e188"; } }\n.glyphicon-sound-stereo { &:before { content: "\\e189"; } }\n.glyphicon-sound-dolby { &:before { content: "\\e190"; } }\n.glyphicon-sound-5-1 { &:before { content: "\\e191"; } }\n.glyphicon-sound-6-1 { &:before { content: "\\e192"; } }\n.glyphicon-sound-7-1 { &:before { content: "\\e193"; } }\n.glyphicon-copyright-mark { &:before { content: "\\e194"; } }\n.glyphicon-registration-mark { &:before { content: "\\e195"; } }\n.glyphicon-cloud-download { &:before { content: "\\e197"; } }\n.glyphicon-cloud-upload { &:before { content: "\\e198"; } }\n.glyphicon-tree-conifer { &:before { content: "\\e199"; } }\n.glyphicon-tree-deciduous { &:before { content: "\\e200"; } }\n',"grid.less":"//\n// Grid system\n// --------------------------------------------------\n\n\n// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n.container {\n .container-fixed();\n\n @media (min-width: @screen-sm-min) {\n width: @container-sm;\n }\n @media (min-width: @screen-md-min) {\n width: @container-md;\n }\n @media (min-width: @screen-lg-min) {\n width: @container-lg;\n }\n}\n\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but without any defined\n// width for fluid, full width layouts.\n\n.container-fluid {\n .container-fixed();\n}\n\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n.row {\n .make-row();\n}\n\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n.make-grid-columns();\n\n\n// Extra small grid\n//\n// Columns, offsets, pushes, and pulls for extra small devices like\n// smartphones.\n\n.make-grid(xs);\n\n\n// Small grid\n//\n// Columns, offsets, pushes, and pulls for the small device range, from phones\n// to tablets.\n\n@media (min-width: @screen-sm-min) {\n .make-grid(sm);\n}\n\n\n// Medium grid\n//\n// Columns, offsets, pushes, and pulls for the desktop device range.\n\n@media (min-width: @screen-md-min) {\n .make-grid(md);\n}\n\n\n// Large grid\n//\n// Columns, offsets, pushes, and pulls for the large desktop device range.\n\n@media (min-width: @screen-lg-min) {\n .make-grid(lg);\n}\n","input-groups.less":'//\n// Input groups\n// --------------------------------------------------\n\n// Base styles\n// -------------------------\n.input-group {\n position: relative; // For dropdowns\n display: table;\n border-collapse: separate; // prevent input groups from inheriting border styles from table cells when placed within a table\n\n // Undo padding and float of grid classes\n &[class*="col-"] {\n float: none;\n padding-left: 0;\n padding-right: 0;\n }\n\n .form-control {\n // Ensure that the input is always above the *appended* addon button for\n // proper border colors.\n position: relative;\n z-index: 2;\n\n // IE9 fubars the placeholder attribute in text inputs and the arrows on\n // select elements in input groups. To fix it, we float the input. Details:\n // https://github.com/twbs/bootstrap/issues/11561#issuecomment-28936855\n float: left;\n\n width: 100%;\n margin-bottom: 0;\n }\n}\n\n// Sizing options\n//\n// Remix the default form control sizing classes into new ones for easier\n// manipulation.\n\n.input-group-lg > .form-control,\n.input-group-lg > .input-group-addon,\n.input-group-lg > .input-group-btn > .btn { .input-lg(); }\n.input-group-sm > .form-control,\n.input-group-sm > .input-group-addon,\n.input-group-sm > .input-group-btn > .btn { .input-sm(); }\n\n\n// Display as table-cell\n// -------------------------\n.input-group-addon,\n.input-group-btn,\n.input-group .form-control {\n display: table-cell;\n\n &:not(:first-child):not(:last-child) {\n border-radius: 0;\n }\n}\n// Addon and addon wrapper for buttons\n.input-group-addon,\n.input-group-btn {\n width: 1%;\n white-space: nowrap;\n vertical-align: middle; // Match the inputs\n}\n\n// Text input groups\n// -------------------------\n.input-group-addon {\n padding: @padding-base-vertical @padding-base-horizontal;\n font-size: @font-size-base;\n font-weight: normal;\n line-height: 1;\n color: @input-color;\n text-align: center;\n background-color: @input-group-addon-bg;\n border: 1px solid @input-group-addon-border-color;\n border-radius: @border-radius-base;\n\n // Sizing\n &.input-sm {\n padding: @padding-small-vertical @padding-small-horizontal;\n font-size: @font-size-small;\n border-radius: @border-radius-small;\n }\n &.input-lg {\n padding: @padding-large-vertical @padding-large-horizontal;\n font-size: @font-size-large;\n border-radius: @border-radius-large;\n }\n\n // Nuke default margins from checkboxes and radios to vertically center within.\n input[type="radio"],\n input[type="checkbox"] {\n margin-top: 0;\n }\n}\n\n// Reset rounded corners\n.input-group .form-control:first-child,\n.input-group-addon:first-child,\n.input-group-btn:first-child > .btn,\n.input-group-btn:first-child > .btn-group > .btn,\n.input-group-btn:first-child > .dropdown-toggle,\n.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),\n.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {\n .border-right-radius(0);\n}\n.input-group-addon:first-child {\n border-right: 0;\n}\n.input-group .form-control:last-child,\n.input-group-addon:last-child,\n.input-group-btn:last-child > .btn,\n.input-group-btn:last-child > .btn-group > .btn,\n.input-group-btn:last-child > .dropdown-toggle,\n.input-group-btn:first-child > .btn:not(:first-child),\n.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {\n .border-left-radius(0);\n}\n.input-group-addon:last-child {\n border-left: 0;\n}\n\n// Button input groups\n// -------------------------\n.input-group-btn {\n position: relative;\n // Jankily prevent input button groups from wrapping with `white-space` and\n // `font-size` in combination with `inline-block` on buttons.\n font-size: 0;\n white-space: nowrap;\n\n // Negative margin for spacing, position for bringing hovered/focused/actived\n // element above the siblings.\n > .btn {\n position: relative;\n + .btn {\n margin-left: -1px;\n }\n // Bring the "active" button to the front\n &:hover,\n &:focus,\n &:active {\n z-index: 2;\n }\n }\n\n // Negative margin to only have a 1px border between the two\n &:first-child {\n > .btn,\n > .btn-group {\n margin-right: -1px;\n }\n }\n &:last-child {\n > .btn,\n > .btn-group {\n margin-left: -1px;\n }\n }\n}\n',"jumbotron.less":"//\n// Jumbotron\n// --------------------------------------------------\n\n\n.jumbotron {\n padding: @jumbotron-padding;\n margin-bottom: @jumbotron-padding;\n color: @jumbotron-color;\n background-color: @jumbotron-bg;\n\n h1,\n .h1 {\n color: @jumbotron-heading-color;\n }\n p {\n margin-bottom: (@jumbotron-padding / 2);\n font-size: @jumbotron-font-size;\n font-weight: 200;\n }\n\n > hr {\n border-top-color: darken(@jumbotron-bg, 10%);\n }\n\n .container & {\n border-radius: @border-radius-large; // Only round corners at higher resolutions if contained in a container\n }\n\n .container {\n max-width: 100%;\n }\n\n @media screen and (min-width: @screen-sm-min) {\n padding-top: (@jumbotron-padding * 1.6);\n padding-bottom: (@jumbotron-padding * 1.6);\n\n .container & {\n padding-left: (@jumbotron-padding * 2);\n padding-right: (@jumbotron-padding * 2);\n }\n\n h1,\n .h1 {\n font-size: (@font-size-base * 4.5);\n }\n }\n}\n","labels.less":"//\n// Labels\n// --------------------------------------------------\n\n.label {\n display: inline;\n padding: .2em .6em .3em;\n font-size: 75%;\n font-weight: bold;\n line-height: 1;\n color: @label-color;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: .25em;\n\n // Add hover effects, but only for links\n a& {\n &:hover,\n &:focus {\n color: @label-link-hover-color;\n text-decoration: none;\n cursor: pointer;\n }\n }\n\n // Empty labels collapse automatically (not available in IE8)\n &:empty {\n display: none;\n }\n\n // Quick fix for labels in buttons\n .btn & {\n position: relative;\n top: -1px;\n }\n}\n\n// Colors\n// Contextual variations (linked labels get darker on :hover)\n\n.label-default {\n .label-variant(@label-default-bg);\n}\n\n.label-primary {\n .label-variant(@label-primary-bg);\n}\n\n.label-success {\n .label-variant(@label-success-bg);\n}\n\n.label-info {\n .label-variant(@label-info-bg);\n}\n\n.label-warning {\n .label-variant(@label-warning-bg);\n}\n\n.label-danger {\n .label-variant(@label-danger-bg);\n}\n","list-group.less":"//\n// List groups\n// --------------------------------------------------\n\n\n// Base class\n//\n// Easily usable on,
, or
.\n\n.list-group {\n // No need to set list-style: none; since .list-group-item is block level\n margin-bottom: 20px;\n padding-left: 0; // reset padding because ul and ol\n}\n\n\n// Individual list items\n//\n// Use on `li`s or `div`s within the `.list-group` parent.\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 10px 15px;\n // Place the border on the list items and negative margin up for better styling\n margin-bottom: -1px;\n background-color: @list-group-bg;\n border: 1px solid @list-group-border;\n\n // Round the first and last items\n &:first-child {\n .border-top-radius(@list-group-border-radius);\n }\n &:last-child {\n margin-bottom: 0;\n .border-bottom-radius(@list-group-border-radius);\n }\n\n // Align badges within list items\n > .badge {\n float: right;\n }\n > .badge + .badge {\n margin-right: 5px;\n }\n}\n\n\n// Linked list items\n//\n// Use anchor elements instead of `li`s or `div`s to create linked list items.\n// Includes an extra `.active` modifier class for showing selected items.\n\na.list-group-item {\n color: @list-group-link-color;\n\n .list-group-item-heading {\n color: @list-group-link-heading-color;\n }\n\n // Hover state\n &:hover,\n &:focus {\n text-decoration: none;\n color: @list-group-link-hover-color;\n background-color: @list-group-hover-bg;\n }\n}\n\n.list-group-item {\n // Disabled state\n &.disabled,\n &.disabled:hover,\n &.disabled:focus {\n background-color: @list-group-disabled-bg;\n color: @list-group-disabled-color;\n\n // Force color to inherit for custom content\n .list-group-item-heading {\n color: inherit;\n }\n .list-group-item-text {\n color: @list-group-disabled-text-color;\n }\n }\n\n // Active class on item itself, not parent\n &.active,\n &.active:hover,\n &.active:focus {\n z-index: 2; // Place active items above their siblings for proper border styling\n color: @list-group-active-color;\n background-color: @list-group-active-bg;\n border-color: @list-group-active-border;\n\n // Force color to inherit for custom content\n .list-group-item-heading {\n color: inherit;\n }\n .list-group-item-text {\n color: @list-group-active-text-color;\n }\n }\n}\n\n\n// Contextual variants\n//\n// Add modifier classes to change text and background color on individual items.\n// Organizationally, this must come after the `:hover` states.\n\n.list-group-item-variant(success; @state-success-bg; @state-success-text);\n.list-group-item-variant(info; @state-info-bg; @state-info-text);\n.list-group-item-variant(warning; @state-warning-bg; @state-warning-text);\n.list-group-item-variant(danger; @state-danger-bg; @state-danger-text);\n\n\n// Custom content options\n//\n// Extra classes for creating well-formatted content within `.list-group-item`s.\n\n.list-group-item-heading {\n margin-top: 0;\n margin-bottom: 5px;\n}\n.list-group-item-text {\n margin-bottom: 0;\n line-height: 1.3;\n}\n","media.less":"// Media objects\n// Source: http://stubbornella.org/content/?p=497\n// --------------------------------------------------\n\n\n// Common styles\n// -------------------------\n\n// Clear the floats\n.media,\n.media-body {\n overflow: hidden;\n zoom: 1;\n}\n\n// Proper spacing between instances of .media\n.media,\n.media .media {\n margin-top: 15px;\n}\n.media:first-child {\n margin-top: 0;\n}\n\n// For images and videos, set to block\n.media-object {\n display: block;\n}\n\n// Reset margins on headings for tighter default spacing\n.media-heading {\n margin: 0 0 5px;\n}\n\n\n// Media image alignment\n// -------------------------\n\n.media {\n > .pull-left {\n margin-right: 10px;\n }\n > .pull-right {\n margin-left: 10px;\n }\n}\n\n\n// Media list variation\n// -------------------------\n\n// Undo default ul/ol styles\n.media-list {\n padding-left: 0;\n list-style: none;\n}\n","mixins.less":'// Mixins\n// --------------------------------------------------\n\n// Utilities\n@import "mixins/hide-text.less";\n@import "mixins/opacity.less";\n@import "mixins/image.less";\n@import "mixins/labels.less";\n@import "mixins/reset-filter.less";\n@import "mixins/resize.less";\n@import "mixins/responsive-visibility.less";\n@import "mixins/size.less";\n@import "mixins/tab-focus.less";\n@import "mixins/text-emphasis.less";\n@import "mixins/text-overflow.less";\n@import "mixins/vendor-prefixes.less";\n\n// Components\n@import "mixins/alerts.less";\n@import "mixins/buttons.less";\n@import "mixins/panels.less";\n@import "mixins/pagination.less";\n@import "mixins/list-group.less";\n@import "mixins/nav-divider.less";\n@import "mixins/forms.less";\n@import "mixins/progress-bar.less";\n@import "mixins/table-row.less";\n\n// Skins\n@import "mixins/background-variant.less";\n@import "mixins/border-radius.less";\n@import "mixins/gradients.less";\n\n// Layout\n@import "mixins/clearfix.less";\n@import "mixins/center-block.less";\n@import "mixins/nav-vertical-align.less";\n@import "mixins/grid-framework.less";\n@import "mixins/grid.less";\n',"mixins/alerts.less":"// Alerts\n\n.alert-variant(@background; @border; @text-color) {\n background-color: @background;\n border-color: @border;\n color: @text-color;\n\n hr {\n border-top-color: darken(@border, 5%);\n }\n .alert-link {\n color: darken(@text-color, 10%);\n }\n}\n","mixins/background-variant.less":"// Contextual backgrounds\n\n.bg-variant(@color) {\n background-color: @color;\n a&:hover {\n background-color: darken(@color, 10%);\n }\n}\n","mixins/border-radius.less":"// Single side border-radius\n\n.border-top-radius(@radius) {\n border-top-right-radius: @radius;\n border-top-left-radius: @radius;\n}\n.border-right-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-top-right-radius: @radius;\n}\n.border-bottom-radius(@radius) {\n border-bottom-right-radius: @radius;\n border-bottom-left-radius: @radius;\n}\n.border-left-radius(@radius) {\n border-bottom-left-radius: @radius;\n border-top-left-radius: @radius;\n}\n","mixins/buttons.less":"// Button variants\n//\n// Easily pump out default styles, as well as :hover, :focus, :active,\n// and disabled options for all buttons\n\n.button-variant(@color; @background; @border) {\n color: @color;\n background-color: @background;\n border-color: @border;\n\n &:hover,\n &:focus,\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n color: @color;\n background-color: darken(@background, 10%);\n border-color: darken(@border, 12%);\n }\n &:active,\n &.active,\n .open > .dropdown-toggle& {\n background-image: none;\n }\n &.disabled,\n &[disabled],\n fieldset[disabled] & {\n &,\n &:hover,\n &:focus,\n &:active,\n &.active {\n background-color: @background;\n border-color: @border;\n }\n }\n\n .badge {\n color: @background;\n background-color: @color;\n }\n}\n\n// Button sizes\n.button-size(@padding-vertical; @padding-horizontal; @font-size; @line-height; @border-radius) {\n padding: @padding-vertical @padding-horizontal;\n font-size: @font-size;\n line-height: @line-height;\n border-radius: @border-radius;\n}\n","mixins/center-block.less":"// Center-align a block level element\n\n.center-block() {\n display: block;\n margin-left: auto;\n margin-right: auto;\n}\n","mixins/clearfix.less":'// Clearfix\n//\n// For modern browsers\n// 1. The space content is one way to avoid an Opera bug when the\n// contenteditable attribute is included anywhere else in the document.\n// Otherwise it causes space to appear at the top and bottom of elements\n// that are clearfixed.\n// 2. The use of `table` rather than `block` is only necessary if using\n// `:before` to contain the top-margins of child elements.\n//\n// Source: http://nicolasgallagher.com/micro-clearfix-hack/\n\n.clearfix() {\n &:before,\n &:after {\n content: " "; // 1\n display: table; // 2\n }\n &:after {\n clear: both;\n }\n}\n',"mixins/forms.less":"// Form validation states\n//\n// Used in forms.less to generate the form validation CSS for warnings, errors,\n// and successes.\n\n.form-control-validation(@text-color: #555; @border-color: #ccc; @background-color: #f5f5f5) {\n // Color the label and help text\n .help-block,\n .control-label,\n .radio,\n .checkbox,\n .radio-inline,\n .checkbox-inline {\n color: @text-color;\n }\n // Set the border and box shadow on specific inputs to match\n .form-control {\n border-color: @border-color;\n .box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work\n &:focus {\n border-color: darken(@border-color, 10%);\n @shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten(@border-color, 20%);\n .box-shadow(@shadow);\n }\n }\n // Set validation states also for addons\n .input-group-addon {\n color: @text-color;\n border-color: @border-color;\n background-color: @background-color;\n }\n // Optional feedback icon\n .form-control-feedback {\n color: @text-color;\n }\n}\n\n\n// Form control focus state\n//\n// Generate a customized focus state and for any input with the specified color,\n// which defaults to the `@input-border-focus` variable.\n//\n// We highly encourage you to not customize the default value, but instead use\n// this to tweak colors on an as-needed basis. This aesthetic change is based on\n// WebKit's default styles, but applicable to a wider range of browsers. Its\n// usability and accessibility should be taken into account with any change.\n//\n// Example usage: change the default blue border and shadow to white for better\n// contrast against a dark gray background.\n.form-control-focus(@color: @input-border-focus) {\n @color-rgba: rgba(red(@color), green(@color), blue(@color), .6);\n &:focus {\n border-color: @color;\n outline: 0;\n .box-shadow(~\"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px @{color-rgba}\");\n }\n}\n\n// Form control sizing\n//\n// Relative text size, padding, and border-radii changes for form controls. For\n// horizontal sizing, wrap controls in the predefined grid classes. `