(function(C){function A(F,D,E){this.dec=F;this.group=D;this.neg=E}function B(D){var G=".";var E=",";var F="-";if(D=="us"||D=="ae"||D=="eg"||D=="il"||D=="jp"||D=="sk"||D=="th"||D=="cn"||D=="hk"||D=="tw"||D=="au"||D=="ca"||D=="gb"||D=="in"){G=".";E=","}else{if(D=="de"||D=="vn"||D=="es"||D=="dk"||D=="at"||D=="gr"||D=="br"){G=",";E="."}else{if(D=="cz"||D=="fr"||D=="fi"||D=="ru"||D=="se"){E=" ";G=","}else{if(D=="ch"){E="'";G="."}}}}return new A(G,E,F)}C.formatNumber=function(F,E){var E=C.extend({},C.fn.parse.defaults,E);var H=B(E.locale.toLowerCase());var J=H.dec;var G=H.group;var I=H.neg;var D=new String(F);D=D.replace(".",J).replace("-",I);return D};C.fn.parse=function(D){var D=C.extend({},C.fn.parse.defaults,D);var G=B(D.locale.toLowerCase());var J=G.dec;var F=G.group;var I=G.neg;var E="1234567890.-";var H=[];this.each(function(){var O=new String(C(this).text());if(C(this).is(":input")){O=new String(C(this).val())}while(O.indexOf(F)>-1){O=O.replace(F,"")}O=O.replace(J,".").replace(I,"-");var N="";var K=false;if(O.charAt(O.length-1)=="%"){K=true}for(var L=0;L<O.length;L++){if(E.indexOf(O.charAt(L))>-1){N=N+O.charAt(L)}}var M=new Number(N);if(K){M=M/100;M=M.toFixed(N.length-1)}H.push(M)});return H};C.fn.format=function(D){var D=C.extend({},C.fn.format.defaults,D);var F=B(D.locale.toLowerCase());var I=F.dec;var E=F.group;var H=F.neg;var G="0#-,.";return this.each(function(){var U=new String(C(this).text());if(C(this).is(":input")){U=new String(C(this).val())}var Y="";var O=false;for(var Z=0;Z<D.format.length;Z++){if(G.indexOf(D.format.charAt(Z))==-1){Y=Y+D.format.charAt(Z)}else{if(Z==0&&D.format.charAt(Z)=="-"){O=true;continue}else{break}}}var K="";for(var Z=D.format.length-1;Z>=0;Z--){if(G.indexOf(D.format.charAt(Z))==-1){K=D.format.charAt(Z)+K}else{break}}D.format=D.format.substring(Y.length);D.format=D.format.substring(0,D.format.length-K.length);while(U.indexOf(E)>-1){U=U.replace(E,"")}var J=new Number(U.replace(I,".").replace(H,"-"));if(K=="%"){J=J*100}var T="";var S=J%1;if(D.format.indexOf(".")>-1){var X=I;var P=D.format.substring(D.format.lastIndexOf(".")+1);var V=new String(S.toFixed(P.length));V=V.substring(V.lastIndexOf(".")+1);for(var Z=0;Z<P.length;Z++){if(P.charAt(Z)=="#"&&V.charAt(Z)!="0"){X+=V.charAt(Z);continue}else{if(P.charAt(Z)=="#"&&V.charAt(Z)=="0"){var N=V.substring(Z);if(N.match("[1-9]")){X+=V.charAt(Z);continue}else{break}}else{if(P.charAt(Z)=="0"){X+=V.charAt(Z)}}}}T+=X}else{J=Math.round(J)}var Q=Math.floor(J);if(J<0){Q=Math.ceil(J)}var a="";if(Q==0){a="0"}else{var W="";if(D.format.indexOf(".")==-1){W=D.format}else{W=D.format.substring(0,D.format.indexOf("."))}var R=new String(Math.abs(Q));var M=9999;if(W.lastIndexOf(",")!=-1){M=W.length-W.lastIndexOf(",")-1}var L=0;for(var Z=R.length-1;Z>-1;Z--){a=R.charAt(Z)+a;L++;if(L==M&&Z!=0){a=E+a;L=0}}}T=a+T;if(J<0&&O&&Y.length>0){Y=H+Y}else{if(J<0){T=H+T}}if(!D.decimalSeparatorAlwaysShown){if(T.lastIndexOf(I)==T.length-1){T=T.substring(0,T.length-1)}}T=Y+T+K;if(C(this).is(":input")){C(this).val(T)}else{C(this).text(T)}})};C.fn.parse.defaults={locale:"us",decimalSeparatorAlwaysShown:false};C.fn.format.defaults={format:"#,###.00",locale:"us",decimalSeparatorAlwaysShown:false}})(jQuery);