@ -1,16 +1,16 @@
( function ( ) { var k , l = this ;
( function ( ) { var k = this ;
function aa ( a ) { var b = typeof a ; if ( "object" == b ) if ( a ) { if ( a instanceof Array ) return "array" ; if ( a instanceof Object ) return b ; var c = Object . prototype . toString . call ( a ) ; if ( "[object Window]" == c ) return "object" ; if ( "[object Array]" == c || "number" == typeof a . length && "undefined" != typeof a . splice && "undefined" != typeof a . propertyIsEnumerable && ! a . propertyIsEnumerable ( "splice" ) ) return "array" ; if ( "[object Function]" == c || "undefined" != typeof a . call && "undefined" != typeof a . propertyIsEnumerable && ! a . propertyIsEnumerable ( "call" ) ) return "function" } else return "null" ; else if ( "function" ==
b && "undefined" == typeof a . call ) return "object" ; return b } function n ( a ) { return "string" == typeof a } function p ( a , b ) { function c ( ) { } c . prototype = b . prototype ; a . A a= b . prototype ; a . prototype = new c ; a . prototype . constructor = a ; a . J a= function ( a , c , f ) { return b . prototype [ c ] . apply ( a , Array . prototype . slice . call ( arguments , 2 ) ) } } ; var b a= String . prototype . trim ? function ( a ) { return a . trim ( ) } : function ( a ) { return a . replace ( /^[\s\xa0]+|[\s\xa0]+$/g , "" ) } ; function c a( a , b ) { return a < b ? - 1 : a > b ? 1 : 0 } ; var da = Array . prototype , ea = d a. indexOf ? function ( a , b , c ) { return d a. indexOf . call ( a , b , c ) } : function ( a , b , c ) { c = null == c ? 0 : 0 > c ? Math . max ( 0 , a . length + c ) : c ; if ( n ( a ) ) return n ( b ) && 1 == b . length ? a . indexOf ( b , c ) : - 1 ; for ( ; c < a . length ; c ++ ) if ( c in a && a [ c ] === b ) return c ; return - 1 } ; function f a( a , b ) { a . sort ( b || g a) } function g a( a , b ) { return a > b ? 1 : a < b ? - 1 : 0 } ; var q ; a : { var ha = l . navigator ; if ( h a) { var ia = h a. userAgent ; if ( i a) { q = i a; break a } } q = "" } ; function j a( a ) { var b = [ ] , c = 0 , d ; for ( d in a ) b [ c ++ ] = a [ d ] ; return b } function k a( a , b ) { var c ; a : { for ( c in a ) if ( b . call ( void 0 , a [ c ] , c , a ) ) break a ; c = void 0 } return c && a [ c ] } ; var l a= - 1 != q . indexOf ( "Opera" ) || - 1 != q . indexOf ( "OPR" ) , r = - 1 != q . indexOf ( "Trident" ) || - 1 != q . indexOf ( "MSIE" ) , m a= - 1 != q . indexOf ( "Gecko" ) && - 1 == q . toLowerCase ( ) . indexOf ( "webkit" ) && ! ( - 1 != q . indexOf ( "Trident" ) || - 1 != q . indexOf ( "MSIE" ) ) , n a= - 1 != q . toLowerCase ( ) . indexOf ( "webkit" ) ; function o a( ) { var a = l . document ; return a ? a . documentMode : void 0 }
var p a= function ( ) { var a = "" , b ; if ( la && l . opera ) return a = l . opera . version , "function" == aa ( a ) ? a ( ) : a ; m a? b = /rv\:([^\);]+)(\)|;)/ : r ? b = /\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/ : n a&& ( b = /WebKit\/(\S+)/ ) ; b && ( a = ( a = b . exec ( q ) ) ? a [ 1 ] : "" ) ; return r && ( b = o a( ) , b > parseFloat ( a ) ) ? String ( b ) : a } ( ) , q a= { } ;
function r a( a ) { if ( ! q a[ a ] ) { for ( var b = 0 , c = b a( String ( p a) ) . split ( "." ) , d = b a( String ( a ) ) . split ( "." ) , e = Math . max ( c . length , d . length ) , f = 0 ; 0 == b && f < e ; f ++ ) { var g = c [ f ] || "" , h = d [ f ] || "" , m = RegExp ( "(\\d*)(\\D*)" , "g" ) , u = RegExp ( "(\\d*)(\\D*)" , "g" ) ; do { var v = m . exec ( g ) || [ "" , "" , "" ] , K = u . exec ( h ) || [ "" , "" , "" ] ; if ( 0 == v [ 0 ] . length && 0 == K [ 0 ] . length ) break ; b = ca ( 0 == v [ 1 ] . length ? 0 : parseInt ( v [ 1 ] , 10 ) , 0 == K [ 1 ] . length ? 0 : parseInt ( K [ 1 ] , 10 ) ) || ca ( 0 == v [ 2 ] . length , 0 == K [ 2 ] . length ) || ca ( v [ 2 ] , K [ 2 ] ) } while ( 0 == b ) } q a[ a ] = 0 <= b } }
var sa = l . document , ta = s a&& r ? o a( ) || ( "CSS1Compat" == s a. compatMode ? parseInt ( p a, 10 ) : 5 ) : void 0 ; var u a; if ( ! ( ua = ! m a&& ! r ) ) { var va ; if ( va = r ) v a= r && 9 <= ta ; ua = va } ua || ma && r a( "1.9.1" ) ; r && r a( "9" ) ; function s ( a ) { var b = document ; return n ( a ) ? b . getElementById ( a ) : a } ; function w a( a ) { return ( new x a( void 0 ) ) . ca ( a ) } function x a( a ) { this . ha = a } x a. prototype . ca = function ( a ) { var b = [ ] ; y a( this , a , b ) ; return b . join ( "" ) } ;
function y a( a , b , c ) { switch ( typeof b ) { case "string" : z a( b , c ) ; break ; case "number" : c . push ( isFinite ( b ) && ! isNaN ( b ) ? b : "null" ) ; break ; case "boolean" : c . push ( b ) ; break ; case "undefined" : c . push ( "null" ) ; break ; case "object" : if ( null == b ) { c . push ( "null" ) ; break } if ( "array" == aa ( b ) ) { var d = b . length ; c . push ( "[" ) ; for ( var e = "" , f = 0 ; f < d ; f ++ ) c . push ( e ) , e = b [ f ] , y a( a , a . ha ? a . h a. call ( b , String ( f ) , e ) : e , c ) , e = "," ; c . push ( "]" ) ; break } c . push ( "{" ) ; d = "" ; for ( f in b ) Object . prototype . hasOwnProperty . call ( b , f ) && ( e = b [ f ] , "function" != typeof e && ( c . push ( d ) ,
z a( f , c ) , c . push ( ":" ) , y a( a , a . ha ? a . h a. call ( b , f , e ) : e , c ) , d = "," ) ) ; c . push ( "}" ) ; break ; case "function" : break ; default : throw Error ( "Unknown type: " + typeof b ) ; } } var A a= { '"' : '\\"' , "\\" : "\\\\" , "/" : "\\/" , "\b" : "\\b" , "\f" : "\\f" , "\n" : "\\n" , "\r" : "\\r" , "\t" : "\\t" , "\x0B" : "\\u000b" } , B a= /\uffff/ . test ( "\uffff" ) ? /[\\\"\x00-\x1f\x7f-\uffff]/g : /[\\\"\x00-\x1f\x7f-\xff]/g ;
function z a( a , b ) { b . push ( '"' , a . replace ( B a, function ( a ) { if ( a in Aa ) return A a[ a ] ; var b = a . charCodeAt ( 0 ) , e = "\\u" ; 16 > b ? e += "000" : 256 > b ? e += "00" : 4096 > b && ( e += "0" ) ; return A a[ a ] = e + b . toString ( 16 ) } ) , '"' ) } ; function C a( a , b , c ) { this . h = b ; this . p a= c . name ; this . r = ! ! c . g a; this . k = c . a ; this . q a= c . type ; this . m a= ! 1 ; switch ( this . k ) { case Da : case Ea : case Fa : case Ga : case Ha : case Ia : case J a: this . m a= ! 0 } this . w = c . defaultValue } var Ja = 1 , Ia = 2 , Da = 3 , Ea = 4 , Fa = 6 , Ga = 16 , Ha = 18 ; C a. prototype . getName = function ( ) { return this . p a} ; function K a( a , b , c ) { this . y a= a ; this . p a= b . name || null ; this . l = { } ; for ( a = 0 ; a < c . length ; a ++ ) b = c [ a ] , this . l [ b . h ] = b } K a. prototype . getName = function ( ) { return this . p a} ; function L a( a ) { a = ja ( a . l ) ; f a( a , function ( a , c ) { return a . h - c . h } ) ; return a } function M a( a , b ) { return ka ( a . l , function ( a ) { return a . getName ( ) == b } ) || null } ; function t ( ) { this . j = { } ; this . l = this . n ( ) . l ; this . d = this . o a= null } function N a( a , b ) { for ( var c in a . j ) { var d = Number ( c ) ; a . l [ d ] || b . call ( a , d , a . j [ c ] ) } } k = t . prototype ; k . n = function ( ) { var a = this . constructor , b ; if ( ! ( b = a . ta ) ) { var c ; b = a . Da ; var d = [ ] , e = b [ 0 ] ; for ( c in b ) 0 != c && d . push ( new Ca ( 0 , c , b [ c ] ) ) ; c = new Ka ( a , e , d ) ; b = a . ta = c } return b } ; k . has = function ( a ) { return w ( this , a . h ) } ; k . g et= function ( a , b ) { return x ( this , a . h , b ) } ; k . set = function ( a , b ) { y ( this , a . h , b ) } ; k . add = function ( a , b ) { Oa ( this , a . h , b ) } ; k . clear = function ( a ) { z ( this , a . h ) } ;
function P a( a , b ) { for ( var c = La ( a . n ( ) ) , d = 0 ; d < c . length ; d ++ ) { var e = c [ d ] , f = e . h ; if ( w ( b , f ) ) { a . d && delete a . d [ e . h ] ; var g = 11 == e . k || 10 == e . k ; if ( e . r ) for ( var e = A ( b , f ) || [ ] , h = 0 ; h < e . length ; h ++ ) O a( a , f , g ? e [ h ] . clone ( ) : e [ h ] ) ; else e = A ( b , f ) , g ? ( g = A ( a , f ) ) ? P a( g , e ) : y ( a , f , e . clone ( ) ) : y ( a , f , e ) } } } k . clone = function ( ) { var a = new this . constructor ; a != this && ( a . j = { } , a . d && ( a . d = { } ) , P a( a , this ) ) ; return a } ; function w ( a , b ) { return null != a . j [ b ] }
function A ( a , b ) { var c = a . j [ b ] ; if ( null == c ) return null ; if ( a . o a) { if ( ! ( b in a . d ) ) { var d = a . o a, e = a . l [ b ] ; if ( null != c ) if ( e . r ) { for ( var f = [ ] , g = 0 ; g < c . length ; g ++ ) f [ g ] = d . p ( e , c [ g ] ) ; c = f } else c = d . p ( e , c ) ; return a . d [ b ] = c } return a . d [ b ] } return c } function x ( a , b , c ) { var d = A ( a , b ) ; return a . l [ b ] . r ? d [ c || 0 ] : d } function B ( a , b ) { var c ; if ( w ( a , b ) ) c = x ( a , b , void 0 ) ; else a : { c = a . l [ b ] ; if ( void 0 === c . w ) { var d = c . q a; if ( d === Boolean ) c . w = ! 1 ; else if ( d === Number ) c . w = 0 ; else if ( d === String ) c . w = c . m a? "0" : "" ; else { c = new d ; break a } } c = c . w } return c }
function C ( a , b ) { return a . l [ b ] . r ? w ( a , b ) ? a . j [ b ] . length : 0 : w ( a , b ) ? 1 : 0 } function y ( a , b , c ) { a . j [ b ] = c ; a . d && ( a . d [ b ] = c ) } function O a( a , b , c ) { a . j [ b ] || ( a . j [ b ] = [ ] ) ; a . j [ b ] . push ( c ) ; a . d && delete a . d [ b ] } function z ( a , b ) { delete a . j [ b ] ; a . d && delete a . d [ b ] } function D ( a , b ) { a . Da = b ; a . n = function ( ) { return a . ta || ( new a ) . n ( ) } } ; function E ( ) { } E . prototype . t = function ( a , b ) { return 11 == a . k || 10 == a . k ? this . ca ( b ) : "number" != typeof b || isFinite ( b ) ? b : b . toString ( ) } ; E . prototype . $ = function ( a , b ) { var c = new a . y a; this . u a( c , b ) ; return c } ; E . prototype . p = function ( a , b ) { if ( 11 == a . k || 10 == a . k ) return b instanceof t ? b : this . $ ( a . qa . n ( ) , b ) ; if ( 14 == a . k || ! a . m a) return b ; var c = a . q a; if ( c === String ) { if ( "number" == typeof b ) return String ( b ) } else if ( c === Number && n ( b ) && ( "Infinity" === b || "-Infinity" === b || "NaN" === b || /^-?[0-9]+$/ . test ( b ) ) ) return Number ( b ) ; return b } ; function F ( a ) { this . Ea = a } p ( F , E ) ; F . prototype . ca = function ( a ) { for ( var b = La ( a . n ( ) ) , c = { } , d = 0 ; d < b . length ; d ++ ) { var e = b [ d ] , f = 1 == this . E a? e . getName ( ) : e . h ; if ( a . has ( e ) ) if ( e . r ) { var g = [ ] ; c [ f ] = g ; for ( f = 0 ; f < C ( a , e . h ) ; f ++ ) g . push ( this . t ( e , a . get ( e , f ) ) ) } else c [ f ] = this . t ( e , a . get ( e ) ) } N a( a , function ( a , b ) { c [ a ] = b } ) ; return c } ; F . prototype . p = function ( a , b ) { return 8 == a . k && "number" == typeof b ? Boolean ( b ) : F . A a. p . call ( this , a , b ) } ;
F . prototype . u a= function ( a , b ) { var c = a . n ( ) , d ; for ( d in b ) { var e , f = b [ d ] , g = ! /[^0-9]/ . test ( d ) ; if ( e = g ? c . l [ parseInt ( d , 10 ) ] || null : M a( c , d ) ) if ( e . r ) for ( g = 0 ; g < f . length ; g ++ ) a . add ( e , this . p ( e , f [ g ] ) ) ; else a . set ( e , this . p ( e , f ) ) ; else g && ( e = a , g = Number ( d ) , e . j [ g ] = f , e . d && delete e . d [ g ] ) } } ; function G ( a , b ) { null != a && this . append . apply ( this , arguments ) } k = G . prototype ; k . f = "" ; k . set = function ( a ) { this . f = "" + a } ; k . append = function ( a , b , c ) { this . f += a ; if ( null != b ) for ( var d = 1 ; d < arguments . length ; d ++ ) this . f += arguments [ d ] ; return this } ; k . clear = function ( ) { this . f = "" } ; k . toString = function ( ) { return this . f } ; / *
b && "undefined" == typeof a . call ) return "object" ; return b } function l ( a ) { return "string" == typeof a } function n ( a , b ) { function c ( ) { } c . prototype = b . prototype ; a . z a= b . prototype ; a . prototype = new c ; a . prototype . constructor = a ; a . H a= function ( a , c , f ) { for ( var g = Array ( arguments . length - 2 ) , h = 2 ; h < arguments . length ; h ++ ) g [ h - 2 ] = arguments [ h ] ; return b . prototype [ c ] . apply ( a , g ) } } ; function p ( a ) { if ( Error . captureStackTrace ) Error . captureStackTrace ( this , p ) ; else { var b = Error ( ) . stack ; b && ( this . stack = b ) } a && ( this . message = String ( a ) ) } n ( p , Error ) ; p . prototype . name = "CustomError" ; function ba ( a , b ) { for ( var c = a . split ( "%s" ) , d = "" , e = Array . prototype . slice . call ( arguments , 1 ) ; e . length && 1 < c . length ; ) d += c . shift ( ) + e . shift ( ) ; return d + c . join ( "%s" ) } var c a= String . prototype . trim ? function ( a ) { return a . trim ( ) } : function ( a ) { return a . replace ( /^[\s\xa0]+|[\s\xa0]+$/g , "" ) } ; function d a( a , b ) { return a < b ? - 1 : a > b ? 1 : 0 } ; function ea ( a , b ) { b . unshift ( a ) ; p . call ( this , ba . apply ( null , b ) ) ; b . shift ( ) } n ( ea , p ) ; ea . prototype . name = "AssertionError" ; function fa ( a , b ) { throw new ea ( "Failure" + ( a ? ": " + a : "" ) , Array . prototype . slice . call ( arguments , 1 ) ) ; } ; var ga = Array . prototype , ha = g a. indexOf ? function ( a , b , c ) { return g a. indexOf . call ( a , b , c ) } : function ( a , b , c ) { c = null == c ? 0 : 0 > c ? Math . max ( 0 , a . length + c ) : c ; if ( l ( a ) ) return l ( b ) && 1 == b . length ? a . indexOf ( b , c ) : - 1 ; for ( ; c < a . length ; c ++ ) if ( c in a && a [ c ] === b ) return c ; return - 1 } ; function i a( a , b ) { a . sort ( b || j a) } function j a( a , b ) { return a > b ? 1 : a < b ? - 1 : 0 } ; var q ; a : { var ka = k . navigator ; if ( k a) { var la = k a. userAgent ; if ( l a) { q = l a; break a } } q = "" } ; function m a( a ) { var b = [ ] , c = 0 , d ; for ( d in a ) b [ c ++ ] = a [ d ] ; return b } function n a( a , b ) { var c ; a : { for ( c in a ) if ( b . call ( void 0 , a [ c ] , c , a ) ) break a ; c = void 0 } return c && a [ c ] } ; var o a= - 1 != q . indexOf ( "Opera" ) || - 1 != q . indexOf ( "OPR" ) , r = - 1 != q . indexOf ( "Trident" ) || - 1 != q . indexOf ( "MSIE" ) , p a= - 1 != q . indexOf ( "Gecko" ) && - 1 == q . toLowerCase ( ) . indexOf ( "webkit" ) && ! ( - 1 != q . indexOf ( "Trident" ) || - 1 != q . indexOf ( "MSIE" ) ) , q a= - 1 != q . toLowerCase ( ) . indexOf ( "webkit" ) ; function r a( ) { var a = k . document ; return a ? a . documentMode : void 0 }
var s a= function ( ) { var a = "" , b ; if ( oa && k . opera ) return a = k . opera . version , "function" == aa ( a ) ? a ( ) : a ; p a? b = /rv\:([^\);]+)(\)|;)/ : r ? b = /\b(?:MSIE|rv)[: ]([^\);]+)(\)|;)/ : q a&& ( b = /WebKit\/(\S+)/ ) ; b && ( a = ( a = b . exec ( q ) ) ? a [ 1 ] : "" ) ; return r && ( b = r a( ) , b > parseFloat ( a ) ) ? String ( b ) : a } ( ) , t a= { } ;
function u a( a ) { if ( ! t a[ a ] ) { for ( var b = 0 , c = c a( String ( s a) ) . split ( "." ) , d = c a( String ( a ) ) . split ( "." ) , e = Math . max ( c . length , d . length ) , f = 0 ; 0 == b && f < e ; f ++ ) { var g = c [ f ] || "" , h = d [ f ] || "" , m = RegExp ( "(\\d*)(\\D*)" , "g" ) , v = RegExp ( "(\\d*)(\\D*)" , "g" ) ; do { var w = m . exec ( g ) || [ "" , "" , "" ] , N = v . exec ( h ) || [ "" , "" , "" ] ; if ( 0 == w [ 0 ] . length && 0 == N [ 0 ] . length ) break ; b = da ( 0 == w [ 1 ] . length ? 0 : parseInt ( w [ 1 ] , 10 ) , 0 == N [ 1 ] . length ? 0 : parseInt ( N [ 1 ] , 10 ) ) || da ( 0 == w [ 2 ] . length , 0 == N [ 2 ] . length ) || da ( w [ 2 ] , N [ 2 ] ) } while ( 0 == b ) } t a[ a ] = 0 <= b } }
var va = k . document , wa = v a&& r ? r a( ) || ( "CSS1Compat" == v a. compatMode ? parseInt ( s a, 10 ) : 5 ) : void 0 ; var x a; if ( ! ( xa = ! p a&& ! r ) ) { var ya ; if ( ya = r ) y a= r && 9 <= wa ; xa = ya } xa || pa && u a( "1.9.1" ) ; r && u a( "9" ) ; function za ( a ) { var b = document ; return l ( a ) ? b . getElementById ( a ) : a } ; function A a( a ) { return ( new B a( void 0 ) ) . ca ( a ) } function B a( a ) { this . fa = a } B a. prototype . ca = function ( a ) { var b = [ ] ; C a( this , a , b ) ; return b . join ( "" ) } ;
function C a( a , b , c ) { switch ( typeof b ) { case "string" : D a( b , c ) ; break ; case "number" : c . push ( isFinite ( b ) && ! isNaN ( b ) ? b : "null" ) ; break ; case "boolean" : c . push ( b ) ; break ; case "undefined" : c . push ( "null" ) ; break ; case "object" : if ( null == b ) { c . push ( "null" ) ; break } if ( "array" == aa ( b ) ) { var d = b . length ; c . push ( "[" ) ; for ( var e = "" , f = 0 ; f < d ; f ++ ) c . push ( e ) , e = b [ f ] , C a( a , a . fa ? a . f a. call ( b , String ( f ) , e ) : e , c ) , e = "," ; c . push ( "]" ) ; break } c . push ( "{" ) ; d = "" ; for ( f in b ) Object . prototype . hasOwnProperty . call ( b , f ) && ( e = b [ f ] , "function" != typeof e && ( c . push ( d ) ,
D a( f , c ) , c . push ( ":" ) , C a( a , a . fa ? a . f a. call ( b , f , e ) : e , c ) , d = "," ) ) ; c . push ( "}" ) ; break ; case "function" : break ; default : throw Error ( "Unknown type: " + typeof b ) ; } } var E a= { '"' : '\\"' , "\\" : "\\\\" , "/" : "\\/" , "\b" : "\\b" , "\f" : "\\f" , "\n" : "\\n" , "\r" : "\\r" , "\t" : "\\t" , "\x0B" : "\\u000b" } , F a= /\uffff/ . test ( "\uffff" ) ? /[\\\"\x00-\x1f\x7f-\uffff]/g : /[\\\"\x00-\x1f\x7f-\xff]/g ;
function D a( a , b ) { b . push ( '"' , a . replace ( F a, function ( a ) { if ( a in Ea ) return E a[ a ] ; var b = a . charCodeAt ( 0 ) , e = "\\u" ; 16 > b ? e += "000" : 256 > b ? e += "00" : 4096 > b && ( e += "0" ) ; return E a[ a ] = e + b . toString ( 16 ) } ) , '"' ) } ; function G a( a , b , c ) { this . i = b ; this . o a= c . name ; this . r = ! ! c . r a; this . l = c . a ; this . p a= c . type ; this . k a= ! 1 ; switch ( this . l ) { case Ha : case Ia : case Ja : case Ka : case La : case Ma : case N a: this . k a= ! 0 } this . w = c . defaultValue } var Na = 1 , Ma = 2 , Ha = 3 , Ia = 4 , Ja = 6 , Ka = 16 , La = 18 ; G a. prototype . getName = function ( ) { return this . o a} ; function O a( a , b , c ) { this . x a= a ; this . o a= b . name || null ; this . m = { } ; for ( a = 0 ; a < c . length ; a ++ ) b = c [ a ] , this . m [ b . i ] = b } O a. prototype . getName = function ( ) { return this . o a} ; function P a( a ) { a = ma ( a . m ) ; i a( a , function ( a , c ) { return a . i - c . i } ) ; return a } function Q a( a , b ) { return na ( a . m , function ( a ) { return a . getName ( ) == b } ) || null } ; function t ( ) { this . k = { } ; this . m = this . c ( ) . m ; this . e = this . n a= null } function R a( a , b ) { for ( var c in a . k ) { var d = Number ( c ) ; a . m [ d ] || b . call ( a , d , a . k [ c ] ) } } t . prototype . has = function ( a ) { return u ( this , a . i ) } ; t . prototype . get = function ( a , b ) { return x ( this , a . i , b ) } ; t . prototype . s et= function ( a , b ) { y ( this , a . i , b ) } ; t . prototype . add = function ( a , b ) { Sa ( this , a . i , b ) } ; t . prototype . clear = function ( a ) { Ta ( this , a . i ) } ;
function U a( a , b ) { for ( var c = Pa ( a . c ( ) ) , d = 0 ; d < c . length ; d ++ ) { var e = c [ d ] , f = e . i ; if ( u ( b , f ) ) { a . e && delete a . e [ e . i ] ; var g = 11 == e . l || 10 == e . l ; if ( e . r ) for ( var e = z ( b , f ) || [ ] , h = 0 ; h < e . length ; h ++ ) S a( a , f , g ? e [ h ] . clone ( ) : e [ h ] ) ; else e = z ( b , f ) , g ? ( g = z ( a , f ) ) ? U a( g , e ) : y ( a , f , e . clone ( ) ) : y ( a , f , e ) } } } t . prototype . clone = function ( ) { var a = new this . constructor ; a != this && ( a . k = { } , a . e && ( a . e = { } ) , U a( a , this ) ) ; return a } ; function u ( a , b ) { return null != a . k [ b ] }
function z ( a , b ) { var c = a . k [ b ] ; if ( null == c ) return null ; if ( a . n a) { if ( ! ( b in a . e ) ) { var d = a . n a, e = a . m [ b ] ; if ( null != c ) if ( e . r ) { for ( var f = [ ] , g = 0 ; g < c . length ; g ++ ) f [ g ] = d . p ( e , c [ g ] ) ; c = f } else c = d . p ( e , c ) ; return a . e [ b ] = c } return a . e [ b ] } return c } function x ( a , b , c ) { var d = z ( a , b ) ; return a . m [ b ] . r ? d [ c || 0 ] : d } function A ( a , b ) { var c ; if ( u ( a , b ) ) c = x ( a , b , void 0 ) ; else a : { c = a . m [ b ] ; if ( void 0 === c . w ) { var d = c . p a; if ( d === Boolean ) c . w = ! 1 ; else if ( d === Number ) c . w = 0 ; else if ( d === String ) c . w = c . k a? "0" : "" ; else { c = new d ; break a } } c = c . w } return c }
function B ( a , b ) { return a . m [ b ] . r ? u ( a , b ) ? a . k [ b ] . length : 0 : u ( a , b ) ? 1 : 0 } function y ( a , b , c ) { a . k [ b ] = c ; a . e && ( a . e [ b ] = c ) } function S a( a , b , c ) { a . k [ b ] || ( a . k [ b ] = [ ] ) ; a . k [ b ] . push ( c ) ; a . e && delete a . e [ b ] } function Ta ( a , b ) { delete a . k [ b ] ; a . e && delete a . e [ b ] } function Va ( a , b ) { var c = [ ] , d = b [ 0 ] , e ; for ( e in b ) 0 != e && c . push ( new Ga ( 0 , e , b [ e ] ) ) ; return new Oa ( a , d , c ) } ; function C ( ) { } C . prototype . t = function ( a , b ) { return 11 == a . l || 10 == a . l ? this . ca ( b ) : "number" != typeof b || isFinite ( b ) ? b : b . toString ( ) } ; C . prototype . $ = function ( a , b ) { var c = new a . x a; this . t a( c , b ) ; return c } ; C . prototype . p = function ( a , b ) { if ( 11 == a . l || 10 == a . l ) return b instanceof t ? b : this . $ ( a . pa . prototype . c ( ) , b ) ; if ( 14 == a . l || ! a . k a) return b ; var c = a . p a; if ( c === String ) { if ( "number" == typeof b ) return String ( b ) } else if ( c === Number && l ( b ) && ( "Infinity" === b || "-Infinity" === b || "NaN" === b || /^-?[0-9]+$/ . test ( b ) ) ) return Number ( b ) ; return b } ; function D ( a ) { this . Ca = a } n ( D , C ) ; D . prototype . ca = function ( a ) { for ( var b = Pa ( a . c ( ) ) , c = { } , d = 0 ; d < b . length ; d ++ ) { var e = b [ d ] , f = 1 == this . C a? e . getName ( ) : e . i ; if ( a . has ( e ) ) if ( e . r ) { var g = [ ] ; c [ f ] = g ; for ( f = 0 ; f < B ( a , e . i ) ; f ++ ) g . push ( this . t ( e , a . get ( e , f ) ) ) } else c [ f ] = this . t ( e , a . get ( e ) ) } R a( a , function ( a , b ) { c [ a ] = b } ) ; return c } ; D . prototype . p = function ( a , b ) { return 8 == a . l && "number" == typeof b ? Boolean ( b ) : D . z a. p . call ( this , a , b ) } ;
D . prototype . t a= function ( a , b ) { var c = a . c ( ) , d ; for ( d in b ) { var e , f = b [ d ] , g = ! /[^0-9]/ . test ( d ) ; if ( e = g ? c . m [ parseInt ( d , 10 ) ] || null : Q a( c , d ) ) if ( e . r ) for ( g = 0 ; g < f . length ; g ++ ) a . add ( e , this . p ( e , f [ g ] ) ) ; else a . set ( e , this . p ( e , f ) ) ; else g ? ( e = a , g = Number ( d ) , e . k [ g ] = f , e . e && delete e . e [ g ] ) : fa ( "Failed to find field: " + e ) } } ; function E ( a , b ) { null != a && this . append . apply ( this , arguments ) } E . prototype . g = "" ; E . prototype . set = function ( a ) { this . g = "" + a } ; E . prototype . append = function ( a , b , c ) { this . g += a ; if ( null != b ) for ( var d = 1 ; d < arguments . length ; d ++ ) this . g += arguments [ d ] ; return this } ; E . prototype . clear = function ( ) { this . g = "" } ; E . prototype . toString = function ( ) { return this . g } ; / *
Protocol Buffer 2 Copyright 2008 Google Inc .
All other code copyright its respective owners .
@ -28,13 +28,12 @@ F.prototype.ua=function(a,b){var c=a.n(),d;for(d in b){var e,f=b[d],g=!/[^0-9]/.
See the License for the specific language governing permissions and
limitations under the License .
* /
function H ( ) { t . apply ( this ) } p ( H , t ) ; function I ( ) { t . apply ( this ) } p ( I , t ) ; function J ( ) { t . apply ( this ) } p ( J , t ) ; J . prototype . va = function ( ) { return x ( this , 10 ) } ; J . prototype . e = function ( ) { return B ( this , 10 ) } ; J . prototype . da = function ( a ) { y ( this , 10 , a ) } ; function Qa ( ) { t . apply ( this ) } p ( Qa , t ) ; Qa . prototype . getMetadata = function ( a ) { return x ( this , 1 , a ) } ;
D ( H , { 0 : { name : "NumberFormat" , fa : "i18n.phonenumbers.NumberFormat" } , 1 : { name : "pattern" , required : ! 0 , a : 9 , type : String } , 2 : { name : "format" , required : ! 0 , a : 9 , type : String } , 3 : { name : "leading_digits_pattern" , ga : ! 0 , a : 9 , type : String } , 4 : { name : "national_prefix_formatting_rule" , a : 9 , type : String } , 6 : { name : "national_prefix_optional_when_formatting" , a : 8 , type : Boolean } , 5 : { name : "domestic_carrier_code_formatting_rule" , a : 9 , type : String } } ) ;
D ( I , { 0 : { name : "PhoneNumberDesc" , fa : "i18n.phonenumbers.PhoneNumberDesc" } , 2 : { name : "national_number_pattern" , a : 9 , type : String } , 3 : { name : "possible_number_pattern" , a : 9 , type : String } , 6 : { name : "example_number" , a : 9 , type : String } } ) ;
D ( J , { 0 : { name : "PhoneMetadata" , fa : "i18n.phonenumbers.PhoneMetadata" } , 1 : { name : "general_desc" , required : ! 0 , a : 11 , type : I } , 2 : { name : "fixed_line" , required : ! 0 , a : 11 , type : I } , 3 : { name : "mobile" , required : ! 0 , a : 11 , type : I } , 4 : { name : "toll_free" , required : ! 0 , a : 11 , type : I } , 5 : { name : "premium_rate" , required : ! 0 , a : 11 , type : I } , 6 : { name : "shared_cost" , required : ! 0 , a : 11 , type : I } , 7 : { name : "personal_number" , required : ! 0 , a : 11 , type : I } , 8 : { name : "voip" , required : ! 0 , a : 11 , type : I } , 21 : { name : "pager" , required : ! 0 , a : 11 , type : I } , 25 : { name : "uan" , required : ! 0 ,
a : 11 , type : I } , 27 : { name : "emergency" , required : ! 0 , a : 11 , type : I } , 28 : { name : "voicemail" , required : ! 0 , a : 11 , type : I } , 24 : { name : "no_international_dialling" , required : ! 0 , a : 11 , type : I } , 9 : { name : "id" , required : ! 0 , a : 9 , type : String } , 10 : { name : "country_code" , required : ! 0 , a : 5 , type : Number } , 11 : { name : "international_prefix" , required : ! 0 , a : 9 , type : String } , 17 : { name : "preferred_international_prefix" , a : 9 , type : String } , 12 : { name : "national_prefix" , a : 9 , type : String } , 13 : { name : "preferred_extn_prefix" , a : 9 , type : String } , 15 : { name : "national_prefix_for_parsing" ,
a : 9 , type : String } , 16 : { name : "national_prefix_transform_rule" , a : 9 , type : String } , 18 : { name : "same_mobile_and_fixed_line_pattern" , a : 8 , defaultValue : ! 1 , type : Boolean } , 19 : { name : "number_format" , ga : ! 0 , a : 11 , type : H } , 20 : { name : "intl_number_format" , ga : ! 0 , a : 11 , type : H } , 22 : { name : "main_country_for_code" , a : 8 , defaultValue : ! 1 , type : Boolean } , 23 : { name : "leading_digits" , a : 9 , type : String } , 26 : { name : "leading_zero_possible" , a : 8 , defaultValue : ! 1 , type : Boolean } } ) ;
D ( Qa , { 0 : { name : "PhoneMetadataCollection" , fa : "i18n.phonenumbers.PhoneMetadataCollection" } , 1 : { name : "metadata" , ga : ! 0 , a : 11 , type : J } } ) ; / *
function F ( ) { t . call ( this ) } var Wa ; n ( F , t ) ; function G ( ) { t . call ( this ) } var Xa ; n ( G , t ) ; function H ( ) { t . call ( this ) } var Ya ; n ( H , t ) ; H . prototype . ua = function ( ) { return x ( this , 10 ) } ; H . prototype . f = function ( ) { return A ( this , 10 ) } ; H . prototype . da = function ( a ) { y ( this , 10 , a ) } ;
F . prototype . c = function ( ) { Wa || ( Wa = Va ( F , { 0 : { name : "NumberFormat" , la : "i18n.phonenumbers.NumberFormat" } , 1 : { name : "pattern" , required : ! 0 , a : 9 , type : String } , 2 : { name : "format" , required : ! 0 , a : 9 , type : String } , 3 : { name : "leading_digits_pattern" , ra : ! 0 , a : 9 , type : String } , 4 : { name : "national_prefix_formatting_rule" , a : 9 , type : String } , 6 : { name : "national_prefix_optional_when_formatting" , a : 8 , type : Boolean } , 5 : { name : "domestic_carrier_code_formatting_rule" , a : 9 , type : String } } ) ) ; return Wa } ; F . ctor = F ; F . ctor . c = F . prototype . c ;
G . prototype . c = function ( ) { Xa || ( Xa = Va ( G , { 0 : { name : "PhoneNumberDesc" , la : "i18n.phonenumbers.PhoneNumberDesc" } , 2 : { name : "national_number_pattern" , a : 9 , type : String } , 3 : { name : "possible_number_pattern" , a : 9 , type : String } , 6 : { name : "example_number" , a : 9 , type : String } , 7 : { name : "national_number_matcher_data" , a : 12 , type : String } , 8 : { name : "possible_number_matcher_data" , a : 12 , type : String } } ) ) ; return Xa } ; G . ctor = G ; G . ctor . c = G . prototype . c ;
H . prototype . c = function ( ) { Ya || ( Ya = Va ( H , { 0 : { name : "PhoneMetadata" , la : "i18n.phonenumbers.PhoneMetadata" } , 1 : { name : "general_desc" , a : 11 , type : G } , 2 : { name : "fixed_line" , a : 11 , type : G } , 3 : { name : "mobile" , a : 11 , type : G } , 4 : { name : "toll_free" , a : 11 , type : G } , 5 : { name : "premium_rate" , a : 11 , type : G } , 6 : { name : "shared_cost" , a : 11 , type : G } , 7 : { name : "personal_number" , a : 11 , type : G } , 8 : { name : "voip" , a : 11 , type : G } , 21 : { name : "pager" , a : 11 , type : G } , 25 : { name : "uan" , a : 11 , type : G } , 27 : { name : "emergency" , a : 11 , type : G } , 28 : { name : "voicemail" , a : 11 , type : G } , 24 : { name : "no_international_dialling" ,
a : 11 , type : G } , 9 : { name : "id" , required : ! 0 , a : 9 , type : String } , 10 : { name : "country_code" , a : 5 , type : Number } , 11 : { name : "international_prefix" , a : 9 , type : String } , 17 : { name : "preferred_international_prefix" , a : 9 , type : String } , 12 : { name : "national_prefix" , a : 9 , type : String } , 13 : { name : "preferred_extn_prefix" , a : 9 , type : String } , 15 : { name : "national_prefix_for_parsing" , a : 9 , type : String } , 16 : { name : "national_prefix_transform_rule" , a : 9 , type : String } , 18 : { name : "same_mobile_and_fixed_line_pattern" , a : 8 , defaultValue : ! 1 , type : Boolean } , 19 : { name : "number_format" ,
ra : ! 0 , a : 11 , type : F } , 20 : { name : "intl_number_format" , ra : ! 0 , a : 11 , type : F } , 22 : { name : "main_country_for_code" , a : 8 , defaultValue : ! 1 , type : Boolean } , 23 : { name : "leading_digits" , a : 9 , type : String } , 26 : { name : "leading_zero_possible" , a : 8 , defaultValue : ! 1 , type : Boolean } } ) ) ; return Ya } ; H . ctor = H ; H . ctor . c = H . prototype . c ; / *
Protocol Buffer 2 Copyright 2008 Google Inc .
All other code copyright its respective owners .
@ -52,9 +51,10 @@ D(Qa,{0:{name:"PhoneMetadataCollection",fa:"i18n.phonenumbers.PhoneMetadataColle
See the License for the specific language governing permissions and
limitations under the License .
* /
function L ( ) { t . apply ( this ) } p ( L , t ) ; L . prototype . va = function ( ) { return x ( this , 1 ) } ; L . prototype . e = function ( ) { return B ( this , 1 ) } ; L . prototype . da = function ( a ) { y ( this , 1 , a ) } ; L . prototype . getExtension = function ( ) { return x ( this , 3 ) } ;
D ( L , { 0 : { name : "PhoneNumber" , fa : "i18n.phonenumbers.PhoneNumber" } , 1 : { name : "country_code" , required : ! 0 , a : 5 , type : Number } , 2 : { name : "national_number" , required : ! 0 , a : 4 , type : Number } , 3 : { name : "extension" , a : 9 , type : String } , 4 : { name : "italian_leading_zero" , a : 8 , type : Boolean } , 8 : { name : "number_of_leading_zeros" , a : 5 , defaultValue : 1 , type : Number } , 5 : { name : "raw_input" , a : 9 , type : String } , 6 : { name : "country_code_source" , a : 14 , defaultValue : 1 , type : { Ia : 1 , Ha : 5 , Ga : 10 , Fa : 20 } } , 7 : { name : "preferred_domestic_carrier_code" , a : 9 , type : String } } ) ; function Ra ( ) { } p ( Ra , E ) ; Ra . prototype . $ = function ( a , b ) { var c = new a . ya ; c . oa = this ; c . j = b ; c . d = { } ; return c } ; Ra . prototype . ua = function ( ) { throw Error ( "Unimplemented" ) ; } ; function Sa ( ) { } p ( Sa , Ra ) ; k = Sa . prototype ; k . Ba = ! 1 ; k . ca = function ( a ) { for ( var b = La ( a . n ( ) ) , c = [ ] , d = this . Ba , e = 0 ; e < b . length ; e ++ ) { var f = b [ e ] ; if ( a . has ( f ) ) { var g = f . h , g = d ? g - 1 : g ; if ( f . r ) { c [ g ] = [ ] ; for ( var h = 0 ; h < C ( a , f . h ) ; h ++ ) c [ g ] [ h ] = this . t ( f , a . get ( f , h ) ) } else c [ g ] = this . t ( f , a . get ( f ) ) } } Na ( a , function ( a , b ) { c [ d ? a - 1 : a ] = b } ) ; return c } ; k . t = function ( a , b ) { return 8 == a . k ? b ? 1 : 0 : E . prototype . t . apply ( this , arguments ) } ; k . p = function ( a , b ) { return 8 == a . k ? ! ! b : E . prototype . p . apply ( this , arguments ) } ;
k . $ = function ( a , b ) { var c = b ; if ( this . Ba ) { var c = [ ] , d ; for ( d in b ) c [ parseInt ( d , 10 ) + 1 ] = b [ d ] } return Sa . Aa . $ . call ( this , a , c ) } ; / *
function I ( ) { t . call ( this ) } var Za ; n ( I , t ) ; I . prototype . ua = function ( ) { return x ( this , 1 ) } ; I . prototype . f = function ( ) { return A ( this , 1 ) } ; I . prototype . da = function ( a ) { y ( this , 1 , a ) } ; I . prototype . getExtension = function ( ) { return x ( this , 3 ) } ; var $a = { Ga : 1 , Fa : 5 , Ea : 10 , Da : 20 } ;
I . prototype . c = function ( ) { Za || ( Za = Va ( I , { 0 : { name : "PhoneNumber" , la : "i18n.phonenumbers.PhoneNumber" } , 1 : { name : "country_code" , required : ! 0 , a : 5 , type : Number } , 2 : { name : "national_number" , required : ! 0 , a : 4 , type : Number } , 3 : { name : "extension" , a : 9 , type : String } , 4 : { name : "italian_leading_zero" , a : 8 , type : Boolean } , 8 : { name : "number_of_leading_zeros" , a : 5 , defaultValue : 1 , type : Number } , 5 : { name : "raw_input" , a : 9 , type : String } , 6 : { name : "country_code_source" , a : 14 , defaultValue : 1 , type : $a } , 7 : { name : "preferred_domestic_carrier_code" , a : 9 , type : String } } ) ) ;
return Za } ; I . ctor = I ; I . ctor . c = I . prototype . c ; function ab ( ) { } n ( ab , C ) ; ab . prototype . $ = function ( a , b ) { var c = new a . xa ; c . na = this ; c . k = b ; c . e = { } ; return c } ; ab . prototype . ta = function ( ) { throw Error ( "Unimplemented" ) ; } ; function J ( ) { } n ( J , ab ) ; J . prototype . Aa = ! 1 ; J . prototype . ca = function ( a ) { for ( var b = Pa ( a . c ( ) ) , c = [ ] , d = this . Aa , e = 0 ; e < b . length ; e ++ ) { var f = b [ e ] ; if ( a . has ( f ) ) { var g = f . i , g = d ? g - 1 : g ; if ( f . r ) { c [ g ] = [ ] ; for ( var h = 0 ; h < B ( a , f . i ) ; h ++ ) c [ g ] [ h ] = this . t ( f , a . get ( f , h ) ) } else c [ g ] = this . t ( f , a . get ( f ) ) } } Ra ( a , function ( a , b ) { c [ d ? a - 1 : a ] = b } ) ; return c } ; J . prototype . t = function ( a , b ) { return 8 == a . l ? b ? 1 : 0 : C . prototype . t . apply ( this , arguments ) } ; J . prototype . p = function ( a , b ) { return 8 == a . l ? ! ! b : C . prototype . p . apply ( this , arguments ) } ;
J . prototype . $ = function ( a , b ) { var c = b ; if ( this . Aa ) { var c = [ ] , d ; for ( d in b ) c [ parseInt ( d , 10 ) + 1 ] = b [ d ] } return J . za . $ . call ( this , a , c ) } ; / *
Copyright ( C ) 2010 The Libphonenumber Authors
@ -70,11 +70,11 @@ k.$=function(a,b){var c=b;if(this.Ba){var c=[],d;for(d in b)c[parseInt(d,10)+1]=
See the License for the specific language governing permissions and
limitations under the License .
* /
var M = { 1 : "US AG AI AS BB BM BS CA DM DO GD GU JM KN KY LC MP MS PR SX TC TT VC VG VI" . split ( " " ) , 7 : [ "RU" , "KZ" ] , 20 : [ "EG" ] , 27 : [ "ZA" ] , 30 : [ "GR" ] , 31 : [ "NL" ] , 32 : [ "BE" ] , 33 : [ "FR" ] , 34 : [ "ES" ] , 36 : [ "HU" ] , 39 : [ "IT" ] , 40 : [ "RO" ] , 41 : [ "CH" ] , 43 : [ "AT" ] , 44 : [ "GB" , "GG" , "IM" , "JE" ] , 45 : [ "DK" ] , 46 : [ "SE" ] , 47 : [ "NO" , "SJ" ] , 48 : [ "PL" ] , 49 : [ "DE" ] , 51 : [ "PE" ] , 52 : [ "MX" ] , 53 : [ "CU" ] , 54 : [ "AR" ] , 55 : [ "BR" ] , 56 : [ "CL" ] , 57 : [ "CO" ] , 58 : [ "VE" ] , 60 : [ "MY" ] , 61 : [ "AU" , "CC" , "CX" ] , 62 : [ "ID" ] , 63 : [ "PH" ] , 64 : [ "NZ" ] , 65 : [ "SG" ] , 66 : [ "TH" ] , 81 : [ "JP" ] , 82 : [ "KR" ] , 84 : [ "VN" ] ,
var K = { 1 : "US AG AI AS BB BM BS CA DM DO GD GU JM KN KY LC MP MS PR SX TC TT VC VG VI" . split ( " " ) , 7 : [ "RU" , "KZ" ] , 20 : [ "EG" ] , 27 : [ "ZA" ] , 30 : [ "GR" ] , 31 : [ "NL" ] , 32 : [ "BE" ] , 33 : [ "FR" ] , 34 : [ "ES" ] , 36 : [ "HU" ] , 39 : [ "IT" ] , 40 : [ "RO" ] , 41 : [ "CH" ] , 43 : [ "AT" ] , 44 : [ "GB" , "GG" , "IM" , "JE" ] , 45 : [ "DK" ] , 46 : [ "SE" ] , 47 : [ "NO" , "SJ" ] , 48 : [ "PL" ] , 49 : [ "DE" ] , 51 : [ "PE" ] , 52 : [ "MX" ] , 53 : [ "CU" ] , 54 : [ "AR" ] , 55 : [ "BR" ] , 56 : [ "CL" ] , 57 : [ "CO" ] , 58 : [ "VE" ] , 60 : [ "MY" ] , 61 : [ "AU" , "CC" , "CX" ] , 62 : [ "ID" ] , 63 : [ "PH" ] , 64 : [ "NZ" ] , 65 : [ "SG" ] , 66 : [ "TH" ] , 81 : [ "JP" ] , 82 : [ "KR" ] , 84 : [ "VN" ] ,
86 : [ "CN" ] , 90 : [ "TR" ] , 91 : [ "IN" ] , 92 : [ "PK" ] , 93 : [ "AF" ] , 94 : [ "LK" ] , 95 : [ "MM" ] , 98 : [ "IR" ] , 211 : [ "SS" ] , 212 : [ "MA" , "EH" ] , 213 : [ "DZ" ] , 216 : [ "TN" ] , 218 : [ "LY" ] , 220 : [ "GM" ] , 221 : [ "SN" ] , 222 : [ "MR" ] , 223 : [ "ML" ] , 224 : [ "GN" ] , 225 : [ "CI" ] , 226 : [ "BF" ] , 227 : [ "NE" ] , 228 : [ "TG" ] , 229 : [ "BJ" ] , 230 : [ "MU" ] , 231 : [ "LR" ] , 232 : [ "SL" ] , 233 : [ "GH" ] , 234 : [ "NG" ] , 235 : [ "TD" ] , 236 : [ "CF" ] , 237 : [ "CM" ] , 238 : [ "CV" ] , 239 : [ "ST" ] , 240 : [ "GQ" ] , 241 : [ "GA" ] , 242 : [ "CG" ] , 243 : [ "CD" ] , 244 : [ "AO" ] , 245 : [ "GW" ] , 246 : [ "IO" ] , 247 : [ "AC" ] , 248 : [ "SC" ] , 249 : [ "SD" ] , 250 : [ "RW" ] , 251 : [ "ET" ] , 252 : [ "SO" ] ,
253 : [ "DJ" ] , 254 : [ "KE" ] , 255 : [ "TZ" ] , 256 : [ "UG" ] , 257 : [ "BI" ] , 258 : [ "MZ" ] , 260 : [ "ZM" ] , 261 : [ "MG" ] , 262 : [ "RE" , "YT" ] , 263 : [ "ZW" ] , 264 : [ "NA" ] , 265 : [ "MW" ] , 266 : [ "LS" ] , 267 : [ "BW" ] , 268 : [ "SZ" ] , 269 : [ "KM" ] , 290 : [ "SH" , "TA" ] , 291 : [ "ER" ] , 297 : [ "AW" ] , 298 : [ "FO" ] , 299 : [ "GL" ] , 350 : [ "GI" ] , 351 : [ "PT" ] , 352 : [ "LU" ] , 353 : [ "IE" ] , 354 : [ "IS" ] , 355 : [ "AL" ] , 356 : [ "MT" ] , 357 : [ "CY" ] , 358 : [ "FI" , "AX" ] , 359 : [ "BG" ] , 370 : [ "LT" ] , 371 : [ "LV" ] , 372 : [ "EE" ] , 373 : [ "MD" ] , 374 : [ "AM" ] , 375 : [ "BY" ] , 376 : [ "AD" ] , 377 : [ "MC" ] , 378 : [ "SM" ] , 379 : [ "VA" ] , 380 : [ "UA" ] , 381 : [ "RS" ] , 382 : [ "ME" ] , 385 : [ "HR" ] ,
386 : [ "SI" ] , 387 : [ "BA" ] , 389 : [ "MK" ] , 420 : [ "CZ" ] , 421 : [ "SK" ] , 423 : [ "LI" ] , 500 : [ "FK" ] , 501 : [ "BZ" ] , 502 : [ "GT" ] , 503 : [ "SV" ] , 504 : [ "HN" ] , 505 : [ "NI" ] , 506 : [ "CR" ] , 507 : [ "PA" ] , 508 : [ "PM" ] , 509 : [ "HT" ] , 590 : [ "GP" , "BL" , "MF" ] , 591 : [ "BO" ] , 592 : [ "GY" ] , 593 : [ "EC" ] , 594 : [ "GF" ] , 595 : [ "PY" ] , 596 : [ "MQ" ] , 597 : [ "SR" ] , 598 : [ "UY" ] , 599 : [ "CW" , "BQ" ] , 670 : [ "TL" ] , 672 : [ "NF" ] , 673 : [ "BN" ] , 674 : [ "NR" ] , 675 : [ "PG" ] , 676 : [ "TO" ] , 677 : [ "SB" ] , 678 : [ "VU" ] , 679 : [ "FJ" ] , 680 : [ "PW" ] , 681 : [ "WF" ] , 682 : [ "CK" ] , 683 : [ "NU" ] , 685 : [ "WS" ] , 686 : [ "KI" ] , 687 : [ "NC" ] , 688 : [ "TV" ] , 689 : [ "PF" ] , 690 : [ "TK" ] ,
691 : [ "FM" ] , 692 : [ "MH" ] , 800 : [ "001" ] , 808 : [ "001" ] , 850 : [ "KP" ] , 852 : [ "HK" ] , 853 : [ "MO" ] , 855 : [ "KH" ] , 856 : [ "LA" ] , 870 : [ "001" ] , 878 : [ "001" ] , 880 : [ "BD" ] , 881 : [ "001" ] , 882 : [ "001" ] , 883 : [ "001" ] , 886 : [ "TW" ] , 888 : [ "001" ] , 960 : [ "MV" ] , 961 : [ "LB" ] , 962 : [ "JO" ] , 963 : [ "SY" ] , 964 : [ "IQ" ] , 965 : [ "KW" ] , 966 : [ "SA" ] , 967 : [ "YE" ] , 968 : [ "OM" ] , 970 : [ "PS" ] , 971 : [ "AE" ] , 972 : [ "IL" ] , 973 : [ "BH" ] , 974 : [ "QA" ] , 975 : [ "BT" ] , 976 : [ "MN" ] , 977 : [ "NP" ] , 979 : [ "001" ] , 992 : [ "TJ" ] , 993 : [ "TM" ] , 994 : [ "AZ" ] , 995 : [ "GE" ] , 996 : [ "KG" ] , 998 : [ "UZ" ] } , Ta = { AC : [ , [ , , "[2-7]\\d{3,5}" , "\\d{4,6}" ] ,
691 : [ "FM" ] , 692 : [ "MH" ] , 800 : [ "001" ] , 808 : [ "001" ] , 850 : [ "KP" ] , 852 : [ "HK" ] , 853 : [ "MO" ] , 855 : [ "KH" ] , 856 : [ "LA" ] , 870 : [ "001" ] , 878 : [ "001" ] , 880 : [ "BD" ] , 881 : [ "001" ] , 882 : [ "001" ] , 883 : [ "001" ] , 886 : [ "TW" ] , 888 : [ "001" ] , 960 : [ "MV" ] , 961 : [ "LB" ] , 962 : [ "JO" ] , 963 : [ "SY" ] , 964 : [ "IQ" ] , 965 : [ "KW" ] , 966 : [ "SA" ] , 967 : [ "YE" ] , 968 : [ "OM" ] , 970 : [ "PS" ] , 971 : [ "AE" ] , 972 : [ "IL" ] , 973 : [ "BH" ] , 974 : [ "QA" ] , 975 : [ "BT" ] , 976 : [ "MN" ] , 977 : [ "NP" ] , 979 : [ "001" ] , 992 : [ "TJ" ] , 993 : [ "TM" ] , 994 : [ "AZ" ] , 995 : [ "GE" ] , 996 : [ "KG" ] , 998 : [ "UZ" ] } , bb = { AC : [ , [ , , "[2-7]\\d{3,5}" , "\\d{4,6}" ] ,
[ , , "(?:[267]\\d|3[0-5]|4[4-69])\\d{2}" , "\\d{4}" , , , "6889" ] , [ , , "5\\d{5}" , "\\d{6}" , , , "501234" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , "AC" , 247 , "00" , , , , , , , , , , [ , , "NA" , "NA" ] , , , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , , , [ , , "NA" , "NA" ] ] , AD : [ , [ , , "(?:[346-9]|180)\\d{5}" , "\\d{6,8}" ] , [ , , "[78]\\d{5}" , "\\d{6}" , , , "712345" ] , [ , , "[346]\\d{5}" , "\\d{6}" , , , "312345" ] , [ , , "180[02]\\d{4}" , "\\d{8}" , , , "18001234" ] , [ , , "9\\d{5}" , "\\d{6}" , , , "912345" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , "AD" , 376 , "00" , , , , ,
, , , [ [ , "(\\d{3})(\\d{3})" , "$1 $2" , [ "[346-9]" ] , "" , "" , 0 ] , [ , "(180[02])(\\d{4})" , "$1 $2" , [ "1" ] , "" , "" , 0 ] ] , , [ , , "NA" , "NA" ] , , , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , , , [ , , "NA" , "NA" ] ] , AE : [ , [ , , "[2-79]\\d{7,8}|800\\d{2,9}" , "\\d{5,12}" ] , [ , , "[2-4679][2-8]\\d{6}" , "\\d{7,8}" , , , "22345678" ] , [ , , "5[0256]\\d{7}" , "\\d{9}" , , , "501234567" ] , [ , , "400\\d{6}|800\\d{2,9}" , "\\d{5,12}" , , , "800123456" ] , [ , , "900[02]\\d{5}" , "\\d{9}" , , , "900234567" ] , [ , , "700[05]\\d{5}" , "\\d{9}" , , , "700012345" ] , [ , , "NA" , "NA" ] , [ , , "NA" , "NA" ] , "AE" , 971 , "00" , "0" , , , "0" , , , , [ [ ,
"([2-4679])(\\d{3})(\\d{4})" , "$1 $2 $3" , [ "[2-4679][2-8]" ] , "0$1" , "" , 0 ] , [ , "(5[0256])(\\d{3})(\\d{4})" , "$1 $2 $3" , [ "5" ] , "0$1" , "" , 0 ] , [ , "([479]00)(\\d)(\\d{5})" , "$1 $2 $3" , [ "[479]0" ] , "$1" , "" , 0 ] , [ , "([68]00)(\\d{2,9})" , "$1 $2" , [ "60|8" ] , "$1" , "" , 0 ] ] , , [ , , "NA" , "NA" ] , , , [ , , "NA" , "NA" ] , [ , , "600[25]\\d{5}" , "\\d{9}" , , , "600212345" ] , , , [ , , "NA" , "NA" ] ] , AF : [ , [ , , "[2-7]\\d{8}" , "\\d{7,9}" ] , [ , , "(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\d{6}" , "\\d{7,9}" , , , "234567890" ] , [ , , "7(?:[05-9]\\d{7}|29\\d{6})" , "\\d{9}" , , , "701234567" ] , [ , , "NA" ,
@ -435,31 +435,31 @@ SK:[,[,,"[2-689]\\d{8}","\\d{9}"],[,,"[2-5]\\d{8}","\\d{9}",,,"212345678"],[,,"9
See the License for the specific language governing permissions and
limitations under the License .
* /
function N ( ) { this . z a= { } } N . w a= function ( ) { return N . xa ? N . xa : N . xa = new N } ;
var O = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" , 7 : "7" , 8 : "8" , 9 : "9" , "\uff10" : "0" , "\uff11" : "1" , "\uff12" : "2" , "\uff13" : "3" , "\uff14" : "4" , "\uff15" : "5" , "\uff16" : "6" , "\uff17" : "7" , "\uff18" : "8" , "\uff19" : "9" , "\u0660" : "0" , "\u0661" : "1" , "\u0662" : "2" , "\u0663" : "3" , "\u0664" : "4" , "\u0665" : "5" , "\u0666" : "6" , "\u0667" : "7" , "\u0668" : "8" , "\u0669" : "9" , "\u06f0" : "0" , "\u06f1" : "1" , "\u06f2" : "2" , "\u06f3" : "3" , "\u06f4" : "4" , "\u06f5" : "5" , "\u06f6" : "6" , "\u06f7" : "7" , "\u06f8" : "8" , "\u06f9" : "9" } , Ua = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" ,
7 : "7" , 8 : "8" , 9 : "9" , "+" : "+" , "*" : "*" } , Va = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" , 7 : "7" , 8 : "8" , 9 : "9" , "\uff10" : "0" , "\uff11" : "1" , "\uff12" : "2" , "\uff13" : "3" , "\uff14" : "4" , "\uff15" : "5" , "\uff16" : "6" , "\uff17" : "7" , "\uff18" : "8" , "\uff19" : "9" , "\u0660" : "0" , "\u0661" : "1" , "\u0662" : "2" , "\u0663" : "3" , "\u0664" : "4" , "\u0665" : "5" , "\u0666" : "6" , "\u0667" : "7" , "\u0668" : "8" , "\u0669" : "9" , "\u06f0" : "0" , "\u06f1" : "1" , "\u06f2" : "2" , "\u06f3" : "3" , "\u06f4" : "4" , "\u06f5" : "5" , "\u06f6" : "6" , "\u06f7" : "7" , "\u06f8" : "8" , "\u06f9" : "9" , A : "2" , B : "2" ,
C : "2" , D : "3" , E : "3" , F : "3" , G : "4" , H : "4" , I : "4" , J : "5" , K : "5" , L : "5" , M : "6" , N : "6" , O : "6" , P : "7" , Q : "7" , R : "7" , S : "7" , T : "8" , U : "8" , V : "8" , W : "9" , X : "9" , Y : "9" , Z : "9" } , Wa = /[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?/ , Xa = RegExp ( "[+\uff0b]+" ) , P = RegExp ( "^[+\uff0b]+" ) , Ya = RegExp ( "([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9])" ) , Za = RegExp ( "[+\uff0b0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]" ) , $a = /[\\\/] *x/ , a b= RegExp ( "[^0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9A-Za-z#]+$" ) , b b= /(?:.*?[A-Za-z]){3}.*/ , c b= RegExp ( "(?:;ext=([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|[,x\uff58#\uff03~\uff5e]|int|anexo|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})#?|[- ]+([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,5})#)$" ,
"i" ) , d b= RegExp ( "^[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{2}$|^[+\uff0b]*(?:[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*]*[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]){3,}[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*A-Za-z0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]*(?:;ext=([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|[,x\uff58#\uff03~\uff5e]|int|anexo|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})#?|[- ]+([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,5})#)?$" ,
"i" ) , e b= /(\$\d)/ , f b= /\$NP/ , g b= /\$FG/ , h b= /\$CC/ , i b= /^\(?\$1\)?$/ ; function j b( a ) { var b = a . search ( Za ) ; 0 <= b ? ( a = a . substring ( b ) , a = a . replace ( a b, "" ) , b = a . search ( $a ) , 0 <= b && ( a = a . substring ( 0 , b ) ) ) : a = "" ; return a } function k b( a ) { return 2 > a . length ? ! 1 : Q ( d b, a ) } function l b( a ) { return Q ( b b, a ) ? R ( a , Va ) : R ( a , O ) } function m b( a ) { var b = l b( a . toString ( ) ) ; a . clear ( ) ; a . append ( b ) } function R ( a , b ) { for ( var c = new G , d , e = a . length , f = 0 ; f < e ; ++ f ) d = a . charAt ( f ) , d = b [ d . toUpperCase ( ) ] , null != d && c . append ( d ) ; return c . toString ( ) }
function n b( a ) { return null != a && isNaN ( a ) && a . toUpperCase ( ) in Ta } N . prototype . format = function ( a , b ) { if ( 0 == x ( a , 2 ) && w ( a , 5 ) ) { var c = B ( a , 5 ) ; if ( 0 < c . length ) return c } var c = a . e ( ) , d = S ( a ) ; if ( 0 == b ) return T ( c , 0 , d , "" ) ; if ( ! ( c in M ) ) return d ; var e = U ( this , c , V ( c ) ) , f = o b( a , e , b ) , d = p b( d , e , b ) ; return T ( c , b , d , f ) } ; function r b( a , b , c ) { var d = b . e ( ) , e = S ( b ) ; if ( ! ( d in M ) ) return e ; a = U ( a , d , V ( d ) ) ; b = o b( b , a , 2 ) ; c = p b( e , a , 2 , c ) ; return T ( d , 2 , c , b ) } function U ( a , b , c ) { return "001" == c ? W ( a , "" + b ) : W ( a , c ) }
function s b( a , b , c ) { if ( ! n b( c ) ) return a . format ( b , 1 ) ; var d = b . e ( ) , e = S ( b ) ; if ( ! ( d in M ) ) return e ; if ( 1 == d ) { if ( null != c && 0 <= ea ( M [ 1 ] , c . toUpperCase ( ) ) ) return d + " " + a . format ( b , 2 ) } else if ( d == t b( a , c ) ) return a . format ( b , 2 ) ; var f = W ( a , c ) , g = B ( f , 11 ) ; c = "" ; Q ( Wa , g ) ? c = g : w ( f , 17 ) && ( c = B ( f , 17 ) ) ; a = U ( a , d , V ( d ) ) ; e = p b( e , a , 1 ) ; b = o b( b , a , 1 ) ; return 0 < c . length ? c + " " + d + " " + e + b : T ( d , 1 , e , b ) }
function u b( a , b , c ) { var d ; if ( d = w ( b , 5 ) ) { if ( d = w ( b , 4 ) ) d = b . e ( ) , d = U ( a , d , V ( d ) ) , d = ! ( null != d && B ( d , 26 ) ) ; if ( ! d ) { d = b . e ( ) ; d = U ( a , d , V ( d ) ) ; if ( null == d ) d = ! 1 ; else { var e = S ( b ) ; d = null != vb ( A ( d , 19 ) || [ ] , e ) } d = ! d } } if ( d ) return B ( b , 5 ) ; if ( ! w ( b , 6 ) ) return a . format ( b , 2 ) ; switch ( x ( b , 6 ) ) { case 1 : a = a . format ( b , 1 ) ; break ; case 5 : a = s b( a , b , c ) ; break ; case 10 : a = a . format ( b , 1 ) . substring ( 1 ) ; break ; default : d = V ( b . e ( ) ) ; var f ; c = W ( a , d ) ; null == c ? f = null : ( c = B ( c , 12 ) , f = 0 == c . length ? null : c = c . replace ( "~" , "" ) ) ; c = a . format ( b , 2 ) ; if ( null == f || 0 == f . length ) { a = c ; break } var g ;
a : { e = B ( b , 5 ) ; e = R ( e , O ) ; if ( 0 == e . lastIndexOf ( f , 0 ) ) try { g = w b( a , a . parse ( e . substring ( f . length ) , d ) ) ; break a } catch ( h ) { } g = ! 1 } if ( g ) { a = c ; break } g = W ( a , d ) ; d = S ( b ) ; g = vb ( A ( g , 19 ) || [ ] , d ) ; if ( null == g ) { a = c ; break } d = B ( g , 4 ) ; e = d . indexOf ( "$1" ) ; if ( 0 >= e ) { a = c ; break } d = d . substring ( 0 , e ) ; d = R ( d , O ) ; if ( 0 == d . length ) { a = c ; break } g = g . clone ( ) ; z ( g , 4 ) ; d = [ g ] ; g = b . e ( ) ; c = S ( b ) ; g in M ? ( a = U ( a , g , V ( g ) ) , e = "" , e = v b( d , c ) , null == e ? e = c : ( d = e . clone ( ) , e = B ( e , 4 ) , 0 < e . length && ( f = B ( a , 12 ) , 0 < f . length ? ( e = e . replace ( f b, f ) . replace ( g b, "$1" ) , y ( d , 4 , e ) ) : z ( d , 4 ) ) , e = x b( c , d , 2 ) ) , a =
o b( b , a , 2 ) , a = T ( g , 2 , e , a ) ) : a = c } b = B ( b , 5 ) ; null != a && 0 < b . length && ( g = R ( a , Ua ) , c = R ( b , Ua ) , g != c && ( a = b ) ) ; return a } function S ( a ) { var b = "" + x ( a , 2 ) ; return w ( a , 4 ) && x ( a , 4 ) ? Array ( B ( a , 8 ) + 1 ) . join ( "0" ) + b : b } function T ( a , b , c , d ) { switch ( b ) { case 0 : return "+" + a + c + d ; case 1 : return "+" + a + " " + c + d ; case 3 : return "tel:+" + a + "-" + c + d ; default : return c + d } } function p b( a , b , c , d ) { b = 0 == ( A ( b , 20 ) || [ ] ) . length || 2 == c ? A ( b , 19 ) || [ ] : A ( b , 20 ) || [ ] ; b = v b( b , a ) ; return null == b ? a : x b( a , b , c , d ) }
function v b( a , b ) { for ( var c , d = a . length , e = 0 ; e < d ; ++ e ) { c = a [ e ] ; var f = C ( c , 3 ) ; if ( 0 == f || 0 == b . search ( x ( c , 3 , f - 1 ) ) ) if ( f = new RegExp ( x ( c , 1 ) ) , Q ( f , b ) ) return c } return null }
function x b( a , b , c , d ) { var e = B ( b , 2 ) , f = new RegExp ( x ( b , 1 ) ) , g = B ( b , 5 ) , h = "" ; 2 == c && null != d && 0 < d . length && 0 < g . length ? ( b = g . replace ( h b, d ) , e = e . replace ( e b, b ) , h = a . replace ( f , e ) ) : ( b = B ( b , 4 ) , h = 2 == c && null != b && 0 < b . length ? a . replace ( f , e . replace ( e b, b ) ) : a . replace ( f , e ) ) ; 3 == c && ( h = h . replace ( RegExp ( "^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]+" ) , "" ) , h = h . replace ( RegExp ( "[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]+" ,
"g" ) , "-" ) ) ; return h } function o b( a , b , c ) { return w ( a , 3 ) && 0 != a . getExtension ( ) . length ? 3 == c ? ";ext=" + a . getExtension ( ) : w ( b , 13 ) ? x ( b , 13 ) + B ( a , 3 ) : " ext. " + B ( a , 3 ) : "" } function y b( a , b ) { return X ( a , x ( b , 1 ) ) ? X ( a , x ( b , 5 ) ) ? 4 : X ( a , x ( b , 4 ) ) ? 3 : X ( a , x ( b , 6 ) ) ? 5 : X ( a , x ( b , 8 ) ) ? 6 : X ( a , x ( b , 7 ) ) ? 7 : X ( a , x ( b , 21 ) ) ? 8 : X ( a , x ( b , 25 ) ) ? 9 : X ( a , x ( b , 28 ) ) ? 10 : X ( a , x ( b , 2 ) ) ? x ( b , 18 ) || X ( a , x ( b , 3 ) ) ? 2 : 0 : ! x ( b , 18 ) && X ( a , x ( b , 3 ) ) ? 1 : - 1 : - 1 }
function W ( a , b ) { if ( null == b ) return null ; b = b . toUpperCase ( ) ; var c = a . z a[ b ] ; if ( null == c ) { c = Ta [ b ] ; if ( null == c ) return null ; c = ( new Sa ) . $ ( J . n ( ) , c ) ; a . z a[ b ] = c } return c } function X ( a , b ) { return Q ( B ( b , 3 ) , a ) && Q ( B ( b , 2 ) , a ) } function w b( a , b ) { var c = z b( a , b ) ; return A b( a , b , c ) } function A b( a , b , c ) { var d = b . e ( ) , e = U ( a , d , c ) ; if ( null == e || "001" != c && d != t b( a , c ) ) return ! 1 ; a = S ( b ) ; return - 1 != y b( a , e ) }
function z b( a , b ) { if ( null == b ) return null ; var c = b . e ( ) , c = M [ c ] ; if ( null == c ) c = null ; else if ( 1 == c . length ) c = c [ 0 ] ; else a : { for ( var d = S ( b ) , e , f = c . length , g = 0 ; g < f ; g ++ ) { e = c [ g ] ; var h = W ( a , e ) ; if ( w ( h , 23 ) ) { if ( 0 == d . search ( x ( h , 23 ) ) ) { c = e ; break a } } else if ( - 1 != y b( d , h ) ) { c = e ; break a } } c = null } return c } function V ( a ) { a = M [ a ] ; return null == a ? "ZZ" : a [ 0 ] } function t b( a , b ) { var c = W ( a , b ) ; if ( null == c ) throw "Invalid region code: " + b ; return c . e ( ) } function B b( a , b ) { return Q ( a , b ) ? 0 : 0 == b . search ( a ) ? 3 : 2 }
function C b( a , b ) { var c = S ( b ) , d = b . e ( ) ; if ( ! ( d in M ) ) return 1 ; d = U ( a , d , V ( d ) ) ; d = x ( d , 1 ) ; d = B ( d , 3 ) ; return B b( d , c ) } function D b( a , b ) { var c = a . toString ( ) ; if ( 0 == c . length || "0" == c . charAt ( 0 ) ) return 0 ; for ( var d , e = c . length , f = 1 ; 3 >= f && f <= e ; ++ f ) if ( d = parseInt ( c . substring ( 0 , f ) , 10 ) , d in M ) return b . append ( c . substring ( f ) ) , d ; return 0 }
function E b( a , b , c , d , e ) { if ( 0 == a . length ) return 0 ; a = new G ( a ) ; var f ; null != b && ( f = x ( b , 11 ) ) ; null == f && ( f = "NonMatch" ) ; var g = a . toString ( ) ; if ( 0 == g . length ) f = 20 ; else if ( P . test ( g ) ) g = g . replace ( P , "" ) , a . clear ( ) , a . append ( l b( g ) ) , f = 1 ; else { g = new RegExp ( f ) ; m b( a ) ; f = a . toString ( ) ; if ( 0 == f . search ( g ) ) { var g = f . match ( g ) [ 0 ] . length , h = f . substring ( g ) . match ( Ya ) ; h && null != h [ 1 ] && 0 < h [ 1 ] . length && "0" == R ( h [ 1 ] , O ) ? f = ! 1 : ( a . clear ( ) , a . append ( f . substring ( g ) ) , f = ! 0 ) } else f = ! 1 ; f = f ? 5 : 20 } d && y ( e , 6 , f ) ; if ( 20 != f ) { if ( 2 >= a . f . length ) throw "Phone number too short after IDD" ;
c = D b( a , c ) ; if ( 0 != c ) return e . da ( c ) , c ; throw "Invalid country calling code" ; } if ( null != b && ( f = b . e ( ) , g = "" + f , h = a . toString ( ) , 0 == h . lastIndexOf ( g , 0 ) ) ) { var m = new G ( h . substring ( g . length ) ) , h = x ( b , 1 ) , g = new RegExp ( B ( h , 2 ) ) ; F b( m , b , null ) ; b = m . toString ( ) ; h = B ( h , 3 ) ; if ( ! Q ( g , a . toString ( ) ) && Q ( g , b ) || 3 == B b( h , a . toString ( ) ) ) return c . append ( b ) , d && y ( e , 6 , 10 ) , e . da ( f ) , f } e . da ( 0 ) ; return 0 }
function F b( a , b , c ) { var d = a . toString ( ) , e = d . length , f = x ( b , 15 ) ; if ( 0 != e && null != f && 0 != f . length && ( f = new RegExp ( "^(?:" + f + ")" ) , e = f . exec ( d ) ) ) { var g = RegExp , h ; h = x ( b , 1 ) ; h = B ( h , 2 ) ; g = new g ( h ) ; h = Q ( g , d ) ; var m = e . length - 1 ; b = x ( b , 16 ) ; if ( null == b || 0 == b . length || null == e [ m ] || 0 == e [ m ] . length ) { if ( ! h || Q ( g , d . substring ( e [ 0 ] . length ) ) ) null != c && 0 < m && null != e [ m ] && c . append ( e [ 1 ] ) , a . set ( d . substring ( e [ 0 ] . length ) ) } else if ( d = d . replace ( f , b ) , ! h || Q ( g , d ) ) null != c && 0 < m && c . append ( e [ 1 ] ) , a . set ( d ) } }
N . prototype . parse = function ( a , b ) { return G b( this , a , b , ! 1 ) } ;
function G b( a , b , c , d ) { if ( null == b ) throw "The string supplied did not seem to be a phone number" ; if ( 250 < b . length ) throw "The string supplied is too long to be a phone number" ; var e = new G , f = b . indexOf ( ";phone-context=" ) ; if ( 0 < f ) { var g = f + 15 ; if ( "+" == b . charAt ( g ) ) { var h = b . indexOf ( ";" , g ) ; 0 < h ? e . append ( b . substring ( g , h ) ) : e . append ( b . substring ( g ) ) } g = b . indexOf ( "tel:" ) ; e . append ( b . substring ( 0 <= g ? g + 4 : 0 , f ) ) } else e . append ( j b( b ) ) ; f = e . toString ( ) ; g = f . indexOf ( ";isub=" ) ; 0 < g && ( e . clear ( ) , e . append ( f . substring ( 0 , g ) ) ) ; if ( ! k b( e . toString ( ) ) ) throw "The string supplied did not seem to be a phone number" ;
f = e . toString ( ) ; if ( ! ( n b( c ) || null != f && 0 < f . length && P . test ( f ) ) ) throw "Invalid country calling code" ; f = new L ; d && y ( f , 5 , b ) ; a : { b = e . toString ( ) ; g = b . search ( c b) ; if ( 0 <= g && k b( b . substring ( 0 , g ) ) ) for ( var h = b . match ( c b) , m = h . length , u = 1 ; u < m ; ++ u ) if ( null != h [ u ] && 0 < h [ u ] . length ) { e . clear ( ) ; e . append ( b . substring ( 0 , g ) ) ; b = h [ u ] ; break a } b = "" } 0 < b . length && y ( f , 3 , b ) ; g = W ( a , c ) ; b = new G ; h = 0 ; m = e . toString ( ) ; try { h = E b( m , g , b , d , f ) } catch ( v ) { if ( "Invalid country calling code" == v && P . test ( m ) ) { if ( m = m . replace ( P , "" ) , h = E b( m , g , b , d , f ) , 0 == h ) throw v ; } else throw v ;
} 0 != h ? ( e = V ( h ) , e != c && ( g = U ( a , h , e ) ) ) : ( m b( e ) , b . append ( e . toString ( ) ) , null != c ? ( h = g . e ( ) , f . da ( h ) ) : d && z ( f , 6 ) ) ; if ( 2 > b . f . length ) throw "The string supplied is too short to be a phone number" ; null != g && ( a = new G , c = new G ( b . toString ( ) ) , F b( c , g , a ) , e = c . toString ( ) , g = x ( g , 1 ) , g = B ( g , 3 ) , 2 != B b( g , e ) && ( b = c , d && y ( f , 7 , a . toString ( ) ) ) ) ; d = b . toString ( ) ; a = d . length ; if ( 2 > a ) throw "The string supplied is too short to be a phone number" ; if ( 17 < a ) throw "The string supplied is too long to be a phone number" ; if ( 1 < d . length && "0" == d . charAt ( 0 ) ) { y ( f ,
4 , ! 0 ) ; for ( a = 1 ; a < d . length - 1 && "0" == d . charAt ( a ) ; ) a ++ ; 1 != a && y ( f , 8 , a ) } y ( f , 2 , parseInt ( d , 10 ) ) ; return f } function Q ( a , b ) { var c = "string" == typeof a ? b . match ( "^(?:" + a + ")$" ) : b . match ( a ) ; return c && c [ 0 ] . length == b . length ? ! 0 : ! 1 } ; / *
function L ( ) { this . y a= { } } L . v a= function ( ) { return L . wa ? L . wa : L . wa = new L } ;
var M = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" , 7 : "7" , 8 : "8" , 9 : "9" , "\uff10" : "0" , "\uff11" : "1" , "\uff12" : "2" , "\uff13" : "3" , "\uff14" : "4" , "\uff15" : "5" , "\uff16" : "6" , "\uff17" : "7" , "\uff18" : "8" , "\uff19" : "9" , "\u0660" : "0" , "\u0661" : "1" , "\u0662" : "2" , "\u0663" : "3" , "\u0664" : "4" , "\u0665" : "5" , "\u0666" : "6" , "\u0667" : "7" , "\u0668" : "8" , "\u0669" : "9" , "\u06f0" : "0" , "\u06f1" : "1" , "\u06f2" : "2" , "\u06f3" : "3" , "\u06f4" : "4" , "\u06f5" : "5" , "\u06f6" : "6" , "\u06f7" : "7" , "\u06f8" : "8" , "\u06f9" : "9" } , cb = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" ,
7 : "7" , 8 : "8" , 9 : "9" , "+" : "+" , "*" : "*" } , db = { 0 : "0" , 1 : "1" , 2 : "2" , 3 : "3" , 4 : "4" , 5 : "5" , 6 : "6" , 7 : "7" , 8 : "8" , 9 : "9" , "\uff10" : "0" , "\uff11" : "1" , "\uff12" : "2" , "\uff13" : "3" , "\uff14" : "4" , "\uff15" : "5" , "\uff16" : "6" , "\uff17" : "7" , "\uff18" : "8" , "\uff19" : "9" , "\u0660" : "0" , "\u0661" : "1" , "\u0662" : "2" , "\u0663" : "3" , "\u0664" : "4" , "\u0665" : "5" , "\u0666" : "6" , "\u0667" : "7" , "\u0668" : "8" , "\u0669" : "9" , "\u06f0" : "0" , "\u06f1" : "1" , "\u06f2" : "2" , "\u06f3" : "3" , "\u06f4" : "4" , "\u06f5" : "5" , "\u06f6" : "6" , "\u06f7" : "7" , "\u06f8" : "8" , "\u06f9" : "9" , A : "2" , B : "2" ,
C : "2" , D : "3" , E : "3" , F : "3" , G : "4" , H : "4" , I : "4" , J : "5" , K : "5" , L : "5" , M : "6" , N : "6" , O : "6" , P : "7" , Q : "7" , R : "7" , S : "7" , T : "8" , U : "8" , V : "8" , W : "9" , X : "9" , Y : "9" , Z : "9" } , eb = /[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?/ , fb = RegExp ( "[+\uff0b]+" ) , O = RegExp ( "^[+\uff0b]+" ) , gb = RegExp ( "([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9])" ) , hb = RegExp ( "[+\uff0b0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]" ) , ib = /[\\\/] *x/ , j b= RegExp ( "[^0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9A-Za-z#]+$" ) , k b= /(?:.*?[A-Za-z]){3}.*/ , l b= RegExp ( "(?:;ext=([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|[,x\uff58#\uff03~\uff5e]|int|anexo|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})#?|[- ]+([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,5})#)$" ,
"i" ) , m b= RegExp ( "^[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{2}$|^[+\uff0b]*(?:[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*]*[0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]){3,}[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e*A-Za-z0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]*(?:;ext=([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})|[ \u00a0\\t,]*(?:e?xt(?:ensi(?:o\u0301?|\u00f3))?n?|\uff45?\uff58\uff54\uff4e?|[,x\uff58#\uff03~\uff5e]|int|anexo|\uff49\uff4e\uff54)[:\\.\uff0e]?[ \u00a0\\t,-]*([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,7})#?|[- ]+([0-9\uff10-\uff19\u0660-\u0669\u06f0-\u06f9]{1,5})#)?$" ,
"i" ) , n b= /(\$\d)/ , o b= /\$NP/ , p b= /\$FG/ , q b= /\$CC/ , r b= /^\(?\$1\)?$/ ; function s b( a ) { var b = a . search ( hb ) ; 0 <= b ? ( a = a . substring ( b ) , a = a . replace ( j b, "" ) , b = a . search ( ib ) , 0 <= b && ( a = a . substring ( 0 , b ) ) ) : a = "" ; return a } function t b( a ) { return 2 > a . length ? ! 1 : P ( m b, a ) } function u b( a ) { return P ( k b, a ) ? Q ( a , db ) : Q ( a , M ) } function v b( a ) { var b = u b( a . toString ( ) ) ; a . clear ( ) ; a . append ( b ) } function Q ( a , b ) { for ( var c = new E , d , e = a . length , f = 0 ; f < e ; ++ f ) d = a . charAt ( f ) , d = b [ d . toUpperCase ( ) ] , null != d && c . append ( d ) ; return c . toString ( ) }
function x b( a ) { return null != a && isNaN ( a ) && a . toUpperCase ( ) in bb } L . prototype . format = function ( a , b ) { if ( 0 == x ( a , 2 ) && u ( a , 5 ) ) { var c = A ( a , 5 ) ; if ( 0 < c . length ) return c } var c = a . f ( ) , d = R ( a ) ; if ( 0 == b ) return S ( c , 0 , d , "" ) ; if ( ! ( c in K ) ) return d ; var e = T ( this , c , U ( c ) ) , f = y b( a , e , b ) , d = z b( d , e , b ) ; return S ( c , b , d , f ) } ; function A b( a , b , c ) { var d = b . f ( ) , e = R ( b ) ; if ( ! ( d in K ) ) return e ; a = T ( a , d , U ( d ) ) ; b = y b( b , a , 2 ) ; c = z b( e , a , 2 , c ) ; return S ( d , 2 , c , b ) } function T ( a , b , c ) { return "001" == c ? V ( a , "" + b ) : V ( a , c ) }
function B b( a , b , c ) { if ( ! x b( c ) ) return a . format ( b , 1 ) ; var d = b . f ( ) , e = R ( b ) ; if ( ! ( d in K ) ) return e ; if ( 1 == d ) { if ( null != c && 0 <= ha ( K [ 1 ] , c . toUpperCase ( ) ) ) return d + " " + a . format ( b , 2 ) } else if ( d == C b( a , c ) ) return a . format ( b , 2 ) ; var f = V ( a , c ) , g = A ( f , 11 ) ; c = "" ; P ( eb , g ) ? c = g : u ( f , 17 ) && ( c = A ( f , 17 ) ) ; a = T ( a , d , U ( d ) ) ; e = z b( e , a , 1 ) ; b = y b( b , a , 1 ) ; return 0 < c . length ? c + " " + d + " " + e + b : S ( d , 1 , e , b ) }
function D b( a , b , c ) { var d ; if ( d = u ( b , 5 ) ) { if ( d = u ( b , 4 ) ) d = b . f ( ) , d = T ( a , d , U ( d ) ) , d = ! ( null != d && A ( d , 26 ) ) ; if ( ! d ) { d = b . f ( ) ; d = T ( a , d , U ( d ) ) ; if ( null == d ) d = ! 1 ; else { var e = R ( b ) ; d = null != Eb ( z ( d , 19 ) || [ ] , e ) } d = ! d } } if ( d ) return A ( b , 5 ) ; if ( ! u ( b , 6 ) ) return a . format ( b , 2 ) ; switch ( x ( b , 6 ) ) { case 1 : a = a . format ( b , 1 ) ; break ; case 5 : a = B b( a , b , c ) ; break ; case 10 : a = a . format ( b , 1 ) . substring ( 1 ) ; break ; default : d = U ( b . f ( ) ) ; var f ; c = V ( a , d ) ; null == c ? f = null : ( c = A ( c , 12 ) , f = 0 == c . length ? null : c = c . replace ( "~" , "" ) ) ; c = a . format ( b , 2 ) ; if ( null == f || 0 == f . length ) { a = c ; break } var g ;
a : { e = A ( b , 5 ) ; e = Q ( e , M ) ; if ( 0 == e . lastIndexOf ( f , 0 ) ) try { g = F b( a , a . parse ( e . substring ( f . length ) , d ) ) ; break a } catch ( h ) { } g = ! 1 } if ( g ) { a = c ; break } g = V ( a , d ) ; d = R ( b ) ; g = Eb ( z ( g , 19 ) || [ ] , d ) ; if ( null == g ) { a = c ; break } d = A ( g , 4 ) ; e = d . indexOf ( "$1" ) ; if ( 0 >= e ) { a = c ; break } d = d . substring ( 0 , e ) ; d = Q ( d , M ) ; if ( 0 == d . length ) { a = c ; break } g = g . clone ( ) ; Ta ( g , 4 ) ; d = [ g ] ; g = b . f ( ) ; c = R ( b ) ; g in K ? ( a = T ( a , g , U ( g ) ) , e = "" , e = E b( d , c ) , null == e ? e = c : ( d = e . clone ( ) , e = A ( e , 4 ) , 0 < e . length && ( f = A ( a , 12 ) , 0 < f . length ? ( e = e . replace ( o b, f ) . replace ( p b, "$1" ) , y ( d , 4 , e ) ) : Ta ( d , 4 ) ) , e = G b( c , d , 2 ) ) ,
a = y b( b , a , 2 ) , a = S ( g , 2 , e , a ) ) : a = c } b = A ( b , 5 ) ; null != a && 0 < b . length && ( g = Q ( a , cb ) , c = Q ( b , cb ) , g != c && ( a = b ) ) ; return a } function R ( a ) { var b = "" + x ( a , 2 ) ; return u ( a , 4 ) && x ( a , 4 ) ? Array ( A ( a , 8 ) + 1 ) . join ( "0" ) + b : b } function S ( a , b , c , d ) { switch ( b ) { case 0 : return "+" + a + c + d ; case 1 : return "+" + a + " " + c + d ; case 3 : return "tel:+" + a + "-" + c + d ; default : return c + d } } function z b( a , b , c , d ) { b = 0 == ( z ( b , 20 ) || [ ] ) . length || 2 == c ? z ( b , 19 ) || [ ] : z ( b , 20 ) || [ ] ; b = E b( b , a ) ; return null == b ? a : G b( a , b , c , d ) }
function E b( a , b ) { for ( var c , d = a . length , e = 0 ; e < d ; ++ e ) { c = a [ e ] ; var f = B ( c , 3 ) ; if ( 0 == f || 0 == b . search ( x ( c , 3 , f - 1 ) ) ) if ( f = new RegExp ( x ( c , 1 ) ) , P ( f , b ) ) return c } return null }
function G b( a , b , c , d ) { var e = A ( b , 2 ) , f = new RegExp ( x ( b , 1 ) ) , g = A ( b , 5 ) , h = "" ; 2 == c && null != d && 0 < d . length && 0 < g . length ? ( b = g . replace ( q b, d ) , e = e . replace ( n b, b ) , h = a . replace ( f , e ) ) : ( b = A ( b , 4 ) , h = 2 == c && null != b && 0 < b . length ? a . replace ( f , e . replace ( n b, b ) ) : a . replace ( f , e ) ) ; 3 == c && ( h = h . replace ( RegExp ( "^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]+" ) , "" ) , h = h . replace ( RegExp ( "[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]+" ,
"g" ) , "-" ) ) ; return h } function y b( a , b , c ) { return u ( a , 3 ) && 0 != a . getExtension ( ) . length ? 3 == c ? ";ext=" + a . getExtension ( ) : u ( b , 13 ) ? x ( b , 13 ) + A ( a , 3 ) : " ext. " + A ( a , 3 ) : "" } function H b( a , b ) { return W ( a , x ( b , 1 ) ) ? W ( a , x ( b , 5 ) ) ? 4 : W ( a , x ( b , 4 ) ) ? 3 : W ( a , x ( b , 6 ) ) ? 5 : W ( a , x ( b , 8 ) ) ? 6 : W ( a , x ( b , 7 ) ) ? 7 : W ( a , x ( b , 21 ) ) ? 8 : W ( a , x ( b , 25 ) ) ? 9 : W ( a , x ( b , 28 ) ) ? 10 : W ( a , x ( b , 2 ) ) ? x ( b , 18 ) || W ( a , x ( b , 3 ) ) ? 2 : 0 : ! x ( b , 18 ) && W ( a , x ( b , 3 ) ) ? 1 : - 1 : - 1 }
function V ( a , b ) { if ( null == b ) return null ; b = b . toUpperCase ( ) ; var c = a . y a[ b ] ; if ( null == c ) { c = bb [ b ] ; if ( null == c ) return null ; c = ( new J ) . $ ( H . c ( ) , c ) ; a . y a[ b ] = c } return c } function W ( a , b ) { return P ( A ( b , 3 ) , a ) && P ( A ( b , 2 ) , a ) } function F b( a , b ) { var c = I b( a , b ) ; return J b( a , b , c ) } function J b( a , b , c ) { var d = b . f ( ) , e = T ( a , d , c ) ; if ( null == e || "001" != c && d != C b( a , c ) ) return ! 1 ; a = R ( b ) ; return - 1 != H b( a , e ) }
function I b( a , b ) { if ( null == b ) return null ; var c = b . f ( ) , c = K [ c ] ; if ( null == c ) c = null ; else if ( 1 == c . length ) c = c [ 0 ] ; else a : { for ( var d = R ( b ) , e , f = c . length , g = 0 ; g < f ; g ++ ) { e = c [ g ] ; var h = V ( a , e ) ; if ( u ( h , 23 ) ) { if ( 0 == d . search ( x ( h , 23 ) ) ) { c = e ; break a } } else if ( - 1 != H b( d , h ) ) { c = e ; break a } } c = null } return c } function U ( a ) { a = K [ a ] ; return null == a ? "ZZ" : a [ 0 ] } function C b( a , b ) { var c = V ( a , b ) ; if ( null == c ) throw "Invalid region code: " + b ; return c . f ( ) } function K b( a , b ) { return P ( a , b ) ? 0 : 0 == b . search ( a ) ? 3 : 2 }
function L b( a , b ) { var c = R ( b ) , d = b . f ( ) ; if ( ! ( d in K ) ) return 1 ; d = T ( a , d , U ( d ) ) ; d = x ( d , 1 ) ; d = A ( d , 3 ) ; return K b( d , c ) } function M b( a , b ) { var c = a . toString ( ) ; if ( 0 == c . length || "0" == c . charAt ( 0 ) ) return 0 ; for ( var d , e = c . length , f = 1 ; 3 >= f && f <= e ; ++ f ) if ( d = parseInt ( c . substring ( 0 , f ) , 10 ) , d in K ) return b . append ( c . substring ( f ) ) , d ; return 0 }
function N b( a , b , c , d , e ) { if ( 0 == a . length ) return 0 ; a = new E ( a ) ; var f ; null != b && ( f = x ( b , 11 ) ) ; null == f && ( f = "NonMatch" ) ; var g = a . toString ( ) ; if ( 0 == g . length ) f = 20 ; else if ( O . test ( g ) ) g = g . replace ( O , "" ) , a . clear ( ) , a . append ( u b( g ) ) , f = 1 ; else { g = new RegExp ( f ) ; v b( a ) ; f = a . toString ( ) ; if ( 0 == f . search ( g ) ) { var g = f . match ( g ) [ 0 ] . length , h = f . substring ( g ) . match ( gb ) ; h && null != h [ 1 ] && 0 < h [ 1 ] . length && "0" == Q ( h [ 1 ] , M ) ? f = ! 1 : ( a . clear ( ) , a . append ( f . substring ( g ) ) , f = ! 0 ) } else f = ! 1 ; f = f ? 5 : 20 } d && y ( e , 6 , f ) ; if ( 20 != f ) { if ( 2 >= a . g . length ) throw "Phone number too short after IDD" ;
c = M b( a , c ) ; if ( 0 != c ) return e . da ( c ) , c ; throw "Invalid country calling code" ; } if ( null != b && ( f = b . f ( ) , g = "" + f , h = a . toString ( ) , 0 == h . lastIndexOf ( g , 0 ) ) ) { var m = new E ( h . substring ( g . length ) ) , h = x ( b , 1 ) , g = new RegExp ( A ( h , 2 ) ) ; O b( m , b , null ) ; b = m . toString ( ) ; h = A ( h , 3 ) ; if ( ! P ( g , a . toString ( ) ) && P ( g , b ) || 3 == K b( h , a . toString ( ) ) ) return c . append ( b ) , d && y ( e , 6 , 10 ) , e . da ( f ) , f } e . da ( 0 ) ; return 0 }
function O b( a , b , c ) { var d = a . toString ( ) , e = d . length , f = x ( b , 15 ) ; if ( 0 != e && null != f && 0 != f . length && ( f = new RegExp ( "^(?:" + f + ")" ) , e = f . exec ( d ) ) ) { var g = RegExp , h ; h = x ( b , 1 ) ; h = A ( h , 2 ) ; g = new g ( h ) ; h = P ( g , d ) ; var m = e . length - 1 ; b = x ( b , 16 ) ; if ( null == b || 0 == b . length || null == e [ m ] || 0 == e [ m ] . length ) { if ( ! h || P ( g , d . substring ( e [ 0 ] . length ) ) ) null != c && 0 < m && null != e [ m ] && c . append ( e [ 1 ] ) , a . set ( d . substring ( e [ 0 ] . length ) ) } else if ( d = d . replace ( f , b ) , ! h || P ( g , d ) ) null != c && 0 < m && c . append ( e [ 1 ] ) , a . set ( d ) } }
L . prototype . parse = function ( a , b ) { return P b( this , a , b , ! 1 ) } ;
function P b( a , b , c , d ) { if ( null == b ) throw "The string supplied did not seem to be a phone number" ; if ( 250 < b . length ) throw "The string supplied is too long to be a phone number" ; var e = new E , f = b . indexOf ( ";phone-context=" ) ; if ( 0 < f ) { var g = f + 15 ; if ( "+" == b . charAt ( g ) ) { var h = b . indexOf ( ";" , g ) ; 0 < h ? e . append ( b . substring ( g , h ) ) : e . append ( b . substring ( g ) ) } g = b . indexOf ( "tel:" ) ; e . append ( b . substring ( 0 <= g ? g + 4 : 0 , f ) ) } else e . append ( s b( b ) ) ; f = e . toString ( ) ; g = f . indexOf ( ";isub=" ) ; 0 < g && ( e . clear ( ) , e . append ( f . substring ( 0 , g ) ) ) ; if ( ! t b( e . toString ( ) ) ) throw "The string supplied did not seem to be a phone number" ;
f = e . toString ( ) ; if ( ! ( x b( c ) || null != f && 0 < f . length && O . test ( f ) ) ) throw "Invalid country calling code" ; f = new I ; d && y ( f , 5 , b ) ; a : { b = e . toString ( ) ; g = b . search ( l b) ; if ( 0 <= g && t b( b . substring ( 0 , g ) ) ) for ( var h = b . match ( l b) , m = h . length , v = 1 ; v < m ; ++ v ) if ( null != h [ v ] && 0 < h [ v ] . length ) { e . clear ( ) ; e . append ( b . substring ( 0 , g ) ) ; b = h [ v ] ; break a } b = "" } 0 < b . length && y ( f , 3 , b ) ; g = V ( a , c ) ; b = new E ; h = 0 ; m = e . toString ( ) ; try { h = N b( m , g , b , d , f ) } catch ( w ) { if ( "Invalid country calling code" == w && O . test ( m ) ) { if ( m = m . replace ( O , "" ) , h = N b( m , g , b , d , f ) , 0 == h ) throw w ; } else throw w ;
} 0 != h ? ( e = U ( h ) , e != c && ( g = T ( a , h , e ) ) ) : ( v b( e ) , b . append ( e . toString ( ) ) , null != c ? ( h = g . f ( ) , f . da ( h ) ) : d && Ta ( f , 6 ) ) ; if ( 2 > b . g . length ) throw "The string supplied is too short to be a phone number" ; null != g && ( a = new E , c = new E ( b . toString ( ) ) , O b( c , g , a ) , e = c . toString ( ) , g = x ( g , 1 ) , g = A ( g , 3 ) , 2 != K b( g , e ) && ( b = c , d && y ( f , 7 , a . toString ( ) ) ) ) ; d = b . toString ( ) ; a = d . length ; if ( 2 > a ) throw "The string supplied is too short to be a phone number" ; if ( 17 < a ) throw "The string supplied is too long to be a phone number" ; if ( 1 < d . length && "0" == d . charAt ( 0 ) ) { y ( f ,
4 , ! 0 ) ; for ( a = 1 ; a < d . length - 1 && "0" == d . charAt ( a ) ; ) a ++ ; 1 != a && y ( f , 8 , a ) } y ( f , 2 , parseInt ( d , 10 ) ) ; return f } function P ( a , b ) { var c = "string" == typeof a ? b . match ( "^(?:" + a + ")$" ) : b . match ( a ) ; return c && c [ 0 ] . length == b . length ? ! 0 : ! 1 } ; / *
Copyright ( C ) 2010 The Libphonenumber Authors .
@ -475,17 +475,17 @@ f=e.toString();if(!(nb(c)||null!=f&&0<f.length&&P.test(f)))throw"Invalid country
See the License for the specific language governing permissions and
limitations under the License .
* /
function H b( a ) { this . sa = "\u2008" ; this . j a= new RegExp ( this . sa ) ; this . k a= "" ; this . s = new G ; this . ea = "" ; this . m = new G ; this . v = new G ; this . o = ! 0 ; this . aa = this . u = this . n a= ! 1 ; this . ra = N . w a( ) ; this . ba = 0 ; this . c = new G ; this . i a= ! 1 ; this . q = "" ; this . b = new G ; this . g = [ ] ; this . l a= a ; this . C a= this . i = I b( this , this . l a) } var Jb = new J ; y ( J b, 11 , "NA" ) ;
var K b= /\[([^\[\]])*\]/g , L b= /\d(?=[^,}][^,}])/g , M b= RegExp ( "^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]*(\\$\\d[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]*)+$" ) , N b= /[- ]/ ; function I b( a , b ) { var c = n b( b ) ? tb ( a . r a, b ) : 0 , c = W ( a . ra , V ( c ) ) ; return null != c ? c : J b}
function O b( a ) { for ( var b = a . g . length , c = 0 ; c < b ; ++ c ) { var d = a . g [ c ] , e = B ( d , 1 ) ; if ( a . ea == e ) return ! 1 ; var f ; f = a ; var g = d , h = B ( g , 1 ) ; if ( - 1 != h . indexOf ( "|" ) ) f = ! 1 ; else { h = h . replace ( K b, "\\d" ) ; h = h . replace ( L b, "\\d" ) ; f . s . clear ( ) ; var m ; m = f ; var g = B ( g , 2 ) , u = "999999999999999" . match ( h ) [ 0 ] ; u . length < m . b . f . length ? m = "" : ( h = u . replace ( new RegExp ( h , "g" ) , g ) , m = h = h . replace ( RegExp ( "9" , "g" ) , m . sa ) ) ; 0 < m . length ? ( f . s . append ( m ) , f = ! 0 ) : f = ! 1 } if ( f ) return a . ea = e , a . ia = N b. test ( x ( d , 4 ) ) , a . ba = 0 , ! 0 } return a . o = ! 1 }
function P b( a , b ) { for ( var c = [ ] , d = b . length - 3 , e = a . g . length , f = 0 ; f < e ; ++ f ) { var g = a . g [ f ] ; if ( 0 == C ( g , 3 ) ) c . push ( a . g [ f ] ) ; else { var h = Math . min ( d , C ( g , 3 ) - 1 ) , g = x ( g , 3 , h ) ; 0 == b . search ( g ) && c . push ( a . g [ f ] ) } } a . g = c } H b. prototype . clear = function ( ) { this . k a= "" ; this . m . clear ( ) ; this . v . clear ( ) ; this . s . clear ( ) ; this . ba = 0 ; this . ea = "" ; this . c . clear ( ) ; this . q = "" ; this . b . clear ( ) ; this . o = ! 0 ; this . aa = this . u = this . n a= ! 1 ; this . g = [ ] ; this . i a= ! 1 ; this . i != this . C a&& ( this . i = I b( this , this . l a) ) } ; function Q b( a , b ) { a . ka = R b( a , b ) ; return a . k a}
function R b( a , b ) { a . m . append ( b ) ; var c = b ; if ( Ya . test ( c ) || 1 == a . m . f . length && Xa . test ( c ) ) { var c = b , d ; "+" == c ? ( d = c , a . v . append ( c ) ) : ( d = O [ c ] , a . v . append ( d ) , a . b . append ( d ) ) ; b = d } else a . o = ! 1 , a . n a= ! 0 ; if ( ! a . o ) { if ( ! a . na ) if ( Sb ( a ) ) { if ( T b( a ) ) return Ub ( a ) } else if ( 0 < a . q . length && ( c = a . b . toString ( ) , a . b . clear ( ) , a . b . append ( a . q ) , a . b . append ( c ) , c = a . c . toString ( ) , d = c . lastIndexOf ( a . q ) , a . c . clear ( ) , a . c . append ( c . substring ( 0 , d ) ) ) , a . q != Vb ( a ) ) return a . c . append ( " " ) , Ub ( a ) ; return a . m . toString ( ) } switch ( a . v . f . length ) { case 0 : case 1 : case 2 : return a . m . toString ( ) ;
case 3 : if ( Sb ( a ) ) a . aa = ! 0 ; else return a . q = Vb ( a ) , Wb ( a ) ; default : if ( a . aa ) return T b( a ) && ( a . aa = ! 1 ) , a . c . toString ( ) + a . b . toString ( ) ; if ( 0 < a . g . length ) { c = Xb ( a , b ) ; d = Yb ( a ) ; if ( 0 < d . length ) return d ; P b( a , a . b . toString ( ) ) ; return O b( a ) ? Zb ( a ) : a . o ? $b ( a , c ) : a . m . toString ( ) } return Wb ( a ) } } function Ub ( a ) { a . o = ! 0 ; a . aa = ! 1 ; a . g = [ ] ; return Wb ( a ) }
function Yb ( a ) { for ( var b = a . b . toString ( ) , c = a . g . length , d = 0 ; d < c ; ++ d ) { var e = a . g [ d ] , f = B ( e , 1 ) ; if ( ( new RegExp ( "^(?:" + f + ")$" ) ) . test ( b ) ) return a . ia = N b. test ( x ( e , 4 ) ) , b = b . replace ( new RegExp ( f , "g" ) , x ( e , 2 ) ) , $b ( a , b ) } return "" } function $b ( a , b ) { var c = a . c . f . length ; return a . i a&& 0 < c && " " != a . c . toString ( ) . charAt ( c - 1 ) ? a . c + " " + b : a . c + b }
function Wb ( a ) { var b = a . b . toString ( ) ; if ( 3 <= b . length ) { for ( var c = a . u && 0 < C ( a . i , 20 ) ? A ( a . i , 20 ) || [ ] : A ( a . i , 19 ) || [ ] , d = c . length , e = 0 ; e < d ; ++ e ) { var f = c [ e ] , g ; ( g = ! w ( a . i , 12 ) || a . u || x ( f , 6 ) ) || ( g = B ( f , 4 ) , g = 0 == g . length || i b. test ( g ) ) ; g && ( g = B ( f , 2 ) , M b. test ( g ) && a . g . push ( f ) ) } P b( a , b ) ; b = Yb ( a ) ; return 0 < b . length ? b : O b( a ) ? Zb ( a ) : a . m . toString ( ) } return $b ( a , b ) } function Zb ( a ) { var b = a . b . toString ( ) , c = b . length ; if ( 0 < c ) { for ( var d = "" , e = 0 ; e < c ; e ++ ) d = Xb ( a , b . charAt ( e ) ) ; return a . o ? $b ( a , d ) : a . m . toString ( ) } return a . c . toString ( ) }
function Vb ( a ) { var b = a . b . toString ( ) , c = 0 , d ; 1 != a . i . v a( ) ? d = ! 1 : ( d = a . b . toString ( ) , d = "1" == d . charAt ( 0 ) && "0" != d . charAt ( 1 ) && "1" != d . charAt ( 1 ) ) ; d ? ( c = 1 , a . c . append ( "1" ) . append ( " " ) , a . u = ! 0 ) : w ( a . i , 15 ) && ( d = new RegExp ( "^(?:" + x ( a . i , 15 ) + ")" ) , d = b . match ( d ) , null != d && null != d [ 0 ] && 0 < d [ 0 ] . length && ( a . u = ! 0 , c = d [ 0 ] . length , a . c . append ( b . substring ( 0 , c ) ) ) ) ; a . b . clear ( ) ; a . b . append ( b . substring ( c ) ) ; return b . substring ( 0 , c ) }
function Sb ( a ) { var b = a . v . toString ( ) , c = new RegExp ( "^(?:\\+|" + x ( a . i , 11 ) + ")" ) , c = b . match ( c ) ; return null != c && null != c [ 0 ] && 0 < c [ 0 ] . length ? ( a . u = ! 0 , c = c [ 0 ] . length , a . b . clear ( ) , a . b . append ( b . substring ( c ) ) , a . c . clear ( ) , a . c . append ( b . substring ( 0 , c ) ) , "+" != b . charAt ( 0 ) && a . c . append ( " " ) , ! 0 ) : ! 1 } function T b( a ) { if ( 0 == a . b . f . length ) return ! 1 ; var b = new G , c = D b( a . b , b ) ; if ( 0 == c ) return ! 1 ; a . b . clear ( ) ; a . b . append ( b . toString ( ) ) ; b = V ( c ) ; "001" == b ? a . i = W ( a . r a, "" + c ) : b != a . l a&& ( a . i = I b( a , b ) ) ; a . c . append ( "" + c ) . append ( " " ) ; a . q = "" ; return ! 0 }
function Xb ( a , b ) { var c = a . s . toString ( ) ; if ( 0 <= c . substring ( a . ba ) . search ( a . j a) ) { var d = c . search ( a . j a) , c = c . replace ( a . j a, b ) ; a . s . clear ( ) ; a . s . append ( c ) ; a . ba = d ; return c . substring ( 0 , a . ba + 1 ) } 1 == a . g . length && ( a . o = ! 1 ) ; a . ea = "" ; return a . m . toString ( ) } ; / *
function Q b( a ) { this . sa = "\u2008" ; this . h a= new RegExp ( this . sa ) ; this . i a= "" ; this . s = new E ; this . ea = "" ; this . n = new E ; this . v = new E ; this . o = ! 0 ; this . aa = this . u = this . m a= ! 1 ; this . qa = L . v a( ) ; this . ba = 0 ; this . d = new E ; this . g a= ! 1 ; this . q = "" ; this . b = new E ; this . h = [ ] ; this . j a= a ; this . B a= this . j = R b( this , this . j a) } var Sb = new H ; y ( S b, 11 , "NA" ) ;
var T b= /\[([^\[\]])*\]/g , U b= /\d(?=[^,}][^,}])/g , V b= RegExp ( "^[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]*(\\$\\d[-x\u2010-\u2015\u2212\u30fc\uff0d-\uff0f \u00a0\u00ad\u200b\u2060\u3000()\uff08\uff09\uff3b\uff3d.\\[\\]/~\u2053\u223c\uff5e]*)+$" ) , W b= /[- ]/ ; function R b( a , b ) { var c = x b( b ) ? Cb ( a . q a, b ) : 0 , c = V ( a . qa , U ( c ) ) ; return null != c ? c : S b}
function X b( a ) { for ( var b = a . h . length , c = 0 ; c < b ; ++ c ) { var d = a . h [ c ] , e = A ( d , 1 ) ; if ( a . ea == e ) return ! 1 ; var f ; f = a ; var g = d , h = A ( g , 1 ) ; if ( - 1 != h . indexOf ( "|" ) ) f = ! 1 ; else { h = h . replace ( T b, "\\d" ) ; h = h . replace ( U b, "\\d" ) ; f . s . clear ( ) ; var m ; m = f ; var g = A ( g , 2 ) , v = "999999999999999" . match ( h ) [ 0 ] ; v . length < m . b . g . length ? m = "" : ( h = v . replace ( new RegExp ( h , "g" ) , g ) , m = h = h . replace ( RegExp ( "9" , "g" ) , m . sa ) ) ; 0 < m . length ? ( f . s . append ( m ) , f = ! 0 ) : f = ! 1 } if ( f ) return a . ea = e , a . ga = W b. test ( x ( d , 4 ) ) , a . ba = 0 , ! 0 } return a . o = ! 1 }
function Y b( a , b ) { for ( var c = [ ] , d = b . length - 3 , e = a . h . length , f = 0 ; f < e ; ++ f ) { var g = a . h [ f ] ; if ( 0 == B ( g , 3 ) ) c . push ( a . h [ f ] ) ; else { var h = Math . min ( d , B ( g , 3 ) - 1 ) , g = x ( g , 3 , h ) ; 0 == b . search ( g ) && c . push ( a . h [ f ] ) } } a . h = c } Q b. prototype . clear = function ( ) { this . i a= "" ; this . n . clear ( ) ; this . v . clear ( ) ; this . s . clear ( ) ; this . ba = 0 ; this . ea = "" ; this . d . clear ( ) ; this . q = "" ; this . b . clear ( ) ; this . o = ! 0 ; this . aa = this . u = this . m a= ! 1 ; this . h = [ ] ; this . g a= ! 1 ; this . j != this . B a&& ( this . j = R b( this , this . j a) ) } ; function Z b( a , b ) { a . ia = $ b( a , b ) ; return a . i a}
function $ b( a , b ) { a . n . append ( b ) ; var c = b ; if ( gb . test ( c ) || 1 == a . n . g . length && fb . test ( c ) ) { var c = b , d ; "+" == c ? ( d = c , a . v . append ( c ) ) : ( d = M [ c ] , a . v . append ( d ) , a . b . append ( d ) ) ; b = d } else a . o = ! 1 , a . m a= ! 0 ; if ( ! a . o ) { if ( ! a . ma ) if ( ac ( a ) ) { if ( bc ( a ) ) return cc ( a ) } else if ( 0 < a . q . length && ( c = a . b . toString ( ) , a . b . clear ( ) , a . b . append ( a . q ) , a . b . append ( c ) , c = a . d . toString ( ) , d = c . lastIndexOf ( a . q ) , a . d . clear ( ) , a . d . append ( c . substring ( 0 , d ) ) ) , a . q != dc ( a ) ) return a . d . append ( " " ) , cc ( a ) ; return a . n . toString ( ) } switch ( a . v . g . length ) { case 0 : case 1 : case 2 : return a . n . toString ( ) ;
case 3 : if ( ac ( a ) ) a . aa = ! 0 ; else return a . q = dc ( a ) , ec ( a ) ; default : if ( a . aa ) return bc ( a ) && ( a . aa = ! 1 ) , a . d . toString ( ) + a . b . toString ( ) ; if ( 0 < a . h . length ) { c = fc ( a , b ) ; d = gc ( a ) ; if ( 0 < d . length ) return d ; Y b( a , a . b . toString ( ) ) ; return X b( a ) ? hc ( a ) : a . o ? ic ( a , c ) : a . n . toString ( ) } return ec ( a ) } } function cc ( a ) { a . o = ! 0 ; a . aa = ! 1 ; a . h = [ ] ; return ec ( a ) }
function gc ( a ) { for ( var b = a . b . toString ( ) , c = a . h . length , d = 0 ; d < c ; ++ d ) { var e = a . h [ d ] , f = A ( e , 1 ) ; if ( ( new RegExp ( "^(?:" + f + ")$" ) ) . test ( b ) ) return a . ga = W b. test ( x ( e , 4 ) ) , b = b . replace ( new RegExp ( f , "g" ) , x ( e , 2 ) ) , ic ( a , b ) } return "" } function ic ( a , b ) { var c = a . d . g . length ; return a . g a&& 0 < c && " " != a . d . toString ( ) . charAt ( c - 1 ) ? a . d + " " + b : a . d + b }
function ec ( a ) { var b = a . b . toString ( ) ; if ( 3 <= b . length ) { for ( var c = a . u && 0 < B ( a . j , 20 ) ? z ( a . j , 20 ) || [ ] : z ( a . j , 19 ) || [ ] , d = c . length , e = 0 ; e < d ; ++ e ) { var f = c [ e ] , g ; ( g = ! u ( a . j , 12 ) || a . u || x ( f , 6 ) ) || ( g = A ( f , 4 ) , g = 0 == g . length || r b. test ( g ) ) ; g && ( g = A ( f , 2 ) , V b. test ( g ) && a . h . push ( f ) ) } Y b( a , b ) ; b = gc ( a ) ; return 0 < b . length ? b : X b( a ) ? hc ( a ) : a . n . toString ( ) } return ic ( a , b ) } function hc ( a ) { var b = a . b . toString ( ) , c = b . length ; if ( 0 < c ) { for ( var d = "" , e = 0 ; e < c ; e ++ ) d = fc ( a , b . charAt ( e ) ) ; return a . o ? ic ( a , d ) : a . n . toString ( ) } return a . d . toString ( ) }
function dc ( a ) { var b = a . b . toString ( ) , c = 0 , d ; 1 != a . j . u a( ) ? d = ! 1 : ( d = a . b . toString ( ) , d = "1" == d . charAt ( 0 ) && "0" != d . charAt ( 1 ) && "1" != d . charAt ( 1 ) ) ; d ? ( c = 1 , a . d . append ( "1" ) . append ( " " ) , a . u = ! 0 ) : u ( a . j , 15 ) && ( d = new RegExp ( "^(?:" + x ( a . j , 15 ) + ")" ) , d = b . match ( d ) , null != d && null != d [ 0 ] && 0 < d [ 0 ] . length && ( a . u = ! 0 , c = d [ 0 ] . length , a . d . append ( b . substring ( 0 , c ) ) ) ) ; a . b . clear ( ) ; a . b . append ( b . substring ( c ) ) ; return b . substring ( 0 , c ) }
function ac ( a ) { var b = a . v . toString ( ) , c = new RegExp ( "^(?:\\+|" + x ( a . j , 11 ) + ")" ) , c = b . match ( c ) ; return null != c && null != c [ 0 ] && 0 < c [ 0 ] . length ? ( a . u = ! 0 , c = c [ 0 ] . length , a . b . clear ( ) , a . b . append ( b . substring ( c ) ) , a . d . clear ( ) , a . d . append ( b . substring ( 0 , c ) ) , "+" != b . charAt ( 0 ) && a . d . append ( " " ) , ! 0 ) : ! 1 } function bc ( a ) { if ( 0 == a . b . g . length ) return ! 1 ; var b = new E , c = M b( a . b , b ) ; if ( 0 == c ) return ! 1 ; a . b . clear ( ) ; a . b . append ( b . toString ( ) ) ; b = U ( c ) ; "001" == b ? a . j = V ( a . q a, "" + c ) : b != a . j a&& ( a . j = R b( a , b ) ) ; a . d . append ( "" + c ) . append ( " " ) ; a . q = "" ; return ! 0 }
function fc ( a , b ) { var c = a . s . toString ( ) ; if ( 0 <= c . substring ( a . ba ) . search ( a . h a) ) { var d = c . search ( a . h a) , c = c . replace ( a . h a, b ) ; a . s . clear ( ) ; a . s . append ( c ) ; a . ba = d ; return c . substring ( 0 , a . ba + 1 ) } 1 == a . h . length && ( a . o = ! 1 ) ; a . ea = "" ; return a . n . toString ( ) } ; / *
Copyright ( C ) 2010 The Libphonenumber Authors .
@ -501,8 +501,8 @@ function Xb(a,b){var c=a.s.toString();if(0<=c.substring(a.ba).search(a.ja)){var
See the License for the specific language governing permissions and
limitations under the License .
* /
function a c( ) { var a = s ( "phoneNumber" ) . value , b = s ( "defaultCountry" ) . value , c = s ( "carrierCode" ) . value , d = new G ; try { var e = N . w a( ) , f ; if ( ! n b( b ) && 0 < a . length && "+" != a . charAt ( 0 ) ) throw "Invalid country calling code" ; f = G b( e , a , b , ! 0 ) ; d . append ( "****Parsing Result:****\n" ) ; d . append ( w a( ( new F ( 1 ) ) . ca ( f ) ) ) ; d . append ( "\n\n****Validation Results:****" ) ; var g = 0 == C b( e , f ) ; d . append ( "\nResult from isPossibleNumber(): " ) ; d . append ( g ) ; if ( g ) { var h = w b( e , f ) ; d . append ( "\nResult from isValidNumber(): " ) ; d . append ( h ) ; h && b && "ZZ" != b && ( d . append ( "\nResult from isValidNumberForRegion(): " ) ,
d . append ( A b( e , f , b ) ) ) ; d . append ( "\nPhone Number region: " ) ; d . append ( z b( e , f ) ) ; d . append ( "\nResult from getNumberType(): " ) ; var m ; var u = z b( e , f ) , v = U ( e , f . e ( ) , u ) ; if ( null == v ) m = - 1 ; else { var K = S ( f ) ; m = yb ( K , v ) } switch ( m ) { case 0 : d . append ( "FIXED_LINE" ) ; break ; case 1 : d . append ( "MOBILE" ) ; break ; case 2 : d . append ( "FIXED_LINE_OR_MOBILE" ) ; break ; case 3 : d . append ( "TOLL_FREE" ) ; break ; case 4 : d . append ( "PREMIUM_RATE" ) ; break ; case 5 : d . append ( "SHARED_COST" ) ; break ; case 6 : d . append ( "VOIP" ) ; break ; case 7 : d . append ( "PERSONAL_NUMBER" ) ; break ;
case 8 : d . append ( "PAGER" ) ; break ; case 9 : d . append ( "UAN" ) ; break ; case - 1 : d . append ( "UNKNOWN" ) } } else { d . append ( "\nResult from isPossibleNumberWithReason(): " ) ; switch ( C b( e , f ) ) { case 1 : d . append ( "INVALID_COUNTRY_CODE" ) ; break ; case 2 : d . append ( "TOO_SHORT" ) ; break ; case 3 : d . append ( "TOO_LONG" ) } d . append ( "\nNote: numbers that are not possible have type UNKNOWN, an unknown region, and are considered invalid." ) } d . append ( "\n\n****Formatting Results:**** " ) ; d . append ( "\nE164 format: " ) ; d . append ( h ? e . format ( f , 0 ) : "invalid" ) ;
d . append ( "\nOriginal format: " ) ; d . append ( u b( e , f , b ) ) ; d . append ( "\nNational format: " ) ; d . append ( e . format ( f , 2 ) ) ; d . append ( "\nInternational format: " ) ; d . append ( h ? e . format ( f , 1 ) : "invalid" ) ; d . append ( "\nOut-of-country format from US: " ) ; d . append ( h ? s b( e , f , "US" ) : "invalid" ) ; d . append ( "\nOut-of-country format from Switzerland: " ) ; d . append ( h ? s b( e , f , "CH" ) : "invalid" ) ; 0 < c . length && ( d . append ( "\nNational format with carrier code: " ) , d . append ( r b( e , f , c ) ) ) ; d . append ( "\n\n****AsYouTypeFormatter Results****" ) ; for ( var cc = new H b( b ) ,
d c= a . length , b = 0 ; b < d c; ++ b ) { var q b= a . charAt ( b ) ; d . append ( "\nChar entered: " ) ; d . append ( q b) ; d . append ( " Output: " ) ; d . append ( Qb ( cc , q b) ) } } catch ( e c) { d . append ( "\n" + ec ) } s ( "output" ) . value = d . toString ( ) ; return ! 1 } var Y = [ "phoneNumberParser" ] , Z = l ; Y [ 0 ] in Z || ! Z . execScript || Z . execScript ( "var " + Y [ 0 ] ) ; for ( var $ ; Y . length && ( $ = Y . shift ( ) ) ; ) { var bc ; if ( bc = ! Y . length ) b c= void 0 !== ac ; bc ? Z [ $ ] = ac : Z = Z [ $ ] ? Z [ $ ] : Z [ $ ] = { } } ; } ) ( ) ;
function j c( ) { var a = za ( "phoneNumber" ) . value , b = za ( "defaultCountry" ) . value , c = za ( "carrierCode" ) . value , d = new E ; try { var e = L . v a( ) , f ; if ( ! x b( b ) && 0 < a . length && "+" != a . charAt ( 0 ) ) throw "Invalid country calling code" ; f = P b( e , a , b , ! 0 ) ; d . append ( "****Parsing Result:****\n" ) ; d . append ( A a( ( new D ( 1 ) ) . ca ( f ) ) ) ; d . append ( "\n\n****Validation Results:****" ) ; var g = 0 == L b( e , f ) ; d . append ( "\nResult from isPossibleNumber(): " ) ; d . append ( g ) ; if ( g ) { var h = F b( e , f ) ; d . append ( "\nResult from isValidNumber(): " ) ; d . append ( h ) ; h && b && "ZZ" != b && ( d . append ( "\nResult from isValidNumberForRegion(): " ) ,
d . append ( J b( e , f , b ) ) ) ; d . append ( "\nPhone Number region: " ) ; d . append ( I b( e , f ) ) ; d . append ( "\nResult from getNumberType(): " ) ; var m ; var v = I b( e , f ) , w = T ( e , f . f ( ) , v ) ; if ( null == w ) m = - 1 ; else { var N = R ( f ) ; m = Hb ( N , w ) } switch ( m ) { case 0 : d . append ( "FIXED_LINE" ) ; break ; case 1 : d . append ( "MOBILE" ) ; break ; case 2 : d . append ( "FIXED_LINE_OR_MOBILE" ) ; break ; case 3 : d . append ( "TOLL_FREE" ) ; break ; case 4 : d . append ( "PREMIUM_RATE" ) ; break ; case 5 : d . append ( "SHARED_COST" ) ; break ; case 6 : d . append ( "VOIP" ) ; break ; case 7 : d . append ( "PERSONAL_NUMBER" ) ; break ;
case 8 : d . append ( "PAGER" ) ; break ; case 9 : d . append ( "UAN" ) ; break ; case - 1 : d . append ( "UNKNOWN" ) } } else { d . append ( "\nResult from isPossibleNumberWithReason(): " ) ; switch ( L b( e , f ) ) { case 1 : d . append ( "INVALID_COUNTRY_CODE" ) ; break ; case 2 : d . append ( "TOO_SHORT" ) ; break ; case 3 : d . append ( "TOO_LONG" ) } d . append ( "\nNote: numbers that are not possible have type UNKNOWN, an unknown region, and are considered invalid." ) } d . append ( "\n\n****Formatting Results:**** " ) ; d . append ( "\nE164 format: " ) ; d . append ( h ? e . format ( f , 0 ) : "invalid" ) ;
d . append ( "\nOriginal format: " ) ; d . append ( D b( e , f , b ) ) ; d . append ( "\nNational format: " ) ; d . append ( e . format ( f , 2 ) ) ; d . append ( "\nInternational format: " ) ; d . append ( h ? e . format ( f , 1 ) : "invalid" ) ; d . append ( "\nOut-of-country format from US: " ) ; d . append ( h ? B b( e , f , "US" ) : "invalid" ) ; d . append ( "\nOut-of-country format from Switzerland: " ) ; d . append ( h ? B b( e , f , "CH" ) : "invalid" ) ; 0 < c . length && ( d . append ( "\nNational format with carrier code: " ) , d . append ( A b( e , f , c ) ) ) ; d . append ( "\n\n****AsYouTypeFormatter Results****" ) ; for ( var lc = new Q b( b ) ,
m c= a . length , b = 0 ; b < m c; ++ b ) { var w b= a . charAt ( b ) ; d . append ( "\nChar entered: " ) ; d . append ( w b) ; d . append ( " Output: " ) ; d . append ( Zb ( lc , w b) ) } } catch ( n c) { d . append ( "\n" + nc ) } za ( "output" ) . value = d . toString ( ) ; return ! 1 } var X = [ "phoneNumberParser" ] , Y = k ; X [ 0 ] in Y || ! Y . execScript || Y . execScript ( "var " + X [ 0 ] ) ; for ( var Z ; X . length && ( Z = X . shift ( ) ) ; ) { var kc ; if ( kc = ! X . length ) k c= void 0 !== jc ; kc ? Y [ Z ] = jc : Y = Y [ Z ] ? Y [ Z ] : Y [ Z ] = { } } ; } ) ( ) ;