2016-12-31 08:20:45 +00:00
/* xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */
2018-02-03 20:46:32 +00:00
var DO _NOT _EXPORT _CODEPAGE = true ; var DO _NOT _EXPORT _JSZIP = true ; var XLSX = { } ; ( function e ( r ) { r . version = "0.11.19" ; var t = 1200 , a = 1252 ; if ( typeof module !== "undefined" && typeof require !== "undefined" ) { if ( typeof cptable === "undefined" ) global . cptable = undefined } var n = [ 874 , 932 , 936 , 949 , 950 ] ; for ( var i = 0 ; i <= 8 ; ++ i ) n . push ( 1250 + i ) ; var s = { 0 : 1252 , 1 : 65001 , 2 : 65001 , 77 : 1e4 , 128 : 932 , 129 : 949 , 130 : 1361 , 134 : 936 , 136 : 950 , 161 : 1253 , 162 : 1254 , 163 : 1258 , 177 : 1255 , 178 : 1256 , 186 : 1257 , 204 : 1251 , 222 : 874 , 238 : 1250 , 255 : 1252 , 69 : 6969 } ; var l = function ( e ) { if ( n . indexOf ( e ) == - 1 ) return ; a = s [ 0 ] = e } ; function c ( ) { l ( 1252 ) } var f = function ( e ) { t = e ; l ( e ) } ; function o ( ) { f ( 1200 ) ; c ( ) } function u ( e ) { var r = [ ] ; for ( var t = 0 , a = e . length ; t < a ; ++ t ) r [ t ] = e . charCodeAt ( t ) ; return r } function h ( e ) { var r = [ ] ; for ( var t = 0 ; t < e . length >> 1 ; ++ t ) r [ t ] = String . fromCharCode ( e . charCodeAt ( 2 * t ) + ( e . charCodeAt ( 2 * t + 1 ) << 8 ) ) ; return r . join ( "" ) } function d ( e ) { var r = [ ] ; for ( var t = 0 ; t < e . length >> 1 ; ++ t ) r [ t ] = String . fromCharCode ( e . charCodeAt ( 2 * t + 1 ) + ( e . charCodeAt ( 2 * t ) << 8 ) ) ; return r . join ( "" ) } var v = function ( e ) { var r = e . charCodeAt ( 0 ) , t = e . charCodeAt ( 1 ) ; if ( r == 255 && t == 254 ) return h ( e . slice ( 2 ) ) ; if ( r == 254 && t == 255 ) return d ( e . slice ( 2 ) ) ; if ( r == 65279 ) return e . slice ( 1 ) ; return e } ; var p = function Zp ( e ) { return String . fromCharCode ( e ) } ; if ( typeof cptable !== "undefined" ) { f = function ( e ) { t = e } ; v = function ( e ) { if ( e . charCodeAt ( 0 ) === 255 && e . charCodeAt ( 1 ) === 254 ) { return cptable . utils . decode ( 1200 , u ( e . slice ( 2 ) ) ) } return e } ; p = function qp ( e ) { if ( t === 1200 ) return String . fromCharCode ( e ) ; return cptable . utils . decode ( t , [ e & 255 , e >> 8 ] ) [ 0 ] } } var b = null ; var m = true ; var g = function eb ( ) { var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" ; return { encode : function ( r ) { var t = "" ; var a = 0 , n = 0 , i = 0 , s = 0 , l = 0 , c = 0 , f = 0 ; for ( var o = 0 ; o < r . length ; ) { a = r . charCodeAt ( o ++ ) ; n = r . charCodeAt ( o ++ ) ; i = r . charCodeAt ( o ++ ) ; s = a >> 2 ; l = ( a & 3 ) << 4 | n >> 4 ; c = ( n & 15 ) << 2 | i >> 6 ; f = i & 63 ; if ( isNaN ( n ) ) { c = f = 64 } else if ( isNaN ( i ) ) { f = 64 } t += e . charAt ( s ) + e . charAt ( l ) + e . charAt ( c ) + e . charAt ( f ) } return t } , decode : function r ( t ) { var a = "" ; var n = 0 , i = 0 , s = 0 ; var l = 0 , c = 0 , f = 0 , o = 0 ; t = t . replace ( /[^A-Za-z0-9\+\/\=]/g , "" ) ; for ( var u = 0 ; u < t . length ; ) { l = e . indexOf ( t . charAt ( u ++ ) ) ; c = e . indexOf ( t . charAt ( u ++ ) ) ; f = e . indexOf ( t . charAt ( u ++ ) ) ; o = e . indexOf ( t . charAt ( u ++ ) ) ; n = l << 2 | c >> 4 ; i = ( c & 15 ) << 4 | f >> 2 ; s = ( f & 3 ) << 6 | o ; a += String . fromCharCode ( n ) ; if ( f !== 64 ) { a += String . fromCharCode ( i ) } if ( o !== 64 ) { a += String . fromCharCode ( s ) } } return a } } } ( ) ; var E = typeof Buffer !== "undefined" && typeof process !== "undefined" && typeof process . versions !== "undefined" && process . versions . node ; function S ( e ) { return new ( E ? Buffer : Array ) ( e ) } function k ( e ) { if ( E ) return new Buffer ( e , "binary" ) ; return e . split ( "" ) . map ( function ( e ) { return e . charCodeAt ( 0 ) & 255 } ) } function w ( e ) { if ( typeof ArrayBuffer === "undefined" ) return k ( e ) ; var r = new ArrayBuffer ( e . length ) , t = new Uint8Array ( r ) ; for ( var a = 0 ; a != e . length ; ++ a ) t [ a ] = e . charCodeAt ( a ) & 255 ; return r } function B ( e ) { if ( Array . isArray ( e ) ) return e . map ( Qd ) . join ( "" ) ; var r = [ ] ; for ( var t = 0 ; t < e . length ; ++ t ) r [ t ] = Qd ( e [ t ] ) ; return r . join ( "" ) } function C ( e ) { if ( typeof Uint8Array === "undefined" ) throw new Error ( "Unsupported" ) ; return new Uint8Array ( e ) } function T ( e ) { if ( typeof ArrayBuffer == "undefined" ) throw new Error ( "Unsupported" ) ; if ( e instanceof ArrayBuffer ) return T ( new Uint8Array ( e ) ) ; var r = new Array ( e . length ) ; for ( var t = 0 ; t < e . length ; ++ t ) r [ t ] = e [ t ] ; return r } var I = function ( e ) { return [ ] . concat . apply ( [ ] , e ) } ; var x = /\u0000/g , A = /[\u0001-\u0006]/g ; var R = { } ; var F = function rb ( e ) { e . version = "0.10.0" ; function r ( e ) { var r = "" , t = e . length - 1 ; while ( t >= 0 ) r += e . charAt ( t -- ) ; return r } function t ( e , r ) { var t = "" ; while ( t . length < r ) t += e ; return t } function a ( e , r ) { var a = "" + e ; return a . length >= r ? a : t ( "0" , r - a . length ) + a } function n ( e , r ) { var a = "" + e ; return a . length >= r ? a : t ( " " , r - a . length ) + a } function i ( e , r ) { var a = "" + e ; return a . length >= r ? a : a + t ( " " , r - a . length ) } function s ( e , r ) { var a = "" + Math . round ( e ) ; return a . length >= r ? a : t ( "0" , r - a . length ) + a } function l ( e , r ) { var a = "" + e ; return a . length >= r ? a : t ( "0" , r - a . length ) + a } var c = Math . pow ( 2 , 32 ) ; function f ( e , r ) { if ( e > c || e < - c ) return s ( e , r ) ; var t = Math . round ( e ) ; return l ( t , r ) } function o ( e , r ) { r = r || 0 ; return e . length >= 7 + r && ( e . charCodeAt ( r ) | 32 ) === 103 && ( e . charCodeAt ( r + 1 ) | 32 ) === 101 && ( e . charCodeAt ( r + 2 ) | 32 ) === 110 && ( e . charCodeAt ( r + 3 ) | 32 ) === 101 && ( e . charCodeAt ( r + 4 ) | 32
if ( E !== 0 ) g . ct = b ( m , m . l - 8 ) ; var S = m . _R ( 2 ) + m . _R ( 2 ) + m . _R ( 2 ) + m . _R ( 2 ) ; if ( S !== 0 ) g . mt = b ( m , m . l - 8 ) ; g . start = m . _R ( 4 , "i" ) ; g . size = m . _R ( 4 , "i" ) ; if ( g . size < 0 && g . start < 0 ) { g . size = g . type = 0 ; g . start = F ; g . name = "" } if ( g . type === 5 ) { c = g . start ; if ( n > 0 && c !== F ) r [ c ] . name = "!StreamData" } else if ( g . size >= 4096 ) { g . storage = "fat" ; if ( r [ g . start ] === undefined ) r [ g . start ] = d ( t , g . start , r . fat _addrs , r . ssz ) ; r [ g . start ] . name = g . name ; g . content = r [ g . start ] . data . slice ( 0 , g . size ) ; Pr ( g . content , 0 ) } else { g . storage = "minifat" ; if ( c !== F && g . start !== F && r [ c ] ) { g . content = u ( g , r [ c ] . data , ( r [ l ] || { } ) . data ) ; Pr ( g . content , 0 ) } } i [ p ] = g ; s . push ( g ) } } function b ( e , r ) { return new Date ( ( Ir ( e , r + 4 ) / 1e7 * Math . pow ( 2 , 32 ) + Ir ( e , r ) / 1e7 - 11644473600 ) * 1e3 ) } function m ( e , r ) { i ( ) ; return s ( n . readFileSync ( e ) , r ) } function E ( e , r ) { switch ( r && r . type || "base64" ) { case "file" : return m ( e , r ) ; case "base64" : return s ( k ( g . decode ( e ) ) , r ) ; case "binary" : return s ( k ( e ) , r ) ; } return s ( e , r ) } function S ( e , r ) { var t = r || { } , a = t . root || "Root Entry" ; if ( ! e . FullPaths ) e . FullPaths = [ ] ; if ( ! e . FileIndex ) e . FileIndex = [ ] ; if ( e . FullPaths . length !== e . FileIndex . length ) throw new Error ( "inconsistent CFB structure" ) ; if ( e . FullPaths . length === 0 ) { e . FullPaths [ 0 ] = a + "/" ; e . FileIndex [ 0 ] = { name : a , type : 5 } } if ( t . CLSID ) e . FileIndex [ 0 ] . clsid = t . CLSID ; w ( e ) } function w ( e ) { var r = " Sh33tJ5" ; if ( N . find ( e , "/" + r ) ) return ; var t = Lr ( 4 ) ; t [ 0 ] = 55 ; t [ 1 ] = t [ 3 ] = 50 ; t [ 2 ] = 54 ; e . FileIndex . push ( { name : r , type : 2 , content : t , size : 4 , L : 69 , R : 69 , C : 69 } ) ; e . FullPaths . push ( e . FullPaths [ 0 ] + r ) ; B ( e ) } function B ( e , n ) { S ( e ) ; var i = false , s = false ; for ( var l = e . FullPaths . length - 1 ; l >= 0 ; -- l ) { var c = e . FileIndex [ l ] ; switch ( c . type ) { case 0 : if ( s ) i = true ; else { e . FileIndex . pop ( ) ; e . FullPaths . pop ( ) } break ; case 1 : ; case 2 : ; case 5 : s = true ; if ( isNaN ( c . R * c . L * c . C ) ) i = true ; if ( c . R > - 1 && c . L > - 1 && c . R == c . L ) i = true ; break ; default : i = true ; break ; } } if ( ! i && ! n ) return ; var f = new Date ( 1987 , 1 , 19 ) , o = 0 ; var u = [ ] ; for ( l = 0 ; l < e . FullPaths . length ; ++ l ) { if ( e . FileIndex [ l ] . type === 0 ) continue ; u . push ( [ e . FullPaths [ l ] , e . FileIndex [ l ] ] ) } for ( l = 0 ; l < u . length ; ++ l ) { var h = t ( u [ l ] [ 0 ] ) ; s = false ; for ( o = 0 ; o < u . length ; ++ o ) if ( u [ o ] [ 0 ] === h ) s = true ; if ( ! s ) u . push ( [ h , { name : a ( h ) . replace ( "/" , "" ) , type : 1 , clsid : O , ct : f , mt : f , content : null } ] ) } u . sort ( function ( e , t ) { return r ( e [ 0 ] , t [ 0 ] ) } ) ; e . FullPaths = [ ] ; e . FileIndex = [ ] ; for ( l = 0 ; l < u . length ; ++ l ) { e . FullPaths [ l ] = u [ l ] [ 0 ] ; e . FileIndex [ l ] = u [ l ] [ 1 ] } for ( l = 0 ; l < u . length ; ++ l ) { var d = e . FileIndex [ l ] ; var v = e . FullPaths [ l ] ; d . name = a ( v ) . replace ( "/" , "" ) ; d . L = d . R = d . C = - ( d . color = 1 ) ; d . size = d . content ? d . content . length : 0 ; d . start = 0 ; d . clsid = d . clsid || O ; if ( l === 0 ) { d . C = u . length > 1 ? 1 : - 1 ; d . size = 0 ; d . type = 5 } else if ( v . slice ( - 1 ) == "/" ) { for ( o = l + 1 ; o < u . length ; ++ o ) if ( t ( e . FullPaths [ o ] ) == v ) break ; d . C = o >= u . length ? - 1 : o ; for ( o = l + 1 ; o < u . length ; ++ o ) if ( t ( e . FullPaths [ o ] ) == t ( v ) ) break ; d . R = o >= u . length ? - 1 : o ; d . type = 1 } else { if ( t ( e . FullPaths [ l + 1 ] || "" ) == t ( v ) ) d . R = l + 1 ; d . type = 2 } } } function C ( e , r ) { var t = r || { } ; B ( e ) ; var a = function ( e ) { var r = 0 , t = 0 ; for ( var a = 0 ; a < e . FileIndex . length ; ++ a ) { var n = e . FileIndex [ a ] ; if ( ! n . content ) continue ; var i = n . content . length ; if ( i > 0 ) { if ( i < 4096 ) r += i + 63 >> 6 ; else t += i + 511 >> 9 } } var s = e . FullPaths . length + 3 >> 2 ; var l = r + 7 >> 3 ; var c = r + 127 >> 7 ; var f = l + t + s + c ; var o = f + 127 >> 7 ; var u = o <= 109 ? 0 : Math . ceil ( ( o - 109 ) / 127 ) ; while ( f + o + u + 127 >> 7 > o ) u = ++ o <= 109 ? 0 : Math . ceil ( ( o - 109 ) / 127 ) ; var h = [ 1 , u , o , c , s , t , r , 0 ] ; e . FileIndex [ 0 ] . size = r << 6 ; h [ 7 ] = ( e . FileIndex [ 0 ] . start = h [ 0 ] + h [ 1 ] + h [ 2 ] + h [ 3 ] + h [ 4 ] + h [ 5 ] ) + ( h [ 6 ] + 7 >> 3 ) ; return h } ( e ) ; var n = Lr ( a [ 7 ] << 9 ) ; var i = 0 , s = 0 ; { for ( i = 0 ; i < 8 ; ++ i ) n . _W ( 1 , _ [ i ] ) ; for ( i = 0 ; i < 8 ; ++ i ) n . _W ( 2 , 0 ) ; n . _W ( 2 , 62 ) ; n . _W ( 2 , 3 ) ; n . _W ( 2 , 65534 ) ; n . _W ( 2 , 9 ) ; n . _W ( 2 , 6 ) ; for ( i = 0 ; i < 3 ; ++ i ) n . _W ( 2 , 0 ) ; n . _W ( 4 , 0 ) ; n . _W ( 4 , a [ 2 ] ) ; n . _W ( 4 , a [ 0 ] + a [ 1 ] + a [ 2 ] + a [ 3 ] - 1 ) ; n . _W ( 4 , 0 ) ; n . _W ( 4 , 1 << 12 ) ; n . _W ( 4 , a [ 3 ] ? a [ 0 ] + a [ 1 ] + a [ 2 ] - 1 : F ) ; n . _W ( 4 , a [ 3 ] ) ; n . _W ( - 4 , a [ 1 ] ? a [ 0 ] - 1 : F ) ; n . _W ( 4 , a [ 1 ] ) ; for ( i = 0 ; i < 109 ; ++ i ) n . _W ( - 4 , i < a [ 2 ] ? a [ 1 ] + i : - 1 ) } if ( a [ 1 ] ) { for ( s = 0 ; s < a [ 1 ] ; ++ s ) { for ( ; i < 236 + s * 127 ; ++ i ) n . _W ( - 4 , i < a [ 2 ] ? a [ 1 ] + i : - 1 ) ; n . _W ( - 4 , s === a [ 1 ] - 1 ? F : s + 1 ) } } var l = function ( e ) { for ( s += e ; i < s - 1 ; ++ i ) n . _W ( - 4 , i + 1 ) ; if ( e ) { ++ i ; n . _W ( - 4 , F ) } } ; s = i = 0 ; for ( s += a [ 1 ] ; i < s ; ++ i ) n . _W ( - 4 , y . DIFSECT ) ; for ( s += a [ 2 ] ; i < s ; ++ i ) n . _W ( - 4 , y . FATSECT ) ; l ( a [ 3 ] ) ; l ( a [ 4 ] ) ; var c = 0 , f = 0 ; var o = e . FileIndex [ 0 ] ; for ( ; c < e . FileIndex . length ; ++ c ) { o = e . FileIndex [ c ] ; if ( ! o . content ) continue ; f = o . content . length ; if ( f < 4096 ) continue ; o . start = s ; l ( f + 511 >> 9 ) } l ( a [ 6 ] + 7 >> 3 ) ; while ( n . l & 511 ) n . _W ( - 4 , y . ENDOFCHAIN ) ; s = i = 0 ; for ( c = 0 ; c < e . FileIndex . length ; ++ c ) { o =
var s = 0 , l = 0 ; if ( i && a . origin != null ) { if ( typeof a . origin == "number" ) s = a . origin ; else { var c = typeof a . origin == "string" ? tt ( a . origin ) : a . origin ; s = c . r ; l = c . c } } var f = { s : { c : 1e7 , r : 1e7 } , e : { c : 0 , r : 0 } } ; if ( i [ "!ref" ] ) { var o = st ( i [ "!ref" ] ) ; f . s . c = o . s . c ; f . s . r = o . s . r ; f . e . c = Math . max ( f . e . c , o . e . c ) ; f . e . r = Math . max ( f . e . r , o . e . r ) ; if ( s == - 1 ) f . e . r = s = o . e . r + 1 } for ( var u = 0 ; u != r . length ; ++ u ) { for ( var h = 0 ; h != r [ u ] . length ; ++ h ) { if ( typeof r [ u ] [ h ] === "undefined" ) continue ; var d = { v : r [ u ] [ h ] } ; if ( Array . isArray ( d . v ) ) { d . f = r [ u ] [ h ] [ 1 ] ; d . v = d . v [ 0 ] } var v = s + u , p = l + h ; if ( f . s . r > v ) f . s . r = v ; if ( f . s . c > p ) f . s . c = p ; if ( f . e . r < v ) f . e . r = v ; if ( f . e . c < p ) f . e . c = p ; if ( d . v === null ) { if ( d . f ) d . t = "n" ; else if ( ! a . cellStubs ) continue ; else d . t = "z" } else if ( typeof d . v === "number" ) d . t = "n" ; else if ( typeof d . v === "boolean" ) d . t = "b" ; else if ( d . v instanceof Date ) { d . z = a . dateNF || R . _table [ 14 ] ; if ( a . cellDates ) { d . t = "d" ; d . w = R . format ( d . z , Y ( d . v ) ) } else { d . t = "n" ; d . v = Y ( d . v ) ; d . w = R . format ( d . z , d . v ) } } else d . t = "s" ; if ( n ) { if ( ! i [ v ] ) i [ v ] = [ ] ; i [ v ] [ p ] = d } else { var m = at ( { c : p , r : v } ) ; i [ m ] = d } } } if ( f . s . c < 1e7 ) i [ "!ref" ] = it ( f ) ; return i } function ut ( e , r ) { return ot ( null , e , r ) } function ht ( e , r ) { if ( ! r ) r = Lr ( 4 ) ; r . _W ( 4 , e ) ; return r } function dt ( e ) { var r = e . _R ( 4 ) ; return r === 0 ? "" : e . _R ( r , "dbcs" ) } function vt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Lr ( 4 + 2 * e . length ) } r . _W ( 4 , e . length ) ; if ( e . length > 0 ) r . _W ( 0 , e , "dbcs" ) ; return t ? r . slice ( 0 , r . l ) : r } function pt ( e ) { return { ich : e . _R ( 2 ) , ifnt : e . _R ( 2 ) } } function bt ( e , r ) { if ( ! r ) r = Lr ( 4 ) ; r . _W ( 2 , e . ich || 0 ) ; r . _W ( 2 , e . ifnt || 0 ) ; return r } function mt ( e , r ) { var t = e . l ; var a = e . _R ( 1 ) ; var n = dt ( e ) ; var i = [ ] ; var s = { t : n , h : n } ; if ( ( a & 1 ) !== 0 ) { var l = e . _R ( 4 ) ; for ( var c = 0 ; c != l ; ++ c ) i . push ( pt ( e ) ) ; s . r = i } else s . r = [ { ich : 0 , ifnt : 0 } ] ; e . l = t + r ; return s } function gt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Lr ( 15 + 4 * e . t . length ) } r . _W ( 1 , 0 ) ; vt ( e . t , r ) ; return t ? r . slice ( 0 , r . l ) : r } var Et = mt ; function St ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Lr ( 23 + 4 * e . t . length ) } r . _W ( 1 , 1 ) ; vt ( e . t , r ) ; r . _W ( 4 , 1 ) ; bt ( { ich : 0 , ifnt : 0 } , r ) ; return t ? r . slice ( 0 , r . l ) : r } function kt ( e ) { var r = e . _R ( 4 ) ; var t = e . _R ( 2 ) ; t += e . _R ( 1 ) << 16 ; e . l ++ ; return { c : r , iStyleRef : t } } function wt ( e , r ) { if ( r == null ) r = Lr ( 8 ) ; r . _W ( - 4 , e . c ) ; r . _W ( 3 , e . iStyleRef || e . s ) ; r . _W ( 1 , 0 ) ; return r } var Bt = dt ; var Ct = vt ; function Tt ( e ) { var r = e . _R ( 4 ) ; return r === 0 || r === 4294967295 ? "" : e . _R ( r , "dbcs" ) } function It ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Lr ( 127 ) } r . _W ( 4 , e . length > 0 ? e . length : 4294967295 ) ; if ( e . length > 0 ) r . _W ( 0 , e , "dbcs" ) ; return t ? r . slice ( 0 , r . l ) : r } var xt = dt ; var At = Tt ; var Rt = It ; function Ft ( e ) { var r = e . slice ( e . l , e . l + 4 ) ; var t = r [ 0 ] & 1 , a = r [ 0 ] & 2 ; e . l += 4 ; r [ 0 ] &= 252 ; var n = a === 0 ? Sr ( [ 0 , 0 , 0 , 0 , r [ 0 ] , r [ 1 ] , r [ 2 ] , r [ 3 ] ] , 0 ) : xr ( r , 0 ) >> 2 ; return t ? n / 100 : n } function Dt ( e , r ) { if ( r == null ) r = Lr ( 4 ) ; var t = 0 , a = 0 , n = e * 100 ; if ( e == ( e | 0 ) && e >= - ( 1 << 29 ) && e < 1 << 29 ) { a = 1 } else if ( n == ( n | 0 ) && n >= - ( 1 << 29 ) && n < 1 << 29 ) { a = 1 ; t = 1 } if ( a ) r . _W ( - 4 , ( ( t ? n : e ) << 2 ) + ( t + 2 ) ) ; else throw new Error ( "unsupported RkNumber " + e ) } function _t ( e ) { var r = { s : { } , e : { } } ; r . s . r = e . _R ( 4 ) ; r . e . r = e . _R ( 4 ) ; r . s . c = e . _R ( 4 ) ; r . e . c = e . _R ( 4 ) ; return r } function Ot ( e , r ) { if ( ! r ) r = Lr ( 16 ) ; r . _W ( 4 , e . s . r ) ; r . _W ( 4 , e . e . r ) ; r . _W ( 4 , e . s . c ) ; r . _W ( 4 , e . e . c ) ; return r } var yt = _t ; var Pt = Ot ; function Nt ( e ) { return e . _R ( 8 , "f" ) } function Lt ( e , r ) { return ( r || Lr ( 8 ) ) . _W ( 8 , e , "f" ) } var Mt = { 0 : "#NULL!" , 7 : "#DIV/0!" , 15 : "#VALUE!" , 23 : "#REF!" , 29 : "#NAME?" , 36 : "#NUM!" , 42 : "#N/A" , 43 : "#GETTING_DATA" , 255 : "#WTF?" } ; var Ut = G ( Mt ) ; function Wt ( e ) { var r = { } ; var t = e . _R ( 1 ) ; var a = t >>> 1 ; var n = e . _R ( 1 ) ; var i = e . _R ( 2 , "i" ) ; var s = e . _R ( 1 ) ; var l = e . _R ( 1 ) ; var c = e . _R ( 1 ) ; e . l ++ ; switch ( a ) { case 0 : r . auto = 1 ; break ; case 1 : r . index = n ; var f = ua [ n ] ; if ( f ) r . rgb = Tl ( f ) ; break ; case 2 : r . rgb = Tl ( [ s , l , c ] ) ; break ; case 3 : r . theme = n ; break ; } if ( i != 0 ) r . tint = i > 0 ? i / 32767 : i / 32768 ; return r } function Vt ( e , r ) { if ( ! r ) r = Lr ( 8 ) ; if ( ! e || e . auto ) { r . _W ( 4 , 0 ) ; r . _W ( 4 , 0 ) ; return r } if ( e . index ) { r . _W ( 1 , 2 ) ; r . _W ( 1 , e . index ) } else if ( e . theme ) { r . _W ( 1 , 6 ) ; r . _W ( 1 , e . theme ) } else { r . _W ( 1 , 5 ) ; r . _W ( 1 , 0 ) } var t = e . tint || 0 ; if ( t > 0 ) t *= 32767 ; else if ( t < 0 ) t *= 32768 ; r . _W ( 2 , t ) ; if ( ! e . rgb ) { r . _W ( 2 , 0 ) ; r . _W ( 1 , 0 ) ; r . _W ( 1 , 0 ) } else { var a = e . rgb || "FFFFFF" ; r . _W ( 1 , parseInt ( a . slice ( 0 , 2 ) , 16 ) ) ; r . _W ( 1 , parseInt ( a . slice ( 2 , 4 ) , 16 ) ) ; r . _W ( 1 , parseInt ( a . slice ( 4 , 6 ) , 16 ) ) ; r . _W ( 1 , 255 ) } return r } function Ht ( e ) { var r = e . _R ( 1 ) ; e . l ++ ; var t = { fItalic : r & 2 , fStrikeout : r & 8 , fOutline : r & 16 , fShadow : r & 32 , fCondense : r & 64 , fExtend : r & 128 } ; return t } function Xt ( e , r ) { if ( ! r ) r = Lr ( 2 ) ; var t = ( e . italic ? 2 : 0 ) | ( e . strike ? 8 : 0 ) | (
var i = "sbcs-cont" ; var s = t ; if ( a && a . biff >= 8 ) t = 1200 ; if ( ! a || a . biff == 8 ) { var l = e . _R ( 1 ) ; if ( l ) { i = "dbcs-cont" } } else if ( a . biff == 12 ) { i = "wstr" } if ( a . biff >= 2 && a . biff <= 5 ) i = "cpstr" ; var c = n ? e . _R ( n , i ) : "" ; t = s ; return c } function xn ( e ) { var r = t ; t = 1200 ; var a = e . _R ( 2 ) , n = e . _R ( 1 ) ; var i = n & 4 , s = n & 8 ; var l = 1 + ( n & 1 ) ; var c = 0 , f ; var o = { } ; if ( s ) c = e . _R ( 2 ) ; if ( i ) f = e . _R ( 4 ) ; var u = l == 2 ? "dbcs-cont" : "sbcs-cont" ; var h = a === 0 ? "" : e . _R ( a , u ) ; if ( s ) e . l += 4 * c ; if ( i ) e . l += f ; o . t = h ; if ( ! s ) { o . raw = "<t>" + o . t + "</t>" ; o . r = o . t } t = r ; return o } function An ( e , r , t ) { var a ; if ( t ) { if ( t . biff >= 2 && t . biff <= 5 ) return e . _R ( r , "cpstr" ) ; if ( t . biff >= 12 ) return e . _R ( r , "dbcs-cont" ) } var n = e . _R ( 1 ) ; if ( n === 0 ) { a = e . _R ( r , "sbcs-cont" ) } else { a = e . _R ( r , "dbcs-cont" ) } return a } function Rn ( e , r , t ) { var a = e . _R ( t && t . biff == 2 ? 1 : 2 ) ; if ( a === 0 ) { e . l ++ ; return "" } return An ( e , a , t ) } function Fn ( e , r , t ) { if ( t . biff > 5 ) return Rn ( e , r , t ) ; var a = e . _R ( 1 ) ; if ( a === 0 ) { e . l ++ ; return "" } return e . _R ( a , t . biff <= 4 || ! e . lens ? "cpstr" : "sbcs-cont" ) } function Dn ( e , r , t ) { if ( ! t ) t = Lr ( 3 + 2 * e . length ) ; t . _W ( 2 , e . length ) ; t . _W ( 1 , 1 ) ; t . _W ( 31 , e , "utf16le" ) ; return t } function _n ( e ) { var r = e . _R ( 1 ) ; e . l ++ ; var t = e . _R ( 2 ) ; e . l += 2 ; return [ r , t ] } function On ( e ) { var r = e . _R ( 4 ) , t = e . l ; var a = false ; if ( r > 24 ) { e . l += r - 24 ; if ( e . _R ( 16 ) === "795881f43b1d7f48af2c825dc4852763" ) a = true ; e . l = t } var n = e . _R ( ( a ? r - 24 : r ) >> 1 , "utf16le" ) . replace ( x , "" ) ; if ( a ) e . l += 24 ; return n } function yn ( e ) { e . l += 2 ; var r = e . _R ( 0 , "lpstr-ansi" ) ; e . l += 2 ; if ( e . _R ( 2 ) != 57005 ) throw new Error ( "Bad FileMoniker" ) ; var t = e . _R ( 4 ) ; if ( t === 0 ) return r . replace ( /\\/g , "/" ) ; var a = e . _R ( 4 ) ; if ( e . _R ( 2 ) != 3 ) throw new Error ( "Bad FileMoniker" ) ; var n = e . _R ( a >> 1 , "utf16le" ) . replace ( x , "" ) ; return n } function Pn ( e , r ) { var t = e . _R ( 16 ) ; r -= 16 ; switch ( t ) { case "e0c9ea79f9bace118c8200aa004ba90b" : return On ( e , r ) ; case "0303000000000000c000000000000046" : return yn ( e , r ) ; default : throw new Error ( "Unsupported Moniker " + t ) ; } } function Nn ( e ) { var r = e . _R ( 4 ) ; var t = r > 0 ? e . _R ( r , "utf16le" ) . replace ( x , "" ) : "" ; return t } function Ln ( e , r ) { var t = e . l + r ; var a = e . _R ( 4 ) ; if ( a !== 2 ) throw new Error ( "Unrecognized streamVersion: " + a ) ; var n = e . _R ( 2 ) ; e . l += 2 ; var i , s , l , c , f = "" , o , u ; if ( n & 16 ) i = Nn ( e , t - e . l ) ; if ( n & 128 ) s = Nn ( e , t - e . l ) ; if ( ( n & 257 ) === 257 ) l = Nn ( e , t - e . l ) ; if ( ( n & 257 ) === 1 ) c = Pn ( e , t - e . l ) ; if ( n & 8 ) f = Nn ( e , t - e . l ) ; if ( n & 32 ) o = e . _R ( 16 ) ; if ( n & 64 ) u = Za ( e ) ; e . l = t ; var h = s || l || c || "" ; if ( h && f ) h += "#" + f ; if ( ! h ) h = "#" + f ; var d = { Target : h } ; if ( o ) d . guid = o ; if ( u ) d . time = u ; if ( i ) d . Tooltip = i ; return d } function Mn ( e ) { var r = Lr ( 512 ) , t = 0 ; var a = e . Target ; var n = a . indexOf ( "#" ) > - 1 ? 31 : 23 ; switch ( a . charAt ( 0 ) ) { case "#" : n = 28 ; break ; case "." : n &= ~ 2 ; break ; } r . _W ( 4 , 2 ) ; r . _W ( 4 , n ) ; var i = [ 8 , 6815827 , 6619237 , 4849780 , 83 ] ; for ( t = 0 ; t < i . length ; ++ t ) r . _W ( 4 , i [ t ] ) ; if ( n == 28 ) { a = a . slice ( 1 ) ; r . _W ( 4 , a . length + 1 ) ; for ( t = 0 ; t < a . length ; ++ t ) r . _W ( 2 , a . charCodeAt ( t ) ) ; r . _W ( 2 , 0 ) } else if ( n & 2 ) { i = "e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b" . split ( " " ) ; for ( t = 0 ; t < i . length ; ++ t ) r . _W ( 1 , parseInt ( i [ t ] , 16 ) ) ; r . _W ( 4 , 2 * ( a . length + 1 ) ) ; for ( t = 0 ; t < a . length ; ++ t ) r . _W ( 2 , a . charCodeAt ( t ) ) ; r . _W ( 2 , 0 ) } else { i = "03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46" . split ( " " ) ; for ( t = 0 ; t < i . length ; ++ t ) r . _W ( 1 , parseInt ( i [ t ] , 16 ) ) ; var s = 0 ; while ( a . slice ( s * 3 , s * 3 + 3 ) == "../" || a . slice ( s * 3 , s * 3 + 3 ) == "..\\" ) ++ s ; r . _W ( 2 , s ) ; r . _W ( 4 , a . length + 1 ) ; for ( t = 0 ; t < a . length ; ++ t ) r . _W ( 1 , a . charCodeAt ( t ) & 255 ) ; r . _W ( 1 , 0 ) ; r . _W ( 2 , 65535 ) ; r . _W ( 2 , 57005 ) ; for ( t = 0 ; t < 6 ; ++ t ) r . _W ( 4 , 0 ) } return r . slice ( 0 , r . l ) } function Un ( e ) { var r = e . _R ( 1 ) , t = e . _R ( 1 ) , a = e . _R ( 1 ) , n = e . _R ( 1 ) ; return [ r , t , a , n ] } function Wn ( e , r ) { var t = Un ( e , r ) ; t [ 3 ] = 0 ; return t } function Vn ( e ) { var r = e . _R ( 2 ) ; var t = e . _R ( 2 ) ; var a = e . _R ( 2 ) ; return { r : r , c : t , ixfe : a } } function Hn ( e , r , t , a ) { if ( ! a ) a = Lr ( 6 ) ; a . _W ( 2 , e ) ; a . _W ( 2 , r ) ; a . _W ( 2 , t || 0 ) ; return a } function Xn ( e ) { var r = e . _R ( 2 ) ; var t = e . _R ( 2 ) ; e . l += 8 ; return { type : r , flags : t } } function Gn ( e , r , t ) { return r === 0 ? "" : Fn ( e , r , t ) } function zn ( e , r , t ) { var a = t . biff > 8 ? 4 : 2 ; var n = e . _R ( a ) , i = e . _R ( a , "i" ) , s = e . _R ( a , "i" ) ; return [ n , i , s ] } function jn ( e ) { var r = e . _R ( 2 ) ; var t = Ft ( e ) ; return [ r , t ] } function Kn ( e , r , t ) { e . l += 4 ; r -= 4 ; var a = e . l + r ; var n = In ( e , r , t ) ; var i = e . _R ( 2 ) ; a -= e . l ; if ( i !== a ) throw new Error ( "Malformed AddinUdf: padding = " + a + " != " + i ) ; e . l += i ; return n } function Yn ( e ) { var r = e . _R ( 2 ) ; var t = e . _R ( 2 ) ; var a = e . _R ( 2 ) ; var n = e . _R ( 2 ) ; return { s : { c : a , r : r } , e : { c : n , r : t } } } function $n ( e , r ) { if ( ! r ) r = Lr ( 8 ) ; r . _W ( 2 , e . s . r ) ; r . _W ( 2 , e . e . r ) ; r . _W ( 2 , e . s . c ) ; r . _W ( 2 , e . e . c ) ; return r } function Qn ( e ) { var r = e . _R
s . push ( [ r [ i ] , i ] ) } } s . sort ( function ( e , r ) { return e [ 0 ] - r [ 0 ] || a [ e [ 1 ] ] - a [ r [ 1 ] ] } ) ; return t [ s . pop ( ) [ 1 ] ] } function i ( e , r ) { var t = r || { } ; var a = "" ; if ( b != null && t . dense == null ) t . dense = b ; var i = t . dense ? [ ] : { } ; var s = { s : { c : 0 , r : 0 } , e : { c : 0 , r : 0 } } ; if ( e . slice ( 0 , 4 ) == "sep=" && e . charCodeAt ( 5 ) == 10 ) { a = e . charAt ( 4 ) ; e = e . slice ( 6 ) } else a = n ( e . slice ( 0 , 1024 ) ) ; var l = 0 , c = 0 , f = 0 ; var o = 0 , u = 0 , h = a . charCodeAt ( 0 ) , d = false , v = 0 ; e = e . replace ( /\r\n/gm , "\n" ) ; var p = t . dateNF != null ? O ( t . dateNF ) : null ; function m ( ) { var r = e . slice ( o , u ) ; var a = { } ; if ( r . charAt ( 0 ) == '"' && r . charAt ( r . length - 1 ) == '"' ) r = r . slice ( 1 , - 1 ) . replace ( /""/g , '"' ) ; if ( r . length === 0 ) a . t = "z" ; else if ( t . raw ) { a . t = "s" ; a . v = r } else if ( r . trim ( ) . length === 0 ) { a . t = "s" ; a . v = r } else if ( r . charCodeAt ( 0 ) == 61 ) { if ( r . charCodeAt ( 1 ) == 34 && r . charCodeAt ( r . length - 1 ) == 34 ) { a . t = "s" ; a . v = r . slice ( 2 , - 1 ) . replace ( /""/g , '"' ) } else if ( Tf ( r ) ) { a . t = "n" ; a . f = r . slice ( 1 ) } else { a . t = "s" ; a . v = r } } else if ( r == "TRUE" ) { a . t = "b" ; a . v = true } else if ( r == "FALSE" ) { a . t = "b" ; a . v = false } else if ( ! isNaN ( f = ae ( r ) ) ) { a . t = "n" ; if ( t . cellText !== false ) a . w = r ; a . v = f } else if ( ! isNaN ( ne ( r ) . getDate ( ) ) || p && r . match ( p ) ) { a . z = t . dateNF || R . _table [ 14 ] ; var n = 0 ; if ( p && r . match ( p ) ) { r = y ( r , t . dateNF , r . match ( p ) || [ ] ) ; n = 1 } if ( t . cellDates ) { a . t = "d" ; a . v = q ( r , n ) } else { a . t = "n" ; a . v = Y ( q ( r , n ) ) } if ( t . cellText !== false ) a . w = R . format ( a . z , a . v instanceof Date ? Y ( a . v ) : a . v ) ; if ( ! t . cellNF ) delete a . z } else { a . t = "s" ; a . v = r } if ( a . t == "z" ) { } else if ( t . dense ) { if ( ! i [ l ] ) i [ l ] = [ ] ; i [ l ] [ c ] = a } else i [ at ( { c : c , r : l } ) ] = a ; o = u + 1 ; if ( s . e . c < c ) s . e . c = c ; if ( s . e . r < l ) s . e . r = l ; if ( v == h ) ++ c ; else { c = 0 ; ++ l } } for ( ; u < e . length ; ++ u ) switch ( v = e . charCodeAt ( u ) ) { case 34 : d = ! d ; break ; case h : ; case 10 : ; case 13 : if ( ! d ) m ( ) ; break ; default : break ; } if ( u - o > 0 ) m ( ) ; i [ "!ref" ] = it ( s ) ; return i } function s ( e , t ) { if ( e . slice ( 0 , 4 ) == "sep=" ) return i ( e , t ) ; if ( e . indexOf ( "\t" ) >= 0 || e . indexOf ( "," ) >= 0 || e . indexOf ( ";" ) >= 0 ) return i ( e , t ) ; return ut ( r ( e , t ) , t ) } function l ( e , r ) { var t = "" , a = r . type == "string" ? [ 0 , 0 , 0 , 0 ] : Cp ( e , r ) ; switch ( r . type ) { case "base64" : t = g . decode ( e ) ; break ; case "binary" : t = e ; break ; case "buffer" : t = e . toString ( "binary" ) ; break ; case "array" : t = ee ( e ) ; break ; case "string" : t = e ; break ; default : throw new Error ( "Unrecognized type " + r . type ) ; } if ( a [ 0 ] == 239 && a [ 1 ] == 187 && a [ 2 ] == 191 ) t = Ne ( t . slice ( 3 ) ) ; else if ( ( r . type == "binary" || r . type == "buffer" ) && typeof cptable !== "undefined" && r . codepage ) t = cptable . utils . decode ( r . codepage , cptable . utils . encode ( 1252 , t ) ) ; if ( t . slice ( 0 , 19 ) == "socialcalc:version:" ) return ys . to _sheet ( r . type == "string" ? t : Ne ( t ) , r ) ; return s ( t , r ) } function c ( e , r ) { return ft ( l ( e , r ) , r ) } function f ( e ) { var r = [ ] ; var t = st ( e [ "!ref" ] ) , a ; var n = Array . isArray ( e ) ; for ( var i = t . s . r ; i <= t . e . r ; ++ i ) { var s = [ ] ; for ( var l = t . s . c ; l <= t . e . c ; ++ l ) { var c = at ( { r : i , c : l } ) ; a = n ? ( e [ i ] || [ ] ) [ l ] : e [ c ] ; if ( ! a || a . v == null ) { s . push ( " " ) ; continue } var f = ( a . w || ( ct ( a ) , a . w ) || "" ) . slice ( 0 , 10 ) ; while ( f . length < 10 ) f += " " ; s . push ( f + ( l === 0 ? " " : "" ) ) } r . push ( s . join ( "" ) ) } return r . join ( "\n" ) } return { to _workbook : c , to _sheet : l , from _sheet : f } } ( ) ; function Ns ( e , r ) { var t = r || { } , a = ! ! t . WTF ; t . WTF = true ; try { var n = _s . to _workbook ( e , t ) ; t . WTF = a ; return n } catch ( i ) { t . WTF = a ; if ( ! i . message . match ( /SYLK bad record ID/ ) && a ) throw i ; return Ps . to _workbook ( e , r ) } } var Ls = function ( ) { function e ( e , r , t ) { if ( ! e ) return ; Pr ( e , e . l || 0 ) ; var a = t . Enum || E ; while ( e . l < e . length ) { var n = e . _R ( 2 ) ; var i = a [ n ] || a [ 255 ] ; var s = e . _R ( 2 ) ; var l = e . l + s ; var c = ( i . f || Nr ) ( e , s , t ) ; e . l = l ; if ( r ( c , i . n , n ) ) return } } function r ( e , r ) { switch ( r . type ) { case "base64" : return t ( k ( g . decode ( e ) ) , r ) ; case "binary" : return t ( k ( e ) , r ) ; case "buffer" : ; case "array" : return t ( e , r ) ; } throw "Unsupported type " + r . type } function t ( r , t ) { if ( ! r ) return r ; var a = t || { } ; if ( b != null && a . dense == null ) a . dense = b ; var n = a . dense ? [ ] : { } , i = "Sheet1" , s = 0 ; var l = { } , c = [ i ] ; var f = { s : { r : 0 , c : 0 } , e : { r : 0 , c : 0 } } ; if ( r [ 2 ] == 2 ) a . Enum = E ; else if ( r [ 2 ] == 26 ) a . Enum = S ; else if ( r [ 2 ] == 14 ) { a . Enum = S ; a . qpro = true ; r . l = 0 } else throw new Error ( "Unrecognized LOTUS BOF " + r [ 2 ] ) ; e ( r , function ( e , t , o ) { if ( r [ 2 ] == 2 ) switch ( o ) { case 0 : a . vers = e ; if ( e >= 4096 ) a . qpro = true ; break ; case 6 : f = e ; break ; case 15 : if ( ! a . qpro ) e [ 1 ] . v = e [ 1 ] . v . slice ( 1 ) ; case 13 : ; case 14 : ; case 16 : ; case 51 : if ( o == 14 && ( e [ 2 ] & 112 ) == 112 && ( e [ 2 ] & 15 ) > 1 && ( e [ 2 ] & 15 ) < 15 ) { e [ 1 ] . z = a . dateNF || R . _table [ 14 ] ; if ( a . cellDates ) { e [ 1 ] . t = "d" ; e [ 1 ] . v = $ ( e [ 1 ] . v ) } } if ( a . dense ) { if ( ! n [ e [ 0 ] . r ] ) n [ e [ 0 ] . r ] = [ ] ; n [ e [ 0 ] . r ] [ e [ 0 ] . c ] = e [ 1 ] } else n [ at ( e [ 0 ] ) ] = e [ 1 ] ; break ; } else switch ( o ) { case 22 : e [ 1 ] .
switch ( c ) { case 44 : a . NumberFmt [ e [ 0 ] ] = e [ 1 ] ; R . load ( e [ 1 ] , e [ 0 ] ) ; break ; case 43 : a . Fonts . push ( e ) ; if ( e . color . theme != null && r && r . themeElements && r . themeElements . clrScheme ) { e . color . rgb = Al ( r . themeElements . clrScheme [ e . color . theme ] . rgb , e . color . tint || 0 ) } break ; case 1025 : break ; case 45 : break ; case 46 : break ; case 47 : if ( i [ i . length - 1 ] == "BrtBeginCellXFs" ) { a . CellXf . push ( e ) } break ; case 48 : ; case 507 : ; case 572 : ; case 475 : break ; case 1171 : ; case 2102 : ; case 1130 : ; case 512 : ; case 2095 : break ; case 35 : s = true ; break ; case 36 : s = false ; break ; case 37 : i . push ( n ) ; break ; case 38 : i . pop ( ) ; break ; default : if ( ( n || "" ) . indexOf ( "Begin" ) > 0 ) i . push ( n ) ; else if ( ( n || "" ) . indexOf ( "End" ) > 0 ) i . pop ( ) ; else if ( ! s || t . WTF ) throw new Error ( "Unexpected record " + c + " " + n ) ; } } ) ; return a } function gc ( e , r ) { if ( ! r ) return ; var t = 0 ; [ [ 5 , 8 ] , [ 23 , 26 ] , [ 41 , 44 ] , [ 50 , 392 ] ] . forEach ( function ( e ) { for ( var a = e [ 0 ] ; a <= e [ 1 ] ; ++ a ) if ( r [ a ] != null ) ++ t } ) ; if ( t == 0 ) return ; Wr ( e , "BrtBeginFmts" , ht ( t ) ) ; [ [ 5 , 8 ] , [ 23 , 26 ] , [ 41 , 44 ] , [ 50 , 392 ] ] . forEach ( function ( t ) { for ( var a = t [ 0 ] ; a <= t [ 1 ] ; ++ a ) if ( r [ a ] != null ) Wr ( e , "BrtFmt" , ac ( a , r [ a ] ) ) } ) ; Wr ( e , "BrtEndFmts" ) } function Ec ( e ) { var r = 1 ; if ( r == 0 ) return ; Wr ( e , "BrtBeginFonts" , ht ( r ) ) ; Wr ( e , "BrtFont" , ic ( { sz : 12 , color : { theme : 1 } , name : "Calibri" , family : 2 , scheme : "minor" } ) ) ; Wr ( e , "BrtEndFonts" ) } function Sc ( e ) { var r = 2 ; if ( r == 0 ) return ; Wr ( e , "BrtBeginFills" , ht ( r ) ) ; Wr ( e , "BrtFill" , fc ( { patternType : "none" } ) ) ; Wr ( e , "BrtFill" , fc ( { patternType : "gray125" } ) ) ; Wr ( e , "BrtEndFills" ) } function kc ( e ) { var r = 1 ; if ( r == 0 ) return ; Wr ( e , "BrtBeginBorders" , ht ( r ) ) ; Wr ( e , "BrtBorder" , vc ( { } ) ) ; Wr ( e , "BrtEndBorders" ) } function wc ( e ) { var r = 1 ; Wr ( e , "BrtBeginCellStyleXFs" , ht ( r ) ) ; Wr ( e , "BrtXF" , uc ( { numFmtId : 0 , fontId : 0 , fillId : 0 , borderId : 0 } , 65535 ) ) ; Wr ( e , "BrtEndCellStyleXFs" ) } function Bc ( e , r ) { Wr ( e , "BrtBeginCellXFs" , ht ( r . length ) ) ; r . forEach ( function ( r ) { Wr ( e , "BrtXF" , uc ( r , 0 ) ) } ) ; Wr ( e , "BrtEndCellXFs" ) } function Cc ( e ) { var r = 1 ; Wr ( e , "BrtBeginStyles" , ht ( r ) ) ; Wr ( e , "BrtStyle" , pc ( { xfId : 0 , builtinId : 0 , name : "Normal" } ) ) ; Wr ( e , "BrtEndStyles" ) } function Tc ( e ) { var r = 0 ; Wr ( e , "BrtBeginDXFs" , ht ( r ) ) ; Wr ( e , "BrtEndDXFs" ) } function Ic ( e ) { var r = 0 ; Wr ( e , "BrtBeginTableStyles" , bc ( r , "TableStyleMedium9" , "PivotStyleMedium4" ) ) ; Wr ( e , "BrtEndTableStyles" ) } function xc ( ) { return } function Ac ( e , r ) { var t = Ur ( ) ; Wr ( t , "BrtBeginStyleSheet" ) ; gc ( t , e . SSF ) ; Ec ( t , e ) ; Sc ( t , e ) ; kc ( t , e ) ; wc ( t , e ) ; Bc ( t , r . cellXfs ) ; Cc ( t , e ) ; Tc ( t , e ) ; Ic ( t , e ) ; xc ( t , e ) ; Wr ( t , "BrtEndStyleSheet" ) ; return t . end ( ) } Sa . THEME = "http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme" ; function Rc ( e , r , t ) { r . themeElements . clrScheme = [ ] ; var a = { } ; ( e [ 0 ] . match ( ge ) || [ ] ) . forEach ( function ( e ) { var n = ke ( e ) ; switch ( n [ 0 ] ) { case "<a:clrScheme" : ; case "</a:clrScheme>" : break ; case "<a:srgbClr" : a . rgb = n . val ; break ; case "<a:sysClr" : a . rgb = n . lastClr ; break ; case "<a:dk1>" : ; case "</a:dk1>" : ; case "<a:lt1>" : ; case "</a:lt1>" : ; case "<a:dk2>" : ; case "</a:dk2>" : ; case "<a:lt2>" : ; case "</a:lt2>" : ; case "<a:accent1>" : ; case "</a:accent1>" : ; case "<a:accent2>" : ; case "</a:accent2>" : ; case "<a:accent3>" : ; case "</a:accent3>" : ; case "<a:accent4>" : ; case "</a:accent4>" : ; case "<a:accent5>" : ; case "</a:accent5>" : ; case "<a:accent6>" : ; case "</a:accent6>" : ; case "<a:hlink>" : ; case "</a:hlink>" : ; case "<a:folHlink>" : ; case "</a:folHlink>" : if ( n [ 0 ] . charAt ( 1 ) === "/" ) { r . themeElements . clrScheme . push ( a ) ; a = { } } else { a . name = n [ 0 ] . slice ( 3 , n [ 0 ] . length - 1 ) } break ; default : if ( t && t . WTF ) throw new Error ( "Unrecognized " + n [ 0 ] + " in clrScheme" ) ; } } ) } function Fc ( ) { } function Dc ( ) { } var _c = /<a:clrScheme([^>]*)>[\s\S]*<\/a:clrScheme>/ ; var Oc = /<a:fontScheme([^>]*)>[\s\S]*<\/a:fontScheme>/ ; var yc = /<a:fmtScheme([^>]*)>[\s\S]*<\/a:fmtScheme>/ ; function Pc ( e , r , t ) { r . themeElements = { } ; var a ; [ [ "clrScheme" , _c , Rc ] , [ "fontScheme" , Oc , Fc ] , [ "fmtScheme" , yc , Dc ] ] . forEach ( function ( n ) { if ( ! ( a = e . match ( n [ 1 ] ) ) ) throw new Error ( n [ 0 ] + " not found in themeElements" ) ; n [ 2 ] ( a , r , t ) } ) } var Nc = /<a:themeElements([^>]*)>[\s\S]*<\/a:themeElements>/ ; function Lc ( e , r ) { if ( ! e || e . length === 0 ) return Lc ( Mc ( ) ) ; var t ; var a = { } ; if ( ! ( t = e . match ( Nc ) ) ) throw new Error ( "themeElements not found in theme" ) ; Pc ( t [ 0 ] , a , r ) ; return a } function Mc ( e , r ) { if ( r && r . themeXLSX ) return r . themeXLSX ; var t = [ be ] ; t [ t . length ] = '<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">' ; t [ t . length ] = "<a:themeElements>" ; t [ t . length ] = ' < a : clrScheme
n = ( i === 24 ? Vo : Ho ) [ i ] } if ( ! n || ! n . f ) { Nr ( e , r ) } else { s . push ( [ n . n , n . f ( e , r , t ) ] ) } } return s } function zo ( e ) { var r = [ ] ; for ( var t = 0 ; t < e . length ; ++ t ) { var a = e [ t ] , n = [ ] ; for ( var i = 0 ; i < a . length ; ++ i ) { var s = a [ i ] ; if ( s ) switch ( s [ 0 ] ) { case 2 : n . push ( '"' + s [ 1 ] . replace ( /"/g , '""' ) + '"' ) ; break ; default : n . push ( s [ 1 ] ) ; } else n . push ( "" ) } r . push ( n . join ( "," ) ) } return r . join ( ";" ) } var jo = { PtgAdd : "+" , PtgConcat : "&" , PtgDiv : "/" , PtgEq : "=" , PtgGe : ">=" , PtgGt : ">" , PtgLe : "<=" , PtgLt : "<" , PtgMul : "*" , PtgNe : "<>" , PtgPower : "^" , PtgSub : "-" } ; function Ko ( e , r ) { if ( ! e && ! ( r && r . biff <= 5 && r . biff >= 2 ) ) throw new Error ( "empty sheet name" ) ; if ( e . indexOf ( " " ) > - 1 ) return "'" + e + "'" ; return e } function Yo ( e , r , t ) { if ( ! e ) return "SH33TJSERR0" ; if ( ! e . XTI ) return "SH33TJSERR6" ; var a = e . XTI [ r ] ; if ( t . biff > 8 && ! e . XTI [ r ] ) return e . SheetNames [ r ] ; if ( t . biff < 8 ) { if ( r > 1e4 ) r -= 65536 ; if ( r < 0 ) r = - r ; return r == 0 ? "" : e . XTI [ r - 1 ] } if ( ! a ) return "SH33TJSERR1" ; var n = "" ; if ( t . biff > 8 ) switch ( e [ a [ 0 ] ] [ 0 ] ) { case 357 : n = a [ 1 ] == - 1 ? "#REF" : e . SheetNames [ a [ 1 ] ] ; return a [ 1 ] == a [ 2 ] ? n : n + ":" + e . SheetNames [ a [ 2 ] ] ; case 358 : if ( t . SID != null ) return e . SheetNames [ t . SID ] ; return "SH33TJSSAME" + e [ a [ 0 ] ] [ 0 ] ; case 355 : ; default : return "SH33TJSSRC" + e [ a [ 0 ] ] [ 0 ] ; } switch ( e [ a [ 0 ] ] [ 0 ] [ 0 ] ) { case 1025 : n = a [ 1 ] == - 1 ? "#REF" : e . SheetNames [ a [ 1 ] ] || "SH33TJSERR3" ; return a [ 1 ] == a [ 2 ] ? n : n + ":" + e . SheetNames [ a [ 2 ] ] ; case 14849 : return "SH33TJSERR8" ; default : if ( ! e [ a [ 0 ] ] [ 0 ] [ 3 ] ) return "SH33TJSERR2" ; n = a [ 1 ] == - 1 ? "#REF" : e [ a [ 0 ] ] [ 0 ] [ 3 ] [ a [ 1 ] ] || "SH33TJSERR4" ; return a [ 1 ] == a [ 2 ] ? n : n + ":" + e [ a [ 0 ] ] [ 0 ] [ 3 ] [ a [ 2 ] ] ; } } function $o ( e , r , t ) { return Ko ( Yo ( e , r , t ) , t ) } function Qo ( e , r , t , a , n ) { var i = { s : { c : 0 , r : 0 } , e : { c : 0 , r : 0 } } ; var s = [ ] , l , c , f , o = 0 , u = 0 , h , d = "" ; if ( ! e [ 0 ] || ! e [ 0 ] [ 0 ] ) return "" ; var v = - 1 , p = "" ; for ( var b = 0 , m = e [ 0 ] . length ; b < m ; ++ b ) { var g = e [ 0 ] [ b ] ; switch ( g [ 0 ] ) { case "PtgUminus" : s . push ( "-" + s . pop ( ) ) ; break ; case "PtgUplus" : s . push ( "+" + s . pop ( ) ) ; break ; case "PtgPercent" : s . push ( s . pop ( ) + "%" ) ; break ; case "PtgAdd" : ; case "PtgConcat" : ; case "PtgDiv" : ; case "PtgEq" : ; case "PtgGe" : ; case "PtgGt" : ; case "PtgLe" : ; case "PtgLt" : ; case "PtgMul" : ; case "PtgNe" : ; case "PtgPower" : ; case "PtgSub" : l = s . pop ( ) ; c = s . pop ( ) ; if ( v >= 0 ) { switch ( e [ 0 ] [ v ] [ 1 ] [ 0 ] ) { case 0 : p = te ( " " , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) ; break ; case 1 : p = te ( "\r" , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) ; break ; default : p = "" ; if ( n . WTF ) throw new Error ( "Unexpected PtgAttrSpaceType " + e [ 0 ] [ v ] [ 1 ] [ 0 ] ) ; } c = c + p ; v = - 1 } s . push ( c + jo [ g [ 0 ] ] + l ) ; break ; case "PtgIsect" : l = s . pop ( ) ; c = s . pop ( ) ; s . push ( c + " " + l ) ; break ; case "PtgUnion" : l = s . pop ( ) ; c = s . pop ( ) ; s . push ( c + "," + l ) ; break ; case "PtgRange" : l = s . pop ( ) ; c = s . pop ( ) ; s . push ( c + ":" + l ) ; break ; case "PtgAttrChoose" : break ; case "PtgAttrGoto" : break ; case "PtgAttrIf" : break ; case "PtgAttrIfError" : break ; case "PtgRef" : f = Vr ( g [ 1 ] [ 1 ] , i , n ) ; s . push ( Xr ( f ) ) ; break ; case "PtgRefN" : f = t ? Vr ( g [ 1 ] [ 1 ] , t , n ) : g [ 1 ] [ 1 ] ; s . push ( Xr ( f ) ) ; break ; case "PtgRef3d" : o = g [ 1 ] [ 1 ] ; f = Vr ( g [ 1 ] [ 2 ] , i , n ) ; d = $o ( a , o , n ) ; var E = d ; s . push ( d + "!" + Xr ( f ) ) ; break ; case "PtgFunc" : ; case "PtgFuncVar" : var S = g [ 1 ] [ 0 ] , k = g [ 1 ] [ 1 ] ; if ( ! S ) S = 0 ; var w = S == 0 ? [ ] : s . slice ( - S ) ; s . length -= S ; if ( k === "User" ) k = w . shift ( ) ; s . push ( k + "(" + w . join ( "," ) + ")" ) ; break ; case "PtgBool" : s . push ( g [ 1 ] ? "TRUE" : "FALSE" ) ; break ; case "PtgInt" : s . push ( g [ 1 ] ) ; break ; case "PtgNum" : s . push ( String ( g [ 1 ] ) ) ; break ; case "PtgStr" : s . push ( '"' + g [ 1 ] + '"' ) ; break ; case "PtgErr" : s . push ( g [ 1 ] ) ; break ; case "PtgAreaN" : h = Hr ( g [ 1 ] [ 1 ] , t ? { s : t } : i , n ) ; s . push ( Gr ( h , n ) ) ; break ; case "PtgArea" : h = Hr ( g [ 1 ] [ 1 ] , i , n ) ; s . push ( Gr ( h , n ) ) ; break ; case "PtgArea3d" : o = g [ 1 ] [ 1 ] ; h = g [ 1 ] [ 2 ] ; d = $o ( a , o , n ) ; s . push ( d + "!" + Gr ( h , n ) ) ; break ; case "PtgAttrSum" : s . push ( "SUM(" + s . pop ( ) + ")" ) ; break ; case "PtgAttrSemi" : break ; case "PtgName" : u = g [ 1 ] [ 2 ] ; var B = ( a . names || [ ] ) [ u - 1 ] || ( a [ 0 ] || [ ] ) [ u ] ; var C = B ? B . Name : "SH33TJSNAME" + String ( u ) ; if ( C in uu ) C = uu [ C ] ; s . push ( C ) ; break ; case "PtgNameX" : var T = g [ 1 ] [ 1 ] ; u = g [ 1 ] [ 2 ] ; var I ; if ( n . biff <= 5 ) { if ( T < 0 ) T = - T ; if ( a [ T ] ) I = a [ T ] [ u ] } else { var x = "" ; if ( ( ( a [ T ] || [ ] ) [ 0 ] || [ ] ) [ 0 ] == 14849 ) { } else if ( ( ( a [ T ] || [ ] ) [ 0 ] || [ ] ) [ 0 ] == 1025 ) { if ( a [ T ] [ u ] && a [ T ] [ u ] . itab > 0 ) { x = a . SheetNames [ a [ T ] [ u ] . itab - 1 ] + "!" } } else x = a . SheetNames [ u - 1 ] + "!" ; if ( a [ T ] && a [ T ] [ u ] ) x += a [ T ] [ u ] . Name ; else if ( a [ 0 ] && a [ 0 ] [ u ] ) x += a [ 0 ] [ u ] . Name ; else x += "SH33TJSERRX" ; s . push ( x ) ; break } if ( ! I ) I = { Name : "SH33TJSERRY" } ; s . push ( I . Name ) ; break ; case "PtgParen" : var A = "(" , R = ")" ; if ( v >= 0 ) { p = "" ; switch ( e [ 0 ] [ v ] [ 1 ] [ 0 ] ) { case 2 : A = te ( " " , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) + A ; break ; case 3 : A = te ( "\r" , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) + A ; break ; case 4 : R = te ( " " , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) + R ; break ; case 5 : R = te ( "\r" , e [ 0 ] [ v ] [ 1 ] [ 1 ] ) + R ; break ; default : if ( n . WTF ) throw
} else { if ( ! e [ o ] ) e [ o ] = { t : "z" , v : undefined } ; e [ o ] . l = i } } } } function Mu ( e ) { var r = { } ; [ "left" , "right" , "top" , "bottom" , "header" , "footer" ] . forEach ( function ( t ) { if ( e [ t ] ) r [ t ] = parseFloat ( e [ t ] ) } ) ; return r } function Uu ( e ) { Su ( e ) ; return Qe ( "pageMargins" , null , e ) } function Wu ( e , r ) { var t = false ; for ( var a = 0 ; a != r . length ; ++ a ) { var n = ke ( r [ a ] , true ) ; if ( n . hidden ) n . hidden = Pe ( n . hidden ) ; var i = parseInt ( n . min , 10 ) - 1 , s = parseInt ( n . max , 10 ) - 1 ; delete n . min ; delete n . max ; n . width = + n . width ; if ( ! t && n . width ) { t = true ; Ll ( n . width ) } Ml ( n ) ; while ( i <= s ) e [ i ++ ] = re ( n ) } } function Vu ( e , r ) { var t = [ "<cols>" ] , a ; for ( var n = 0 ; n != r . length ; ++ n ) { if ( ! ( a = r [ n ] ) ) continue ; t [ t . length ] = Qe ( "col" , null , Eu ( n , a ) ) } t [ t . length ] = "</cols>" ; return t . join ( "" ) } function Hu ( e ) { var r = { ref : ( e . match ( /ref="([^"]*)"/ ) || [ ] ) [ 1 ] } ; return r } function Xu ( e ) { return Qe ( "autoFilter" , null , { ref : e . ref } ) } var Gu = /<(?:\w:)?sheetView(?:[^>a-z][^>]*)?\/>/ ; function zu ( e , r ) { ( e . match ( Gu ) || [ ] ) . forEach ( function ( e ) { var t = ke ( e ) ; if ( Pe ( t . rightToLeft ) ) { if ( ! r . Views ) r . Views = [ { } ] ; if ( ! r . Views [ 0 ] ) r . Views [ 0 ] = { } ; r . Views [ 0 ] . RTL = true } } ) } function ju ( e , r , t , a ) { var n = { workbookViewId : "0" } ; if ( ( ( ( a || { } ) . Workbook || { } ) . Views || [ ] ) [ 0 ] ) n . rightToLeft = a . Workbook . Views [ 0 ] . RTL ? "1" : "0" ; return Qe ( "sheetViews" , Qe ( "sheetView" , null , n ) , { } ) } function Ku ( e , r , t , a ) { if ( e . v === undefined && e . f === undefined || e . t === "z" ) return "" ; var n = "" ; var i = e . t , s = e . v ; switch ( e . t ) { case "b" : n = e . v ? "1" : "0" ; break ; case "n" : n = "" + e . v ; break ; case "e" : n = Mt [ e . v ] ; break ; case "d" : if ( a . cellDates ) n = q ( e . v , - 1 ) . toISOString ( ) ; else { e = re ( e ) ; e . t = "n" ; n = "" + ( e . v = Y ( q ( e . v ) ) ) } if ( typeof e . z === "undefined" ) e . z = R . _table [ 14 ] ; break ; default : n = e . v ; break ; } var l = Ye ( "v" , Ae ( n ) ) , c = { r : r } ; var f = ku ( a . cellXfs , e , a ) ; if ( f !== 0 ) c . s = f ; switch ( e . t ) { case "n" : break ; case "d" : c . t = "d" ; break ; case "b" : c . t = "b" ; break ; case "e" : c . t = "e" ; break ; default : if ( e . v == null ) { delete e . t ; break } if ( a . bookSST ) { l = Ye ( "v" , "" + gu ( a . Strings , e . v ) ) ; c . t = "s" ; break } c . t = "str" ; break ; } if ( e . t != i ) { e . t = i ; e . v = s } if ( e . f ) { var o = e . F && e . F . slice ( 0 , r . length ) == r ? { t : "array" , ref : e . F } : null ; l = Qe ( "f" , Ae ( e . f ) , o ) + ( e . v != null ? l : "" ) } if ( e . l ) t [ "!links" ] . push ( [ r , e . l ] ) ; if ( e . c ) t [ "!comments" ] . push ( [ r , e . c ] ) ; return Qe ( "c" , l , c ) } var Yu = function ( ) { var e = /<(?:\w+:)?c[ >]/ , r = /<\/(?:\w+:)?row>/ ; var t = /r=["']([^"']*)["']/ , a = /<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/ ; var n = /ref=["']([^"']*)["']/ ; var i = Ve ( "v" ) , s = Ve ( "f" ) ; return function l ( c , f , o , u , h , d ) { var v = 0 , p = "" , b = [ ] , m = [ ] , g = 0 , E = 0 , S = 0 , k = "" , w ; var B , C = 0 , T = 0 ; var I , x ; var A = 0 , F = 0 ; var D = Array . isArray ( d . CellXf ) , _ ; var O = [ ] ; var y = [ ] ; var P = Array . isArray ( f ) ; var N = [ ] , L = { } , M = false ; for ( var U = c . split ( r ) , W = 0 , V = U . length ; W != V ; ++ W ) { p = U [ W ] . trim ( ) ; var H = p . length ; if ( H === 0 ) continue ; for ( v = 0 ; v < H ; ++ v ) if ( p . charCodeAt ( v ) === 62 ) break ; ++ v ; B = ke ( p . slice ( 0 , v ) , true ) ; C = B . r != null ? parseInt ( B . r , 10 ) : C + 1 ; T = - 1 ; if ( o . sheetRows && o . sheetRows < C ) continue ; if ( u . s . r > C - 1 ) u . s . r = C - 1 ; if ( u . e . r < C - 1 ) u . e . r = C - 1 ; if ( o && o . cellStyles ) { L = { } ; M = false ; if ( B . ht ) { M = true ; L . hpt = parseFloat ( B . ht ) ; L . hpx = Hl ( L . hpt ) } if ( B . hidden == "1" ) { M = true ; L . hidden = true } if ( B . outlineLevel != null ) { M = true ; L . level = + B . outlineLevel } if ( M ) N [ C - 1 ] = L } b = p . slice ( v ) . split ( e ) ; for ( v = 0 ; v != b . length ; ++ v ) { p = b [ v ] . trim ( ) ; if ( p . length === 0 ) continue ; m = p . match ( t ) ; g = v ; E = 0 ; S = 0 ; p = "<c " + ( p . slice ( 0 , 1 ) == "<" ? ">" : "" ) + p ; if ( m != null && m . length === 2 ) { g = 0 ; k = m [ 1 ] ; for ( E = 0 ; E != k . length ; ++ E ) { if ( ( S = k . charCodeAt ( E ) - 64 ) < 1 || S > 26 ) break ; g = 26 * g + S } -- g ; T = g } else ++ T ; for ( E = 0 ; E != p . length ; ++ E ) if ( p . charCodeAt ( E ) === 62 ) break ; ++ E ; B = ke ( p . slice ( 0 , E ) , true ) ; if ( ! B . r ) B . r = at ( { r : C - 1 , c : T } ) ; k = p . slice ( E ) ; w = { t : "" } ; if ( ( m = k . match ( i ) ) != null && m [ 1 ] !== "" ) w . v = Te ( m [ 1 ] ) ; if ( o . cellFormula ) { if ( ( m = k . match ( s ) ) != null && m [ 1 ] !== "" ) { w . f = If ( Te ( Ne ( m [ 1 ] ) ) ) ; if ( m [ 0 ] . indexOf ( 't="array"' ) > - 1 ) { w . F = ( k . match ( n ) || [ ] ) [ 1 ] ; if ( w . F . indexOf ( ":" ) > - 1 ) O . push ( [ st ( w . F ) , w . F ] ) } else if ( m [ 0 ] . indexOf ( 't="shared"' ) > - 1 ) { x = ke ( m [ 0 ] ) ; y [ parseInt ( x . si , 10 ) ] = [ x , If ( Te ( Ne ( m [ 1 ] ) ) ) ] } } else if ( m = k . match ( /<f[^>]*\/>/ ) ) { x = ke ( m [ 0 ] ) ; if ( y [ x . si ] ) w . f = Cf ( y [ x . si ] [ 1 ] , y [ x . si ] [ 0 ] . ref , B . r ) } var X = tt ( B . r ) ; for ( E = 0 ; E < O . length ; ++ E ) if ( X . r >= O [ E ] [ 0 ] . s . r && X . r <= O [ E ] [ 0 ] . e . r ) if ( X . c >= O [ E ] [ 0 ] . s . c && X . c <= O [ E ] [ 0 ] . e . c ) w . F = O [ E ] [ 1 ] } if ( B . t == null && w . v === undefined ) { if ( w . f || w . F ) { w . v = 0 ; w . t = "n" } else if ( ! o . sheetStubs ) continue ; else w . t = "z" } else w . t = B . t || "n" ; if ( u . s . c > g ) u . s . c = g ; if ( u . e . c < g ) u . e . c = g ; switch ( w . t ) { case "n" : if ( w . v == "" || w . v == null ) { if ( ! o . sheetStubs ) continue ; w . t = "z" } e
if ( r . slice ( - 4 ) === ".bin" ) return rd ( e , a , t , n , i , s , l ) ; return Zh ( e , a , t , n , i , s , l ) } function yd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return gf ( e , a , t , n , i , s , l ) ; return Ef ( e , a , t , n , i , s , l ) } function Pd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return bf ( e , a , t , n , i , s , l ) ; return mf ( e , a , t , n , i , s , l ) } function Nd ( e , r , t , a ) { if ( r . slice ( - 4 ) === ".bin" ) return mc ( e , t , a ) ; return ql ( e , t , a ) } function Ld ( e , r , t ) { return Lc ( e , t ) } function Md ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return Qs ( e , t ) ; return js ( e , t ) } function Ud ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return uf ( e , t ) ; return af ( e , t ) } function Wd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return $c ( e , r , t ) ; return Kc ( e , r , t ) } function Vd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return Jc ( e , r , t ) ; return Qc ( e , r , t ) } function Hd ( e , r , t ) { return ( r . slice ( - 4 ) === ".bin" ? Fd : gd ) ( e , t ) } function Xd ( e , r , t , a , n ) { return ( r . slice ( - 4 ) === ".bin" ? Yh : Ju ) ( e , t , a , n ) } function Gd ( e , r , t , a , n ) { return ( r . slice ( - 4 ) === ".bin" ? td : qh ) ( e , t , a , n ) } function zd ( e , r , t ) { return ( r . slice ( - 4 ) === ".bin" ? Ac : rc ) ( e , t ) } function jd ( e , r , t ) { return ( r . slice ( - 4 ) === ".bin" ? qs : Ys ) ( e , t ) } function Kd ( e , r , t ) { return ( r . slice ( - 4 ) === ".bin" ? hf : sf ) ( e , t ) } var Yd = /([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g ; var $d = /([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/ ; var Qd = function ( e ) { return String . fromCharCode ( e ) } ; function Jd ( e , r ) { var t = e . split ( /\s+/ ) ; var a = [ ] ; if ( ! r ) a [ 0 ] = t [ 0 ] ; if ( t . length === 1 ) return a ; var n = e . match ( Yd ) , i , s , l , c ; if ( n ) for ( c = 0 ; c != n . length ; ++ c ) { i = n [ c ] . match ( $d ) ; if ( ( s = i [ 1 ] . indexOf ( ":" ) ) === - 1 ) a [ i [ 1 ] ] = i [ 2 ] . slice ( 1 , i [ 2 ] . length - 1 ) ; else { if ( i [ 1 ] . slice ( 0 , 6 ) === "xmlns:" ) l = "xmlns" + i [ 1 ] . slice ( 6 ) ; else l = i [ 1 ] . slice ( s + 1 ) ; a [ l ] = i [ 2 ] . slice ( 1 , i [ 2 ] . length - 1 ) } } return a } function Zd ( e ) { var r = e . split ( /\s+/ ) ; var t = { } ; if ( r . length === 1 ) return t ; var a = e . match ( Yd ) , n , i , s , l ; if ( a ) for ( l = 0 ; l != a . length ; ++ l ) { n = a [ l ] . match ( $d ) ; if ( ( i = n [ 1 ] . indexOf ( ":" ) ) === - 1 ) t [ n [ 1 ] ] = n [ 2 ] . slice ( 1 , n [ 2 ] . length - 1 ) ; else { if ( n [ 1 ] . slice ( 0 , 6 ) === "xmlns:" ) s = "xmlns" + n [ 1 ] . slice ( 6 ) ; else s = n [ 1 ] . slice ( i + 1 ) ; t [ s ] = n [ 2 ] . slice ( 1 , n [ 2 ] . length - 1 ) } } return t } function qd ( e , r ) { var t = D [ e ] || Te ( e ) ; if ( t === "General" ) return R . _general ( r ) ; return R . format ( t , r ) } function ev ( e , r , t , a ) { var n = a ; switch ( ( t [ 0 ] . match ( /dt:dt="([\w.]+)"/ ) || [ "" , "" ] ) [ 1 ] ) { case "boolean" : n = Pe ( a ) ; break ; case "i2" : ; case "int" : n = parseInt ( a , 10 ) ; break ; case "r4" : ; case "float" : n = parseFloat ( a ) ; break ; case "date" : ; case "dateTime.tz" : n = q ( a ) ; break ; case "i8" : ; case "string" : ; case "fixed" : ; case "uuid" : ; case "bin.base64" : break ; default : throw new Error ( "bad custprop:" + t [ 0 ] ) ; } e [ Te ( r ) ] = n } function rv ( e , r , t ) { if ( e . t === "z" ) return ; if ( ! t || t . cellText !== false ) try { if ( e . t === "e" ) { e . w = e . w || Mt [ e . v ] } else if ( r === "General" ) { if ( e . t === "n" ) { if ( ( e . v | 0 ) === e . v ) e . w = R . _general _int ( e . v ) ; else e . w = R . _general _num ( e . v ) } else e . w = R . _general ( e . v ) } else e . w = qd ( r || "General" , e . v ) } catch ( a ) { if ( t . WTF ) throw a } try { var n = D [ r ] || r || "General" ; if ( t . cellNF ) e . z = n ; if ( t . cellDates && e . t == "n" && R . is _date ( n ) ) { var i = R . parse _date _code ( e . v ) ; if ( i ) { e . t = "d" ; e . v = new Date ( i . y , i . m - 1 , i . d , i . H , i . M , i . S , i . u ) } } } catch ( a ) { if ( t . WTF ) throw a } } function tv ( e , r , t ) { if ( t . cellStyles ) { if ( r . Interior ) { var a = r . Interior ; if ( a . Pattern ) a . patternType = Xl [ a . Pattern ] || a . Pattern } } e [ r . ID ] = r } function av ( e , r , t , a , n , i , s , l , c , f ) { var o = "General" , u = a . StyleID , h = { } ; f = f || { } ; var d = [ ] ; var v = 0 ; if ( u === undefined && l ) u = l . StyleID ; if ( u === undefined && s ) u = s . StyleID ; while ( i [ u ] !== undefined ) { if ( i [ u ] . nf ) o = i [ u ] . nf ; if ( i [ u ] . Interior ) d . push ( i [ u ] . Interior ) ; if ( ! i [ u ] . Parent ) break ; u = i [ u ] . Parent } switch ( t . Type ) { case "Boolean" : a . t = "b" ; a . v = Pe ( e ) ; break ; case "String" : a . t = "s" ; a . r = Oe ( Te ( e ) ) ; a . v = e . indexOf ( "<" ) > - 1 ? Te ( r ) : a . r ; break ; case "DateTime" : if ( e . slice ( - 1 ) != "Z" ) e += "Z" ; a . v = ( q ( e ) - new Date ( Date . UTC ( 1899 , 11 , 30 ) ) ) / ( 24 * 60 * 60 * 1e3 ) ; if ( a . v !== a . v ) a . v = Te ( e ) ; else if ( a . v < 60 ) a . v = a . v - 1 ; if ( ! o || o == "General" ) o = "yyyy-mm-dd" ; case "Number" : if ( a . v === undefined ) a . v = + e ; if ( ! a . t ) a . t = "n" ; break ; case "Error" : a . t = "e" ; a . v = Ut [ e ] ; if ( f . cellText !== false ) a . w = e ; break ; default : a . t = "s" ; a . v = Oe ( r || e ) ; break ; } rv ( a , o , f ) ; if ( f . cellFormula !== false ) { if ( a . Formula ) { var p = Te ( a . Formula ) ; if ( p . charCodeAt ( 0 ) == 61 ) p = p . slice ( 1 ) ; a . f = Sf ( p , n ) ; delete a . Formula ; if ( a . ArrayRange == "RC" ) a . F = Sf ( "RC:RC" , n ) ; else if ( a . ArrayRange ) { a . F = Sf ( a . ArrayRange , n ) ; c . push ( [ st ( a . F ) , a . F ] ) } } else { for ( v = 0 ; v < c . length ; ++ v ) if ( n . r >= c [ v ] [ 0 ] . s . r && n . r <= c [ v ] [ 0 ] . e . r ) if ( n . c >= c [ v ] [ 0 ] . s . c && n . c <= c [ v ] [ 0 ] . e . c ) a .
Cv ( k , r , t . opts . Date1904 ) ; D ( re . cell , k , r ) ; l = re } break ; case "String" : { if ( l ) { l . val = re ; k = Tv ( re , l . cell . ixfe , "s" ) ; k . XF = C [ k . ixfe ] ; if ( r . cellFormula ) { k . f = "" + Qo ( l . formula , s , l . cell , H , _ ) } if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Cv ( k , r , t . opts . Date1904 ) ; D ( l . cell , k , r ) ; l = null } else throw new Error ( "String record expects Formula" ) } break ; case "Array" : { S . push ( re ) ; var oe = at ( re [ 0 ] . s ) ; v = r . dense ? ( n [ re [ 0 ] . s . r ] || [ ] ) [ re [ 0 ] . s . c ] : n [ oe ] ; if ( r . cellFormula && v ) { if ( ! l ) break ; if ( ! oe || ! v ) break ; v . f = "" + Qo ( re [ 1 ] , s , re [ 0 ] , H , _ ) ; v . F = it ( re [ 0 ] ) } } break ; case "ShrFmla" : { if ( ! B ) break ; if ( ! r . cellFormula ) break ; if ( d ) { if ( ! l ) break ; E [ at ( l . cell ) ] = re [ 0 ] ; v = r . dense ? ( n [ l . cell . r ] || [ ] ) [ l . cell . c ] : n [ at ( l . cell ) ] ; ( v || { } ) . f = "" + Qo ( re [ 0 ] , s , h , H , _ ) } } break ; case "LabelSst" : k = Tv ( c [ re . isst ] . t , re . ixfe , "s" ) ; k . XF = C [ k . ixfe ] ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Cv ( k , r , t . opts . Date1904 ) ; D ( { c : re . c , r : re . r } , k , r ) ; break ; case "Blank" : if ( r . sheetStubs ) { k = { ixfe : re . ixfe , XF : C [ re . ixfe ] , t : "z" } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Cv ( k , r , t . opts . Date1904 ) ; D ( { c : re . c , r : re . r } , k , r ) } break ; case "MulBlank" : if ( r . sheetStubs ) { for ( var ue = re . c ; ue <= re . C ; ++ ue ) { var he = re . ixfe [ ue - re . c ] ; k = { ixfe : he , XF : C [ he ] , t : "z" } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Cv ( k , r , t . opts . Date1904 ) ; D ( { c : ue , r : re . r } , k , r ) } } break ; case "RString" : ; case "Label" : ; case "BIFF2STR" : k = Tv ( re . val , re . ixfe , "s" ) ; k . XF = C [ k . ixfe ] ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Cv ( k , r , t . opts . Date1904 ) ; D ( { c : re . c , r : re . r } , k , r ) ; break ; case "Dimensions" : { if ( G === 1 ) s = re } break ; case "SST" : { c = re } break ; case "Format" : { if ( _ . biff == 4 ) { j [ z ++ ] = re [ 1 ] ; for ( var de = 0 ; de < z + 163 ; ++ de ) if ( R . _table [ de ] == re [ 1 ] ) break ; if ( de >= 163 ) R . load ( re [ 1 ] , z + 163 ) } else R . load ( re [ 1 ] , re [ 0 ] ) } break ; case "BIFF2FORMAT" : { j [ z ++ ] = re ; for ( var ve = 0 ; ve < z + 163 ; ++ ve ) if ( R . _table [ ve ] == re ) break ; if ( ve >= 163 ) R . load ( re , z + 163 ) } break ; case "MergeCells" : y = y . concat ( re ) ; break ; case "Obj" : P [ re . cmo [ 0 ] ] = _ . lastobj = re ; break ; case "TxO" : _ . lastobj . TxO = re ; break ; case "ImData" : _ . lastobj . ImData = re ; break ; case "HLink" : { for ( g = re [ 0 ] . s . r ; g <= re [ 0 ] . e . r ; ++ g ) for ( m = re [ 0 ] . s . c ; m <= re [ 0 ] . e . c ; ++ m ) { v = r . dense ? ( n [ g ] || [ ] ) [ m ] : n [ at ( { c : m , r : g } ) ] ; if ( v ) v . l = re [ 1 ] } } break ; case "HLinkTooltip" : { for ( g = re [ 0 ] . s . r ; g <= re [ 0 ] . e . r ; ++ g ) for ( m = re [ 0 ] . s . c ; m <= re [ 0 ] . e . c ; ++ m ) { v = r . dense ? ( n [ g ] || [ ] ) [ m ] : n [ at ( { c : m , r : g } ) ] ; if ( v ) v . l . Tooltip = re [ 1 ] } } break ; case "Note" : { if ( _ . biff <= 5 && _ . biff >= 2 ) break ; v = r . dense ? ( n [ re [ 0 ] . r ] || [ ] ) [ re [ 0 ] . c ] : n [ at ( re [ 0 ] ) ] ; var pe = P [ re [ 2 ] ] ; if ( ! v ) break ; if ( ! v . c ) v . c = [ ] ; p = { a : re [ 1 ] , t : pe . TxO . t } ; v . c . push ( p ) } break ; default : switch ( q . n ) { case "ClrtClient" : break ; case "XFExt" : jc ( C [ re . ixfe ] , re . ext ) ; break ; case "DefColWidth" : M = re ; break ; case "DefaultRowHeight" : U = re [ 1 ] ; break ; case "ColInfo" : { if ( ! _ . cellStyles ) break ; while ( re . e >= re . s ) { N [ re . e -- ] = { width : re . w / 256 } ; if ( ! W ) { W = true ; Ll ( re . w / 256 ) } Ml ( N [ re . e + 1 ] ) } } break ; case "Row" : { var be = { } ; if ( re . level != null ) { L [ re . r ] = be ; be . level = re . level } if ( re . hidden ) { L [ re . r ] = be ; be . hidden = true } if ( re . hpt ) { L [ re . r ] = be ; be . hpt = re . hpt ; be . hpx = Hl ( re . hpt ) } } break ; case "LeftMargin" : ; case "RightMargin" : ; case "TopMargin" : ; case "BottomMargin" : if ( ! n [ "!margins" ] ) Su ( n [ "!margins" ] = { } ) ; n [ "!margins" ] [ te . slice ( 0 , - 6 ) . toLowerCase ( ) ] = re ; break ; case "Setup" : if ( ! n [ "!margins" ] ) Su ( n [ "!margins" ] = { } ) ; n [ "!margins" ] . header = re . header ; n [ "!margins" ] . footer = re . footer ; break ; case "Window2" : if ( re . RTL ) I . Views [ 0 ] . RTL = true ; break ; case "Header" : break ; case "Footer" : break ; case "HCenter" : break ; case "VCenter" : break ; case "Pls" : break ; case "GCW" : break ; case "LHRecord" : break ; case "DBCell" : break ; case "EntExU2" : break ; case "SxView" : break ; case "Sxvd" : break ; case "SXVI" : break ; case "SXVDEx" : break ; case "SxIvd" : break ; case "SXString" : break ; case "Sync" : break ; case "Addin" : break ; case "SXDI" : break ; case "SXLI" : break ; case "SXEx" : break ; case "QsiSXTag" : break ; case "Selection" : break ; case "Feat" : break ; case "FeatHdr" : ; case "FeatHdr11" : break ; case "Feature11" : ; case "Feature12" : ; case "List12" : break ; case "Country" : w = re ; break ; case "RecalcId" : break ; case "DxGCol" : break ; case "Fbi" : ; case "Fbi2" : ; case "GelFrame" : break ; case "Font" : break ; case "XFCRC" : break ; case "Style" : break ; case "StyleExt" : break ; case "Palette" : T = re ; break ; case "Theme" : O = re ; break ; case "ScenarioProtect" : break ; case "ObjProtect" : break ; case "CondFmt12" : break ; case "Table" : break ; case "TableStyles" : break ; case "TableStyle" : break ; case "TableStyleElement" : break ; case "SXStreamID" : break ; case "SXVS" : break ; case "DConRef" : break ; case "SXAddl" : break ; case "DConBin" : break ; case "DConName" : brea
} , 2127 : { n : "BrtEndModelRelationships" } , 2128 : { n : "BrtModelRelationship" } , 2129 : { n : "BrtBeginECTxtWiz15" } , 2130 : { n : "BrtEndECTxtWiz15" } , 2131 : { n : "BrtBeginECTWFldInfoLst15" } , 2132 : { n : "BrtEndECTWFldInfoLst15" } , 2133 : { n : "BrtBeginECTWFldInfo15" } , 2134 : { n : "BrtFieldListActiveItem" } , 2135 : { n : "BrtPivotCacheIdVersion" } , 2136 : { n : "BrtSXDI15" } , 65535 : { n : "" } } ; var Dv = H ( Fv , "n" ) ; var _v = { 3 : { n : "BIFF2NUM" , f : Cs } , 4 : { n : "BIFF2STR" , f : Bs } , 6 : { n : "Formula" , f : tu } , 9 : { n : "BOF" , f : ni } , 10 : { n : "EOF" , f : bn } , 12 : { n : "CalcCount" , f : kn } , 13 : { n : "CalcMode" , f : kn } , 14 : { n : "CalcPrecision" , f : En } , 15 : { n : "CalcRefMode" , f : En } , 16 : { n : "CalcDelta" , f : Nt } , 17 : { n : "CalcIter" , f : En } , 18 : { n : "Protect" , f : En } , 19 : { n : "Password" , f : kn } , 20 : { n : "Header" , f : Vi } , 21 : { n : "Footer" , f : Vi } , 23 : { n : "ExternSheet" , f : ji } , 24 : { n : "Lbl" , f : zi } , 25 : { n : "WinProtect" , f : En } , 26 : { n : "VerticalPageBreaks" } , 27 : { n : "HorizontalPageBreaks" } , 28 : { n : "Note" , f : qi } , 29 : { n : "Selection" } , 34 : { n : "Date1904" , f : En } , 35 : { n : "ExternName" , f : Xi } , 38 : { n : "LeftMargin" , f : Nt } , 39 : { n : "RightMargin" , f : Nt } , 40 : { n : "TopMargin" , f : Nt } , 41 : { n : "BottomMargin" , f : Nt } , 42 : { n : "PrintRowCol" , f : En } , 43 : { n : "PrintGrid" , f : En } , 47 : { n : "FilePass" , f : wl } , 49 : { n : "Font" , f : wi } , 51 : { n : "PrintSize" , f : kn } , 60 : { n : "Continue" } , 61 : { n : "Window1" , f : gi } , 64 : { n : "Backup" , f : En } , 65 : { n : "Pane" } , 66 : { n : "CodePage" , f : kn } , 77 : { n : "Pls" } , 80 : { n : "DCon" } , 81 : { n : "DConRef" } , 82 : { n : "DConName" } , 85 : { n : "DefColWidth" , f : kn } , 89 : { n : "XCT" } , 90 : { n : "CRN" } , 91 : { n : "FileSharing" } , 92 : { n : "WriteAccess" , f : li } , 93 : { n : "Obj" , f : ts } , 94 : { n : "Uncalced" } , 95 : { n : "CalcSaveRecalc" , f : En } , 96 : { n : "Template" } , 97 : { n : "Intl" } , 99 : { n : "ObjProtect" , f : En } , 125 : { n : "ColInfo" , f : ps } , 128 : { n : "Guts" , f : Pi } , 129 : { n : "WsBool" , f : fi } , 130 : { n : "GridSet" , f : kn } , 131 : { n : "HCenter" , f : En } , 132 : { n : "VCenter" , f : En } , 133 : { n : "BoundSheet8" , f : oi } , 134 : { n : "WriteProtect" } , 140 : { n : "Country" , f : os } , 141 : { n : "HideObj" , f : kn } , 144 : { n : "Sort" } , 146 : { n : "Palette" , f : ds } , 151 : { n : "Sync" } , 152 : { n : "LPr" } , 153 : { n : "DxGCol" } , 154 : { n : "FnGroupName" } , 155 : { n : "FilterMode" } , 156 : { n : "BuiltInFnGroupCount" , f : kn } , 157 : { n : "AutoFilterInfo" } , 158 : { n : "AutoFilter" } , 160 : { n : "Scl" , f : Ss } , 161 : { n : "Setup" , f : bs } , 174 : { n : "ScenMan" } , 175 : { n : "SCENARIO" } , 176 : { n : "SxView" } , 177 : { n : "Sxvd" } , 178 : { n : "SXVI" } , 180 : { n : "SxIvd" } , 181 : { n : "SXLI" } , 182 : { n : "SXPI" } , 184 : { n : "DocRoute" } , 185 : { n : "RecipName" } , 189 : { n : "MulRk" , f : Di } , 190 : { n : "MulBlank" , f : _i } , 193 : { n : "Mms" , f : bn } , 197 : { n : "SXDI" } , 198 : { n : "SXDB" } , 199 : { n : "SXFDB" } , 200 : { n : "SXDBB" } , 201 : { n : "SXNum" } , 202 : { n : "SxBool" , f : En } , 203 : { n : "SxErr" } , 204 : { n : "SXInt" } , 205 : { n : "SXString" } , 206 : { n : "SXDtr" } , 207 : { n : "SxNil" } , 208 : { n : "SXTbl" } , 209 : { n : "SXTBRGIITM" } , 210 : { n : "SxTbpg" } , 211 : { n : "ObProj" } , 213 : { n : "SXStreamID" } , 215 : { n : "DBCell" } , 216 : { n : "SXRng" } , 217 : { n : "SxIsxoper" } , 218 : { n : "BookBool" , f : kn } , 220 : { n : "DbOrParamQry" } , 221 : { n : "ScenarioProtect" , f : En } , 222 : { n : "OleObjectSize" } , 224 : { n : "XF" , f : yi } , 225 : { n : "InterfaceHdr" , f : si } , 226 : { n : "InterfaceEnd" , f : bn } , 227 : { n : "SXVS" } , 229 : { n : "MergeCells" , f : es } , 233 : { n : "BkHim" } , 235 : { n : "MsoDrawingGroup" } , 236 : { n : "MsoDrawing" } , 237 : { n : "MsoDrawingSelection" } , 239 : { n : "PhoneticInfo" } , 240 : { n : "SxRule" } , 241 : { n : "SXEx" } , 242 : { n : "SxFilt" } , 244 : { n : "SxDXF" } , 245 : { n : "SxItm" } , 246 : { n : "SxName" } , 247 : { n : "SxSelect" } , 248 : { n : "SXPair" } , 249 : { n : "SxFmla" } , 251 : { n : "SxFormat" } , 252 : { n : "SST" , f : hi } , 253 : { n : "LabelSst" , f : Bi } , 255 : { n : "ExtSST" , f : di } , 256 : { n : "SXVDEx" } , 259 : { n : "SXFormula" } , 290 : { n : "SXDBEx" } , 311 : { n : "RRDInsDel" } , 312 : { n : "RRDHead" } , 315 : { n : "RRDChgCell" } , 317 : { n : "RRTabId" , f : Bn } , 318 : { n : "RRDRenSheet" } , 319 : { n : "RRSort" } , 320 : { n : "RRDMove" } , 330 : { n : "RRFormat" } , 331 : { n : "RRAutoFmt" } , 333 : { n : "RRInsertSh" } , 334 : { n : "RRDMoveBegin" } , 335 : { n : "RRDMoveEnd" } , 336 : { n : "RRDInsDelBegin" } , 337 : { n : "RRDInsDelEnd" } , 338 : { n : "RRDConflict" } , 339 : { n : "RRDDefName" } , 340 : { n : "RRDRstEtxp" } , 351 : { n : "LRng" } , 352 : { n : "UsesELFs" , f : En } , 353 : { n : "DSF" , f : bn } , 401 : { n : "CUsr" } , 402 : { n : "CbUsr" } , 403 : { n : "UsrInfo" } , 404 : { n : "UsrExcl" } , 405 : { n : "FileLock" } , 406 : { n : "RRDInfo" } , 407 : { n : "BCUsrs" } , 408 : { n : "UsrChk" } , 425 : { n : "UserBView" } , 426 : { n : "UserSViewBegin" } , 427 : { n : "UserSViewEnd" } , 428 : { n : "RRDUserView" } , 429 : { n : "Qsi" } , 430 : { n : "SupBook" , f : Hi } , 431 : { n : "Prot4Rev" , f : En } , 432 : { n : "CondFmt" } , 433 : { n : "CF" } , 434 : { n : "DVal" } , 437 : { n : "DConBin" } , 438 : { n : "TxO" , f : is } , 439 : { n : "RefreshAll" , f : En } , 440 : { n : "HLink" , f : ss } , 441 : { n : "Lel" } , 442 : { n : "CodeName" , f : Rn } , 443 : { n : "SXFDBType" } , 444 : { n : "Prot4RevPass" , f : kn } , 445 : { n : " Ob
"xmlns:script" : "urn:oasis:names:tc:opendocument:xmlns:script:1.0" , "xmlns:ooo" : "http://openoffice.org/2004/office" , "xmlns:ooow" : "http://openoffice.org/2004/writer" , "xmlns:oooc" : "http://openoffice.org/2004/calc" , "xmlns:dom" : "http://www.w3.org/2001/xml-events" , "xmlns:xforms" : "http://www.w3.org/2002/xforms" , "xmlns:xsd" : "http://www.w3.org/2001/XMLSchema" , "xmlns:xsi" : "http://www.w3.org/2001/XMLSchema-instance" , "xmlns:sheet" : "urn:oasis:names:tc:opendocument:sh33tjs:1.0" , "xmlns:rpt" : "http://openoffice.org/2005/report" , "xmlns:of" : "urn:oasis:names:tc:opendocument:xmlns:of:1.2" , "xmlns:xhtml" : "http://www.w3.org/1999/xhtml" , "xmlns:grddl" : "http://www.w3.org/2003/g/data-view#" , "xmlns:tableooo" : "http://openoffice.org/2009/table" , "xmlns:drawooo" : "http://openoffice.org/2010/draw" , "xmlns:calcext" : "urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0" , "xmlns:loext" : "urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0" , "xmlns:field" : "urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" , "xmlns:formx" : "urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0" , "xmlns:css3t" : "http://www.w3.org/TR/css3-text/" , "office:version" : "1.2" } ) ; var s = $e ( { "xmlns:config" : "urn:oasis:names:tc:opendocument:xmlns:config:1.0" , "office:mimetype" : "application/vnd.oasis.opendocument.spreadsheet" } ) ; if ( r . bookType == "fods" ) t . push ( "<office:document" + i + s + ">\n" ) ; else t . push ( "<office:document-content" + i + ">\n" ) ; n ( t ) ; t . push ( " <office:body>\n" ) ; t . push ( " <office:spreadsheet>\n" ) ; for ( var l = 0 ; l != e . SheetNames . length ; ++ l ) t . push ( a ( e . Sheets [ e . SheetNames [ l ] ] , e , l , r ) ) ; t . push ( " </office:spreadsheet>\n" ) ; t . push ( " </office:body>\n" ) ; if ( r . bookType == "fods" ) t . push ( "</office:document>" ) ; else t . push ( "</office:document-content>" ) ; return t . join ( "" ) } } ( ) ; function rp ( e , r ) { if ( r . bookType == "fods" ) return ep ( e , r ) ; var t = new ve ; var a = "" ; var n = [ ] ; var i = [ ] ; a = "mimetype" ; t . file ( a , "application/vnd.oasis.opendocument.spreadsheet" ) ; a = "content.xml" ; t . file ( a , ep ( e , r ) ) ; n . push ( [ a , "text/xml" ] ) ; i . push ( [ a , "ContentFile" ] ) ; a = "styles.xml" ; t . file ( a , qv ( e , r ) ) ; n . push ( [ a , "text/xml" ] ) ; i . push ( [ a , "StylesFile" ] ) ; a = "meta.xml" ; t . file ( a , _a ( ) ) ; n . push ( [ a , "text/xml" ] ) ; i . push ( [ a , "MetadataFile" ] ) ; a = "manifest.rdf" ; t . file ( a , Da ( i ) ) ; n . push ( [ a , "application/rdf+xml" ] ) ; a = "META-INF/manifest.xml" ; t . file ( a , Aa ( n ) ) ; return t } function tp ( e , r ) { if ( ! r ) return 0 ; var t = e . SheetNames . indexOf ( r ) ; if ( t == - 1 ) throw new Error ( "Sheet not found: " + r ) ; return t } function ap ( e ) { return function r ( t , a ) { var n = tp ( t , a . sheet ) ; return e . from _sheet ( t . Sheets [ t . SheetNames [ n ] ] , a , t ) } } var np = ap ( Kv ) ; var ip = ap ( { from _sheet : jp } ) ; var sp = ap ( _s ) ; var lp = ap ( Os ) ; var cp = ap ( Ps ) ; var fp = ap ( Bl ) ; var op = ap ( { from _sheet : Kp } ) ; var up = ap ( Ds ) ; var hp = ap ( ys ) ; function dp ( e ) { return function r ( t ) { for ( var a = 0 ; a != e . length ; ++ a ) { var n = e [ a ] ; if ( t [ n [ 0 ] ] === undefined ) t [ n [ 0 ] ] = n [ 1 ] ; if ( n [ 2 ] === "n" ) t [ n [ 0 ] ] = Number ( t [ n [ 0 ] ] ) } } } var vp = dp ( [ [ "cellNF" , false ] , [ "cellHTML" , true ] , [ "cellFormula" , true ] , [ "cellStyles" , false ] , [ "cellText" , true ] , [ "cellDates" , false ] , [ "sheetStubs" , false ] , [ "sheetRows" , 0 , "n" ] , [ "bookDeps" , false ] , [ "bookSheets" , false ] , [ "bookProps" , false ] , [ "bookFiles" , false ] , [ "bookVBA" , false ] , [ "password" , "" ] , [ "WTF" , false ] ] ) ; var pp = dp ( [ [ "cellDates" , false ] , [ "bookSST" , false ] , [ "bookType" , "xlsx" ] , [ "compression" , false ] , [ "WTF" , false ] ] ) ; function bp ( e ) { if ( Sa . WS . indexOf ( e ) > - 1 ) return "sheet" ; if ( Sa . CS && e == Sa . CS ) return "chart" ; if ( Sa . DS && e == Sa . DS ) return "dialog" ; if ( Sa . MS && e == Sa . MS ) return "macro" ; return e && e . length ? e : "sheet" } function mp ( e , r ) { if ( ! e ) return 0 ; try { e = r . map ( function a ( r ) { if ( ! r . id ) r . id = r . strRelID ; return [ r . name , e [ "!id" ] [ r . id ] . Target , bp ( e [ "!id" ] [ r . id ] . Type ) ] } ) } catch ( t ) { return null } return ! e || e . length === 0 ? null : e } function gp ( e , r , t , a , n , i , s , l , c , f , o , u ) { try { i [ a ] = wa ( de ( e , t , true ) , r ) ; var h = he ( e , r ) ; switch ( l ) { case "sheet" : s [ a ] = _d ( h , r , n , c , i [ a ] , f , o , u ) ; break ; case "chart" : var d = Od ( h , r , n , c , i [ a ] , f , o , u ) ; s [ a ] = d ; if ( ! d || ! d [ "!chart" ] ) break ; var v = pe ( d [ "!chart" ] . Target , r ) ; var p = ka ( v ) ; var b = Zc ( de ( e , v , true ) , wa ( de ( e , p , true ) , v ) ) ; var m = pe ( b , v ) ; var g = ka ( m ) ; d = Qh ( de ( e , m , true ) , m , c , wa ( de ( e , g , true ) , m ) , f , d ) ; break ; case "macro" : s [ a ] = yd ( h , r , n , c , i [ a ] , f , o , u ) ; break ; case "dialog" : s [ a ] = Pd ( h , r , n , c , i [ a ] , f , o , u ) ; break ; } } catch ( E ) { if ( c . WTF ) t