/* Input Mask plugin for jquery http://github.com/RobinHerbots/jquery.inputmask Copyright (c) 2010 - 2014 Robin Herbots Licensed under the MIT license (http://www.opensource.org/licenses/mit-license.php) Version: 3.0.29 */ (function(f){if(void 0===f.fn.inputmask){var R=function(c){var b=document.createElement("input");c="on"+c;var f=c in b;f||(b.setAttribute(c,"return;"),f="function"==typeof b[c]);return f},G=function(c,b,h){return(c=h.aliases[c])?(c.alias&&G(c.alias,void 0,h),f.extend(!0,h,c),f.extend(!0,h,b),!0):!1},K=function(c){function b(f){function b(c,f,d,g){this.matches=[];this.isGroup=c||!1;this.isOptional=f||!1;this.isQuantifier=d||!1;this.isAlternator=g||!1;this.quantifier={min:1,max:1}}function h(b,f,d){var g= c.definitions[f],l=0==b.matches.length;d=void 0!=d?d:b.matches.length;if(g&&!u){for(var m=g.prevalidator,t=m?m.length:0,k=1;k=k?m[k-1]:[],r=s.validator,s=s.cardinality;b.matches.splice(d++,0,{fn:r?"string"==typeof r?RegExp(r):new function(){this.test=r}:/./,cardinality:s?s:1,optionality:b.isOptional,newBlockMarker:l,casing:g.casing,def:g.definitionSymbol||f})}b.matches.splice(d++,0,{fn:g.validator?"string"==typeof g.validator?RegExp(g.validator):new function(){this.test= g.validator}:/./,cardinality:g.cardinality,optionality:b.isOptional,newBlockMarker:l,casing:g.casing,def:g.definitionSymbol||f})}else b.matches.splice(d++,0,{fn:null,cardinality:0,optionality:b.isOptional,newBlockMarker:l,casing:null,def:f}),u=!1}for(var k=/(?:[?*+]|\{[0-9\+\*]+(?:,[0-9\+\*]*)?\})\??|[^.?*+^${[]()|\\]+|./g,u=!1,p=new b,d,l=[],g=[];d=k.exec(f);)switch(d=d[0],d.charAt(0)){case c.optionalmarker.end:case c.groupmarker.end:var t=l.pop();0q?d(q,g,q-1)[0]:T(q,g,q-1),y=g.match,g=g.locator.slice(),f.push(null==y.fn?y.def:b.placeholder.charAt(q%b.placeholder.length));q++}while((void 0==I||q-1=q);f.pop();return f}function m(a){var e=c;e.buffer=void 0;e.tests={};!0!==a&&(e._buffer=void 0,e.validPositions={},e.p=-1)}function r(a){var e= c,v=-1,d=e.validPositions;if(f.isFunction(b.getLastValidPosition))v=b.getLastValidPosition.call(n,e,a,b);else{void 0==a&&(a=-1);var e=v,g;for(g in d){var q=parseInt(g);if(-1==a||null!=d[q].match.fn)q=a&&(v=q)}v=1E.quantifier.min-1,b=0==t.matches.indexOf(b))if(k>E.quantifier.min-1){m=!0;d=a;break}else return!0;else return!0}else if(b=f(b,c,v,k))return!0}else d++}for(var h=0a)break}}var g=c.maskToken,d=e?b:0;b=e||[0];var l=[],m=!1;if(void 0==e){e=a-1;for(var h;void 0==(h=c.validPositions[e])&&-1a);e++);(0==l.length||m)&&l.push({match:{fn:null,cardinality:0,optionality:!0,casing:null,def:""},locator:[]});return c.tests[a]=l}function l(){void 0==c._buffer&&(c._buffer=k(!1,1));return c._buffer}function g(){void 0==c.buffer&&(c.buffer=k(!0,r(),!0));return c.buffer}function t(a,e){for(var c=g().slice(), f=a;fE;w--)y+=void 0==c.validPositions[a-(w-1)]?O(a-(w-1)):c.validPositions[a-(w-1)].input;e&&(y+=e);l=null!=H.fn?H.fn.test(y,n,a,v,b):e!=H.def&&e!=b.skipOptionalPartCharacter||""==H.def?!1:{c:H.def, pos:a};if(!1!==l){E=void 0!=l.c?l.c:e;E=E==b.skipOptionalPartCharacter&&null===H.fn?H.def:E;y=a;if(l.refreshFromBuffer){y=l.refreshFromBuffer;v=!0;!0===y?(c.validPositions={},c.tests={},t(0,g().length)):t(y.start,y.end);if(void 0==l.pos&&void 0==l.c)return l.pos=r(),!1;y=void 0!=l.pos?l.pos:a;h=d(y)[0]}else!0!==l&&l.pos!=a&&(y=l.pos,t(a,y),h=d(y)[0]);0=e)return e;for(;++aa););return a}function S(a){if(0>=a)return 0;for(;0<--a&&!x(a););return a}function F(a,e,b){a._valueSet(e.join(""));void 0!=b&&z(a,b)}function O(a,e){e=e||u(a);return null==e.fn?e.def:b.placeholder.charAt(a%b.placeholder.length)}function N(a,e,b,d,h){d=void 0!=d?d.slice():K(a._valueGet()).split("");m();e&&a._valueSet("");f.each(d, function(e,d){if(!0===h){var g=c.p,g=-1==g?g:S(g),k=-1==g?e:D(g);-1==f.inArray(d,l().slice(g+1,k))&&V.call(a,void 0,!0,d.charCodeAt(0),!1,b,e)}else V.call(a,void 0,!0,d.charCodeAt(0),!1,b,e),b=b||0c.p});e&&F(a,g(),D(r(0)))}function G(a){return f.inputmask.escapeRegex.call(this,a)}function K(a){return a.replace(RegExp("("+G(l().join(""))+")*$"),"")}function M(a){var e=g().slice(),b,f=r(),d={},l=c.validPositions[f].locator.slice(),h;for(b=f+1;bf;b--)if(h=d[b].match,h.optionality&&e[b]==O(b,h))e.pop();else break;F(a,e)}function R(a,e){if(!a.data("_inputmask")||!0!==e&&a.hasClass("hasDatepicker"))return a[0]._valueGet();var d=[],l=c.validPositions,h;for(h in l)null!=l[h].match.fn&&d.push(l[h].input);d=(B?d.reverse():d).join("");l=(B?g().reverse():g()).join("");return f.isFunction(b.onUnMask)?b.onUnMask.call(a,l,d,b):d}function L(a){!B||"number"!=typeof a||b.greedy&&""==b.placeholder||(a=g().length-a);return a}function z(a, e,c){a=a.jquery&&0c.length&&(z(this,c.length),d=z(this));1!=g().length-c.length||c.charAt(d.begin)==g()[d.begin]||c.charAt(d.begin+1)==g()[d.begin]||x(d.begin)||(a.keyCode=b.keyCode.BACKSPACE,Y.call(this,a));a.preventDefault()}function ka(a){n=f(a);if(n.is(":input")){n.data("_inputmask",{maskset:c,opts:b,isRTL:!1});b.showTooltip&&n.prop("title",c.mask);ha(a);("rtl"==a.dir||b.rightAlign)&&n.css("text-align","right");if("rtl"==a.dir||b.numericInput){a.dir= "ltr";n.removeAttr("dir");var d=n.data("_inputmask");d.isRTL=!0;n.data("_inputmask",d);B=!0}n.unbind(".inputmask");n.removeClass("focus.inputmask");n.closest("form").bind("submit",function(){J!=g().join("")&&n.change()}).bind("reset",function(){setTimeout(function(){n.trigger("setvalue")},0)});n.bind("mouseenter.inputmask",function(){!f(this).hasClass("focus.inputmask")&&b.showMaskOnHover&&this._valueGet()!=g().join("")&&F(this,g())}).bind("blur.inputmask",function(){var a=f(this);if(a.data("_inputmask")){var d= this._valueGet(),c=g();a.removeClass("focus.inputmask");J!=g().join("")&&a.change();b.clearMaskOnLostFocus&&""!=d&&(d==l().join("")?this._valueSet(""):M(this));!1===P(c)&&(a.trigger("incomplete"),b.clearIncomplete&&(m(),b.clearMaskOnLostFocus?this._valueSet(""):(c=l().slice(),F(this,c))))}}).bind("focus.inputmask",function(){var a=f(this),d=this._valueGet();b.showMaskOnFocus&&!a.hasClass("focus.inputmask")&&(!b.showMaskOnHover||b.showMaskOnHover&&""==d)&&this._valueGet()!=g().join("")&&F(this,g(), D(r()));a.addClass("focus.inputmask");J=g().join("")}).bind("mouseleave.inputmask",function(){var a=f(this);b.clearMaskOnLostFocus&&(a.hasClass("focus.inputmask")||this._valueGet()==a.attr("placeholder")||(this._valueGet()==l().join("")||""==this._valueGet()?this._valueSet(""):M(this)))}).bind("click.inputmask",function(){var a=this;setTimeout(function(){var d=z(a);g();if(d.begin==d.end){var d=B?L(d.begin):d.begin,b=r(d),b=D(b);dh&&(h=c),l++;if(l>g||l==g&&m>s&&p>h||l==g&&m==s&&p")[0];C(f.extend(!0,{},b),h,{action:"mask",el:g});return g});s.data("_inputmask-multi",{activeMasksetIndex:0,elmasks:p});("rtl"==c.dir||h.rightAlign)&&s.css("text-align","right");c.dir="ltr";s.removeAttr("dir");""!=s.attr("value")&&r("init",p);s.bind("mouseenter blur focus mouseleave click dblclick keydown keypress keypress", function(b){var l=k(c),g,t=!0;if("keydown"==b.type){g=b.keyCode;if(g==h.keyCode.DOWN&&u