2016-12-31 08:20:45 +00:00
/* xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */
2018-01-09 07:36:02 +00:00
var DO _NOT _EXPORT _CODEPAGE = true ; var DO _NOT _EXPORT _JSZIP = true ; ( function ( e ) { if ( "object" == typeof exports && "undefined" != typeof module && "undefined" == typeof DO _NOT _EXPORT _JSZIP ) module . exports = e ( ) ; else if ( "function" == typeof define && define . amd ) { JSZip = e ( ) ; define ( [ ] , e ) } else { var r ; "undefined" != typeof window ? r = window : "undefined" != typeof global ? r = global : "undefined" != typeof $ && $ . global ? r = $ . global : "undefined" != typeof self && ( r = self ) , r . JSZip = e ( ) } } ) ( function ( ) { var e , r , t ; return function a ( e , r , t ) { function n ( s , o ) { if ( ! r [ s ] ) { if ( ! e [ s ] ) { var f = typeof require == "function" && require ; if ( ! o && f ) return f ( s , ! 0 ) ; if ( i ) return i ( s , ! 0 ) ; throw new Error ( "Cannot find module '" + s + "'" ) } var l = r [ s ] = { exports : { } } ; e [ s ] [ 0 ] . call ( l . exports , function ( r ) { var t = e [ s ] [ 1 ] [ r ] ; return n ( t ? t : r ) } , l , l . exports , a , e , r , t ) } return r [ s ] . exports } var i = typeof require == "function" && require ; for ( var s = 0 ; s < t . length ; s ++ ) n ( t [ s ] ) ; return n } ( { 1 : [ function ( e , r , t ) { "use strict" ; var a = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" ; t . encode = function ( e , r ) { var t = "" ; var n , i , s , o , f , l , c ; var u = 0 ; while ( u < e . length ) { n = e . charCodeAt ( u ++ ) ; i = e . charCodeAt ( u ++ ) ; s = e . charCodeAt ( u ++ ) ; o = n >> 2 ; f = ( n & 3 ) << 4 | i >> 4 ; l = ( i & 15 ) << 2 | s >> 6 ; c = s & 63 ; if ( isNaN ( i ) ) { l = c = 64 } else if ( isNaN ( s ) ) { c = 64 } t = t + a . charAt ( o ) + a . charAt ( f ) + a . charAt ( l ) + a . charAt ( c ) } return t } ; t . decode = function ( e , r ) { var t = "" ; var n , i , s ; var o , f , l , c ; var u = 0 ; e = e . replace ( /[^A-Za-z0-9\+\/\=]/g , "" ) ; while ( u < e . length ) { o = a . indexOf ( e . charAt ( u ++ ) ) ; f = a . indexOf ( e . charAt ( u ++ ) ) ; l = a . indexOf ( e . charAt ( u ++ ) ) ; c = a . indexOf ( e . charAt ( u ++ ) ) ; n = o << 2 | f >> 4 ; i = ( f & 15 ) << 4 | l >> 2 ; s = ( l & 3 ) << 6 | c ; t = t + String . fromCharCode ( n ) ; if ( l != 64 ) { t = t + String . fromCharCode ( i ) } if ( c != 64 ) { t = t + String . fromCharCode ( s ) } } return t } } , { } ] , 2 : [ function ( e , r , t ) { "use strict" ; function a ( ) { this . compressedSize = 0 ; this . uncompressedSize = 0 ; this . crc32 = 0 ; this . compressionMethod = null ; this . compressedContent = null } a . prototype = { getContent : function ( ) { return null } , getCompressedContent : function ( ) { return null } } ; r . exports = a } , { } ] , 3 : [ function ( e , r , t ) { "use strict" ; t . STORE = { magic : "\0\0" , compress : function ( e ) { return e } , uncompress : function ( e ) { return e } , compressInputType : null , uncompressInputType : null } ; t . DEFLATE = e ( "./flate" ) } , { "./flate" : 8 } ] , 4 : [ function ( e , r , t ) { "use strict" ; var a = e ( "./utils" ) ; var n = [ 0 , 1996959894 , 3993919788 , 2567524794 , 124634137 , 1886057615 , 3915621685 , 2657392035 , 249268274 , 2044508324 , 3772115230 , 2547177864 , 162941995 , 2125561021 , 3887607047 , 2428444049 , 498536548 , 1789927666 , 4089016648 , 2227061214 , 450548861 , 1843258603 , 4107580753 , 2211677639 , 325883990 , 1684777152 , 4251122042 , 2321926636 , 335633487 , 1661365465 , 4195302755 , 2366115317 , 997073096 , 1281953886 , 3579855332 , 2724688242 , 1006888145 , 1258607687 , 3524101629 , 2768942443 , 901097722 , 1119000684 , 3686517206 , 2898065728 , 853044451 , 1172266101 , 3705015759 , 2882616665 , 651767980 , 1373503546 , 3369554304 , 3218104598 , 565507253 , 1454621731 , 3485111705 , 3099436303 , 671266974 , 1594198024 , 3322730930 , 2970347812 , 795835527 , 1483230225 , 3244367275 , 3060149565 , 1994146192 , 31158534 , 2563907772 , 4023717930 , 1907459465 , 112637215 , 2680153253 , 3904427059 , 2013776290 , 251722036 , 2517215374 , 3775830040 , 2137656763 , 141376813 , 2439277719 , 3865271297 , 1802195444 , 476864866 , 2238001368 , 4066508878 , 1812370925 , 453092731 , 2181625025 , 4111451223 , 1706088902 , 314042704 , 2344532202 , 4240017532 , 1658658271 , 366619977 , 2362670323 , 4224994405 , 1303535960 , 984961486 , 2747007092 , 3569037538 , 1256170817 , 1037604311 , 2765210733 , 3554079995 , 1131014506 , 879679996 , 2909243462 , 3663771856 , 1141124467 , 855842277 , 2852801631 , 3708648649 , 1342533948 , 654459306 , 3188396048 , 3373015174 , 1466479909 , 544179635 , 3110523913 , 3462522015 , 1591671054 , 702138776 , 2966460450 , 3352799412 , 1504918807 , 783551873 , 3082640443 , 3233442989 , 3988292384 , 2596254646 , 62317068 , 1957810842 , 3939845945 , 2647816111 , 81470997 , 1943803523 , 3814918930 , 2489596804 , 225274430 , 2053790376 , 3826175755 , 2466906013 , 167816743 , 2097651377 , 4027552580 , 2265490386 , 503444072 , 1762050814 , 4150417245 , 2154129355 , 426522225 , 1852507879 , 4275313526 , 2312317920 , 282753626 , 1742555852 , 4189708143 , 2394877945 , 397917763 , 1622183637 , 3604390888 , 2714866558 , 953729732 , 1340076626 , 3518719985 , 2797360999 , 1068828381 , 1219638859 , 3624741850 , 2936675148 , 906185462 , 1090812512 , 3747672003 , 2825379669 , 829329135 , 1181335161 , 3412177804 , 3160834842 , 628
} return null } } ; r . exports = o } , { "./compressedObject" : 2 , "./object" : 13 , "./stringReader" : 15 , "./utils" : 21 } ] , 24 : [ function ( e , r , t ) { "use strict" ; var a = e ( "./lib/utils/common" ) . assign ; var n = e ( "./lib/deflate" ) ; var i = e ( "./lib/inflate" ) ; var s = e ( "./lib/zlib/constants" ) ; var o = { } ; a ( o , n , i , s ) ; r . exports = o } , { "./lib/deflate" : 25 , "./lib/inflate" : 26 , "./lib/utils/common" : 27 , "./lib/zlib/constants" : 30 } ] , 25 : [ function ( e , r , t ) { "use strict" ; var a = e ( "./zlib/deflate.js" ) ; var n = e ( "./utils/common" ) ; var i = e ( "./utils/strings" ) ; var s = e ( "./zlib/messages" ) ; var o = e ( "./zlib/zstream" ) ; var f = 0 ; var l = 4 ; var c = 0 ; var u = 1 ; var h = - 1 ; var d = 0 ; var v = 8 ; var p = function ( e ) { this . options = n . assign ( { level : h , method : v , chunkSize : 16384 , windowBits : 15 , memLevel : 8 , strategy : d , to : "" } , e || { } ) ; var r = this . options ; if ( r . raw && r . windowBits > 0 ) { r . windowBits = - r . windowBits } else if ( r . gzip && r . windowBits > 0 && r . windowBits < 16 ) { r . windowBits += 16 } this . err = 0 ; this . msg = "" ; this . ended = false ; this . chunks = [ ] ; this . strm = new o ; this . strm . avail _out = 0 ; var t = a . deflateInit2 ( this . strm , r . level , r . method , r . windowBits , r . memLevel , r . strategy ) ; if ( t !== c ) { throw new Error ( s [ t ] ) } if ( r . header ) { a . deflateSetHeader ( this . strm , r . header ) } } ; p . prototype . push = function ( e , r ) { var t = this . strm ; var s = this . options . chunkSize ; var o , h ; if ( this . ended ) { return false } h = r === ~ ~ r ? r : r === true ? l : f ; if ( typeof e === "string" ) { t . input = i . string2buf ( e ) } else { t . input = e } t . next _in = 0 ; t . avail _in = t . input . length ; do { if ( t . avail _out === 0 ) { t . output = new n . Buf8 ( s ) ; t . next _out = 0 ; t . avail _out = s } o = a . deflate ( t , h ) ; if ( o !== u && o !== c ) { this . onEnd ( o ) ; this . ended = true ; return false } if ( t . avail _out === 0 || t . avail _in === 0 && h === l ) { if ( this . options . to === "string" ) { this . onData ( i . buf2binstring ( n . shrinkBuf ( t . output , t . next _out ) ) ) } else { this . onData ( n . shrinkBuf ( t . output , t . next _out ) ) } } } while ( ( t . avail _in > 0 || t . avail _out === 0 ) && o !== u ) ; if ( h === l ) { o = a . deflateEnd ( this . strm ) ; this . onEnd ( o ) ; this . ended = true ; return o === c } return true } ; p . prototype . onData = function ( e ) { this . chunks . push ( e ) } ; p . prototype . onEnd = function ( e ) { if ( e === c ) { if ( this . options . to === "string" ) { this . result = this . chunks . join ( "" ) } else { this . result = n . flattenChunks ( this . chunks ) } } this . chunks = [ ] ; this . err = e ; this . msg = this . strm . msg } ; function b ( e , r ) { var t = new p ( r ) ; t . push ( e , true ) ; if ( t . err ) { throw t . msg } return t . result } function m ( e , r ) { r = r || { } ; r . raw = true ; return b ( e , r ) } function g ( e , r ) { r = r || { } ; r . gzip = true ; return b ( e , r ) } t . Deflate = p ; t . deflate = b ; t . deflateRaw = m ; t . gzip = g } , { "./utils/common" : 27 , "./utils/strings" : 28 , "./zlib/deflate.js" : 32 , "./zlib/messages" : 37 , "./zlib/zstream" : 39 } ] , 26 : [ function ( e , r , t ) { "use strict" ; var a = e ( "./zlib/inflate.js" ) ; var n = e ( "./utils/common" ) ; var i = e ( "./utils/strings" ) ; var s = e ( "./zlib/constants" ) ; var o = e ( "./zlib/messages" ) ; var f = e ( "./zlib/zstream" ) ; var l = e ( "./zlib/gzheader" ) ; var c = function ( e ) { this . options = n . assign ( { chunkSize : 16384 , windowBits : 0 , to : "" } , e || { } ) ; var r = this . options ; if ( r . raw && r . windowBits >= 0 && r . windowBits < 16 ) { r . windowBits = - r . windowBits ; if ( r . windowBits === 0 ) { r . windowBits = - 15 } } if ( r . windowBits >= 0 && r . windowBits < 16 && ! ( e && e . windowBits ) ) { r . windowBits += 32 } if ( r . windowBits > 15 && r . windowBits < 48 ) { if ( ( r . windowBits & 15 ) === 0 ) { r . windowBits |= 15 } } this . err = 0 ; this . msg = "" ; this . ended = false ; this . chunks = [ ] ; this . strm = new f ; this . strm . avail _out = 0 ; var t = a . inflateInit2 ( this . strm , r . windowBits ) ; if ( t !== s . Z _OK ) { throw new Error ( o [ t ] ) } this . header = new l ; a . inflateGetHeader ( this . strm , this . header ) } ; c . prototype . push = function ( e , r ) { var t = this . strm ; var o = this . options . chunkSize ; var f , l ; var c , u , h ; if ( this . ended ) { return false } l = r === ~ ~ r ? r : r === true ? s . Z _FINISH : s . Z _NO _FLUSH ; if ( typeof e === "string" ) { t . input = i . binstring2buf ( e ) } else { t . input = e } t . next _in = 0 ; t . avail _in = t . input . length ; do { if ( t . avail _out === 0 ) { t . output = new n . Buf8 ( o ) ; t . next _out = 0 ; t . avail _out = o } f = a . inflate ( t , s . Z _NO _FLUSH ) ; if ( f !== s . Z _STREAM _END && f !== s . Z _OK ) { this . onEnd ( f ) ; this . ended = true ; return false } if ( t . next _out ) { if ( t . avail _out === 0 || f === s . Z _STREAM _END || t . avail _in === 0 && l === s . Z _FINISH ) { if ( this . options . to === "string" ) { c = i . utf8border ( t . output , t . next _out ) ; u = t . next _out - c ; h = i . buf2string ( t . output , c ) ; t . next _out = u ; t . avail _out = o - u ; if ( u ) { n . arraySet ( t . output , t . output , c , u , 0 ) } this . onData ( h ) } else { this . onData ( n . shrinkBuf ( t . output , t . next _out ) ) } } } } while ( t . avail _in > 0 && f !== s . Z _STREAM _END ) ; if ( f ==
oe >>>= fe & 7 ; fe -= fe & 7 ; while ( fe < 32 ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } if ( ( oe & 65535 ) !== ( oe >>> 16 ^ 65535 ) ) { e . msg = "invalid stored block lengths" ; t . mode = Q ; break } t . length = oe & 65535 ; oe = 0 ; fe = 0 ; t . mode = N ; if ( r === d ) { break e } ; case N : t . mode = L ; case L : ue = t . length ; if ( ue ) { if ( ue > ie ) { ue = ie } if ( ue > se ) { ue = se } if ( ue === 0 ) { break e } a . arraySet ( re , ee , te , ue , ae ) ; ie -= ue ; te += ue ; se -= ue ; ae += ue ; t . length -= ue ; break } t . mode = O ; break ; case M : while ( fe < 14 ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } t . nlen = ( oe & 31 ) + 257 ; oe >>>= 5 ; fe -= 5 ; t . ndist = ( oe & 31 ) + 1 ; oe >>>= 5 ; fe -= 5 ; t . ncode = ( oe & 15 ) + 4 ; oe >>>= 4 ; fe -= 4 ; if ( t . nlen > 286 || t . ndist > 30 ) { e . msg = "too many length or distance symbols" ; t . mode = Q ; break } t . have = 0 ; t . mode = U ; case U : while ( t . have < t . ncode ) { while ( fe < 3 ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } t . lens [ Ie [ t . have ++ ] ] = oe & 7 ; oe >>>= 3 ; fe -= 3 } while ( t . have < 19 ) { t . lens [ Ie [ t . have ++ ] ] = 0 } t . lencode = t . lendyn ; t . lenbits = 7 ; Te = { bits : t . lenbits } ; Ce = o ( f , t . lens , 0 , 19 , t . lencode , 0 , t . work , Te ) ; t . lenbits = Te . bits ; if ( Ce ) { e . msg = "invalid code lengths set" ; t . mode = Q ; break } t . have = 0 ; t . mode = H ; case H : while ( t . have < t . nlen + t . ndist ) { for ( ; ; ) { be = t . lencode [ oe & ( 1 << t . lenbits ) - 1 ] ; me = be >>> 24 ; ge = be >>> 16 & 255 ; Ee = be & 65535 ; if ( me <= fe ) { break } if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } if ( Ee < 16 ) { oe >>>= me ; fe -= me ; t . lens [ t . have ++ ] = Ee } else { if ( Ee === 16 ) { xe = me + 2 ; while ( fe < xe ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } oe >>>= me ; fe -= me ; if ( t . have === 0 ) { e . msg = "invalid bit length repeat" ; t . mode = Q ; break } _e = t . lens [ t . have - 1 ] ; ue = 3 + ( oe & 3 ) ; oe >>>= 2 ; fe -= 2 } else if ( Ee === 17 ) { xe = me + 3 ; while ( fe < xe ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } oe >>>= me ; fe -= me ; _e = 0 ; ue = 3 + ( oe & 7 ) ; oe >>>= 3 ; fe -= 3 } else { xe = me + 7 ; while ( fe < xe ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } oe >>>= me ; fe -= me ; _e = 0 ; ue = 11 + ( oe & 127 ) ; oe >>>= 7 ; fe -= 7 } if ( t . have + ue > t . nlen + t . ndist ) { e . msg = "invalid bit length repeat" ; t . mode = Q ; break } while ( ue -- ) { t . lens [ t . have ++ ] = _e } } } if ( t . mode === Q ) { break } if ( t . lens [ 256 ] === 0 ) { e . msg = "invalid code -- missing end-of-block" ; t . mode = Q ; break } t . lenbits = 9 ; Te = { bits : t . lenbits } ; Ce = o ( l , t . lens , 0 , t . nlen , t . lencode , 0 , t . work , Te ) ; t . lenbits = Te . bits ; if ( Ce ) { e . msg = "invalid literal/lengths set" ; t . mode = Q ; break } t . distbits = 6 ; t . distcode = t . distdyn ; Te = { bits : t . distbits } ; Ce = o ( c , t . lens , t . nlen , t . ndist , t . distcode , 0 , t . work , Te ) ; t . distbits = Te . bits ; if ( Ce ) { e . msg = "invalid distances set" ; t . mode = Q ; break } t . mode = W ; if ( r === d ) { break e } ; case W : t . mode = V ; case V : if ( ie >= 6 && se >= 258 ) { e . next _out = ae ; e . avail _out = se ; e . next _in = te ; e . avail _in = ie ; t . hold = oe ; t . bits = fe ; s ( e , ce ) ; ae = e . next _out ; re = e . output ; se = e . avail _out ; te = e . next _in ; ee = e . input ; ie = e . avail _in ; oe = t . hold ; fe = t . bits ; if ( t . mode === O ) { t . back = - 1 } break } t . back = 0 ; for ( ; ; ) { be = t . lencode [ oe & ( 1 << t . lenbits ) - 1 ] ; me = be >>> 24 ; ge = be >>> 16 & 255 ; Ee = be & 65535 ; if ( me <= fe ) { break } if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } if ( ge && ( ge & 240 ) === 0 ) { ke = me ; we = ge ; Se = Ee ; for ( ; ; ) { be = t . lencode [ Se + ( ( oe & ( 1 << ke + we ) - 1 ) >> ke ) ] ; me = be >>> 24 ; ge = be >>> 16 & 255 ; Ee = be & 65535 ; if ( ke + me <= fe ) { break } if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } oe >>>= ke ; fe -= ke ; t . back += ke } oe >>>= me ; fe -= me ; t . back += me ; t . length = Ee ; if ( ge === 0 ) { t . mode = K ; break } if ( ge & 32 ) { t . back = - 1 ; t . mode = O ; break } if ( ge & 64 ) { e . msg = "invalid literal/length code" ; t . mode = Q ; break } t . extra = ge & 15 ; t . mode = z ; case z : if ( t . extra ) { xe = t . extra ; while ( fe < xe ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } t . length += oe & ( 1 << t . extra ) - 1 ; oe >>>= t . extra ; fe -= t . extra ; t . back += t . extra } t . was = t . length ; t . mode = X ; case X : for ( ; ; ) { be = t . distcode [ oe & ( 1 << t . distbits ) - 1 ] ; me = be >>> 24 ; ge = be >>> 16 & 255 ; Ee = be & 65535 ; if ( me <= fe ) { break } if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } if ( ( ge & 240 ) === 0 ) { ke = me ; we = ge ; Se = Ee ; for ( ; ; ) { be = t . distcode [ Se + ( ( oe & ( 1 << ke + we ) - 1 ) >> ke ) ] ; me = be >>> 24 ; ge = be >>> 16 & 255 ; Ee = be & 65535 ; if ( ke + me <= fe ) { break } if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } oe >>>= ke ; fe -= ke ; t . back += ke } oe >>>= me ; fe -= me ; t . back += me ; if ( ge & 64 ) { e . msg = "invalid distance code" ; t . mode = Q ; break } t . offset = Ee ; t . extra = ge & 15 ; t . mode = G ; case G : if ( t . extra ) { xe = t . extra ; while ( fe < xe ) { if ( ie === 0 ) { break e } ie -- ; oe += ee [ te ++ ] << fe ; fe += 8 } t . offset += oe & ( 1 << t . extra ) - 1 ; oe >>>= t . extra ; fe -= t . extra ; t . back += t . extra } if ( t . offset > t . dmax ) { e . msg = "invalid distance too far back" ; t . mode = Q ; break } t . mode = j ; case j : if ( se === 0 ) { break e } ue = ce - se ; if ( t . offset > ue ) { ue = t . offset - ue ; if ( ue > t . whave )
return "(" + l . substr ( 0 , 3 ) + ") " + l . substr ( 3 , 3 ) + "-" + l . substr ( 6 ) } var S = "" ; if ( u = s . match ( /^([#0?]+)( ?)\/( ?)([#0?]+)/ ) ) { g = Math . min ( u [ 4 ] . length , 7 ) ; E = p ( k , Math . pow ( 10 , g ) - 1 , false ) ; l = "" + w ; S = x ( "n" , u [ 1 ] , E [ 1 ] ) ; if ( S . charAt ( S . length - 1 ) == " " ) S = S . substr ( 0 , S . length - 1 ) + "0" ; l += S + u [ 2 ] + "/" + u [ 3 ] ; S = i ( E [ 2 ] , g ) ; if ( S . length < u [ 4 ] . length ) S = m ( u [ 4 ] . substr ( u [ 4 ] . length - S . length ) ) + S ; l += S ; return l } if ( u = s . match ( /^# ([#0?]+)( ?)\/( ?)([#0?]+)/ ) ) { g = Math . min ( Math . max ( u [ 1 ] . length , u [ 4 ] . length ) , 7 ) ; E = p ( k , Math . pow ( 10 , g ) - 1 , true ) ; return w + ( E [ 0 ] || ( E [ 1 ] ? "" : "0" ) ) + " " + ( E [ 1 ] ? n ( E [ 1 ] , g ) + u [ 2 ] + "/" + u [ 3 ] + i ( E [ 2 ] , g ) : t ( " " , 2 * g + 1 + u [ 2 ] . length + u [ 3 ] . length ) ) } if ( u = s . match ( /^[#0?]+$/ ) ) { l = "" + o ; if ( s . length <= l . length ) return l ; return m ( s . substr ( 0 , s . length - l . length ) ) + l } if ( u = s . match ( /^([#0]+)\.([#0]+)$/ ) ) { l = "" + o . toFixed ( Math . min ( u [ 2 ] . length , 10 ) ) . replace ( /([^0])0+$/ , "$1" ) ; g = l . indexOf ( "." ) ; var A = s . indexOf ( "." ) - g , y = s . length - l . length - A ; return m ( s . substr ( 0 , A ) + l + s . substr ( s . length - y ) ) } if ( u = s . match ( /^00,000\.([#0]*0)$/ ) ) { return o < 0 ? "-" + I ( e , s , - o ) : T ( "" + o ) . replace ( /^\d,\d{3}$/ , "0$&" ) . replace ( /^\d*$/ , function ( e ) { return "00," + ( e . length < 3 ? a ( 0 , 3 - e . length ) : "" ) + e } ) + "." + a ( 0 , u [ 1 ] . length ) } switch ( s ) { case "###,###" : ; case "##,###" : ; case "#,###" : var R = T ( "" + k ) ; return R !== "0" ? w + R : "" ; default : if ( s . match ( /\.[0#?]*$/ ) ) return I ( e , s . slice ( 0 , s . lastIndexOf ( "." ) ) , o ) + m ( s . slice ( s . lastIndexOf ( "." ) ) ) ; } throw new Error ( "unsupported format |" + s + "|" ) } return function A ( e , r , t ) { return ( t | 0 ) === t ? I ( e , r , t ) : S ( e , r , t ) } } ( ) ; function I ( e ) { var r = [ ] ; var t = false ; for ( var a = 0 , n = 0 ; a < e . length ; ++ a ) switch ( e . charCodeAt ( a ) ) { case 34 : t = ! t ; break ; case 95 : ; case 42 : ; case 92 : ++ a ; break ; case 59 : r [ r . length ] = e . substr ( n , a - n ) ; n = a + 1 ; } r [ r . length ] = e . substr ( n ) ; if ( t === true ) throw new Error ( "Format |" + e + "| unterminated string " ) ; return r } e . _split = I ; var A = /\[[HhMmSs]*\]/ ; function y ( e ) { var r = 0 , t = "" , a = "" ; while ( r < e . length ) { switch ( t = e . charAt ( r ) ) { case "G" : if ( c ( e , r ) ) r += 6 ; r ++ ; break ; case '"' : for ( ; e . charCodeAt ( ++ r ) !== 34 && r < e . length ; ) ++ r ; ++ r ; break ; case "\\" : r += 2 ; break ; case "_" : r += 2 ; break ; case "@" : ++ r ; break ; case "B" : ; case "b" : if ( e . charAt ( r + 1 ) === "1" || e . charAt ( r + 1 ) === "2" ) return true ; case "M" : ; case "D" : ; case "Y" : ; case "H" : ; case "S" : ; case "E" : ; case "m" : ; case "d" : ; case "y" : ; case "h" : ; case "s" : ; case "e" : ; case "g" : return true ; case "A" : ; case "a" : if ( e . substr ( r , 3 ) . toUpperCase ( ) === "A/P" ) return true ; if ( e . substr ( r , 5 ) . toUpperCase ( ) === "AM/PM" ) return true ; ++ r ; break ; case "[" : a = t ; while ( e . charAt ( r ++ ) !== "]" && r < e . length ) a += e . charAt ( r ) ; if ( a . match ( A ) ) return true ; break ; case "." : ; case "0" : ; case "#" : while ( r < e . length && ( "0#?.,E+-%" . indexOf ( t = e . charAt ( ++ r ) ) > - 1 || t == "\\" && e . charAt ( r + 1 ) == "-" && "0#" . indexOf ( e . charAt ( r + 2 ) ) > - 1 ) ) { } break ; case "?" : while ( e . charAt ( ++ r ) === t ) { } break ; case "*" : ++ r ; if ( e . charAt ( r ) == " " || e . charAt ( r ) == "*" ) ++ r ; break ; case "(" : ; case ")" : ++ r ; break ; case "1" : ; case "2" : ; case "3" : ; case "4" : ; case "5" : ; case "6" : ; case "7" : ; case "8" : ; case "9" : while ( r < e . length && "0123456789" . indexOf ( e . charAt ( ++ r ) ) > - 1 ) { } break ; case " " : ++ r ; break ; default : ++ r ; break ; } } return false } e . is _date = y ; function R ( e , r , t , a ) { var n = [ ] , i = "" , s = 0 , o = "" , f = "t" , l , u , h ; var d = "H" ; while ( s < e . length ) { switch ( o = e . charAt ( s ) ) { case "G" : if ( ! c ( e , s ) ) throw new Error ( "unrecognized character " + o + " in " + e ) ; n [ n . length ] = { t : "G" , v : "General" } ; s += 7 ; break ; case '"' : for ( i = "" ; ( h = e . charCodeAt ( ++ s ) ) !== 34 && s < e . length ; ) i += String . fromCharCode ( h ) ; n [ n . length ] = { t : "t" , v : i } ; ++ s ; break ; case "\\" : var v = e . charAt ( ++ s ) , p = v === "(" || v === ")" ? v : "t" ; n [ n . length ] = { t : p , v : v } ; ++ s ; break ; case "_" : n [ n . length ] = { t : "t" , v : " " } ; s += 2 ; break ; case "@" : n [ n . length ] = { t : "T" , v : r } ; ++ s ; break ; case "B" : ; case "b" : if ( e . charAt ( s + 1 ) === "1" || e . charAt ( s + 1 ) === "2" ) { if ( l == null ) { l = b ( r , t , e . charAt ( s + 1 ) === "2" ) ; if ( l == null ) return "" } n [ n . length ] = { t : "X" , v : e . substr ( s , 2 ) } ; f = o ; s += 2 ; break } ; case "M" : ; case "D" : ; case "Y" : ; case "H" : ; case "S" : ; case "E" : o = o . toLowerCase ( ) ; case "m" : ; case "d" : ; case "y" : ; case "h" : ; case "s" : ; case "e" : ; case "g" : if ( r < 0 ) return "" ; if ( l == null ) { l = b ( r , t ) ; if ( l == null ) return "" } i = o ; while ( ++ s < e . length && e . charAt ( s ) . toLowerCase ( ) === o ) i += o ; if ( o === "m" && f . toLowerCase ( ) === "h" ) o = "M" ; if ( o === "h" ) o = d ; n [ n . length ] = { t : o , v : i } ; f = o ; break ; case "A" : ; case "a" : var m = { t : o , v : o } ; if ( l == null ) l = b ( r , t ) ; if ( e . substr ( s , 3 ) . toUpperCase ( ) === "A/P" ) { if ( l != null ) m . v = l . H >= 12 ? "P" : "A" ; m . t = "T" ; d = "h" ; s += 3 } else if ( e . substr ( s , 5 ) . toUpperCase ( ) === "AM/PM" ) { if
} } var Le = function ( ) { var e = { } ; return function r ( t , a ) { var n = t + "|" + ( a || "" ) ; if ( e [ n ] ) return e [ n ] ; return e [ n ] = new RegExp ( "<(?:\\w+:)?" + t + '(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)</(?:\\w+:)?' + t + ">" , a || "" ) } } ( ) ; var Me = function ( ) { var e = [ [ "nbsp" , " " ] , [ "middot" , "·" ] , [ "quot" , '"' ] , [ "apos" , "'" ] , [ "gt" , ">" ] , [ "lt" , "<" ] , [ "amp" , "&" ] ] . map ( function ( e ) { return [ new RegExp ( "&" + e [ 0 ] + ";" , "g" ) , e [ 1 ] ] } ) ; return function r ( t ) { var a = t . trim ( ) . replace ( /\s+/g , " " ) . replace ( /<\s*[bB][rR]\s*\/?>/g , "\n" ) . replace ( /<[^>]*>/g , "" ) ; for ( var n = 0 ; n < e . length ; ++ n ) a = a . replace ( e [ n ] [ 0 ] , e [ n ] [ 1 ] ) ; return a } } ( ) ; var Ue = function ( ) { var e = { } ; return function r ( t ) { if ( e [ t ] !== undefined ) return e [ t ] ; return e [ t ] = new RegExp ( "<(?:vt:)?" + t + ">([\\s\\S]*?)</(?:vt:)?" + t + ">" , "g" ) } } ( ) ; var He = /<\/?(?:vt:)?variant>/g , We = /<(?:vt:)([^>]*)>([\s\S]*)</ ; function Ve ( e , r ) { var t = me ( e ) ; var a = e . match ( Ue ( t . baseType ) ) || [ ] ; var n = [ ] ; if ( a . length != t . size ) { if ( r . WTF ) throw new Error ( "unexpected vector length " + a . length + " != " + t . size ) ; return n } a . forEach ( function ( e ) { var r = e . replace ( He , "" ) . match ( We ) ; if ( r ) n . push ( { v : De ( r [ 2 ] ) , t : r [ 1 ] } ) } ) ; return n } var ze = /(^\s|\s$|\n)/ ; function Xe ( e , r ) { return "<" + e + ( r . match ( ze ) ? ' xml:space="preserve"' : "" ) + ">" + r + "</" + e + ">" } function Ge ( e ) { return P ( e ) . map ( function ( r ) { return " " + r + '="' + e [ r ] + '"' } ) . join ( "" ) } function je ( e , r , t ) { return "<" + e + ( t != null ? Ge ( t ) : "" ) + ( r != null ? ( r . match ( ze ) ? ' xml:space="preserve"' : "" ) + ">" + r + "</" + e : "/" ) + ">" } function Ke ( e , r ) { try { return e . toISOString ( ) . replace ( /\.\d*/ , "" ) } catch ( t ) { if ( r ) throw t } return "" } function Ye ( e ) { switch ( typeof e ) { case "string" : return je ( "vt:lpwstr" , e ) ; case "number" : return je ( ( e | 0 ) == e ? "vt:i4" : "vt:r8" , String ( e ) ) ; case "boolean" : return je ( "vt:bool" , e ? "true" : "false" ) ; } if ( e instanceof Date ) return je ( "vt:filetime" , Ke ( e ) ) ; throw new Error ( "Unable to serialize " + e ) } var $e = { dc : "http://purl.org/dc/elements/1.1/" , dcterms : "http://purl.org/dc/terms/" , dcmitype : "http://purl.org/dc/dcmitype/" , mx : "http://schemas.microsoft.com/office/mac/excel/2008/main" , r : "http://schemas.openxmlformats.org/officeDocument/2006/relationships" , sjs : "http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties" , vt : "http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes" , xsi : "http://www.w3.org/2001/XMLSchema-instance" , xsd : "http://www.w3.org/2001/XMLSchema" } ; $e . main = [ "http://schemas.openxmlformats.org/spreadsheetml/2006/main" , "http://purl.oclc.org/ooxml/spreadsheetml/main" , "http://schemas.microsoft.com/office/excel/2006/main" , "http://schemas.microsoft.com/office/excel/2006/2" ] ; var Ze = { o : "urn:schemas-microsoft-com:office:office" , x : "urn:schemas-microsoft-com:office:excel" , ss : "urn:schemas-microsoft-com:office:spreadsheet" , dt : "uuid:C2F41010-65B3-11d1-A29F-00AA00C14882" , mv : "http://macVmlSchemaUri" , v : "urn:schemas-microsoft-com:vml" , html : "http://www.w3.org/TR/REC-html40" } ; function Qe ( e , r ) { var t = 1 - 2 * ( e [ r + 7 ] >>> 7 ) ; var a = ( ( e [ r + 7 ] & 127 ) << 4 ) + ( e [ r + 6 ] >>> 4 & 15 ) ; var n = e [ r + 6 ] & 15 ; for ( var i = 5 ; i >= 0 ; -- i ) n = n * 256 + e [ r + i ] ; if ( a == 2047 ) return n == 0 ? t * Infinity : NaN ; if ( a == 0 ) a = - 1022 ; else { a -= 1023 ; n += Math . pow ( 2 , 52 ) } return t * Math . pow ( 2 , a - 52 ) * n } function Je ( e , r , t ) { var a = ( r < 0 || 1 / r == - Infinity ? 1 : 0 ) << 7 , n = 0 , i = 0 ; var s = a ? - r : r ; if ( ! isFinite ( s ) ) { n = 2047 ; i = isNaN ( r ) ? 26985 : 0 } else if ( s == 0 ) n = i = 0 ; else { n = Math . floor ( Math . log ( s ) / Math . LN2 ) ; i = s * Math . pow ( 2 , 52 - n ) ; if ( n <= - 1023 && ( ! isFinite ( i ) || i < Math . pow ( 2 , 52 ) ) ) { n = - 1022 } else { i -= Math . pow ( 2 , 52 ) ; n += 1023 } } for ( var o = 0 ; o <= 5 ; ++ o , i /= 256 ) e [ t + o ] = i & 255 ; e [ t + 6 ] = ( n & 15 ) << 4 | i & 15 ; e [ t + 7 ] = n >> 4 | a } var qe = function ( e ) { var r = [ ] , t = 10240 ; for ( var a = 0 ; a < e [ 0 ] . length ; ++ a ) for ( var n = 0 , i = e [ 0 ] [ a ] . length ; n < i ; n += t ) r . push . apply ( r , e [ 0 ] [ a ] . slice ( n , n + t ) ) ; return r } ; var er = qe ; var rr = function ( e , r , t ) { var a = [ ] ; for ( var n = r ; n < t ; n += 2 ) a . push ( String . fromCharCode ( wr ( e , n ) ) ) ; return a . join ( "" ) . replace ( B , "" ) } ; var tr = rr ; var ar = function ( e , r , t ) { var a = [ ] ; for ( var n = r ; n < r + t ; ++ n ) a . push ( ( "0" + e [ n ] . toString ( 16 ) ) . slice ( - 2 ) ) ; return a . join ( "" ) } ; var nr = ar ; var ir = function ( e , r , t ) { var a = [ ] ; for ( var n = r ; n < t ; n ++ ) a . push ( String . fromCharCode ( kr ( e , n ) ) ) ; return a . join ( "" ) } ; var sr = ir ; var or = function ( e , r ) { var t = _r ( e , r ) ; return t > 0 ? ir ( e , r + 4 , r + 4 + t - 1 ) : "" } ; var fr = or ; var lr = function ( e , r ) { var t = _r ( e , r ) ; return t > 0 ? ir ( e , r + 4 , r + 4 + t - 1 ) : "" } ; var cr = lr ; var ur = function ( e , r ) { var t = 2 * _r (
function ya ( e , r ) { var t = Vv ( e ) ; var a ; var n ; while ( a = zv . exec ( t ) ) switch ( a [ 3 ] ) { case "manifest" : break ; case "file-entry" : n = me ( a [ 0 ] , false ) ; if ( n . path == "/" && n . type !== Aa ) throw new Error ( "This OpenDocument is not a spreadsheet" ) ; break ; case "encryption-data" : ; case "algorithm" : ; case "start-key-generation" : ; case "key-derivation" : throw new Error ( "Unsupported ODS Encryption" ) ; default : if ( r && r . WTF ) throw a ; } } function Ra ( e , r ) { var t = [ he ] ; t . push ( '<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">\n' ) ; t . push ( ' <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>\n' ) ; for ( var a = 0 ; a < e . length ; ++ a ) t . push ( ' <manifest:file-entry manifest:full-path="' + e [ a ] [ 0 ] + '" manifest:media-type="' + e [ a ] [ 1 ] + '"/>\n' ) ; t . push ( "</manifest:manifest>" ) ; return t . join ( "" ) } function Da ( e , r , t ) { return [ ' <rdf:Description rdf:about="' + e + '">\n' , ' <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/' + ( t || "odf" ) + "#" + r + '"/>\n' , " </rdf:Description>\n" ] . join ( "" ) } function Oa ( e , r ) { return [ ' <rdf:Description rdf:about="' + e + '">\n' , ' <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="' + r + '"/>\n' , " </rdf:Description>\n" ] . join ( "" ) } function Fa ( e , r ) { var t = [ he ] ; t . push ( '<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">\n' ) ; for ( var a = 0 ; a != e . length ; ++ a ) { t . push ( Da ( e [ a ] [ 0 ] , e [ a ] [ 1 ] ) ) ; t . push ( Oa ( "" , e [ a ] [ 0 ] ) ) } t . push ( Da ( "" , "Document" , "pkg" ) ) ; t . push ( "</rdf:RDF>" ) ; return t . join ( "" ) } var Pa = function ( ) { var e = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>Sheet' + "JS " + r . version + "</meta:generator></office:meta></office:document-meta>" ; return function t ( r , a ) { return e } } ( ) ; var Na = [ [ "cp:category" , "Category" ] , [ "cp:contentStatus" , "ContentStatus" ] , [ "cp:keywords" , "Keywords" ] , [ "cp:lastModifiedBy" , "LastAuthor" ] , [ "cp:lastPrinted" , "LastPrinted" ] , [ "cp:revision" , "RevNumber" ] , [ "cp:version" , "Version" ] , [ "dc:creator" , "Author" ] , [ "dc:description" , "Comments" ] , [ "dc:identifier" , "Identifier" ] , [ "dc:language" , "Language" ] , [ "dc:subject" , "Subject" ] , [ "dc:title" , "Title" ] , [ "dcterms:created" , "CreatedDate" , "date" ] , [ "dcterms:modified" , "ModifiedDate" , "date" ] ] ; $e . CORE _PROPS = "http://schemas.openxmlformats.org/package/2006/metadata/core-properties" ; _a . CORE _PROPS = "http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties" ; var La = function ( ) { var e = new Array ( Na . length ) ; for ( var r = 0 ; r < Na . length ; ++ r ) { var t = Na [ r ] ; var a = "(?:" + t [ 0 ] . substr ( 0 , t [ 0 ] . indexOf ( ":" ) ) + ":)" + t [ 0 ] . substr ( t [ 0 ] . indexOf ( ":" ) + 1 ) ; e [ r ] = new RegExp ( "<" + a + "[^>]*>([\\s\\S]*?)</" + a + ">" ) } return e } ( ) ; function Ma ( e ) { var r = { } ; e = De ( e ) ; for ( var t = 0 ; t < Na . length ; ++ t ) { var a = Na [ t ] , n = e . match ( La [ t ] ) ; if ( n != null && n . length > 0 ) r [ a [ 1 ] ] = n [ 1 ] ; if ( a [ 2 ] === "date" && r [ a [ 1 ] ] ) r [ a [ 1 ] ] = K ( r [ a [ 1 ] ] ) } return r } var Ua = je ( "cp:coreProperties" , null , { "xmlns:cp" : $e . CORE _PROPS , "xmlns:dc" : $e . dc , "xmlns:dcterms" : $e . dcterms , "xmlns:dcmitype" : $e . dcmitype , "xmlns:xsi" : $e . xsi } ) ; function Ha ( e , r , t , a , n ) { if ( n [ e ] != null || r == null || r === "" ) return ; n [ e ] = r ; a [ a . length ] = t ? je ( e , r , t ) : Xe ( e , r ) } function Wa ( e , r ) { var t = r || { } ; var a = [ he , Ua ] , n = { } ; if ( ! e && ! t . Props ) return a . join ( "" ) ; if ( e ) { if ( e . CreatedDate != null ) Ha ( "dcterms:created" , typeof e . CreatedDate === "string" ? e . CreatedDate : Ke ( e . CreatedDate , t . WTF ) , { "xsi:type" : "dcterms:W3CDTF" } , a , n ) ; if ( e . ModifiedDate != null ) Ha ( "dcterms:modified" , typeof e . ModifiedDate === "string" ? e . ModifiedDate : Ke ( e . ModifiedDate , t . WTF ) , { "xsi:type" : "dcterms:W3CDTF" } , a , n ) } for ( var i = 0 ; i != Na . length ; ++ i ) { var s = Na [ i ] ; var o = t . Props && t . Props [ s [ 1 ] ] != null ? t . Props [ s [ 1 ] ] : e ? e [ s [ 1 ] ] : null ; if ( o === true ) o = "1" ; else if ( o === false ) o = "0" ; else if ( typeof o == "number" ) o = String ( o ) ; if ( o != null ) Ha ( s [ 0 ] , o , null , a , n ) } if ( a . length > 2 ) { a [ a . length ] = "</cp:coreProperties>" ; a [ 1 ] = a [ 1 ] . replace ( "/>" , ">" ) } return a . join ( "" ) } var Va = [ [ "Application" , "Application" , "string" ] , [ " App
var o = { fmt : n , env : i , len : s , data : e . slice ( e . l , e . l + s ) } ; e . l += s ; return o } function As ( e ) { var r = e . _R ( 1 ) ; return e . _R ( r , "sbcs-cont" ) } function ys ( e , r , t ) { var a = Gn ( e , 6 ) ; ++ e . l ; var n = Fn ( e , r - 7 , t ) ; a . t = "str" ; a . val = n ; return a } function Rs ( e , r , t ) { var a = Gn ( e , 6 ) ; ++ e . l ; var n = Mt ( e , 8 ) ; a . t = "n" ; a . val = n ; return a } function Ds ( e , r , t ) { var a = Nr ( 15 ) ; gp ( a , e , r ) ; a . _W ( 8 , t , "f" ) ; return a } function Os ( e , r ) { var t = Gn ( e , 6 ) ; ++ e . l ; var a = e . _R ( 2 ) ; t . t = "n" ; t . val = a ; return t } function Fs ( e , r , t ) { var a = Nr ( 9 ) ; gp ( a , e , r ) ; a . _W ( 2 , t ) ; return a } function Ps ( e , r ) { var t = e . _R ( 1 ) ; if ( t === 0 ) { e . l ++ ; return "" } return e . _R ( t , "sbcs-cont" ) } function Ns ( e , r ) { e . l += 6 ; e . l += 2 ; e . l += 1 ; e . l += 3 ; e . l += 1 ; e . l += r - 13 } function Ls ( e , r , t ) { var a = e . l + r ; var n = Gn ( e , 6 ) ; var i = e . _R ( 2 ) ; var s = Dn ( e , i , t ) ; e . l = a ; n . t = "str" ; n . val = s ; return n } var Ms = function ( ) { var e = { 1 : 437 , 2 : 850 , 3 : 1252 , 4 : 1e4 , 100 : 852 , 101 : 866 , 102 : 865 , 103 : 861 , 104 : 895 , 105 : 620 , 106 : 737 , 107 : 857 , 120 : 950 , 121 : 949 , 122 : 936 , 123 : 932 , 124 : 874 , 125 : 1255 , 126 : 1256 , 150 : 10007 , 151 : 10029 , 152 : 10006 , 200 : 1250 , 201 : 1251 , 202 : 1254 , 203 : 1253 , 0 : 20127 , 8 : 865 , 9 : 437 , 10 : 850 , 11 : 437 , 13 : 437 , 14 : 850 , 15 : 437 , 16 : 850 , 17 : 437 , 18 : 850 , 19 : 932 , 20 : 850 , 21 : 437 , 22 : 850 , 23 : 865 , 24 : 437 , 25 : 437 , 26 : 850 , 27 : 437 , 28 : 863 , 29 : 850 , 31 : 852 , 34 : 852 , 35 : 852 , 36 : 860 , 37 : 850 , 38 : 866 , 55 : 850 , 64 : 852 , 77 : 936 , 78 : 949 , 79 : 950 , 80 : 874 , 87 : 1252 , 88 : 1252 , 89 : 1252 , 255 : 16969 } ; function r ( r , t ) { var a = [ ] ; var n = k ( 1 ) ; switch ( t . type ) { case "base64" : n = w ( g . decode ( r ) ) ; break ; case "binary" : n = w ( r ) ; break ; case "buffer" : ; case "array" : n = r ; break ; } Fr ( n , 0 ) ; var i = n . _R ( 1 ) ; var s = false ; var o = false , f = false ; switch ( i ) { case 2 : ; case 3 : break ; case 48 : o = true ; s = true ; break ; case 49 : o = true ; break ; case 131 : s = true ; break ; case 139 : s = true ; break ; case 140 : s = true ; f = true ; break ; case 245 : s = true ; break ; default : throw new Error ( "DBF Unsupported Version: " + i . toString ( 16 ) ) ; } var l = new Date , c = 0 , u = 0 ; if ( i == 2 ) c = n . _R ( 2 ) ; l = new Date ( n . _R ( 1 ) + 1900 , n . _R ( 1 ) - 1 , n . _R ( 1 ) ) ; if ( i != 2 ) c = n . _R ( 4 ) ; if ( i != 2 ) u = n . _R ( 2 ) ; var h = n . _R ( 2 ) ; var d = 0 , v = 1252 ; if ( i != 2 ) { n . l += 16 ; d = n . _R ( 1 ) ; if ( n [ n . l ] !== 0 ) v = e [ n [ n . l ] ] ; n . l += 1 ; n . l += 2 } if ( f ) n . l += 36 ; var p = [ ] , b = { } ; var m = u - 10 - ( o ? 264 : 0 ) , E = f ? 32 : 11 ; while ( i == 2 ? n . l < n . length && n [ n . l ] != 13 : n . l < m ) { b = { } ; b . name = cptable . utils . decode ( v , n . slice ( n . l , n . l + E ) ) . replace ( /[\u0000\r\n].*$/g , "" ) ; n . l += E ; b . type = String . fromCharCode ( n . _R ( 1 ) ) ; if ( i != 2 && ! f ) b . offset = n . _R ( 4 ) ; b . len = n . _R ( 1 ) ; if ( i == 2 ) b . offset = n . _R ( 2 ) ; b . dec = n . _R ( 1 ) ; if ( b . name . length ) p . push ( b ) ; if ( i != 2 ) n . l += f ? 13 : 14 ; switch ( b . type ) { case "B" : if ( ( ! o || b . len != 8 ) && t . WTF ) console . log ( "Skipping " + b . name + ":" + b . type ) ; break ; case "G" : ; case "P" : if ( t . WTF ) console . log ( "Skipping " + b . name + ":" + b . type ) ; break ; case "C" : ; case "D" : ; case "F" : ; case "I" : ; case "L" : ; case "M" : ; case "N" : ; case "O" : ; case "T" : ; case "Y" : ; case "0" : ; case "@" : ; case "+" : break ; default : throw new Error ( "Unknown Field Type: " + b . type ) ; } } if ( n [ n . l ] !== 13 ) n . l = u - 1 ; else if ( i == 2 ) n . l = 521 ; if ( i != 2 ) { if ( n . _R ( 1 ) !== 13 ) throw new Error ( "DBF Terminator not found " + n . l + " " + n [ n . l ] ) ; n . l = u } var S = 0 , _ = 0 ; a [ 0 ] = [ ] ; for ( _ = 0 ; _ != p . length ; ++ _ ) a [ 0 ] [ _ ] = p [ _ ] . name ; while ( c -- > 0 ) { if ( n [ n . l ] === 42 ) { n . l += h ; continue } ++ n . l ; a [ ++ S ] = [ ] ; _ = 0 ; for ( _ = 0 ; _ != p . length ; ++ _ ) { var C = n . slice ( n . l , n . l + p [ _ ] . len ) ; n . l += p [ _ ] . len ; Fr ( C , 0 ) ; var B = cptable . utils . decode ( v , C ) ; switch ( p [ _ ] . type ) { case "C" : a [ S ] [ _ ] = cptable . utils . decode ( v , C ) ; a [ S ] [ _ ] = a [ S ] [ _ ] . trim ( ) ; break ; case "D" : if ( B . length === 8 ) a [ S ] [ _ ] = new Date ( + B . substr ( 0 , 4 ) , + B . substr ( 4 , 2 ) - 1 , + B . substr ( 6 , 2 ) ) ; else a [ S ] [ _ ] = B ; break ; case "F" : a [ S ] [ _ ] = parseFloat ( B . trim ( ) ) ; break ; case "+" : ; case "I" : a [ S ] [ _ ] = f ? C . _R ( - 4 , "i" ) ^ 2147483648 : C . _R ( 4 , "i" ) ; break ; case "L" : switch ( B . toUpperCase ( ) ) { case "Y" : ; case "T" : a [ S ] [ _ ] = true ; break ; case "N" : ; case "F" : a [ S ] [ _ ] = false ; break ; case " " : ; case "?" : a [ S ] [ _ ] = false ; break ; default : throw new Error ( "DBF Unrecognized L:|" + B + "|" ) ; } break ; case "M" : if ( ! s ) throw new Error ( "DBF Unexpected MEMO for type " + i . toString ( 16 ) ) ; a [ S ] [ _ ] = "##MEMO##" + ( f ? parseInt ( B . trim ( ) , 10 ) : C . _R ( 4 ) ) ; break ; case "N" : a [ S ] [ _ ] = + B . replace ( /\u0000/g , "" ) . trim ( ) ; break ; case "@" : a [ S ] [ _ ] = new Date ( C . _R ( - 8 , "f" ) - 621356832e5 ) ; break ; case "T" : a [ S ] [ _ ] = new Date ( ( C . _R ( 4 ) - 2440588 ) * 864e5 + C . _R ( 4 ) ) ; break ; case "Y" : a [ S ] [ _ ] = C . _R ( 4 , "i" ) / 1e4 ; break ; case "O" : a [ S ] [ _ ] = - C . _R ( - 8 , "f" ) ; break ; case "B" : if ( o && p [ _ ] . len == 8 ) { a [ S ] [ _ ] = C . _R ( 8 , "f" ) ; break } ; case "G" : ; case "P" : C . l += p [ _ ] . len ; break ; case "0" : if ( p [ _ ] . name === "_NullFlags" ) break ; default : throw new Error ( "DBF Unsupported data type " + p [ _ ] . type ) ; }
var o = k ( 16 ) ; for ( var f = 0 ; f != 16 ; ++ f ) o [ f ] = 0 ; var l , c , u ; if ( ( s & 1 ) === 1 ) { l = a >> 8 ; o [ s ] = n ( e [ 0 ] , l ) ; -- s ; l = a & 255 ; c = t [ t . length - 1 ] ; o [ s ] = n ( c , l ) } while ( s > 0 ) { -- s ; l = a >> 8 ; o [ s ] = n ( t [ s ] , l ) ; -- s ; l = a & 255 ; o [ s ] = n ( t [ s ] , l ) } s = 15 ; u = 15 - t . length ; while ( u > 0 ) { l = a >> 8 ; o [ s ] = n ( e [ u ] , l ) ; -- s ; -- u ; l = a & 255 ; o [ s ] = n ( t [ s ] , l ) ; -- s ; -- u } return o } } ( ) ; var To = function ( e , r , t , a , n ) { if ( ! n ) n = r ; if ( ! a ) a = Bo ( e ) ; var i , s ; for ( i = 0 ; i != r . length ; ++ i ) { s = r [ i ] ; s ^= a [ t ] ; s = ( s >> 5 | s << 3 ) & 255 ; n [ i ] = s ; ++ t } return [ n , t , a ] } ; var xo = function ( e ) { var r = 0 , t = Bo ( e ) ; return function ( e ) { var a = To ( "" , e , r , t ) ; r = a [ 1 ] ; return a [ 0 ] } } ; function Io ( e , r , t , a ) { var n = { key : Bn ( e ) , verificationBytes : Bn ( e ) } ; if ( t . password ) n . verifier = Co ( t . password ) ; a . valid = n . verificationBytes === n . verifier ; if ( a . valid ) a . insitu = xo ( t . password ) ; return n } function Ao ( e , r , t ) { var a = t || { } ; a . Info = e . _R ( 2 ) ; e . l -= 2 ; if ( a . Info === 1 ) a . Data = _o ( e , r ) ; else a . Data = So ( e , r ) ; return a } function yo ( e , r , t ) { var a = { Type : t . biff >= 8 ? e . _R ( 2 ) : 0 } ; if ( a . Type ) Ao ( e , r - 2 , a ) ; else Io ( e , r - 2 , t , a ) ; return a } var Ro = function ( ) { function e ( e , t ) { switch ( t . type ) { case "base64" : return r ( g . decode ( e ) , t ) ; case "binary" : return r ( e , t ) ; case "buffer" : return r ( e . toString ( "binary" ) , t ) ; case "array" : return r ( Y ( e ) , t ) ; } throw new Error ( "Unrecognized type " + t . type ) } function r ( e , r ) { var t = r || { } ; var a = t . dense ? [ ] : { } ; var n = { s : { c : 0 , r : 0 } , e : { c : 0 , r : 0 } } ; if ( ! e . match ( /\\trowd/ ) ) throw new Error ( "RTF missing table" ) ; a [ "!ref" ] = st ( n ) ; return a } function t ( r , t ) { return ct ( e ( r , t ) , t ) } function a ( e , r ) { var t = [ "{\\rtf1\\ansi" ] ; var a = ot ( e [ "!ref" ] ) , n ; var i = Array . isArray ( e ) ; for ( var s = a . s . r ; s <= a . e . r ; ++ s ) { t . push ( "\\trowd\\trautofit1" ) ; for ( var o = a . s . c ; o <= a . e . c ; ++ o ) t . push ( "\\cellx" + ( o + 1 ) ) ; t . push ( "\\pard\\intbl" ) ; for ( o = a . s . c ; o <= a . e . c ; ++ o ) { var f = tt ( { r : s , c : o } ) ; n = i ? ( e [ s ] || [ ] ) [ o ] : e [ f ] ; if ( ! n || n . v == null && ( ! n . f || n . F ) ) continue ; t . push ( " " + ( n . w || ( lt ( n ) , n . w ) ) ) ; t . push ( "\\cell" ) } t . push ( "\\pard\\intbl\\row" ) } return t . join ( "" ) + "}" } return { to _workbook : t , to _sheet : e , from _sheet : a } } ( ) ; function Do ( e ) { var r = e . substr ( e [ 0 ] === "#" ? 1 : 0 , 6 ) ; return [ parseInt ( r . substr ( 0 , 2 ) , 16 ) , parseInt ( r . substr ( 2 , 2 ) , 16 ) , parseInt ( r . substr ( 4 , 2 ) , 16 ) ] } function Oo ( e ) { for ( var r = 0 , t = 1 ; r != 3 ; ++ r ) t = t * 256 + ( e [ r ] > 255 ? 255 : e [ r ] < 0 ? 0 : e [ r ] ) ; return t . toString ( 16 ) . toUpperCase ( ) . substr ( 1 ) } function Fo ( e ) { var r = e [ 0 ] / 255 , t = e [ 1 ] / 255 , a = e [ 2 ] / 255 ; var n = Math . max ( r , t , a ) , i = Math . min ( r , t , a ) , s = n - i ; if ( s === 0 ) return [ 0 , 0 , r ] ; var o = 0 , f = 0 , l = n + i ; f = s / ( l > 1 ? 2 - l : l ) ; switch ( n ) { case r : o = ( ( t - a ) / s + 6 ) % 6 ; break ; case t : o = ( a - r ) / s + 2 ; break ; case a : o = ( r - t ) / s + 4 ; break ; } return [ o / 6 , f , l / 2 ] } function Po ( e ) { var r = e [ 0 ] , t = e [ 1 ] , a = e [ 2 ] ; var n = t * 2 * ( a < . 5 ? a : 1 - a ) , i = a - n / 2 ; var s = [ i , i , i ] , o = 6 * r ; var f ; if ( t !== 0 ) switch ( o | 0 ) { case 0 : ; case 6 : f = n * o ; s [ 0 ] += n ; s [ 1 ] += f ; break ; case 1 : f = n * ( 2 - o ) ; s [ 0 ] += f ; s [ 1 ] += n ; break ; case 2 : f = n * ( o - 2 ) ; s [ 1 ] += n ; s [ 2 ] += f ; break ; case 3 : f = n * ( 4 - o ) ; s [ 1 ] += f ; s [ 2 ] += n ; break ; case 4 : f = n * ( o - 4 ) ; s [ 2 ] += n ; s [ 0 ] += f ; break ; case 5 : f = n * ( 6 - o ) ; s [ 2 ] += f ; s [ 0 ] += n ; break ; } for ( var l = 0 ; l != 3 ; ++ l ) s [ l ] = Math . round ( s [ l ] * 255 ) ; return s } function No ( e , r ) { if ( r === 0 ) return e ; var t = Fo ( Do ( e ) ) ; if ( r < 0 ) t [ 2 ] = t [ 2 ] * ( 1 + r ) ; else t [ 2 ] = 1 - ( 1 - t [ 2 ] ) * ( 1 - r ) ; return Oo ( Po ( t ) ) } var Lo = 6 , Mo = 15 , Uo = 1 , Ho = Lo ; function Wo ( e ) { return Math . floor ( ( e + Math . round ( 128 / Ho ) / 256 ) * Ho ) } function Vo ( e ) { return Math . floor ( ( e - 5 ) / Ho * 100 + . 5 ) / 100 } function zo ( e ) { return Math . round ( ( e * Ho + 5 ) / Ho * 256 ) / 256 } function Xo ( e ) { return ( ( e - 5 ) / Ho * 100 + . 5 ) / 100 } function Go ( e ) { return ( e * Ho + 5 ) / Ho * 256 / 256 } function jo ( e ) { return zo ( Vo ( Wo ( e ) ) ) } function Ko ( e ) { var r = Math . abs ( e - jo ( e ) ) , t = Ho ; if ( r > . 005 ) for ( Ho = Uo ; Ho < Mo ; ++ Ho ) if ( Math . abs ( e - jo ( e ) ) <= r ) { r = Math . abs ( e - jo ( e ) ) ; t = Ho } Ho = t } function Yo ( e ) { var r = Infinity , t = 0 , a = Uo ; for ( Ho = Uo ; Ho < Mo ; ++ Ho ) { t = Go ( Xo ( e ) ) * 256 ; t = t % 1 ; if ( t > . 5 ) t -- ; if ( Math . abs ( t ) < r ) { r = Math . abs ( t ) ; a = Ho } } Ho = a } function $o ( e ) { if ( e . width ) { e . wpx = Wo ( e . width ) ; e . wch = Vo ( e . wpx ) ; e . MDW = Ho } else if ( e . wpx ) { e . wch = Vo ( e . wpx ) ; e . width = zo ( e . wch ) ; e . MDW = Ho } else if ( typeof e . wch == "number" ) { e . width = zo ( e . wch ) ; e . wpx = Wo ( e . width ) ; e . MDW = Ho } if ( e . customWidth ) delete e . customWidth } var Zo = 96 , Qo = Zo ; function Jo ( e ) { return e * 96 / Qo } function qo ( e ) { return e * Qo / 96 } var ef = { None : "none" , Solid : "solid" , Gray50 : "mediumGray" , Gray75 : "darkGray" , Gray25 : "lightGray" , HorzStripe : "darkHorizontal" , VertStripe : "darkVertical" , ReverseDiagStripe : "darkDown" , DiagStripe : "darkUp" , DiagCross : "darkGrid" , ThickDiagCross : "darkTrellis" , ThinHorzStripe : "lightHorizontal" , ThinVertStrip
_a . DRAW = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing" ; function hl ( e , r ) { if ( ! e ) return "??" ; var t = ( e . match ( /<c:chart [^>]*r:id="([^"]*)"/ ) || [ "" , "" ] ) [ 1 ] ; return r [ "!id" ] [ t ] . Target } var dl = 1024 ; function vl ( e , r ) { var t = [ 21600 , 21600 ] ; var a = [ "m0,0l0" , t [ 1 ] , t [ 0 ] , t [ 1 ] , t [ 0 ] , "0xe" ] . join ( "," ) ; var n = [ je ( "xml" , null , { "xmlns:v" : Ze . v , "xmlns:o" : Ze . o , "xmlns:x" : Ze . x , "xmlns:mv" : Ze . mv } ) . replace ( /\/>/ , ">" ) , je ( "o:shapelayout" , je ( "o:idmap" , null , { "v:ext" : "edit" , data : e } ) , { "v:ext" : "edit" } ) , je ( "v:shapetype" , [ je ( "v:stroke" , null , { joinstyle : "miter" } ) , je ( "v:path" , null , { gradientshapeok : "t" , "o:connecttype" : "rect" } ) ] . join ( "" ) , { id : "_x0000_t202" , "o:spt" : 202 , coordsize : t . join ( "," ) , path : a } ) ] ; while ( dl < e * 1e3 ) dl += 1e3 ; r . map ( function ( e ) { return rt ( e [ 0 ] ) } ) . forEach ( function ( e , r ) { n = n . concat ( [ "<v:shape" + Ge ( { id : "_x0000_s" + ++ dl , type : "#_x0000_t202" , style : "position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10;visibility:hidden" , fillcolor : "#ECFAD4" , strokecolor : "#edeaa1" } ) + ">" , je ( "v:fill" , je ( "o:fill" , null , { type : "gradientUnscaled" , "v:ext" : "view" } ) , { color2 : "#BEFF82" , angle : "-180" , type : "gradient" } ) , je ( "v:shadow" , null , { on : "t" , obscured : "t" } ) , je ( "v:path" , null , { "o:connecttype" : "none" } ) , '<v:textbox><div style="text-align:left"></div></v:textbox>' , '<x:ClientData ObjectType="Note">' , "<x:MoveWithCells/>" , "<x:SizeWithCells/>" , Xe ( "x:Anchor" , [ e . c , 0 , e . r , 0 , e . c + 3 , 100 , e . r + 5 , 100 ] . join ( "," ) ) , Xe ( "x:AutoFill" , "False" ) , Xe ( "x:Row" , String ( e . r ) ) , Xe ( "x:Column" , String ( e . c ) ) , "<x:Visible/>" , "</x:ClientData>" , "</v:shape>" ] ) } ) ; n . push ( "</xml>" ) ; return n . join ( "" ) } _a . CMNT = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments" ; function pl ( e , r , t , a , n ) { for ( var i = 0 ; i != r . length ; ++ i ) { var s = r [ i ] ; var o = Sv ( se ( e , s . replace ( /^\// , "" ) , true ) , s , n ) ; if ( ! o || ! o . length ) continue ; var f = P ( t ) ; for ( var l = 0 ; l != f . length ; ++ l ) { var c = f [ l ] ; var u = a [ c ] ; if ( u ) { var h = u [ s ] ; if ( h ) bl ( c , t [ c ] , o ) } } } } function bl ( e , r , t ) { var a = Array . isArray ( r ) ; var n , i ; t . forEach ( function ( e ) { if ( a ) { i = rt ( e . ref ) ; if ( ! r [ i . r ] ) r [ i . r ] = [ ] ; n = r [ i . r ] [ i . c ] } else n = r [ e . ref ] ; if ( ! n ) { n = { } ; if ( a ) r [ i . r ] [ i . c ] = n ; else r [ e . ref ] = n ; var t = ot ( r [ "!ref" ] || "BDWGO1000001:A1" ) ; var s = rt ( e . ref ) ; if ( t . s . r > s . r ) t . s . r = s . r ; if ( t . e . r < s . r ) t . e . r = s . r ; if ( t . s . c > s . c ) t . s . c = s . c ; if ( t . e . c < s . c ) t . e . c = s . c ; var o = st ( t ) ; if ( o !== r [ "!ref" ] ) r [ "!ref" ] = o } if ( ! n . c ) n . c = [ ] ; var f = { a : e . author , t : e . t , r : e . r } ; if ( e . h ) f . h = e . h ; n . c . push ( f ) } ) } function ml ( e , r ) { if ( e . match ( /<(?:\w+:)?comments *\/>/ ) ) return [ ] ; var t = [ ] ; var a = [ ] ; var n = e . match ( /<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/ ) ; if ( n && n [ 1 ] ) n [ 1 ] . split ( /<\/\w*:?author>/ ) . forEach ( function ( e ) { if ( e === "" || e . trim ( ) === "" ) return ; var r = e . match ( /<(?:\w+:)?author[^>]*>(.*)/ ) ; if ( r ) t . push ( r [ 1 ] ) } ) ; var i = e . match ( /<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/ ) ; if ( i && i [ 1 ] ) i [ 1 ] . split ( /<\/\w*:?comment>/ ) . forEach ( function ( e , n ) { if ( e === "" || e . trim ( ) === "" ) return ; var i = e . match ( /<(?:\w+:)?comment[^>]*>/ ) ; if ( ! i ) return ; var s = me ( i [ 0 ] ) ; var o = { author : s . authorId && t [ s . authorId ] || "sheetjsghost" , ref : s . ref , guid : s . guid } ; var f = rt ( s . ref ) ; if ( r . sheetRows && r . sheetRows <= f . r ) return ; var l = e . match ( /<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/ ) ; var c = ! ! l && ! ! l [ 1 ] && $s ( l [ 1 ] ) || { r : "" , t : "" , h : "" } ; o . r = c . r ; if ( c . r == "<t></t>" ) c . t = c . h = "" ; o . t = c . t . replace ( /\r\n/g , "\n" ) . replace ( /\r/g , "\n" ) ; if ( r . cellHTML ) o . h = c . h ; a . push ( o ) } ) ; return a } var gl = je ( "comments" , null , { xmlns : $e . main [ 0 ] } ) ; function El ( e , r ) { var t = [ he , gl ] ; var a = [ ] ; t . push ( "<authors>" ) ; e . map ( function ( e ) { return e [ 1 ] } ) . forEach ( function ( e ) { e . map ( function ( e ) { return Ce ( e . a ) } ) . forEach ( function ( e ) { if ( a . indexOf ( e ) > - 1 ) return ; a . push ( e ) ; t . push ( "<author>" + e + "</author>" ) } ) } ) ; t . push ( "</authors>" ) ; t . push ( "<commentList>" ) ; e . forEach ( function ( e ) { e [ 1 ] . forEach ( function ( r ) { t . push ( '<comment ref="' + e [ 0 ] + '" authorId="' + a . indexOf ( Ce ( r . a ) ) + '"><text>' ) ; t . push ( Xe ( "t" , r . t == null ? "" : r . t ) ) ; t . push ( "</text></comment>" ) } ) } ) ; t . push ( "</commentList>" ) ; if ( t . length > 2 ) { t [ t . length ] = "</comments>" ; t [ 1 ] = t [ 1 ] . replace ( "/>" , ">" ) } return t . join ( "" ) } function kl ( e , r ) { var t = { } ; t . iauthor = e . _R ( 4 ) ; var a = Nt ( e , 16 ) ; t . rfx = a . s ; t . ref = tt ( a . s ) ; e . l += 16 ; return t } function wl ( e , r ) { if ( r == null ) r = Nr ( 36 ) ; r . _W ( 4 , e [ 1 ] . iauthor ) ; Lt ( e [ 0 ] , r ) ; r . _W ( 4 , 0 ) ; r . _W ( 4 , 0 ) ; r . _W ( 4 , 0 ) ; r . _W ( 4 , 0 ) ; return r } var Sl
136 : "FREAD" , 137 : "FWRITELN" , 138 : "FWRITE" , 139 : "FPOS" , 140 : "DATEVALUE" , 141 : "TIMEVALUE" , 142 : "SLN" , 143 : "SYD" , 144 : "DDB" , 145 : "GET.DEF" , 146 : "REFTEXT" , 147 : "TEXTREF" , 148 : "INDIRECT" , 149 : "REGISTER" , 150 : "CALL" , 151 : "ADD.BAR" , 152 : "ADD.MENU" , 153 : "ADD.COMMAND" , 154 : "ENABLE.COMMAND" , 155 : "CHECK.COMMAND" , 156 : "RENAME.COMMAND" , 157 : "SHOW.BAR" , 158 : "DELETE.MENU" , 159 : "DELETE.COMMAND" , 160 : "GET.CHART.ITEM" , 161 : "DIALOG.BOX" , 162 : "CLEAN" , 163 : "MDETERM" , 164 : "MINVERSE" , 165 : "MMULT" , 166 : "FILES" , 167 : "IPMT" , 168 : "PPMT" , 169 : "COUNTA" , 170 : "CANCEL.KEY" , 171 : "FOR" , 172 : "WHILE" , 173 : "BREAK" , 174 : "NEXT" , 175 : "INITIATE" , 176 : "REQUEST" , 177 : "POKE" , 178 : "EXECUTE" , 179 : "TERMINATE" , 180 : "RESTART" , 181 : "HELP" , 182 : "GET.BAR" , 183 : "PRODUCT" , 184 : "FACT" , 185 : "GET.CELL" , 186 : "GET.WORKSPACE" , 187 : "GET.WINDOW" , 188 : "GET.DOCUMENT" , 189 : "DPRODUCT" , 190 : "ISNONTEXT" , 191 : "GET.NOTE" , 192 : "NOTE" , 193 : "STDEVP" , 194 : "VARP" , 195 : "DSTDEVP" , 196 : "DVARP" , 197 : "TRUNC" , 198 : "ISLOGICAL" , 199 : "DCOUNTA" , 200 : "DELETE.BAR" , 201 : "UNREGISTER" , 204 : "USDOLLAR" , 205 : "FINDB" , 206 : "SEARCHB" , 207 : "REPLACEB" , 208 : "LEFTB" , 209 : "RIGHTB" , 210 : "MIDB" , 211 : "LENB" , 212 : "ROUNDUP" , 213 : "ROUNDDOWN" , 214 : "ASC" , 215 : "DBCS" , 216 : "RANK" , 219 : "ADDRESS" , 220 : "DAYS360" , 221 : "TODAY" , 222 : "VDB" , 223 : "ELSE" , 224 : "ELSE.IF" , 225 : "END.IF" , 226 : "FOR.CELL" , 227 : "MEDIAN" , 228 : "SUMPRODUCT" , 229 : "SINH" , 230 : "COSH" , 231 : "TANH" , 232 : "ASINH" , 233 : "ACOSH" , 234 : "ATANH" , 235 : "DGET" , 236 : "CREATE.OBJECT" , 237 : "VOLATILE" , 238 : "LAST.ERROR" , 239 : "CUSTOM.UNDO" , 240 : "CUSTOM.REPEAT" , 241 : "FORMULA.CONVERT" , 242 : "GET.LINK.INFO" , 243 : "TEXT.BOX" , 244 : "INFO" , 245 : "GROUP" , 246 : "GET.OBJECT" , 247 : "DB" , 248 : "PAUSE" , 251 : "RESUME" , 252 : "FREQUENCY" , 253 : "ADD.TOOLBAR" , 254 : "DELETE.TOOLBAR" , 255 : "User" , 256 : "RESET.TOOLBAR" , 257 : "EVALUATE" , 258 : "GET.TOOLBAR" , 259 : "GET.TOOL" , 260 : "SPELLING.CHECK" , 261 : "ERROR.TYPE" , 262 : "APP.TITLE" , 263 : "WINDOW.TITLE" , 264 : "SAVE.TOOLBAR" , 265 : "ENABLE.TOOL" , 266 : "PRESS.TOOL" , 267 : "REGISTER.ID" , 268 : "GET.WORKBOOK" , 269 : "AVEDEV" , 270 : "BETADIST" , 271 : "GAMMALN" , 272 : "BETAINV" , 273 : "BINOMDIST" , 274 : "CHIDIST" , 275 : "CHIINV" , 276 : "COMBIN" , 277 : "CONFIDENCE" , 278 : "CRITBINOM" , 279 : "EVEN" , 280 : "EXPONDIST" , 281 : "FDIST" , 282 : "FINV" , 283 : "FISHER" , 284 : "FISHERINV" , 285 : "FLOOR" , 286 : "GAMMADIST" , 287 : "GAMMAINV" , 288 : "CEILING" , 289 : "HYPGEOMDIST" , 290 : "LOGNORMDIST" , 291 : "LOGINV" , 292 : "NEGBINOMDIST" , 293 : "NORMDIST" , 294 : "NORMSDIST" , 295 : "NORMINV" , 296 : "NORMSINV" , 297 : "STANDARDIZE" , 298 : "ODD" , 299 : "PERMUT" , 300 : "POISSON" , 301 : "TDIST" , 302 : "WEIBULL" , 303 : "SUMXMY2" , 304 : "SUMX2MY2" , 305 : "SUMX2PY2" , 306 : "CHITEST" , 307 : "CORREL" , 308 : "COVAR" , 309 : "FORECAST" , 310 : "FTEST" , 311 : "INTERCEPT" , 312 : "PEARSON" , 313 : "RSQ" , 314 : "STEYX" , 315 : "SLOPE" , 316 : "TTEST" , 317 : "PROB" , 318 : "DEVSQ" , 319 : "GEOMEAN" , 320 : "HARMEAN" , 321 : "SUMSQ" , 322 : "KURT" , 323 : "SKEW" , 324 : "ZTEST" , 325 : "LARGE" , 326 : "SMALL" , 327 : "QUARTILE" , 328 : "PERCENTILE" , 329 : "PERCENTRANK" , 330 : "MODE" , 331 : "TRIMMEAN" , 332 : "TINV" , 334 : "MOVIE.COMMAND" , 335 : "GET.MOVIE" , 336 : "CONCATENATE" , 337 : "POWER" , 338 : "PIVOT.ADD.DATA" , 339 : "GET.PIVOT.TABLE" , 340 : "GET.PIVOT.FIELD" , 341 : "GET.PIVOT.ITEM" , 342 : "RADIANS" , 343 : "DEGREES" , 344 : "SUBTOTAL" , 345 : "SUMIF" , 346 : "COUNTIF" , 347 : "COUNTBLANK" , 348 : "SCENARIO.GET" , 349 : "OPTIONS.LISTS.GET" , 350 : "ISPMT" , 351 : "DATEDIF" , 352 : "DATESTRING" , 353 : "NUMBERSTRING" , 354 : "ROMAN" , 355 : "OPEN.DIALOG" , 356 : "SAVE.DIALOG" , 357 : "VIEW.GET" , 358 : "GETPIVOTDATA" , 359 : "HYPERLINK" , 360 : "PHONETIC" , 361 : "AVERAGEA" , 362 : "MAXA" , 363 : "MINA" , 364 : "STDEVPA" , 365 : "VARPA" , 366 : "STDEVA" , 367 : "VARA" , 368 : "BAHTTEXT" , 369 : "THAIDAYOFWEEK" , 370 : "THAIDIGIT" , 371 : "THAIMONTHOFYEAR" , 372 : "THAINUMSOUND" , 373 : "THAINUMSTRING" , 374 : "THAISTRINGLENGTH" , 375 : "ISTHAIDIGIT" , 376 : "ROUNDBAHTDOWN" , 377 : "ROUNDBAHTUP" , 378 : "THAIYEAR" , 379 : "RTD" , 380 : "CUBEVALUE" , 381 : "CUBEMEMBER" , 382 : "CUBEMEMBERPROPERTY" , 383 : "CUBERANKEDMEMBER" , 384 : "HEX2BIN" , 385 : "HEX2DEC" , 386 : "HEX2OCT" , 387 : "DEC2BIN" , 388 : "DEC2HEX" , 389 : "DEC2OCT" , 390 : "OCT2BIN" , 391 : "OCT2HEX" , 392 : "OCT2DEC" , 393 : "BIN2DEC" , 394 : "BIN2OCT" , 395 : "BIN2HEX" , 396 : "IMSUB" , 397 : "IMDIV" , 398 : "IMPOWER" , 399 : "IMABS" , 400 : "IMSQRT" , 401 : "IMLN" , 402 : "IMLOG2" , 403 : "IMLOG10" , 404 : "IMSIN" , 405 : "IMCOS" , 406 : "IMEXP" , 407 : "IMARGUMENT" , 408 : "IMCONJUGATE" , 409 : "IMAGINARY" , 410 : "IMREAL" , 411 : "COMPLEX" , 412 : "IMSUM" , 413 : "IMPRODUCT" , 414 : "SERIESSUM" , 415 : "FACTDOUBLE" , 416 : "SQRTPI" , 417 : "QUOTIENT" , 418 : "DELTA" , 419 : "GESTEP" , 420 : "ISEVEN" , 421 : "ISODD" , 422 : "
break ; case 35 : u = true ; break ; case 36 : u = false ; break ; case 37 : break ; case 38 : break ; default : if ( ( r || "" ) . indexOf ( "Begin" ) > 0 ) { } else if ( ( r || "" ) . indexOf ( "End" ) > 0 ) { } else if ( ! u || o . WTF ) throw new Error ( "Unexpected record " + b + " " + r ) ; } } , o ) ; delete o . supbooks ; delete o [ "!row" ] ; if ( ! f [ "!ref" ] && ( c . s . r < 2e6 || l && ( l . e . r > 0 || l . e . c > 0 || l . s . r > 0 || l . s . c > 0 ) ) ) f [ "!ref" ] = st ( l || c ) ; if ( o . sheetRows && f [ "!ref" ] ) { var F = ot ( f [ "!ref" ] ) ; if ( o . sheetRows < + F . e . r ) { F . e . r = o . sheetRows - 1 ; if ( F . e . r > c . e . r ) F . e . r = c . e . r ; if ( F . e . r < F . s . r ) F . s . r = F . e . r ; if ( F . e . c > c . e . c ) F . e . c = c . e . c ; if ( F . e . c < F . s . c ) F . s . c = F . e . c ; f [ "!fullref" ] = f [ "!ref" ] ; f [ "!ref" ] = st ( F ) } } if ( _ . length > 0 ) f [ "!merges" ] = _ ; if ( R . length > 0 ) f [ "!cols" ] = R ; if ( D . length > 0 ) f [ "!rows" ] = D ; return f } function gd ( e , r , t , a , n , i ) { if ( r . v === undefined ) return "" ; var s = "" ; switch ( r . t ) { case "b" : s = r . v ? "1" : "0" ; break ; case "d" : r = $ ( r ) ; r . z = r . z || x . _table [ 14 ] ; r . v = V ( K ( r . v ) ) ; r . t = "n" ; break ; case "n" : ; case "e" : s = "" + r . v ; break ; default : s = r . v ; break ; } var o = { r : t , c : a } ; o . s = rh ( n . cellXfs , r , n ) ; if ( r . l ) i [ "!links" ] . push ( [ tt ( o ) , r . l ] ) ; if ( r . c ) i [ "!comments" ] . push ( [ tt ( o ) , r . c ] ) ; switch ( r . t ) { case "s" : ; case "str" : if ( n . bookSST ) { s = Ju ( n . Strings , r . v ) ; o . t = "s" ; o . v = s ; Ur ( e , "BrtCellIsst" , jh ( r , o ) ) } else { o . t = "str" ; Ur ( e , "BrtCellSt" , Jh ( r , o ) ) } return ; case "n" : if ( r . v == ( r . v | 0 ) && r . v > - 1e3 && r . v < 1e3 ) Ur ( e , "BrtCellRk" , Zh ( r , o ) ) ; else Ur ( e , "BrtCellReal" , Yh ( r , o ) ) ; return ; case "b" : o . t = "b" ; Ur ( e , "BrtCellBool" , zh ( r , o ) ) ; return ; case "e" : o . t = "e" ; break ; } Ur ( e , "BrtCellBlank" , Wh ( r , o ) ) } function Ed ( e , r , t , a , n ) { var i = ot ( r [ "!ref" ] || "A1" ) , s , o = "" , f = [ ] ; Ur ( e , "BrtBeginSheetData" ) ; var l = Array . isArray ( r ) ; var c = i . e . r ; if ( r [ "!rows" ] ) c = Math . max ( i . e . r , r [ "!rows" ] . length - 1 ) ; for ( var u = i . s . r ; u <= c ; ++ u ) { o = Kr ( u ) ; Fh ( e , r , i , u ) ; if ( u <= i . e . r ) for ( var h = i . s . c ; h <= i . e . c ; ++ h ) { if ( u === i . s . r ) f [ h ] = Qr ( h ) ; s = f [ h ] + o ; var d = l ? ( r [ u ] || [ ] ) [ h ] : r [ s ] ; if ( ! d ) continue ; gd ( e , d , u , h , a , r ) } } Ur ( e , "BrtEndSheetData" ) } function kd ( e , r ) { if ( ! r || ! r [ "!merges" ] ) return ; Ur ( e , "BrtBeginMergeCells" , id ( r [ "!merges" ] . length ) ) ; r [ "!merges" ] . forEach ( function ( r ) { Ur ( e , "BrtMergeCell" , nd ( r ) ) } ) ; Ur ( e , "BrtEndMergeCells" ) } function wd ( e , r , t , a , n ) { if ( ! r || ! r [ "!cols" ] ) return ; Ur ( e , "BrtBeginColInfos" ) ; r [ "!cols" ] . forEach ( function ( r , t ) { if ( r ) Ur ( e , "BrtColInfo" , cd ( t , r ) ) } ) ; Ur ( e , "BrtEndColInfos" ) } function Sd ( e , r , t ) { r [ "!links" ] . forEach ( function ( r ) { if ( ! r [ 1 ] . Target ) return ; var a = Ia ( t , - 1 , r [ 1 ] . Target . replace ( /#.*$/ , "" ) , _a . HLINK ) ; Ur ( e , "BrtHLink" , od ( r , a ) ) } ) ; delete r [ "!links" ] } function _d ( e , r , t , a ) { if ( r [ "!comments" ] . length > 0 ) { var n = Ia ( a , - 1 , "../drawings/vmlDrawing" + ( t + 1 ) + ".vml" , _a . VML ) ; Ur ( e , "BrtLegacyDrawing" , Rt ( "rId" + n ) ) ; r [ "!legacy" ] = n } } function Cd ( e , r ) { if ( ! r [ "!autofilter" ] ) return ; Ur ( e , "BrtBeginAFilter" , Lt ( it ( r [ "!autofilter" ] . ref ) ) ) ; Ur ( e , "BrtEndAFilter" ) } function Bd ( e , r , t ) { Ur ( e , "BrtBeginWsViews" ) ; { Ur ( e , "BrtBeginWsView" , pd ( r , t ) ) ; Ur ( e , "BrtEndWsView" ) } Ur ( e , "BrtEndWsViews" ) } function Td ( e , r ) { } function xd ( e , r ) { if ( ! r [ "!protect" ] ) return ; Ur ( e , "BrtSheetProtection" , bd ( r [ "!protect" ] ) ) } function Id ( e , r , t , a ) { var n = Mr ( ) ; var i = t . SheetNames [ e ] , s = t . Sheets [ i ] || { } ; var o = i ; try { if ( t && t . Workbook ) o = t . Workbook . Sheets [ e ] . CodeName || o } catch ( f ) { } var l = ot ( s [ "!ref" ] || "A1" ) ; s [ "!links" ] = [ ] ; s [ "!comments" ] = [ ] ; Ur ( n , "BrtBeginSheet" ) ; Ur ( n , "BrtWsProp" , Uh ( o ) ) ; Ur ( n , "BrtWsDim" , Nh ( l ) ) ; Bd ( n , s , t . Workbook ) ; Td ( n , s ) ; wd ( n , s , e , r , t ) ; Ed ( n , s , e , r , t ) ; xd ( n , s ) ; Cd ( n , s ) ; kd ( n , s ) ; Sd ( n , s , a ) ; if ( s [ "!margins" ] ) Ur ( n , "BrtMargins" , dd ( s [ "!margins" ] ) ) ; _d ( n , s , e , a ) ; Ur ( n , "BrtEndSheet" ) ; return n . end ( ) } function Ad ( e ) { var r = [ ] ; ( e . match ( /<c:pt idx="(\d*)">(.*?)<\/c:pt>/gm ) || [ ] ) . forEach ( function ( e ) { var t = e . match ( /<c:pt idx="(.*?)"><c:v>(.*)<\/c:v><\/c:pt>/ ) ; if ( ! t ) return ; r [ + t [ 1 ] ] = + t [ 2 ] } ) ; var t = we ( ( e . match ( /<c:formatCode>([\s\S]*?)<\/c:formatCode>/ ) || [ "" , "General" ] ) [ 1 ] ) ; return [ r , t ] } function yd ( e , r , t , a , n , i ) { var s = i || { "!type" : "chart" } ; if ( ! e ) return i ; var o = 0 , f = 0 , l = "A" ; var c = { s : { r : 2e6 , c : 2e6 } , e : { r : 0 , c : 0 } } ; ( e . match ( /<c:numCache>[\s\S]*?<\/c:numCache>/gm ) || [ ] ) . forEach ( function ( e ) { var r = Ad ( e ) ; c . s . r = c . s . c = 0 ; c . e . c = o ; l = Qr ( o ) ; r [ 0 ] . forEach ( function ( e , t ) { s [ l + Kr ( t ) ] = { t : "n" , v : e , z : r [ 1 ] } ; f = t } ) ; if ( c . e . r < f ) c . e . r = f ; ++ o } ) ; if ( o > 0 ) s [ "!ref" ] = st ( c ) ; return s } _a . CS = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet" ; var Rd = je ( "chartsheet" , null , { xmlns : $e . main [ 0 ] , "xmlns:r" : $e . r } ) ; function Dd ( e , r , t , a , n , i , s ) { if ( ! e ) return e ; if ( ! a ) a = { "!id" : { } } ; v
break ; case "BaseField" : break ; case "MapChildItems" : break ; case "Function" : break ; case "RefreshOnFileOpen" : break ; case "PrintSetTitles" : break ; case "MergeLabels" : break ; case "DefaultVersion" : break ; case "RefreshName" : break ; case "RefreshDate" : break ; case "RefreshDateCopy" : break ; case "VersionLastRefresh" : break ; case "VersionLastUpdate" : break ; case "VersionUpdateableMin" : break ; case "VersionRefreshableMin" : break ; case "Calculation" : break ; default : ae = false ; } break ; case "PageBreaks" : switch ( s [ 3 ] ) { case "ColBreaks" : break ; case "ColBreak" : break ; case "RowBreaks" : break ; case "RowBreak" : break ; case "ColStart" : break ; case "ColEnd" : break ; case "RowEnd" : break ; default : ae = false ; } break ; case "AutoFilter" : switch ( s [ 3 ] ) { case "AutoFilterColumn" : break ; case "AutoFilterCondition" : break ; case "AutoFilterAnd" : break ; case "AutoFilterOr" : break ; default : ae = false ; } break ; case "QueryTable" : switch ( s [ 3 ] ) { case "Id" : break ; case "AutoFormatFont" : break ; case "AutoFormatPattern" : break ; case "QuerySource" : break ; case "QueryType" : break ; case "EnableRedirections" : break ; case "RefreshedInXl9" : break ; case "URLString" : break ; case "HTMLTables" : break ; case "Connection" : break ; case "CommandText" : break ; case "RefreshInfo" : break ; case "NoTitles" : break ; case "NextId" : break ; case "ColumnInfo" : break ; case "OverwriteCells" : break ; case "DoNotPromptForFile" : break ; case "TextWizardSettings" : break ; case "Source" : break ; case "Number" : break ; case "Decimal" : break ; case "ThousandSeparator" : break ; case "TrailingMinusNumbers" : break ; case "FormatSettings" : break ; case "FieldType" : break ; case "Delimiters" : break ; case "Tab" : break ; case "Comma" : break ; case "AutoFormatName" : break ; case "VersionLastEdit" : break ; case "VersionLastRefresh" : break ; default : ae = false ; } break ; case "Sorting" : ; case "ConditionalFormatting" : ; case "DataValidation" : switch ( s [ 3 ] ) { case "Range" : break ; case "Type" : break ; case "Min" : break ; case "Max" : break ; case "Sort" : break ; case "Descending" : break ; case "Order" : break ; case "CaseSensitive" : break ; case "Value" : break ; case "ErrorStyle" : break ; case "ErrorMessage" : break ; case "ErrorTitle" : break ; case "CellRangeList" : break ; case "InputMessage" : break ; case "InputTitle" : break ; case "ComboHide" : break ; case "InputHide" : break ; case "Condition" : break ; case "Qualifier" : break ; case "UseBlank" : break ; case "Value1" : break ; case "Value2" : break ; case "Format" : break ; default : ae = false ; } break ; case "MapInfo" : ; case "Schema" : ; case "data" : switch ( s [ 3 ] ) { case "Map" : break ; case "Entry" : break ; case "Range" : break ; case "XPath" : break ; case "Field" : break ; case "XSDType" : break ; case "FilterOn" : break ; case "Aggregate" : break ; case "ElementType" : break ; case "AttributeType" : break ; case "schema" : ; case "element" : ; case "complexType" : ; case "datatype" : ; case "all" : ; case "attribute" : ; case "extends" : break ; case "row" : break ; default : ae = false ; } break ; case "SmartTags" : break ; default : ae = false ; break ; } if ( ae ) break ; if ( ! o [ o . length - 1 ] [ 1 ] ) throw "Unrecognized tag: " + s [ 3 ] + "|" + o . join ( "|" ) ; if ( o [ o . length - 1 ] [ 0 ] === "CustomDocumentProperties" ) { if ( s [ 0 ] . slice ( - 2 ) === "/>" ) break ; else if ( s [ 1 ] === "/" ) Lv ( O , s [ 3 ] , P , a . slice ( F , s . index ) ) ; else { P = s ; F = s . index + s [ 0 ] . length } break } if ( t . WTF ) throw "Unrecognized tag: " + s [ 3 ] + "|" + o . join ( "|" ) ; } var ie = { } ; if ( ! t . bookSheets && ! t . bookProps ) ie . Sheets = l ; ie . SheetNames = c ; ie . Workbook = j ; ie . SSF = x . get _table ( ) ; ie . Props = D ; ie . Custprops = O ; return ie } function Gv ( e , r ) { Qp ( r = r || { } ) ; switch ( r . type || "base64" ) { case "base64" : return Xv ( g . decode ( e ) , r ) ; case "binary" : ; case "buffer" : ; case "file" : return Xv ( e , r ) ; case "array" : return Xv ( _ ( e ) , r ) ; } } function jv ( e , r ) { var t = [ ] ; if ( e . Props ) t . push ( qa ( e . Props , r ) ) ; if ( e . Custprops ) t . push ( en ( e . Props , e . Custprops , r ) ) ; return t . join ( "" ) } function Kv ( e , r ) { return "" } function Yv ( e , r ) { var t = [ '<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>' ] ; r . cellXfs . forEach ( function ( e , r ) { var a = [ ] ; a . push ( je ( "NumberFormat" , null , { "ss:Format" : Ce ( x . _table [ e . numFmtId ] ) } ) ) ; t . push ( je ( "Style" , a . join ( "" ) , { "ss:ID" : "s" + ( 21 + r ) } ) ) } ) ; return je ( "Styles" , t . join ( "" ) ) } function $v ( e ) { return je ( "NamedRange" , null , { "ss:Name" : e . Name , "ss:RefersTo" : "=" + Pl ( e . Ref , { r : 0 , c : 0 } ) } ) } function Zv ( e , r ) { if ( ! ( ( e || { } ) . Workbook || { } ) . Names ) return "" ; var t = e . Workbook . Names ; var a = [ ] ; for ( var n = 0 ; n < t . length ; ++ n ) { var i = t [ n ] ; if ( i . Sheet != null ) continue ; if ( i . Name . match ( /^_xlfn\./ ) ) continue ; a . push ( $v ( i ) ) } return je ( "Names" , a . join ( "" ) ) } function Qv ( e , r , t , a ) { if ( ! e ) return "" ; if ( ! ( ( a || { } )
} , 266 : { n : "BrtEndECParams" } , 267 : { n : "BrtBeginECParam" } , 268 : { n : "BrtEndECParam" } , 269 : { n : "BrtBeginPCDKPIs" } , 270 : { n : "BrtEndPCDKPIs" } , 271 : { n : "BrtBeginPCDKPI" } , 272 : { n : "BrtEndPCDKPI" } , 273 : { n : "BrtBeginDims" } , 274 : { n : "BrtEndDims" } , 275 : { n : "BrtBeginDim" } , 276 : { n : "BrtEndDim" } , 277 : { n : "BrtIndexPartEnd" } , 278 : { n : "BrtBeginStyleSheet" } , 279 : { n : "BrtEndStyleSheet" } , 280 : { n : "BrtBeginSXView" } , 281 : { n : "BrtEndSXVI" } , 282 : { n : "BrtBeginSXVI" } , 283 : { n : "BrtBeginSXVIs" } , 284 : { n : "BrtEndSXVIs" } , 285 : { n : "BrtBeginSXVD" } , 286 : { n : "BrtEndSXVD" } , 287 : { n : "BrtBeginSXVDs" } , 288 : { n : "BrtEndSXVDs" } , 289 : { n : "BrtBeginSXPI" } , 290 : { n : "BrtEndSXPI" } , 291 : { n : "BrtBeginSXPIs" } , 292 : { n : "BrtEndSXPIs" } , 293 : { n : "BrtBeginSXDI" } , 294 : { n : "BrtEndSXDI" } , 295 : { n : "BrtBeginSXDIs" } , 296 : { n : "BrtEndSXDIs" } , 297 : { n : "BrtBeginSXLI" } , 298 : { n : "BrtEndSXLI" } , 299 : { n : "BrtBeginSXLIRws" } , 300 : { n : "BrtEndSXLIRws" } , 301 : { n : "BrtBeginSXLICols" } , 302 : { n : "BrtEndSXLICols" } , 303 : { n : "BrtBeginSXFormat" } , 304 : { n : "BrtEndSXFormat" } , 305 : { n : "BrtBeginSXFormats" } , 306 : { n : "BrtEndSxFormats" } , 307 : { n : "BrtBeginSxSelect" } , 308 : { n : "BrtEndSxSelect" } , 309 : { n : "BrtBeginISXVDRws" } , 310 : { n : "BrtEndISXVDRws" } , 311 : { n : "BrtBeginISXVDCols" } , 312 : { n : "BrtEndISXVDCols" } , 313 : { n : "BrtEndSXLocation" } , 314 : { n : "BrtBeginSXLocation" } , 315 : { n : "BrtEndSXView" } , 316 : { n : "BrtBeginSXTHs" } , 317 : { n : "BrtEndSXTHs" } , 318 : { n : "BrtBeginSXTH" } , 319 : { n : "BrtEndSXTH" } , 320 : { n : "BrtBeginISXTHRws" } , 321 : { n : "BrtEndISXTHRws" } , 322 : { n : "BrtBeginISXTHCols" } , 323 : { n : "BrtEndISXTHCols" } , 324 : { n : "BrtBeginSXTDMPS" } , 325 : { n : "BrtEndSXTDMPs" } , 326 : { n : "BrtBeginSXTDMP" } , 327 : { n : "BrtEndSXTDMP" } , 328 : { n : "BrtBeginSXTHItems" } , 329 : { n : "BrtEndSXTHItems" } , 330 : { n : "BrtBeginSXTHItem" } , 331 : { n : "BrtEndSXTHItem" } , 332 : { n : "BrtBeginMetadata" } , 333 : { n : "BrtEndMetadata" } , 334 : { n : "BrtBeginEsmdtinfo" } , 335 : { n : "BrtMdtinfo" } , 336 : { n : "BrtEndEsmdtinfo" } , 337 : { n : "BrtBeginEsmdb" } , 338 : { n : "BrtEndEsmdb" } , 339 : { n : "BrtBeginEsfmd" } , 340 : { n : "BrtEndEsfmd" } , 341 : { n : "BrtBeginSingleCells" } , 342 : { n : "BrtEndSingleCells" } , 343 : { n : "BrtBeginList" } , 344 : { n : "BrtEndList" } , 345 : { n : "BrtBeginListCols" } , 346 : { n : "BrtEndListCols" } , 347 : { n : "BrtBeginListCol" } , 348 : { n : "BrtEndListCol" } , 349 : { n : "BrtBeginListXmlCPr" } , 350 : { n : "BrtEndListXmlCPr" } , 351 : { n : "BrtListCCFmla" } , 352 : { n : "BrtListTrFmla" } , 353 : { n : "BrtBeginExternals" } , 354 : { n : "BrtEndExternals" } , 355 : { n : "BrtSupBookSrc" , f : yt } , 357 : { n : "BrtSupSelf" } , 358 : { n : "BrtSupSame" } , 359 : { n : "BrtSupTabs" } , 360 : { n : "BrtBeginSupBook" } , 361 : { n : "BrtPlaceholderName" } , 362 : { n : "BrtExternSheet" , f : Ji } , 363 : { n : "BrtExternTableStart" } , 364 : { n : "BrtExternTableEnd" } , 366 : { n : "BrtExternRowHdr" } , 367 : { n : "BrtExternCellBlank" } , 368 : { n : "BrtExternCellReal" } , 369 : { n : "BrtExternCellBool" } , 370 : { n : "BrtExternCellError" } , 371 : { n : "BrtExternCellString" } , 372 : { n : "BrtBeginEsmdx" } , 373 : { n : "BrtEndEsmdx" } , 374 : { n : "BrtBeginMdxSet" } , 375 : { n : "BrtEndMdxSet" } , 376 : { n : "BrtBeginMdxMbrProp" } , 377 : { n : "BrtEndMdxMbrProp" } , 378 : { n : "BrtBeginMdxKPI" } , 379 : { n : "BrtEndMdxKPI" } , 380 : { n : "BrtBeginEsstr" } , 381 : { n : "BrtEndEsstr" } , 382 : { n : "BrtBeginPRFItem" } , 383 : { n : "BrtEndPRFItem" } , 384 : { n : "BrtBeginPivotCacheIDs" } , 385 : { n : "BrtEndPivotCacheIDs" } , 386 : { n : "BrtBeginPivotCacheID" } , 387 : { n : "BrtEndPivotCacheID" } , 388 : { n : "BrtBeginISXVIs" } , 389 : { n : "BrtEndISXVIs" } , 390 : { n : "BrtBeginColInfos" } , 391 : { n : "BrtEndColInfos" } , 392 : { n : "BrtBeginRwBrk" } , 393 : { n : "BrtEndRwBrk" } , 394 : { n : "BrtBeginColBrk" } , 395 : { n : "BrtEndColBrk" } , 396 : { n : "BrtBrk" } , 397 : { n : "BrtUserBookView" } , 398 : { n : "BrtInfo" } , 399 : { n : "BrtCUsr" } , 400 : { n : "BrtUsr" } , 401 : { n : "BrtBeginUsers" } , 403 : { n : "BrtEOF" } , 404 : { n : "BrtUCR" } , 405 : { n : "BrtRRInsDel" } , 406 : { n : "BrtRREndInsDel" } , 407 : { n : "BrtRRMove" } , 408 : { n : "BrtRREndMove" } , 409 : { n : "BrtRRChgCell" } , 410 : { n : "BrtRREndChgCell" } , 411 : { n : "BrtRRHeader" } , 412 : { n : "BrtRRUserView" } , 413 : { n : "BrtRRRenSheet" } , 414 : { n : "BrtRRInsertSh" } , 415 : { n : "BrtRRDefName" } , 416 : { n : "BrtRRNote" } , 417 : { n : "BrtRRConflict" } , 418 : { n : "BrtRRTQSIF" } , 419 : { n : "BrtRRFormat" } , 420 : { n : "BrtRREndFormat" } , 421 : { n : "BrtRRAutoFmt" } , 422 : { n : "BrtBeginUserShViews" } , 423 : { n : "BrtBeginUserShView" } , 424 : { n : "BrtEndUserShView" } , 425 : { n : "BrtEndUserShViews" } , 426 : { n : "BrtArrFmla" , f : fd } , 427 : { n : "BrtShrFmla" , f : ld } , 428 : { n : "BrtTable" } , 429 : { n : "BrtBeginExtConnections" } , 430 : { n : "BrtEndExtConnections" } , 431 : { n : "BrtBeginPCDCalcMems" } , 432 : { n : "BrtEndPCDCalcMems" } , 433 : { n : "BrtBeginPCDCalcMem" } , 4
f = - 1 ; break } f = n [ c ] . e . r - n [ c ] . s . r + 1 ; l = n [ c ] . e . c - n [ c ] . s . c + 1 ; break } if ( f < 0 ) continue ; var u = tt ( { r : t , c : o } ) ; var h = a . dense ? ( e [ t ] || [ ] ) [ o ] : e [ u ] ; if ( ! h || h . v == null ) { i . push ( s ) ; continue } var d = h . h || Ce ( h . w || ( lt ( h ) , h . w ) || "" ) ; var v = { } ; if ( f > 1 ) v . rowspan = f ; if ( l > 1 ) v . colspan = l ; v . t = h . t ; if ( a . editable ) d = '<span contenteditable="true">' + d + "</span>" ; v . id = "sjs-" + u ; i . push ( je ( "td" , d , v ) ) } var p = "<tr>" ; return p + i . join ( "" ) + "</tr>" } function a ( e , r , t ) { var a = [ ] ; return a . join ( "" ) + "<table>" } var n = '<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>' ; var i = "</body></html>" ; function s ( e , r , s ) { var o = r || { } ; var f = o . header != null ? o . header : n ; var l = o . footer != null ? o . footer : i ; var c = [ f ] ; var u = it ( e [ "!ref" ] ) ; o . dense = Array . isArray ( e ) ; c . push ( a ( e , u , o ) ) ; for ( var h = u . s . r ; h <= u . e . r ; ++ h ) c . push ( t ( e , u , h , o ) ) ; c . push ( "</table>" + l ) ; return c . join ( "" ) } return { to _workbook : r , to _sheet : e , _row : t , BEGIN : n , END : i , _preamble : a , from _sheet : s } } ( ) ; function Rp ( e , r ) { var t = r || { } ; if ( b != null ) t . dense = b ; var a = t . dense ? [ ] : { } ; var n = e . getElementsByTagName ( "tr" ) ; var i = { s : { r : 0 , c : 0 } , e : { r : n . length - 1 , c : 0 } } ; var s = [ ] , o = 0 ; var f = 0 , l = 0 , c = 0 , u = 0 , h = 0 ; for ( ; f < n . length ; ++ f ) { var d = n [ f ] ; var v = d . children ; for ( l = c = 0 ; l < v . length ; ++ l ) { var p = v [ l ] , m = Me ( v [ l ] . innerHTML ) ; for ( o = 0 ; o < s . length ; ++ o ) { var g = s [ o ] ; if ( g . s . c == c && g . s . r <= f && f <= g . e . r ) { c = g . e . c + 1 ; o = - 1 } } h = + p . getAttribute ( "colspan" ) || 1 ; if ( ( u = + p . getAttribute ( "rowspan" ) ) > 0 || h > 1 ) s . push ( { s : { r : f , c : c } , e : { r : f + ( u || 1 ) - 1 , c : c + h - 1 } } ) ; var E = { t : "s" , v : m } ; var k = p . getAttribute ( "t" ) || "" ; if ( m != null ) { if ( m . length == 0 ) E . t = k || "z" ; else if ( t . raw || m . trim ( ) . length == 0 || k == "s" ) { } else if ( m === "TRUE" ) E = { t : "b" , v : true } ; else if ( m === "FALSE" ) E = { t : "b" , v : false } ; else if ( ! isNaN ( Q ( m ) ) ) E = { t : "n" , v : Q ( m ) } ; else if ( ! isNaN ( J ( m ) . getDate ( ) ) ) { E = { t : "d" , v : K ( m ) } ; if ( ! t . cellDates ) E = { t : "n" , v : V ( E . v ) } ; E . z = t . dateNF || x . _table [ 14 ] } } if ( t . dense ) { if ( ! a [ f ] ) a [ f ] = [ ] ; a [ f ] [ c ] = E } else a [ tt ( { c : c , r : f } ) ] = E ; if ( i . e . c < c ) i . e . c = c ; c += h } } a [ "!merges" ] = s ; a [ "!ref" ] = st ( i ) ; return a } function Dp ( e , r ) { return ct ( Rp ( e , r ) , r ) } var Op = function ( ) { var e = function ( e , r ) { return we ( e . replace ( /[\t\r\n]/g , " " ) . trim ( ) . replace ( / +/g , " " ) . replace ( /<text:s\/>/g , " " ) . replace ( /<text:s text:c="(\d+)"\/>/g , function ( e , r ) { return Array ( parseInt ( r , 10 ) + 1 ) . join ( " " ) } ) . replace ( /<text:tab[^>]*\/>/g , "\t" ) . replace ( /<text:line-break\/>/g , "\n" ) . replace ( /<[^>]*>/g , "" ) ) } ; var r = { day : [ "d" , "dd" ] , month : [ "m" , "mm" ] , year : [ "y" , "yy" ] , hours : [ "h" , "hh" ] , minutes : [ "m" , "mm" ] , seconds : [ "s" , "ss" ] , "am-pm" : [ "A/P" , "AM/PM" ] , "day-of-week" : [ "ddd" , "dddd" ] , era : [ "e" , "ee" ] , quarter : [ "\\Qm" , 'm\\"th quarter"' ] } ; return function t ( a , n ) { var i = n || { } ; if ( b != null && i . dense == null ) i . dense = b ; var s = Vv ( a ) ; var o = [ ] , f ; var l ; var c = { name : "" } , u = "" , h = 0 ; var d ; var v ; var p = { } , m = [ ] ; var g = i . dense ? [ ] : { } ; var E , k ; var w = { value : "" } ; var S = "" , _ = 0 , C ; var B = - 1 , T = - 1 , x = { s : { r : 1e6 , c : 1e7 } , e : { r : 0 , c : 0 } } ; var I = 0 ; var A = { } ; var y = [ ] , R = { } , D = 0 , O = 0 ; var F = [ ] , P = 1 , N = 1 ; var L = [ ] ; var M = { Names : [ ] } ; var U = { } ; var H = [ "" , "" ] ; var W = [ ] , z = { } ; var G = "" , j = 0 ; var Y = false , Z = false ; var Q = 0 ; zv . lastIndex = 0 ; s = s . replace ( /<!--([\s\S]*?)-->/gm , "" ) . replace ( /<!DOCTYPE[^\[]*\[[^\]]*\]>/gm , "" ) ; while ( E = zv . exec ( s ) ) switch ( E [ 3 ] = E [ 3 ] . replace ( /_.*$/ , "" ) ) { case "table" : ; case "工作表" : if ( E [ 1 ] === "/" ) { if ( x . e . c >= x . s . c && x . e . r >= x . s . r ) g [ "!ref" ] = st ( x ) ; if ( y . length ) g [ "!merges" ] = y ; if ( F . length ) g [ "!rows" ] = F ; d . name = De ( d [ "名称" ] || d . name ) ; m . push ( d . name ) ; p [ d . name ] = g ; Z = false } else if ( E [ 0 ] . charAt ( E [ 0 ] . length - 2 ) !== "/" ) { d = me ( E [ 0 ] , false ) ; B = T = - 1 ; x . s . r = x . s . c = 1e7 ; x . e . r = x . e . c = 0 ; g = i . dense ? [ ] : { } ; y = [ ] ; F = [ ] ; Z = true } break ; case "table-row-group" : if ( E [ 1 ] === "/" ) -- I ; else ++ I ; break ; case "table-row" : ; case "行" : if ( E [ 1 ] === "/" ) { B += P ; P = 1 ; break } v = me ( E [ 0 ] , false ) ; if ( v [ "行号" ] ) B = v [ "行号" ] - 1 ; else if ( B == - 1 ) B = 0 ; P = + v [ "number-rows-repeated" ] || 1 ; if ( P < 10 ) for ( Q = 0 ; Q < P ; ++ Q ) if ( I > 0 ) F [ B + Q ] = { level : I } ; T = - 1 ; break ; case "covered-table-cell" : ++ T ; if ( i . sheetStubs ) { if ( i . dense ) { if ( ! g [ B ] ) g [ B ] = [ ] ; g [ B ] [ T ] = { t : "z" } } else g [ tt ( { r : B , c : T } ) ] = { t : "z" } } break ; case "table-cell" : ; case "数据" : if ( E [ 0 ] . charAt ( E [ 0 ] . length - 2 ) === "/" ) { ++ T ; w = me ( E [ 0 ] , false ) ; N = parseInt ( w [ "number-columns-repeated" ] || "1" , 10 ) ; k = { t : "z" , v : null } ; if ( w . formula && i . cellFormula != false ) k . f = ju ( we ( w . formula ) ) ; if ( ( w [ "数据类型" ] || w [ "value-type" ] ) == "string" ) { k . t = "s" ; k . v = we ( w [ "string-value" ] || "" ) ; if ( i . dense ) { if ( ! g [ B ] ) g [ B ] = [ ] ; g [ B ] [ T ] = k } el
return S ( a ) } switch ( t . bookType || "xlsb" ) { case "xml" : ; case "xlml" : return Eb ( np ( e , t ) , t ) ; case "slk" : ; case "sylk" : return Eb ( zp ( e , t ) , t ) ; case "html" : return Eb ( Wp ( e , t ) , t ) ; case "txt" : return kb ( Kp ( e , t ) , t ) ; case "csv" : return Eb ( Vp ( e , t ) , t , "\ufeff" ) ; case "dif" : return Eb ( Xp ( e , t ) , t ) ; case "dbf" : return wb ( Yp ( e , t ) , t ) ; case "prn" : return Eb ( Gp ( e , t ) , t ) ; case "rtf" : return Eb ( jp ( e , t ) , t ) ; case "eth" : return Eb ( $p ( e , t ) , t ) ; case "fods" : return Eb ( Mp ( e , t ) , t ) ; case "biff2" : if ( ! t . biff ) t . biff = 2 ; case "biff3" : if ( ! t . biff ) t . biff = 3 ; case "biff4" : if ( ! t . biff ) t . biff = 4 ; return wb ( Ap ( e , t ) , t ) ; case "biff5" : if ( ! t . biff ) t . biff = 5 ; case "biff8" : ; case "xla" : ; case "xls" : if ( ! t . biff ) t . biff = 8 ; return gb ( e , t ) ; case "xlsx" : ; case "xlsm" : ; case "xlam" : ; case "xlsb" : ; case "ods" : return mb ( e , t ) ; default : throw new Error ( "Unrecognized bookType |" + t . bookType + "|" ) ; } } function _b ( e ) { if ( e . bookType ) return ; var r = { xls : "biff8" , htm : "html" , slk : "sylk" , socialcalc : "eth" , Sh33tJS : "WTF" } ; var t = e . file . slice ( e . file . lastIndexOf ( "." ) ) . toLowerCase ( ) ; if ( t . match ( /^\.[a-z]+$/ ) ) e . bookType = t . slice ( 1 ) ; e . bookType = r [ e . bookType ] || e . bookType } function Cb ( e , r , t ) { var a = t || { } ; a . type = "file" ; a . file = r ; _b ( a ) ; return Sb ( e , a ) } function Bb ( e , r , t , a ) { var n = t || { } ; n . type = "file" ; n . file = e ; _b ( n ) ; n . type = "buffer" ; var i = a ; if ( ! ( i instanceof Function ) ) i = t ; return fe . writeFile ( e , Sb ( r , n ) , i ) } function Tb ( e , r ) { if ( e == null || e [ "!ref" ] == null ) return [ ] ; var t = { t : "n" , v : 0 } , a = 0 , n = 1 , i = [ ] , s = true , o = 0 , f = "" ; var l = { s : { r : 0 , c : 0 } , e : { r : 0 , c : 0 } } ; var c = r || { } ; var u = c . raw ; var h = c . defval ; var d = c . range != null ? c . range : e [ "!ref" ] ; if ( c . header === 1 ) a = 1 ; else if ( c . header === "A" ) a = 2 ; else if ( Array . isArray ( c . header ) ) a = 3 ; switch ( typeof d ) { case "string" : l = ot ( d ) ; break ; case "number" : l = ot ( e [ "!ref" ] ) ; l . s . r = d ; break ; default : l = d ; } if ( a > 0 ) n = 0 ; var v = Kr ( l . s . r ) ; var p = [ ] ; var b = [ ] ; var m = 0 , g = 0 ; var E = Array . isArray ( e ) ; var k = l . s . r , w = 0 , S = 0 ; if ( E && ! e [ k ] ) e [ k ] = [ ] ; for ( w = l . s . c ; w <= l . e . c ; ++ w ) { p [ w ] = Qr ( w ) ; t = E ? e [ k ] [ w ] : e [ p [ w ] + v ] ; switch ( a ) { case 1 : i [ w ] = w - l . s . c ; break ; case 2 : i [ w ] = p [ w ] ; break ; case 3 : i [ w ] = c . header [ w - l . s . c ] ; break ; default : if ( t == null ) t = { w : "__EMPTY" , t : "s" } ; f = o = lt ( t , null , c ) ; g = 0 ; for ( S = 0 ; S < i . length ; ++ S ) if ( i [ S ] == f ) f = o + "_" + ++ g ; i [ w ] = f ; } } var _ = a === 1 ? [ ] : { } ; for ( k = l . s . r + n ; k <= l . e . r ; ++ k ) { v = Kr ( k ) ; s = true ; if ( a === 1 ) _ = [ ] ; else { _ = { } ; if ( Object . defineProperty ) try { Object . defineProperty ( _ , "__rowNum__" , { value : k , enumerable : false } ) } catch ( C ) { _ . _ _rowNum _ _ = k } else _ . _ _rowNum _ _ = k } if ( ! E || e [ k ] ) for ( w = l . s . c ; w <= l . e . c ; ++ w ) { t = E ? e [ k ] [ w ] : e [ p [ w ] + v ] ; if ( t === undefined || t . t === undefined ) { if ( h === undefined ) continue ; if ( i [ w ] != null ) { _ [ i [ w ] ] = h ; s = false } continue } o = t . v ; switch ( t . t ) { case "z" : if ( o == null ) break ; continue ; case "e" : continue ; case "s" : ; case "d" : ; case "b" : ; case "n" : break ; default : throw new Error ( "unrecognized type " + t . t ) ; } if ( i [ w ] != null ) { if ( o == null ) { if ( h !== undefined ) _ [ i [ w ] ] = h ; else if ( u && o === null ) _ [ i [ w ] ] = null ; else continue } else { _ [ i [ w ] ] = u ? o : lt ( t , o , c ) } s = false } } if ( s === false || ( a === 1 ? c . blankrows !== false : ! ! c . blankrows ) ) b [ m ++ ] = _ } b . length = m ; return b } var xb = /"/g ; function Ib ( e , r , t , a , n , i , s , o ) { var f = true ; var l = [ ] , c = "" , u = Kr ( t ) ; for ( var h = r . s . c ; h <= r . e . c ; ++ h ) { if ( ! a [ h ] ) continue ; var d = o . dense ? ( e [ t ] || [ ] ) [ h ] : e [ a [ h ] + u ] ; if ( d == null ) c = "" ; else if ( d . v != null ) { f = false ; c = "" + lt ( d , null , o ) ; for ( var v = 0 , p = 0 ; v !== c . length ; ++ v ) if ( ( p = c . charCodeAt ( v ) ) === n || p === i || p === 34 ) { c = '"' + c . replace ( xb , '""' ) + '"' ; break } if ( c == "ID" ) c = '"ID"' } else if ( d . f != null && ! d . F ) { f = false ; c = "=" + d . f ; if ( c . indexOf ( "," ) >= 0 ) c = '"' + c . replace ( xb , '""' ) + '"' } else c = "" ; l . push ( c ) } if ( o . blankrows === false && f ) return null ; return l . join ( s ) } function Ab ( e , r ) { var t = [ ] ; var a = r == null ? { } : r ; if ( e == null || e [ "!ref" ] == null ) return "" ; var n = ot ( e [ "!ref" ] ) ; var i = a . FS !== undefined ? a . FS : "," , s = i . charCodeAt ( 0 ) ; var o = a . RS !== undefined ? a . RS : "\n" , f = o . charCodeAt ( 0 ) ; var l = new RegExp ( ( i == "|" ? "\\|" : i ) + "+$" ) ; var c = "" , u = [ ] ; a . dense = Array . isArray ( e ) ; var h = a . skipHidden && e [ "!cols" ] || [ ] ; var d = a . skipHidden && e [ "!rows" ] || [ ] ; for ( var v = n . s . c ; v <= n . e . c ; ++ v ) if ( ! ( h [ v ] || { } ) . hidden ) u [ v ] = Qr ( v ) ; for ( var p = n . s . r ; p <= n . e . r ; ++ p ) { if ( ( d [ p ] || { } ) . hidden ) continue ; c = Ib ( e , n , p , u , s , f , i , a ) ; if ( c == null ) { continue } if ( a . strip ) c = c . replace ( l , "" ) ; t . push ( c + o ) } delete a . dense ; return t . join ( "" ) } function yb ( e , r ) { if ( ! r ) r = { } ; r . FS = "\t" ; r . RS = "\n" ; var t = Ab ( e , r ) ; if ( typeof cptable == "undefined" || r . type == "string" ) return t ; var a = cptable . utils . encode ( 1200 , t , "str" ) ; return "ÿþ" + a } fun