Web.define("Web.Extension.Allpax.Feature.AdditionalArticles",{extend:"Web.Core.Controller",featureEvents:{"Web.Extension.Allpax.Feature.AdditionalArticles":"Web.Extension.Allpax.Feature.AdditionalArticles.Initialize","Web.Core.Feature.ArticleConfigurator.Form":"Web.Extension.Allpax.Feature.AdditionalArticles.ConfiguratorInitialize"},events:{"Web.Extension.Allpax.AdditionalArticles.Event.UpdateDisplayPrice":function(){this.updateDisplayPrice()}},listeners:{"Web.Extension.Allpax.Feature.AdditionalArticles.Initialize":function(n,t){var i=this;Web.create("Web.Extension.Allpax.View.AdditionalArticlesBasket",{feature:n,el:t,controller:i});Web.create("Web.Extension.Allpax.View.AdditionalArticlesBasketModal",{feature:n,el:t,controller:i});Web.create("Web.Extension.Allpax.View.AdditionalBuyBox",{feature:n,el:t,controller:i})},"Web.Extension.Allpax.Feature.AdditionalArticles.ConfiguratorInitialize":function(n,t){var i=this;Web.create("Web.Extension.Allpax.View.Configuratorbasket",{feature:n,el:t,controller:i})}},loadAdditionalArticlesList:function(n,t,i){this.serverRequestDeliveryNote=Web.Core.Server.post({url:"{$baseFolder}/{$language}/AdditionalArticles/LoadAdditionalArticlesList",data:n,headers:{"X-Allow-Messages":!0},success:t||null,error:i||null})},loadAdditionalArticlesTab:function(n,t,i){this.serverRequestDeliveryNote=Web.Core.Server.post({url:"{$baseFolder}/{$language}/AdditionalArticles/LoadAdditionalArticlesTab",data:n,headers:{"X-Allow-Messages":!0},success:t||null,error:i||null})}});Web.define("Web.Extension.Allpax.Controller.DisplayPrice",{extend:"Web.Core.Controller",view:null,featureEvents:{"Web.Core.Feature.Article":"Web.Extension.Allpax.Event.AdditionalArticles.DisplayPriceInitialize"},listeners:{"Web.Extension.Allpax.Event.AdditionalArticles.DisplayPriceInitialize":function(n,t){var i=this;this.view=Web.create("Web.Extension.Allpax.View.DisplayPrice",{feature:n,el:t,controller:i})}},renderPrice:function(n,t,i){return this.view.renderPrice(n,t,i)}});Web.define("Web.Extension.Allpax.View.AdditionalArticlesBasket",{extend:"Web.Core.View",events:{'click [data-action="LoadAdditionalArticles"]':"onClickLoadAdditionalArticles"},button:null,placeholders:null,onClickLoadAdditionalArticles:function(n){if(n.preventDefault(),$(n.target).hasClass("active")){this.reset();return}this.reset();this.button=$(n.target);this.setButtonClass("pending");this.placeholders=this.getLocalPlaceholders();var t=this;this.options.controller.loadAdditionalArticlesTab(this.button.data("params"),function(n){t.setButtonClass("active");t.button.text(t.button.data("open-text"));t.placeholders.html(n);Web.initializeFeatures()})},getLocalPlaceholders:function(){return $(this.el).find('[data-id="AdditionalArticlesPlaceholder"]')},reset:function(){var n,t;this.button=null;this.placeholders=null;n=$(document).find('[data-action="LoadAdditionalArticles"]');n.length>0&&n.each(function(){$(this).removeClass("pending");$(this).removeClass("active");$(this).text($(this).data("close-text"))});t=$(document).find('[data-id="AdditionalArticlesPlaceholder"]');t.length>0&&t.each(function(){$(this).html("")})},setButtonClass:function(n){this.button!=null&&(this.button.removeClass("pending"),this.button.removeClass("active"),this.button.addClass(n))}});Web.define("Web.Extension.Allpax.View.AdditionalArticlesBasketModal",{extend:"Web.Core.View",events:{'click [data-action="JumpToAdditional"]':"onModalAdditionalsClick"},onModalAdditionalsClick:function(n){var u=$("#BasketModalDialog"),t,i,r;(u.find('[data-id="BasketModal"]').modal("hide"),t=n.target.parentElement.href,typeof t!="undefined")&&(i="",t.indexOf("#")>=0&&(i=t.substring(t.indexOf("#")+1,t.length)),i.indexOf("additionalgroup")!==-1)&&(r=$("#accordion.additionalgroups"),r.find('a[data-panel-id="'+i+'"]').trigger("click"))}});Web.define("Web.Extension.Allpax.View.AdditionalBuyBox",{extend:"Web.Core.View",timer:null,controller:null,events:{'click [data-id="AddAdditional"]':"onAddAdditional",'change [data-id="Quantity"]':"onChangeQuantity"},initialize:function(n){this.controller=n.controller},onAddAdditional:function(n){n.preventDefault();var t=$(n.currentTarget),i=t.closest('[data-id="BuyBox"]'),r=i.find('input[data-id="AdditionalAdded"]'),u=i.find('[data-id="ArticleId"]').val(),f=i.find('[data-id="Quantity"]').val(),e=i.find(".price span").attr("content");r.val()=="true"?(r.val(!1),t.find('[data-id="AddAdditionalButton"]').show(),t.find('[data-id="RemoveAdditionalButton"]').hide(),this.removeAdditionalBasketInput(u)):(r.val(!0),t.find('[data-id="AddAdditionalButton"]').hide(),t.find('[data-id="RemoveAdditionalButton"]').show(),this.addAdditionalBasketInput(u,f,e));Web.fireEvent("Web.Extension.Allpax.Event.Article.OnDisplayPriceChanged")},addAdditionalBasketInput:function(n,t,i){var r=$('[data-id="AdditionalsToAddToBasket"]');r.append('<input type="hidden" name="'+n+'.ArticleId" data-id="ArticleId" value="'+n+'" data-baseprice="'+i+'" data-quantity="'+t+'">');r.append('<input type="hidden" name="'+n+'.Quantity" data-id="Quantity" value="'+t+'">')},removeAdditionalBasketInput:function(n){var t=$('[data-id="AdditionalsToAddToBasket"]');t.find('input[name="'+n+'.ArticleId"]').remove();t.find('input[name="'+n+'.Quantity"]').remove()},updateAdditionalBasketQuantity:function(n,t,i){var r=this;clearTimeout(this.timer);this.timer=setTimeout(function(){var r=n.find('input[data-id="AdditionalAdded"]').val()=="true";r&&($('[data-id="AdditionalsToAddToBasket"]').find('input[name="'+t+'.Quantity"]').val(i),Web.fireEvent("Web.Extension.Allpax.Event.Article.OnDisplayPriceChanged"))},200)},onChangeQuantity:function(n){var i=$(n.currentTarget),t=i.closest('[data-id="BuyBox"]'),r=t.find('[data-id="ArticleId"]').val(),u=t.find('[data-id="Quantity"]').val();this.updateAdditionalBasketQuantity(t,r,u);this.setAdditionalSumPrice(t)},setAdditionalSumPrice:function(n){var r=n.find('[data-id="Quantity"]').val(),t=n.find(".price"),u=t.find(".currency-code").html(),i=n.find(".price span").attr("content"),f=new Decimal(i.replace(/,/g,".")).times(r).toFixed(2),e=Web.get("Web.Extension.Allpax.Controller.DisplayPrice").getInstance().renderPrice(f,i,u);t.html(e.trim()+"*")}});Web.define("Web.Extension.Allpax.View.DisplayPrice",{extend:"Web.Core.View",timer:null,controller:null,events:{'change [data-id="Quantity"][data-update-price="true"]':"updateDisplayPrice"},initialize:function(n){this.controller=n.controller;Web.Core.Event.subscribe("Web.Extension.Allpax.Event.Article.OnDisplayPriceChanged",this.updateDisplayPrice.bind(this))},updateDisplayPrice:function(){var i=$("[data-feature='Web.Core.Feature.Article.Basket']"),r=$("#Price"),f=r.find(".currency-code").html(),e=i.find("[data-id='Quantity']").val()||1,u=i.find('[data-id="BasePrice"]').val(),n=new Decimal(u.replace(/,/g,"."));$(".configurator").length||(n=n.times(e));var t=new Decimal(0),o=$('[data-id="AdditionalsToAddToBasket"]'),s=o.find('input[data-id="ArticleId"]').map(function(){return{ArticleId:$(this).val(),BasePrice:$(this).data("baseprice"),Quantity:$('input[name="'+$(this).val()+'.Quantity"]').val()}});$(s).each(function(n,i){var r=new Decimal(i.BasePrice).times(i.Quantity);t=t.plus(r)});n=n.plus(t);$('[data-id="AdditionalPriceSum"]').val(t.toFixed(2));r.html(this.renderPrice(n,u,f))},renderPrice:function(n,t,i){var o=this.getTemplate("Web.Extension.Allpax.Feature.AdditionalArticles"),f=n.toString(),r=f.split(/[,|.]/),u="00",e;return r.length>1&&(u=r[1]),u.length===1&&(u+="0"),r[0]=parseFloat(r[0]).toLocaleString("de"),e={price:f,preDecimal:r[0],basePrice:t,decimals:u,currencyCode:i},o(e)}});Web.define("Web.Extension.Allpax.View.Configuratorbasket",{extend:"Web.Core.View",controller:null,feature:null,element:null,events:{'click [data-id="AddConfiguratorToBasket"]':"onAddToBasket"},initialize:function(n){this.controller=n.controller;this.feature=n.feature;this.element=n.el},onAddToBasket:function(){var n=this.getItems();n.length&&this.addItemsToBasket(n)},addItemsToBasket:function(n,t,i){Web.Core.Server.post({url:"{$baseFolder}/{$language}/Basket/AddItems",data:JSON.stringify(n),contentType:"application/json",headers:{"X-Allow-Messages":!0},success:t||null,error:i||null})},getItems:function(){var n=[],t=$('[data-feature="Web.Extension.Allpax.Feature.AdditionalArticles"] [data-id="BuyBox"]');return t.each(function(t,i){var r=$(i),f=r.find('[data-id="AdditionalAdded"]').val(),u;f=="true"&&(u={ArticleId:r.find('[data-id="ArticleId"]').val(),Quantity:r.find('[data-id="Quantity"]').val(),BasePrice:r.find('[data-id="BasePrice"]').val()},n.push(u))}),n},getConfiguratorDisplayPrice:function(){var n=new Decimal(0),t=this.getItems();return t.forEach(t=>{var i=new Decimal(t.BasePrice.replace(/,/g,".")).times(t.Quantity);n=n.plus(i)}),n}});!function(n){"use strict";function it(n,t){var a,h,v,o,l,s,f,c,p=n.constructor,y=p.precision;if(!n.s||!t.s)return t.s||(t=new p(n)),u?i(t,y):t;if(f=n.d,c=t.d,l=n.e,v=t.e,f=f.slice(),o=l-v){for(0>o?(h=f,o=-o,s=c.length):(h=c,v=l,s=f.length),l=Math.ceil(y/r),s=l>s?l+1:s+1,o>s&&(o=s,h.length=1),h.reverse();o--;)h.push(0);h.reverse()}for(s=f.length,o=c.length,0>s-o&&(o=s,h=c,c=f,f=h),a=0;o;)a=(f[--o]=f[o]+c[o]+a)/e|0,f[o]%=e;for(a&&(f.unshift(a),++v),s=f.length;0==f[--s];)f.pop();return t.d=f,t.e=v,u?i(t,y):t}function h(n,t,i){if(n!==~~n||t>n||n>i)throw Error(p+n);}function c(n){var u,i,f,o=n.length-1,e="",t=n[0];if(o>0){for(e+=t,u=1;o>u;u++)f=n[u]+"",i=r-f.length,i&&(e+=v(i)),e+=f;t=n[u];f=t+"";i=r-f.length;i&&(e+=v(i))}else if(0===t)return"0";for(;t%10==0;)t/=10;return e+t}function rt(n,t){var a,b,v,r,h,e,k=0,y=0,s=n.constructor,p=s.precision;if(f(n)>16)throw Error(tt+f(n));if(!n.s)return new s(o);for(null==t?(u=!1,e=p):e=t,h=new s(.03125);n.abs().gte(.1);)n=n.times(h),y+=5;for(b=Math.log(w(2,y))/Math.LN10*2+5|0,e+=b,a=v=r=new s(o),s.precision=e;;){if(v=i(v.times(n),e),a=a.times(++k),h=r.plus(l(v,a,e)),c(h.d).slice(0,e)===c(r.d).slice(0,e)){for(;y--;)r=i(r.times(r),e);return s.precision=p,null==t?(u=!0,i(r,p)):r}r=h}}function f(n){for(var t=n.e*r,i=n.d[0];i>=10;i/=10)t++;return t}function nt(n,t,r){if(t>n.LN10.sd())throw u=!0,r&&(n.precision=r),Error(s+"LN10 precision limit exceeded");return i(new n(n.LN10),t)}function v(n){for(var t="";n--;)t+="0";return t}function d(n,t){var v,y,g,p,k,a,b,e,tt,it=1,rt=10,r=n,ut=r.d,h=r.constructor,w=h.precision;if(r.s<1)throw Error(s+(r.s?"NaN":"-Infinity"));if(r.eq(o))return new h(0);if(null==t?(u=!1,e=w):e=t,r.eq(10))return null==t&&(u=!0),nt(h,e);if(e+=rt,h.precision=e,v=c(ut),y=v.charAt(0),p=f(r),!(Math.abs(p)<15e14))return b=nt(h,e+2,w).times(p+""),r=d(new h(y+"."+v.slice(1)),e-rt).plus(b),h.precision=w,null==t?(u=!0,i(r,w)):r;for(;7>y&&1!=y||1==y&&v.charAt(1)>3;)r=r.times(n),v=c(r.d),y=v.charAt(0),it++;for(p=f(r),y>1?(r=new h("0."+v),p++):r=new h(y+"."+v.slice(1)),a=k=r=l(r.minus(o),r.plus(o),e),tt=i(r.times(r),e),g=3;;){if(k=i(k.times(tt),e),b=a.plus(l(k,new h(g),e)),c(b.d).slice(0,e)===c(a.d).slice(0,e))return a=a.times(2),0!==p&&(a=a.plus(nt(h,e+2,w).times(p+""))),a=l(a,new h(it),e),h.precision=w,null==t?(u=!0,i(a,w)):a;a=b;g+=2}}function ut(n,t){var f,i,e;for((f=t.indexOf("."))>-1&&(t=t.replace(".","")),(i=t.search(/e/i))>0?(0>f&&(f=i),f+=+t.slice(i+1),t=t.substring(0,i)):0>f&&(f=t.length),i=0;48===t.charCodeAt(i);)++i;for(e=t.length;48===t.charCodeAt(e-1);)--e;if(t=t.slice(i,e)){if(e-=i,f=f-i-1,n.e=k(f/r),n.d=[],i=(f+1)%r,0>f&&(i+=r),e>i){for(i&&n.d.push(+t.slice(0,i)),e-=r;e>i;)n.d.push(+t.slice(i,i+=r));t=t.slice(i);i=r-t.length}else i-=e;for(;i--;)t+="0";if(n.d.push(+t),u&&(n.e>g||n.e<-g))throw Error(tt+f);}else n.s=0,n.e=0,n.d=[0];return n}function i(n,t,i){for(var c,a,p,v,y,h,o=n.d,l=1,s=o[0];s>=10;s/=10)l++;if(c=t-l,0>c)c+=r,a=t,y=o[h=0];else{if(h=Math.ceil((c+1)/r),s=o.length,h>=s)return n;for(y=s=o[h],l=1;s>=10;s/=10)l++;c%=r;a=c-r+l}if(void 0!==i&&(s=w(10,l-a-1),p=y/s%10|0,v=0>t||void 0!==o[h+1]||y%s,v=4>i?(p||v)&&(0==i||i==(n.s<0?3:2)):p>5||5==p&&(4==i||v||6==i&&(c>0?a>0?y/w(10,l-a):0:o[h-1])%10&1||i==(n.s<0?8:7))),1>t||!o[0])return v?(s=f(n),o.length=1,t=t-s-1,o[0]=w(10,(r-t%r)%r),n.e=k(-t/r)||0):(o.length=1,o[0]=n.e=n.s=0),n;if(0==c?(o.length=h,s=1,h--):(o.length=h+1,s=w(10,r-c),o[h]=a>0?(y/w(10,l-a)%w(10,a)|0)*s:0),v)for(;;){if(0==h){(o[0]+=s)==e&&(o[0]=1,++n.e);break}if(o[h]+=s,o[h]!=e)break;o[h--]=0;s=1}for(c=o.length;0===o[--c];)o.pop();if(u&&(n.e>g||n.e<-g))throw Error(tt+f(n));return n}function ft(n,t){var l,v,f,y,c,h,o,p,a,s,w=n.constructor,b=w.precision;if(!n.s||!t.s)return t.s?t.s=-t.s:t=new w(n),u?i(t,b):t;if(o=n.d,s=t.d,v=t.e,p=n.e,o=o.slice(),c=p-v){for(a=0>c,a?(l=o,c=-c,h=s.length):(l=s,v=p,h=o.length),f=Math.max(Math.ceil(b/r),h)+2,c>f&&(c=f,l.length=1),l.reverse(),f=c;f--;)l.push(0);l.reverse()}else{for(f=o.length,h=s.length,a=h>f,a&&(h=f),f=0;h>f;f++)if(o[f]!=s[f]){a=o[f]<s[f];break}c=0}for(a&&(l=o,o=s,s=l,t.s=-t.s),h=o.length,f=s.length-h;f>0;--f)o[h++]=0;for(f=s.length;f>c;){if(o[--f]<s[f]){for(y=f;y&&0===o[--y];)o[y]=e-1;--o[y];o[f]+=e}o[f]-=s[f]}for(;0===o[--h];)o.pop();for(;0===o[0];o.shift())--v;return o[0]?(t.d=o,t.e=v,u?i(t,b):t):new w(0)}function y(n,t,i){var u,e=f(n),r=c(n.d),o=r.length;return t?(i&&(u=i-o)>0?r=r.charAt(0)+"."+r.slice(1)+v(u):o>1&&(r=r.charAt(0)+"."+r.slice(1)),r=r+(0>e?"e":"e+")+e):0>e?(r="0."+v(-e-1)+r,i&&(u=i-o)>0&&(r+=v(u))):e>=o?(r+=v(e+1-o),i&&(u=i-e-1)>0&&(r=r+"."+v(u))):((u=e+1)<o&&(r=r.slice(0,u)+"."+r.slice(u)),i&&(u=i-o)>0&&(e+1===o&&(r+="."),r+=v(u))),n.s<0?"-"+r:r}function et(n,t){if(n.length>t)return(n.length=t,!0)}function ot(n){function i(n){var t=this;if(!(t instanceof i))return new i(n);if(t.constructor=i,n instanceof i)return t.s=n.s,t.e=n.e,void(t.d=(n=n.d)?n.slice():n);if("number"==typeof n){if(0*n!=0)throw Error(p+n);if(n>0)t.s=1;else{if(!(0>n))return t.s=0,t.e=0,void(t.d=[0]);n=-n;t.s=-1}return n===~~n&&1e7>n?(t.e=0,void(t.d=[n])):ut(t,n.toString())}if("string"!=typeof n)throw Error(p+n);if(45===n.charCodeAt(0)?(n=n.slice(1),t.s=-1):t.s=1,!ct.test(n))throw Error(p+n);ut(t,n)}var r,u,f;if(i.prototype=t,i.ROUND_UP=0,i.ROUND_DOWN=1,i.ROUND_CEIL=2,i.ROUND_FLOOR=3,i.ROUND_HALF_UP=4,i.ROUND_HALF_DOWN=5,i.ROUND_HALF_EVEN=6,i.ROUND_HALF_CEIL=7,i.ROUND_HALF_FLOOR=8,i.clone=ot,i.config=i.set=ht,void 0===n&&(n={}),n)for(f=["precision","rounding","toExpNeg","toExpPos","LN10"],r=0;r<f.length;)n.hasOwnProperty(u=f[r++])||(n[u]=this[u]);return i.config(n),i}function ht(n){if(!n||"object"!=typeof n)throw Error(s+"Object expected");for(var r,t,u=["precision",1,b,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0],i=0;i<u.length;i+=3)if(void 0!==(t=n[r=u[i]])){if(!(k(t)===t&&t>=u[i+1]&&t<=u[i+2]))throw Error(p+r+": "+t);this[r]=t}if(void 0!==(t=n[r="LN10"])){if(t!=Math.LN10)throw Error(p+r+": "+t);this[r]=new this(t)}return this}var o,b=1e9,a={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},u=!0,s="[DecimalError] ",p=s+"Invalid argument: ",tt=s+"Exponent out of range: ",k=Math.floor,w=Math.pow,ct=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,e=1e7,r=7,st=9007199254740991,g=k(st/r),t={},l;t.absoluteValue=t.abs=function(){var n=new this.constructor(this);return n.s&&(n.s=1),n};t.comparedTo=t.cmp=function(n){var i,f,r,u,t=this;if(n=new t.constructor(n),t.s!==n.s)return t.s||-n.s;if(t.e!==n.e)return t.e>n.e^t.s<0?1:-1;for(r=t.d.length,u=n.d.length,i=0,f=u>r?r:u;f>i;++i)if(t.d[i]!==n.d[i])return t.d[i]>n.d[i]^t.s<0?1:-1;return r===u?0:r>u^t.s<0?1:-1};t.decimalPlaces=t.dp=function(){var t=this,n=t.d.length-1,i=(n-t.e)*r;if(n=t.d[n])for(;n%10==0;n/=10)i--;return 0>i?0:i};t.dividedBy=t.div=function(n){return l(this,new this.constructor(n))};t.dividedToIntegerBy=t.idiv=function(n){var t=this,r=t.constructor;return i(l(t,new r(n),0,1),r.precision)};t.equals=t.eq=function(n){return!this.cmp(n)};t.exponent=function(){return f(this)};t.greaterThan=t.gt=function(n){return this.cmp(n)>0};t.greaterThanOrEqualTo=t.gte=function(n){return this.cmp(n)>=0};t.isInteger=t.isint=function(){return this.e>this.d.length-2};t.isNegative=t.isneg=function(){return this.s<0};t.isPositive=t.ispos=function(){return this.s>0};t.isZero=function(){return 0===this.s};t.lessThan=t.lt=function(n){return this.cmp(n)<0};t.lessThanOrEqualTo=t.lte=function(n){return this.cmp(n)<1};t.logarithm=t.log=function(n){var e,t=this,r=t.constructor,h=r.precision,f=h+5;if(void 0===n)n=new r(10);else if(n=new r(n),n.s<1||n.eq(o))throw Error(s+"NaN");if(t.s<1)throw Error(s+(t.s?"NaN":"-Infinity"));return t.eq(o)?new r(0):(u=!1,e=l(d(t,f),d(n,f),f),u=!0,i(e,h))};t.minus=t.sub=function(n){var t=this;return n=new t.constructor(n),t.s==n.s?ft(t,n):it(t,(n.s=-n.s,n))};t.modulo=t.mod=function(n){var f,t=this,r=t.constructor,e=r.precision;if(n=new r(n),!n.s)throw Error(s+"NaN");return t.s?(u=!1,f=l(t,n,0,1).times(n),u=!0,t.minus(f)):i(new r(t),e)};t.naturalExponential=t.exp=function(){return rt(this)};t.naturalLogarithm=t.ln=function(){return d(this)};t.negated=t.neg=function(){var n=new this.constructor(this);return n.s=-n.s||0,n};t.plus=t.add=function(n){var t=this;return n=new t.constructor(n),t.s==n.s?it(t,n):ft(t,(n.s=-n.s,n))};t.precision=t.sd=function(n){var e,i,t,u=this;if(void 0!==n&&n!==!!n&&1!==n&&0!==n)throw Error(p+n);if(e=f(u)+1,t=u.d.length-1,i=t*r+1,t=u.d[t]){for(;t%10==0;t/=10)i--;for(t=u.d[0];t>=10;t/=10)i++}return n&&e>i?e:i};t.squareRoot=t.sqrt=function(){var r,n,v,a,t,e,o,h=this,y=h.constructor;if(h.s<1){if(!h.s)return new y(0);throw Error(s+"NaN");}for(r=f(h),u=!1,t=Math.sqrt(+h),0==t||t==1/0?(n=c(h.d),(n.length+r)%2==0&&(n+="0"),t=Math.sqrt(n),r=k((r+1)/2)-(0>r||r%2),t==1/0?n="1e"+r:(n=t.toExponential(),n=n.slice(0,n.indexOf("e")+1)+r),a=new y(n)):a=new y(t.toString()),v=y.precision,t=o=v+3;;)if(e=a,a=e.plus(l(h,e,o+2)).times(.5),c(e.d).slice(0,o)===(n=c(a.d)).slice(0,o)){if(n=n.slice(o-3,o+1),t==o&&"4999"==n){if(i(e,v+1,0),e.times(e).eq(h)){a=e;break}}else if("9999"!=n)break;o+=4}return u=!0,i(a,v)};t.times=t.mul=function(n){var h,y,r,f,t,c,p,o,s,l=this,w=l.constructor,a=l.d,v=(n=new w(n)).d;if(!l.s||!n.s)return new w(0);for(n.s*=l.s,y=l.e+n.e,o=a.length,s=v.length,s>o&&(t=a,a=v,v=t,c=o,o=s,s=c),t=[],c=o+s,r=c;r--;)t.push(0);for(r=s;--r>=0;){for(h=0,f=o+r;f>r;)p=t[f]+v[r]*a[f-r-1]+h,t[f--]=p%e|0,h=p/e|0;t[f]=(t[f]+h)%e|0}for(;!t[--c];)t.pop();return h?++y:t.shift(),n.d=t,n.e=y,u?i(n,w.precision):n};t.toDecimalPlaces=t.todp=function(n,t){var r=this,u=r.constructor;return r=new u(r),void 0===n?r:(h(n,0,b),void 0===t?t=u.rounding:h(t,0,8),i(r,n+f(r)+1,t))};t.toExponential=function(n,t){var u,r=this,f=r.constructor;return void 0===n?u=y(r,!0):(h(n,0,b),void 0===t?t=f.rounding:h(t,0,8),r=i(new f(r),n+1,t),u=y(r,!0,n+1)),u};t.toFixed=function(n,t){var u,e,r=this,o=r.constructor;return void 0===n?y(r):(h(n,0,b),void 0===t?t=o.rounding:h(t,0,8),e=i(new o(r),n+f(r)+1,t),u=y(e.abs(),!1,n+f(e)+1),r.isneg()&&!r.isZero()?"-"+u:u)};t.toInteger=t.toint=function(){var n=this,t=n.constructor;return i(new t(n),f(n)+1,t.rounding)};t.toNumber=function(){return+this};t.toPower=t.pow=function(n){var h,e,l,f,a,y,t=this,c=t.constructor,v=+(n=new c(n));if(!n.s)return new c(o);if(t=new c(t),!t.s){if(n.s<1)throw Error(s+"Infinity");return t}if(t.eq(o))return t;if(l=c.precision,n.eq(o))return i(t,l);if(h=n.e,e=n.d.length-1,y=h>=e,a=t.s,y){if((e=0>v?-v:v)<=st){for(f=new c(o),h=Math.ceil(l/r+4),u=!1;e%2&&(f=f.times(t),et(f.d,h)),e=k(e/2),0!==e;)t=t.times(t),et(t.d,h);return u=!0,n.s<0?new c(o).div(f):i(f,l)}}else if(0>a)throw Error(s+"NaN");return a=0>a&&1&n.d[Math.max(h,e)]?-1:1,t.s=1,u=!1,f=n.times(d(t,l+12)),u=!0,f=rt(f),f.s=a,f};t.toPrecision=function(n,t){var u,o,r=this,e=r.constructor;return void 0===n?(u=f(r),o=y(r,u<=e.toExpNeg||u>=e.toExpPos)):(h(n,1,b),void 0===t?t=e.rounding:h(t,0,8),r=i(new e(r),n,t),u=f(r),o=y(r,u>=n||u<=e.toExpNeg,n)),o};t.toSignificantDigits=t.tosd=function(n,t){var u=this,r=u.constructor;return void 0===n?(n=r.precision,t=r.rounding):(h(n,1,b),void 0===t?t=r.rounding:h(t,0,8)),i(new r(u),n,t)};t.toString=t.valueOf=t.val=t.toJSON=function(){var n=this,t=f(n),i=n.constructor;return y(n,t<=i.toExpNeg||t>=i.toExpPos)};l=function(){function n(n,t){var r,i=0,u=n.length;for(n=n.slice();u--;)r=n[u]*t+i,n[u]=r%e|0,i=r/e|0;return i&&n.unshift(i),n}function t(n,t,i,r){var u,f;if(i!=r)f=i>r?1:-1;else for(u=f=0;i>u;u++)if(n[u]!=t[u]){f=n[u]>t[u]?1:-1;break}return f}function u(n,t,i){for(var r=0;i--;)n[i]-=r,r=n[i]<t[i]?1:0,n[i]=r*e+n[i]-t[i];for(;!n[0]&&n.length>1;)n.shift()}return function(o,h,c,l){var k,ht,w,a,g,tt,it,rt,y,p,ut,nt,ct,ft,et,lt,b,ot,st=o.constructor,at=o.s==h.s?1:-1,d=o.d,v=h.d;if(!o.s)return new st(o);if(!h.s)throw Error(s+"Division by zero");for(ht=o.e-h.e,b=v.length,et=d.length,it=new st(at),rt=it.d=[],w=0;v[w]==(d[w]||0);)++w;if(v[w]>(d[w]||0)&&--ht,nt=null==c?c=st.precision:l?c+(f(o)-f(h))+1:c,0>nt)return new st(0);if(nt=nt/r+2|0,w=0,1==b)for(a=0,v=v[0],nt++;(et>w||a)&&nt--;w++)ct=a*e+(d[w]||0),rt[w]=ct/v|0,a=ct%v|0;else{for(a=e/(v[0]+1)|0,a>1&&(v=n(v,a),d=n(d,a),b=v.length,et=d.length),ft=b,y=d.slice(0,b),p=y.length;b>p;)y[p++]=0;ot=v.slice();ot.unshift(0);lt=v[0];v[1]>=e/2&&++lt;do a=0,k=t(v,y,b,p),0>k?(ut=y[0],b!=p&&(ut=ut*e+(y[1]||0)),a=ut/lt|0,a>1?(a>=e&&(a=e-1),g=n(v,a),tt=g.length,p=y.length,k=t(g,y,tt,p),1==k&&(a--,u(g,tt>b?ot:v,tt))):(0==a&&(k=a=1),g=v.slice()),tt=g.length,p>tt&&g.unshift(0),u(y,g,p),-1==k&&(p=y.length,k=t(v,y,b,p),1>k&&(a++,u(y,p>b?ot:v,p))),p=y.length):0===k&&(a++,y=[0]),rt[w++]=a,k&&y[0]?y[p++]=d[ft]||0:(y=[d[ft]],p=1);while((ft++<et||void 0!==y[0])&&nt--)}return rt[0]||rt.shift(),it.e=ht,i(it,l?c+f(it)+1:c)}}();a=ot(a);a["default"]=a.Decimal=a;o=new a(1);"function"==typeof define&&define.amd?define(function(){return a}):"undefined"!=typeof module&&module.exports?module.exports=a:(n||(n="undefined"!=typeof self&&self&&self.self==self?self:Function("return this")()),n.Decimal=a)}(this)