public/js/plugins/input-mask/jquery.inputmask.js
function _isValid(position, activeMaskset, c, strict) {
                    var testPos = determineTestPosition(position), loopend = c ? 1 : 0, chrs = '', buffer = activeMaskset["buffer"];
                    for (var i = activeMaskset['tests'][testPos].cardinality; i > loopend; i--) {
                        chrs += getBufferElement(buffer, testPos - (i - 1));
                    }

                    if (c) {
                        chrs += c;
                    }

                    //return is false or a json object => { pos: ??, c: ??} or true
                    return activeMaskset['tests'][testPos].fn != null ?
                        activeMaskset['tests'][testPos].fn.test(chrs, buffer, position, strict, opts)
                        : (c == getBufferElement(activeMaskset['_buffer'], position, true) || c == opts.skipOptionalPartCharacter) ?
                            { "refresh": true, c: getBufferElement(activeMaskset['_buffer'], position, true), pos: position }
                            : false;
                }
function _isValid(position, activeMaskset, c, strict) {
                    var testPos = determineTestPosition(position), loopend = c ? 1 : 0, chrs = '', buffer = activeMaskset["buffer"];
                    for (var i = activeMaskset['tests'][testPos].cardinality; i > loopend; i--) {
                        chrs += getBufferElement(buffer, testPos - (i - 1));
                    }

                    if (c) {
                        chrs += c;
                    }

                    //return is false or a json object => { pos: ??, c: ??} or true
                    return activeMaskset['tests'][testPos].fn != null ?
                        activeMaskset['tests'][testPos].fn.test(chrs, buffer, position, strict, opts)
                        : (c == getBufferElement(activeMaskset['_buffer'], position, true) || c == opts.skipOptionalPartCharacter) ?
                            { "refresh": true, c: getBufferElement(activeMaskset['_buffer'], position, true), pos: position }
                            : false;
                }
function _isValid ( position , activeMaskset , c , strict ) { var testPos = determineTestPosition ( position ) , loopend = c ? 1 : 0 , chrs = '' , buffer = activeMaskset [ "buffer" ] ; for ( var i = activeMaskset [ 'tests' ] [ testPos ] . cardinality ; i > loopend ; i -- ) { chrs += getBufferElement ( buffer , testPos - ( i - 1 ) ) ; } if ( c ) { chrs += c ; } //return is false or a json object => { pos: ??, c: ??} or true return activeMaskset [ 'tests' ] [ testPos ] . fn != null ? activeMaskset [ 'tests' ] [ testPos ] . fn . test ( chrs , buffer , position , strict , opts ) : ( c == getBufferElement ( activeMaskset [ '_buffer' ] , position , true ) || c == opts . skipOptionalPartCharacter ) ? { "refresh" : true , c : getBufferElement ( activeMaskset [ '_buffer' ] , position , true ) , pos : position } : false ; }
always set a value to strict to prevent possible strange behavior in the extensions
always set a value to strict to prevent possible strange behavior in the extensions