vanilla.namespace("vanilla.text");vanilla.text={trim:function(a){if(typeof a!="string"&&!(a instanceof String)){return a}var c=0;var b=a.length;while((c<b)&&(a.charAt(c)<=" ")){c++}while((c<b)&&(a.charAt(b-1)<=" ")){b--}return(c>0||b<a.length?a.substring(c,b):a)},DefaultDateFormat:"mm/dd/yyyy",parseDate:function(k,h){if(!k){return null}if(!h){h=this.DefaultDateFormat}if(k.length!=h.length){return null}var b=new String();var d=new String();var j=new String();for(var c=0;c<h.length;c++){switch(h.charAt(c)){case"d":b+=k.charAt(c);break;case"m":d+=k.charAt(c);break;case"y":j+=k.charAt(c);break;default:if(h.charAt(c)!=k.charAt(c)){return null}}}var g=parseInt(b,10);var e=parseInt(d,10)-1;var f=parseInt(j,10);var a=new Date(f,e,g);if(a.getDate()!=g||a.getMonth()!=e||(f.length==2?a.getYear():a.getFullYear())!=f){return null}return a},replaceAll:function(c,b,a){return c.replace(new RegExp(b,"g"),a)}};vanilla.text.number={defaultFormat:{multiplier:1,minimumFractionDigits:0,maximumFractionDigits:-1,minimumIntegerDigits:1,maximumIntegerDigits:-1,groupingUsed:false,groupingSize:3,decimalSeparatorAlwaysShown:false,symbols:{currency:"€",groupingSeparator:" ",decimalSeparator:",",percent:"%",minusSign:"-",exponential:"E",permill:"‰",infinity:"∞"},positivePattern:"#",negativePattern:"-#"},format:function(g,u){var z=this.defaultFormat;var k=this.defaultFormat.symbols;if(u){$.extend(z,u);$.extend(k,u.symbols)}var e=g<0;var g=Math.abs(g/z.multiplier);var v=parseInt(""+g);var y=(""+g).substring((""+v).length+(v<g?1:0));var C=y.length;var D=parseFloat("0."+y);var a="";y=this.zeroPaddingNumber(y,z.minimumFractionDigits,false);C=y.length;if(z.maximumFractionDigits>-1&&C>z.maximumFractionDigits){var A=Math.round(D*Math.pow(10,z.maximumFractionDigits));if(z.maximumFractionDigits==0){if(A>0){v++}y=""}else{y=""+A}C=y.length}if(z.decimalSeparatorAlwaysShown||C>0){a+=k.decimalSeparator}a+=y;integerS=this.zeroPaddingNumber(""+v,z.minimumIntegerDigits);integerL=integerS.length;if(z.maximumIntegerDigits>-1&&integerL>z.maximumIntegerDigits){integerS=integerS.substring(-z.maximumIntegerDigits)}if(z.groupingUsed&&integerL>z.groupingSize){var m=k.groupingSeparator;var h="";for(var q=0,t=integerL-1;t>=0;t--){h=integerS.charAt(t)+h;if(++q==z.groupingSize){h=m+h;q=0}}integerS=h}a=integerS+a;var x=null;if(e){if(!z.negativePattern){a="-"+a;x=z.positivePattern}else{x=z.negativePattern}}else{x=z.positivePattern}var b=[];b["#"]=a;b.c=k.currency;b.p=k.percent;b["-"]=k.minusSign;b.E=k.exponential;b.m=k.permill;b.i=k.infinity;b["%"]="%";var o="";var p=x.length;var w=false;for(var t=0;t<p;t++){var B=x.charAt(t);if(B=="'"){if(t+1<p&&x.charAt(t+1)=="'"){o+=B;t++}else{w=!w}continue}if(w){o+=B;continue}var r=b[B];if(typeof(r)!="undefined"&&r.length){o+=r}else{o+=B}}return o},zeroPaddingNumber:function(d,a,e){var b=a-d.length;if(e){for(var c=0;c<b;c++){d="0"+d}}else{for(var c=0;c<b;c++){d=d+"0"}}return d}};