2016-12-31 08:20:45 +00:00
/* xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */
2018-02-14 20:06:35 +00:00
var DO _NOT _EXPORT _CODEPAGE = true ; var DO _NOT _EXPORT _JSZIP = true ; var XLSX = { } ; ( function e ( r ) { r . version = "0.12.1" ; 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 f ( ) { l ( 1252 ) } var c = function ( e ) { t = e ; l ( e ) } ; function o ( ) { c ( 1200 ) ; f ( ) } 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 um ( e ) { return String . fromCharCode ( e ) } ; if ( typeof cptable !== "undefined" ) { c = 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 hm ( e ) { if ( t === 1200 ) return String . fromCharCode ( e ) ; return cptable . utils . decode ( t , [ e & 255 , e >> 8 ] ) [ 0 ] } } var m = null ; var b = true ; var g = function dm ( ) { var e = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=" ; return { encode : function ( r ) { var t = "" ; var a = 0 , n = 0 , i = 0 , s = 0 , l = 0 , f = 0 , c = 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 ; f = ( n & 15 ) << 2 | i >> 6 ; c = i & 63 ; if ( isNaN ( n ) ) { f = c = 64 } else if ( isNaN ( i ) ) { c = 64 } t += e . charAt ( s ) + e . charAt ( l ) + e . charAt ( f ) + e . charAt ( c ) } return t } , decode : function r ( t ) { var a = "" ; var n = 0 , i = 0 , s = 0 ; var l = 0 , f = 0 , c = 0 , o = 0 ; t = t . replace ( /[^A-Za-z0-9\+\/\=]/g , "" ) ; for ( var u = 0 ; u < t . length ; ) { l = e . indexOf ( t . charAt ( u ++ ) ) ; f = e . indexOf ( t . charAt ( u ++ ) ) ; c = e . indexOf ( t . charAt ( u ++ ) ) ; o = e . indexOf ( t . charAt ( u ++ ) ) ; n = l << 2 | f >> 4 ; i = ( f & 15 ) << 4 | c >> 2 ; s = ( c & 3 ) << 6 | o ; a += String . fromCharCode ( n ) ; if ( c !== 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 ( iv ) . join ( "" ) ; var r = [ ] ; for ( var t = 0 ; t < e . length ; ++ t ) r [ t ] = iv ( 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 _ = function vm ( 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 f = Math . pow ( 2 , 32 ) ; function c ( e , r ) { if ( e > f || e < - f ) 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 )
var i = [ ] , s = [ ] ; if ( ! n ) n = [ ] ; var l = a - 1 , f = 0 , c = 0 ; for ( f = r ; f >= 0 ; ) { n [ f ] = true ; i [ i . length ] = f ; s . push ( e [ f ] ) ; var o = t [ Math . floor ( f * 4 / a ) ] ; c = f * 4 & l ; if ( a < 4 + c ) throw new Error ( "FAT boundary crossed: " + f + " 4 " + a ) ; if ( ! e [ o ] ) break ; f = _r ( e [ o ] , c ) } return { nodes : i , data : sr ( [ s ] ) } } function v ( e , r , t , a ) { var n = e . length , i = [ ] ; var s = [ ] , l = [ ] , f = [ ] ; var c = a - 1 , o = 0 , u = 0 , h = 0 , d = 0 ; for ( o = 0 ; o < n ; ++ o ) { l = [ ] ; h = o + r ; if ( h >= n ) h -= n ; if ( s [ h ] ) continue ; f = [ ] ; for ( u = h ; u >= 0 ; ) { s [ u ] = true ; l [ l . length ] = u ; f . push ( e [ u ] ) ; var v = t [ Math . floor ( u * 4 / a ) ] ; d = u * 4 & c ; if ( a < 4 + d ) throw new Error ( "FAT boundary crossed: " + u + " 4 " + a ) ; if ( ! e [ v ] ) break ; u = _r ( e [ v ] , d ) } i [ h ] = { nodes : l , data : sr ( [ f ] ) } } return i } function p ( e , r , t , a , n , i , s , l ) { var f = 0 , c = a . length ? 2 : 0 ; var o = r [ e ] . data ; var h = 0 , v = 0 , p ; for ( ; h < o . length ; h += 128 ) { var b = o . slice ( h , h + 128 ) ; Mr ( b , 64 ) ; v = b . _R ( 2 ) ; p = fr ( b , 0 , v - c ) ; a . push ( p ) ; var g = { name : p , type : b . _R ( 1 ) , color : b . _R ( 1 ) , L : b . _R ( 4 , "i" ) , R : b . _R ( 4 , "i" ) , C : b . _R ( 4 , "i" ) , clsid : b . _R ( 16 ) , state : b . _R ( 4 , "i" ) , start : 0 , size : 0 } ; var E = b . _R ( 2 ) + b . _R ( 2 ) + b . _R ( 2 ) + b . _R ( 2 ) ; if ( E !== 0 ) g . ct = m ( b , b . l - 8 ) ; var S = b . _R ( 2 ) + b . _R ( 2 ) + b . _R ( 2 ) + b . _R ( 2 ) ; if ( S !== 0 ) g . mt = m ( b , b . l - 8 ) ; g . start = b . _R ( 4 , "i" ) ; g . size = b . _R ( 4 , "i" ) ; if ( g . size < 0 && g . start < 0 ) { g . size = g . type = 0 ; g . start = _ ; g . name = "" } if ( g . type === 5 ) { f = g . start ; if ( n > 0 && f !== _ ) r [ f ] . 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 ) } else { g . storage = "minifat" ; if ( g . size < 0 ) g . size = 0 ; else if ( f !== _ && g . start !== _ && r [ f ] ) { g . content = u ( g , r [ f ] . data , ( r [ l ] || { } ) . data ) } } if ( g . content ) Mr ( g . content , 0 ) ; i [ p ] = g ; s . push ( g ) } } function m ( e , r ) { return new Date ( ( Rr ( e , r + 4 ) / 1e7 * Math . pow ( 2 , 32 ) + Rr ( e , r ) / 1e7 - 11644473600 ) * 1e3 ) } function b ( e , r ) { i ( ) ; return s ( n . readFileSync ( e ) , r ) } function E ( e , r ) { switch ( r && r . type || "base64" ) { case "file" : return b ( 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 ( L . find ( e , "/" + r ) ) return ; var t = Wr ( 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 f = e . FileIndex [ l ] ; switch ( f . 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 ( f . R * f . L * f . C ) ) i = true ; if ( f . R > - 1 && f . L > - 1 && f . R == f . L ) i = true ; break ; default : i = true ; break ; } } if ( ! i && ! n ) return ; var c = 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 : D , ct : c , mt : c , 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 || D ; 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 f = r + 127 >> 7 ; var c = l + t + s + f ; var o = c + 127 >> 7 ; var u = o <= 109 ? 0 : Math . ceil ( ( o - 109 ) / 127 ) ; while ( c + o + u + 127 >> 7 > o ) u = ++ o <= 109 ? 0 : Math . ceil ( ( o - 109 ) / 127 ) ; var h = [ 1 , u , o , f , s , t , r , 0 ] ; e . FileIndex [ 0 ] . size = r << 6 ; h [ 7 ] = ( e . Fi
function et ( e ) { var r = at ( e ) , t = 0 , a = 0 ; for ( ; a !== r . length ; ++ a ) t = 26 * t + r . charCodeAt ( a ) - 64 ; return t - 1 } function rt ( e ) { var r = "" ; for ( ++ e ; e ; e = Math . floor ( ( e - 1 ) / 26 ) ) r = String . fromCharCode ( ( e - 1 ) % 26 + 65 ) + r ; return r } function tt ( e ) { return e . replace ( /^([A-Z])/ , "$$$1" ) } function at ( e ) { return e . replace ( /^\$([A-Z])/ , "$1" ) } function nt ( e ) { return e . replace ( /(\$?[A-Z]*)(\$?\d*)/ , "$1,$2" ) . split ( "," ) } function it ( e ) { var r = nt ( e ) ; return { c : et ( r [ 0 ] ) , r : Qr ( r [ 1 ] ) } } function st ( e ) { return rt ( e . c ) + Jr ( e . r ) } function lt ( e ) { var r = e . split ( ":" ) . map ( it ) ; return { s : r [ 0 ] , e : r [ r . length - 1 ] } } function ft ( e , r ) { if ( typeof r === "undefined" || typeof r === "number" ) { return ft ( e . s , e . e ) } if ( typeof e !== "string" ) e = st ( e ) ; if ( typeof r !== "string" ) r = st ( r ) ; return e == r ? e : e + ":" + r } function ct ( e ) { var r = { s : { c : 0 , r : 0 } , e : { c : 0 , r : 0 } } ; var t = 0 , a = 0 , n = 0 ; var i = e . length ; for ( t = 0 ; a < i ; ++ a ) { if ( ( n = e . charCodeAt ( a ) - 64 ) < 1 || n > 26 ) break ; t = 26 * t + n } r . s . c = -- t ; for ( t = 0 ; a < i ; ++ a ) { if ( ( n = e . charCodeAt ( a ) - 48 ) < 0 || n > 9 ) break ; t = 10 * t + n } r . s . r = -- t ; if ( a === i || e . charCodeAt ( ++ a ) === 58 ) { r . e . c = r . s . c ; r . e . r = r . s . r ; return r } for ( t = 0 ; a != i ; ++ a ) { if ( ( n = e . charCodeAt ( a ) - 64 ) < 1 || n > 26 ) break ; t = 26 * t + n } r . e . c = -- t ; for ( t = 0 ; a != i ; ++ a ) { if ( ( n = e . charCodeAt ( a ) - 48 ) < 0 || n > 9 ) break ; t = 10 * t + n } r . e . r = -- t ; return r } function ot ( e , r ) { var t = e . t == "d" && r instanceof Date ; if ( e . z != null ) try { return e . w = R . format ( e . z , t ? J ( r ) : r ) } catch ( a ) { } try { return e . w = R . format ( ( e . XF || { } ) . numFmtId || ( t ? 14 : 0 ) , t ? J ( r ) : r ) } catch ( a ) { return "" + r } } function ut ( e , r , t ) { if ( e == null || e . t == null || e . t == "z" ) return "" ; if ( e . w !== undefined ) return e . w ; if ( e . t == "d" && ! e . z && t && t . dateNF ) e . z = t . dateNF ; if ( r == undefined ) return ot ( e , e . v ) ; return ot ( e , r ) } function ht ( e , r ) { var t = r && r . sheet ? r . sheet : "Sheet1" ; var a = { } ; a [ t ] = e ; return { SheetNames : [ t ] , Sheets : a } } function dt ( e , r , t ) { var a = t || { } ; var n = e ? Array . isArray ( e ) : a . dense ; if ( m != null && n == null ) n = m ; var i = e || ( n ? [ ] : { } ) ; var s = 0 , l = 0 ; if ( i && a . origin != null ) { if ( typeof a . origin == "number" ) s = a . origin ; else { var f = typeof a . origin == "string" ? it ( a . origin ) : a . origin ; s = f . r ; l = f . c } } var c = { s : { c : 1e7 , r : 1e7 } , e : { c : 0 , r : 0 } } ; if ( i [ "!ref" ] ) { var o = ct ( i [ "!ref" ] ) ; c . s . c = o . s . c ; c . s . r = o . s . r ; c . e . c = Math . max ( c . e . c , o . e . c ) ; c . e . r = Math . max ( c . e . r , o . e . r ) ; if ( s == - 1 ) c . 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 ( c . s . r > v ) c . s . r = v ; if ( c . s . c > p ) c . s . c = p ; if ( c . e . r < v ) c . e . r = v ; if ( c . e . c < p ) c . 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 , J ( d . v ) ) } else { d . t = "n" ; d . v = J ( 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 b = st ( { c : p , r : v } ) ; i [ b ] = d } } } if ( c . s . c < 1e7 ) i [ "!ref" ] = ft ( c ) ; return i } function vt ( e , r ) { return dt ( null , e , r ) } function pt ( e , r ) { if ( ! r ) r = Wr ( 4 ) ; r . _W ( 4 , e ) ; return r } function mt ( e ) { var r = e . _R ( 4 ) ; return r === 0 ? "" : e . _R ( r , "dbcs" ) } function bt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Wr ( 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 gt ( e ) { return { ich : e . _R ( 2 ) , ifnt : e . _R ( 2 ) } } function Et ( e , r ) { if ( ! r ) r = Wr ( 4 ) ; r . _W ( 2 , e . ich || 0 ) ; r . _W ( 2 , e . ifnt || 0 ) ; return r } function St ( e , r ) { var t = e . l ; var a = e . _R ( 1 ) ; var n = mt ( e ) ; var i = [ ] ; var s = { t : n , h : n } ; if ( ( a & 1 ) !== 0 ) { var l = e . _R ( 4 ) ; for ( var f = 0 ; f != l ; ++ f ) i . push ( gt ( e ) ) ; s . r = i } else s . r = [ { ich : 0 , ifnt : 0 } ] ; e . l = t + r ; return s } function kt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Wr ( 15 + 4 * e . t . length ) } r . _W ( 1 , 0 ) ; bt ( e . t , r ) ; return t ? r . slice ( 0 , r . l ) : r } var wt = St ; function Bt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Wr ( 23 + 4 * e . t . length ) } r . _W ( 1 , 1 ) ; bt ( e . t , r ) ; r . _W ( 4 , 1 ) ; Et ( { ich : 0 , ifnt : 0 } , r ) ; return t ? r . slice ( 0 , r . l ) : r } function Ct ( e ) { var r = e . _R ( 4 ) ; var t = e . _R ( 2 ) ; t += e . _R ( 1 ) << 16 ; e . l ++ ; return { c : r , iStyleRef : t } } function Tt ( e , r ) { if ( r == null ) r = Wr ( 8 ) ; r . _W ( - 4 , e . c ) ; r . _W ( 3 , e . iStyleRef || e . s ) ; r . _W ( 1 , 0 ) ; return r } var It = mt ; var xt = bt ; function At ( e ) { var r = e . _R ( 4 ) ; return r === 0 || r === 4294967295 ? "" : e . _R ( r , "dbcs" ) } function Rt ( e , r ) { var t = false ; if ( r == null ) { t = true ; r = Wr ( 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 _t = mt ; var Ft = At ; var yt = Rt ; functi
} else { var b = o [ i [ s ] [ 0 ] ] ; var g ; switch ( e [ e . l ] ) { case 65 : e . l += 4 ; g = vn ( e ) ; break ; case 30 : e . l += 4 ; g = sn ( e , e [ e . l - 4 ] ) ; break ; case 31 : e . l += 4 ; g = sn ( e , e [ e . l - 4 ] ) ; break ; case 3 : e . l += 4 ; g = e . _R ( 4 , "i" ) ; break ; case 19 : e . l += 4 ; g = e . _R ( 4 ) ; break ; case 5 : e . l += 4 ; g = e . _R ( 8 , "f" ) ; break ; case 11 : e . l += 4 ; g = wn ( e , 4 ) ; break ; case 64 : e . l += 4 ; g = te ( rn ( e ) ) ; break ; default : throw new Error ( "unparsed value: " + e [ e . l ] ) ; } d [ b ] = g } } } e . l = t + a ; return d } function gn ( e , r , t ) { var a = e . content ; if ( ! a ) return { } ; Mr ( a , 0 ) ; var n , i , s , l , f = 0 ; a . chk ( "feff" , "Byte Order: " ) ; a . _R ( 2 ) ; var c = a . _R ( 4 ) ; var o = a . _R ( 16 ) ; if ( o !== L . utils . consts . HEADER _CLSID && o !== t ) throw new Error ( "Bad PropertySet CLSID " + o ) ; n = a . _R ( 4 ) ; if ( n !== 1 && n !== 2 ) throw new Error ( "Unrecognized #Sets: " + n ) ; i = a . _R ( 16 ) ; l = a . _R ( 4 ) ; if ( n === 1 && l !== a . l ) throw new Error ( "Length mismatch: " + l + " !== " + a . l ) ; else if ( n === 2 ) { s = a . _R ( 16 ) ; f = a . _R ( 4 ) } var u = bn ( a , r ) ; var h = { SystemIdentifier : c } ; for ( var d in u ) h [ d ] = u [ d ] ; h . FMTID = i ; if ( n === 1 ) return h ; if ( a . l !== f ) throw new Error ( "Length mismatch 2: " + a . l + " !== " + f ) ; var v ; try { v = bn ( a , null ) } catch ( p ) { } for ( d in v ) h [ d ] = v [ d ] ; h . FMTID = [ i , s ] ; return h } function En ( e , r ) { e . _R ( r ) ; return null } function Sn ( e , r ) { if ( ! r ) r = Wr ( e ) ; for ( var t = 0 ; t < e ; ++ t ) r . _W ( 1 , 0 ) ; return r } function kn ( e , r , t ) { var a = [ ] , n = e . l + r ; while ( e . l < n ) a . push ( t ( e , n - e . l ) ) ; if ( n !== e . l ) throw new Error ( "Slurp error" ) ; return a } function wn ( e , r ) { return e . _R ( r ) === 1 } function Bn ( e , r ) { if ( ! r ) r = Wr ( 2 ) ; r . _W ( 2 , + ! ! e ) ; return r } function Cn ( e ) { return e . _R ( 2 , "u" ) } function Tn ( e , r ) { if ( ! r ) r = Wr ( 2 ) ; r . _W ( 2 , e ) ; return r } function In ( e , r ) { return kn ( e , r , Cn ) } function xn ( e ) { var r = e . _R ( 1 ) , t = e . _R ( 1 ) ; return t === 1 ? r : r === 1 } function An ( e , r , t ) { if ( ! t ) t = Wr ( 2 ) ; t . _W ( 1 , + e ) ; t . _W ( 1 , r == "e" ? 1 : 0 ) ; return t } function Rn ( e , r , a ) { var n = e . _R ( a && a . biff >= 12 ? 2 : 1 ) ; 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 f = n ? e . _R ( n , i ) : "" ; t = s ; return f } function _n ( 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 f = 0 , c ; var o = { } ; if ( s ) f = e . _R ( 2 ) ; if ( i ) c = e . _R ( 4 ) ; var u = l == 2 ? "dbcs-cont" : "sbcs-cont" ; var h = a === 0 ? "" : e . _R ( a , u ) ; if ( s ) e . l += 4 * f ; if ( i ) e . l += c ; o . t = h ; if ( ! s ) { o . raw = "<t>" + o . t + "</t>" ; o . r = o . t } t = r ; return o } function Fn ( 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 yn ( e , r , t ) { var a = e . _R ( t && t . biff == 2 ? 1 : 2 ) ; if ( a === 0 ) { e . l ++ ; return "" } return Fn ( e , a , t ) } function Dn ( e , r , t ) { if ( t . biff > 5 ) return yn ( 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 On ( e , r , t ) { if ( ! t ) t = Wr ( 3 + 2 * e . length ) ; t . _W ( 2 , e . length ) ; t . _W ( 1 , 1 ) ; t . _W ( 31 , e , "utf16le" ) ; return t } function Pn ( e ) { var r = e . _R ( 1 ) ; e . l ++ ; var t = e . _R ( 2 ) ; e . l += 2 ; return [ r , t ] } function Nn ( 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 Ln ( 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 Mn ( e , r ) { var t = e . _R ( 16 ) ; r -= 16 ; switch ( t ) { case "e0c9ea79f9bace118c8200aa004ba90b" : return Nn ( e , r ) ; case "0303000000000000c000000000000046" : return Ln ( e , r ) ; default : throw new Error ( "Unsupported Moniker " + t ) ; } } function Un ( e ) { var r = e . _R ( 4 ) ; var t = r > 0 ? e . _R ( r , "utf16le" ) . replace ( x , "" ) : "" ; return t } function Wn ( 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 , f , c = "" , o , u ; if ( n & 16 ) i = Un ( e , t - e . l ) ; if ( n & 128 ) s = Un ( e , t - e . l ) ; if ( ( n & 257 ) === 257 ) l = Un ( e , t - e . l ) ; if ( ( n & 257 ) === 1 ) f = Mn ( e , t - e . l ) ; if ( n & 8 ) c = Un ( e , t - e . l ) ; if ( n & 32 ) o = e . _R ( 16 ) ; if ( n & 64 ) u = rn ( e ) ; e . l = t ; var h = s || l || f || "" ; if ( h && c ) h += "#" + c ; if ( ! h ) h = "#" + c ; var d = { Target : h } ; if ( o ) d . guid = o ; if ( u ) d . time = u ; if ( i ) d . Tooltip = i ; return d } function Vn ( e ) { var r = Wr ( 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 = [
} function r ( e ) { return e . replace ( /\\/g , "\\b" ) . replace ( /:/g , "\\c" ) . replace ( /\n/g , "\\n" ) } function t ( r ) { var t = r . split ( "\n" ) , a = - 1 , n = - 1 , i = 0 , s = [ ] ; for ( ; i !== t . length ; ++ i ) { var l = t [ i ] . trim ( ) . split ( ":" ) ; if ( l [ 0 ] !== "cell" ) continue ; var f = it ( l [ 1 ] ) ; if ( s . length <= f . r ) for ( a = s . length ; a <= f . r ; ++ a ) if ( ! s [ a ] ) s [ a ] = [ ] ; a = f . r ; n = f . c ; switch ( l [ 2 ] ) { case "t" : s [ a ] [ n ] = e ( l [ 3 ] ) ; break ; case "v" : s [ a ] [ n ] = + l [ 3 ] ; break ; case "vtf" : var c = l [ l . length - 1 ] ; case "vtc" : switch ( l [ 3 ] ) { case "nl" : s [ a ] [ n ] = + l [ 4 ] ? true : false ; break ; default : s [ a ] [ n ] = + l [ 4 ] ; break ; } if ( l [ 2 ] == "vtf" ) s [ a ] [ n ] = [ s [ a ] [ n ] , c ] ; } } return s } function a ( e , r ) { return vt ( t ( e , r ) , r ) } function n ( e , r ) { return ht ( a ( e , r ) , r ) } var i = [ "socialcalc:version:1.5" , "MIME-Version: 1.0" , "Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave" ] . join ( "\n" ) ; var s = [ "--SocialCalcSpreadsheetControlSave" , "Content-type: text/plain; charset=UTF-8" ] . join ( "\n" ) + "\n" ; var l = [ "# SocialCalc Spreadsheet Control Save" , "part:sheet" ] . join ( "\n" ) ; var f = "--SocialCalcSpreadsheetControlSave--" ; function c ( e ) { if ( ! e || ! e [ "!ref" ] ) return "" ; var t = [ ] , a = [ ] , n , i = "" ; var s = lt ( e [ "!ref" ] ) ; var l = Array . isArray ( e ) ; for ( var f = s . s . r ; f <= s . e . r ; ++ f ) { for ( var c = s . s . c ; c <= s . e . c ; ++ c ) { i = st ( { r : f , c : c } ) ; n = l ? ( e [ f ] || [ ] ) [ c ] : e [ i ] ; if ( ! n || n . v == null || n . t === "z" ) continue ; a = [ "cell" , i , "t" ] ; switch ( n . t ) { case "s" : ; case "str" : a . push ( r ( n . v ) ) ; break ; case "n" : if ( ! n . f ) { a [ 2 ] = "v" ; a [ 3 ] = n . v } else { a [ 2 ] = "vtf" ; a [ 3 ] = "n" ; a [ 4 ] = n . v ; a [ 5 ] = r ( n . f ) } break ; case "b" : a [ 2 ] = "vt" + ( n . f ? "f" : "c" ) ; a [ 3 ] = "nl" ; a [ 4 ] = n . v ? "1" : "0" ; a [ 5 ] = r ( n . f || ( n . v ? "TRUE" : "FALSE" ) ) ; break ; case "d" : var o = J ( te ( n . v ) ) ; a [ 2 ] = "vtc" ; a [ 3 ] = "nd" ; a [ 4 ] = "" + o ; a [ 5 ] = n . w || R . format ( n . z || R . _table [ 14 ] , o ) ; break ; case "e" : continue ; } t . push ( a . join ( ":" ) ) } } t . push ( "sheet:c:" + ( s . e . c - s . s . c + 1 ) + ":r:" + ( s . e . r - s . s . r + 1 ) + ":tvf:1" ) ; t . push ( "valueformat:1:text-wiki" ) ; return t . join ( "\n" ) } function o ( e ) { return [ i , s , l , s , c ( e ) , f ] . join ( "\n" ) } return { to _workbook : n , to _sheet : a , from _sheet : o } } ( ) ; var Vs = function ( ) { function e ( e , r , t , a , n ) { if ( n . raw ) r [ t ] [ a ] = e ; else if ( e === "TRUE" ) r [ t ] [ a ] = true ; else if ( e === "FALSE" ) r [ t ] [ a ] = false ; else if ( e === "" ) { } else if ( ! isNaN ( se ( e ) ) ) r [ t ] [ a ] = se ( e ) ; else if ( ! isNaN ( le ( e ) . getDate ( ) ) ) r [ t ] [ a ] = te ( e ) ; else r [ t ] [ a ] = e } function r ( r , t ) { var a = t || { } ; var n = [ ] ; if ( ! r || r . length === 0 ) return n ; var i = r . split ( /[\r\n]/ ) ; var s = i . length - 1 ; while ( s >= 0 && i [ s ] . length === 0 ) -- s ; var l = 10 , f = 0 ; var c = 0 ; for ( ; c <= s ; ++ c ) { f = i [ c ] . indexOf ( " " ) ; if ( f == - 1 ) f = i [ c ] . length ; else f ++ ; l = Math . max ( l , f ) } for ( c = 0 ; c <= s ; ++ c ) { n [ c ] = [ ] ; var o = 0 ; e ( i [ c ] . slice ( 0 , l ) . trim ( ) , n , c , o , a ) ; for ( o = 1 ; o <= ( i [ c ] . length - l ) / 10 + 1 ; ++ o ) e ( i [ c ] . slice ( l + ( o - 1 ) * 10 , l + o * 10 ) . trim ( ) , n , c , o , a ) } return n } var t = { 44 : "," , 9 : "\t" , 59 : ";" } ; var a = { 44 : 3 , 9 : 2 , 59 : 1 } ; function n ( e ) { var r = { } , n = false , i = 0 , s = 0 ; for ( ; i < e . length ; ++ i ) { if ( ( s = e . charCodeAt ( i ) ) == 34 ) n = ! n ; else if ( ! n && s in t ) r [ s ] = ( r [ s ] || 0 ) + 1 } s = [ ] ; for ( i in r ) if ( r . hasOwnProperty ( i ) ) { s . push ( [ r [ i ] , i ] ) } if ( ! s . length ) { r = a ; for ( i in r ) if ( r . hasOwnProperty ( i ) ) { 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 ( m != null && t . dense == null ) t . dense = m ; 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 , f = 0 , c = 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 b ( ) { 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 ( yc ( 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 ( c = se ( r ) ) ) { a . t = "n" ; if ( t . cellText !== false ) a . w = r ; a . v = c } else if ( ! isNaN ( le ( r ) . getDate ( ) ) || p && r . match ( p ) ) { a . z = t . dateNF || R . _table [ 14 ] ; var n = 0 ; if ( p && r . match ( p ) ) { r = P ( r , t . dateNF , r . match ( p ) || [ ] ) ; n = 1 } if ( t . cellDates ) { a . t = "d" ; a . v = te ( r , n ) } else { a . t = "n" ; a . v = J ( te ( r , n ) ) } if ( t . cellText !== false ) a . w = R . format ( a . z , a . v instanceof Date ? J ( 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 ) { i
bt ( r , t ) ; var a = t . length > t . l ? t . slice ( 0 , t . l ) : t ; if ( t . l == null ) t . l = t . length ; return a } function uf ( e , r , t ) { var a = { } ; a . sz = e . _R ( 2 ) / 20 ; var n = zt ( e , 2 , t ) ; if ( n . fCondense ) a . condense = 1 ; if ( n . fExtend ) a . extend = 1 ; if ( n . fShadow ) a . shadow = 1 ; if ( n . fOutline ) a . outline = 1 ; if ( n . fStrikeout ) a . strike = 1 ; if ( n . fItalic ) a . italic = 1 ; var i = e . _R ( 2 ) ; if ( i === 700 ) a . bold = 1 ; switch ( e . _R ( 2 ) ) { case 1 : a . vertAlign = "superscript" ; break ; case 2 : a . vertAlign = "subscript" ; break ; } var s = e . _R ( 1 ) ; if ( s != 0 ) a . underline = s ; var l = e . _R ( 1 ) ; if ( l > 0 ) a . family = l ; var f = e . _R ( 1 ) ; if ( f > 0 ) a . charset = f ; e . l ++ ; a . color = Xt ( e , 8 ) ; switch ( e . _R ( 1 ) ) { case 1 : a . scheme = "major" ; break ; case 2 : a . scheme = "minor" ; break ; } a . name = mt ( e , r - 21 ) ; return a } function hf ( e , r ) { if ( ! r ) r = Wr ( 25 + 4 * 32 ) ; r . _W ( 2 , e . sz * 20 ) ; jt ( e , r ) ; r . _W ( 2 , e . bold ? 700 : 400 ) ; var t = 0 ; if ( e . vertAlign == "superscript" ) t = 1 ; else if ( e . vertAlign == "subscript" ) t = 2 ; r . _W ( 2 , t ) ; r . _W ( 1 , e . underline || 0 ) ; r . _W ( 1 , e . family || 0 ) ; r . _W ( 1 , e . charset || 0 ) ; r . _W ( 1 , 0 ) ; Gt ( e . color , r ) ; var a = 0 ; if ( e . scheme == "major" ) a = 1 ; if ( e . scheme == "minor" ) a = 2 ; r . _W ( 1 , a ) ; bt ( e . name , r ) ; return r . length > r . l ? r . slice ( 0 , r . l ) : r } var df = [ "none" , "solid" , "mediumGray" , "darkGray" , "lightGray" , "darkHorizontal" , "darkVertical" , "darkDown" , "darkUp" , "darkGrid" , "darkTrellis" , "lightHorizontal" , "lightVertical" , "lightDown" , "lightUp" , "lightGrid" , "lightTrellis" , "gray125" , "gray0625" ] ; var vf = z ( df ) ; var pf = Ur ; function mf ( e , r ) { if ( ! r ) r = Wr ( 4 * 3 + 8 * 7 + 16 * 1 ) ; var t = vf [ e . patternType ] ; if ( t == null ) t = 40 ; r . _W ( 4 , t ) ; var a = 0 ; if ( t != 40 ) { Gt ( { auto : 1 } , r ) ; Gt ( { auto : 1 } , r ) ; for ( ; a < 12 ; ++ a ) r . _W ( 4 , 0 ) } else { for ( ; a < 4 ; ++ a ) r . _W ( 4 , 0 ) ; for ( ; a < 12 ; ++ a ) r . _W ( 4 , 0 ) } return r . length > r . l ? r . slice ( 0 , r . l ) : r } function bf ( e , r ) { var t = e . l + r ; var a = e . _R ( 2 ) ; var n = e . _R ( 2 ) ; e . l = t ; return { ixfe : a , numFmtId : n } } function gf ( e , r , t ) { if ( ! t ) t = Wr ( 16 ) ; t . _W ( 2 , r || 0 ) ; t . _W ( 2 , e . numFmtId || 0 ) ; t . _W ( 2 , 0 ) ; t . _W ( 2 , 0 ) ; t . _W ( 2 , 0 ) ; t . _W ( 1 , 0 ) ; t . _W ( 1 , 0 ) ; t . _W ( 1 , 0 ) ; t . _W ( 1 , 0 ) ; t . _W ( 1 , 0 ) ; t . _W ( 1 , 0 ) ; return t } function Ef ( e , r ) { if ( ! r ) r = Wr ( 10 ) ; r . _W ( 1 , 0 ) ; r . _W ( 1 , 0 ) ; r . _W ( 4 , 0 ) ; r . _W ( 4 , 0 ) ; return r } var Sf = Ur ; function kf ( e , r ) { if ( ! r ) r = Wr ( 51 ) ; r . _W ( 1 , 0 ) ; Ef ( null , r ) ; Ef ( null , r ) ; Ef ( null , r ) ; Ef ( null , r ) ; Ef ( null , r ) ; return r . length > r . l ? r . slice ( 0 , r . l ) : r } function wf ( e , r ) { if ( ! r ) r = Wr ( 12 + 4 * 10 ) ; r . _W ( 4 , e . xfId ) ; r . _W ( 2 , 1 ) ; r . _W ( 1 , + e . builtinId ) ; r . _W ( 1 , 0 ) ; Rt ( e . name || "" , r ) ; return r . length > r . l ? r . slice ( 0 , r . l ) : r } function Bf ( e , r , t ) { var a = Wr ( 4 + 256 * 2 * 4 ) ; a . _W ( 4 , e ) ; Rt ( r , a ) ; Rt ( t , a ) ; return a . length > a . l ? a . slice ( 0 , a . l ) : a } function Cf ( e , r , t ) { var a = { } ; a . NumberFmt = [ ] ; for ( var n in R . _table ) a . NumberFmt [ n ] = R . _table [ n ] ; a . CellXf = [ ] ; a . Fonts = [ ] ; var i = [ ] ; var s = false ; Vr ( e , function l ( e , n , f ) { switch ( f ) { 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 = Ol ( 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 " + f + " " + n ) ; } } ) ; return a } function Tf ( 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 ; Xr ( e , "BrtBeginFmts" , pt ( 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 ) Xr ( e , "BrtFmt" , of ( a , r [ a ] ) ) } ) ; Xr ( e , "BrtEndFmts" ) } function If ( e ) { var r = 1 ; if ( r == 0 ) return ; Xr ( e , "BrtBeginFonts" , pt ( r ) ) ; Xr ( e , "BrtFont" , hf ( { sz : 12 , color : { theme : 1 } , name : "Calibri" , family : 2 , scheme : "minor" } ) ) ; Xr ( e , "BrtEndFonts" ) } function xf ( e ) { var r = 2 ; if ( r == 0 ) return ; Xr ( e , "BrtBeginFills" , pt ( r ) ) ; Xr ( e , "BrtFill" , mf ( { patternType : "none" } ) ) ; Xr ( e , "BrtFill" , mf ( { patternType : "gray125" } ) ) ; Xr ( e , "BrtEndFills" ) } function Af ( e ) { var r = 1 ; if ( r == 0 ) return ; Xr ( e , "BrtBeginBorders" , pt ( r ) ) ; Xr ( e , "BrtBorder" , kf ( { } ) ) ; Xr ( e , "BrtEndBorders" ) } function Rf ( e ) { var r = 1 ; Xr ( e , "BrtBeginCellStyleXFs" , pt ( r ) ) ; Xr ( e , "BrtXF" , gf ( { numFmtId : 0 , fontId : 0 , fillId : 0 , borderId : 0 } , 65535 ) ) ; Xr ( e , "BrtEndCellStyleXFs" ) } function _f ( e , r ) { Xr ( e , "
case 5 : i = 15 ; break ; case 12 : i = 6 ; break ; } e . l += i ; return [ a , n ] } var Ro = Ur ; var _o = Ur ; var Fo = Ur ; function yo ( e , r , t ) { e . l += 2 ; return [ Vc ( e , 4 , t ) ] } function Do ( e ) { e . l += 6 ; return [ ] } var Oo = yo ; var Po = Do ; var No = Do ; var Lo = yo ; function Mo ( e ) { e . l += 2 ; return [ Cn ( e ) , e . _R ( 2 ) & 1 ] } var Uo = yo ; var Wo = Mo ; var Vo = Do ; var Ho = yo ; var Xo = yo ; function Go ( e ) { e . l += 2 ; var r = e . _R ( 2 ) ; e . l += 10 ; return { ixti : r } } function zo ( e ) { e . l += 2 ; return [ e . _R ( 4 ) ] } var jo = { 1 : { n : "PtgExp" , f : ho } , 2 : { n : "PtgTbl" , f : Fo } , 3 : { n : "PtgAdd" , f : Oc } , 4 : { n : "PtgSub" , f : Oc } , 5 : { n : "PtgMul" , f : Oc } , 6 : { n : "PtgDiv" , f : Oc } , 7 : { n : "PtgPower" , f : Oc } , 8 : { n : "PtgConcat" , f : Oc } , 9 : { n : "PtgLt" , f : Oc } , 10 : { n : "PtgLe" , f : Oc } , 11 : { n : "PtgEq" , f : Oc } , 12 : { n : "PtgGe" , f : Oc } , 13 : { n : "PtgGt" , f : Oc } , 14 : { n : "PtgNe" , f : Oc } , 15 : { n : "PtgIsect" , f : Oc } , 16 : { n : "PtgUnion" , f : Oc } , 17 : { n : "PtgRange" , f : Oc } , 18 : { n : "PtgUplus" , f : Oc } , 19 : { n : "PtgUminus" , f : Oc } , 20 : { n : "PtgPercent" , f : Oc } , 21 : { n : "PtgParen" , f : Oc } , 22 : { n : "PtgMissArg" , f : Oc } , 23 : { n : "PtgStr" , f : go } , 28 : { n : "PtgErr" , f : vo } , 29 : { n : "PtgBool" , f : mo } , 30 : { n : "PtgInt" , f : po } , 31 : { n : "PtgNum" , f : bo } , 32 : { n : "PtgArray" , f : Yc } , 33 : { n : "PtgFunc" , f : fo } , 34 : { n : "PtgFuncVar" , f : co } , 35 : { n : "PtgName" , f : wo } , 36 : { n : "PtgRef" , f : io } , 37 : { n : "PtgArea" , f : Gc } , 38 : { n : "PtgMemArea" , f : To } , 39 : { n : "PtgMemErr" , f : Ro } , 40 : { n : "PtgMemNoMem" , f : _o } , 41 : { n : "PtgMemFunc" , f : Io } , 42 : { n : "PtgRefErr" , f : xo } , 43 : { n : "PtgAreaErr" , f : jc } , 44 : { n : "PtgRefN" , f : so } , 45 : { n : "PtgAreaN" , f : $c } , 57 : { n : "PtgNameX" , f : Bo } , 58 : { n : "PtgRef3d" , f : lo } , 59 : { n : "PtgArea3d" , f : zc } , 60 : { n : "PtgRefErr3d" , f : Ao } , 61 : { n : "PtgAreaErr3d" , f : Kc } , 255 : { } } ; var Ko = { 64 : 32 , 96 : 32 , 65 : 33 , 97 : 33 , 66 : 34 , 98 : 34 , 67 : 35 , 99 : 35 , 68 : 36 , 100 : 36 , 69 : 37 , 101 : 37 , 70 : 38 , 102 : 38 , 71 : 39 , 103 : 39 , 72 : 40 , 104 : 40 , 73 : 41 , 105 : 41 , 74 : 42 , 106 : 42 , 75 : 43 , 107 : 43 , 76 : 44 , 108 : 44 , 77 : 45 , 109 : 45 , 89 : 57 , 121 : 57 , 90 : 58 , 122 : 58 , 91 : 59 , 123 : 59 , 92 : 60 , 124 : 60 , 93 : 61 , 125 : 61 } ; ( function ( ) { for ( var e in Ko ) jo [ e ] = jo [ Ko [ e ] ] } ) ( ) ; var $o = { 1 : { n : "PtgElfLel" , f : Mo } , 2 : { n : "PtgElfRw" , f : Ho } , 3 : { n : "PtgElfCol" , f : Oo } , 6 : { n : "PtgElfRwV" , f : Xo } , 7 : { n : "PtgElfColV" , f : Lo } , 10 : { n : "PtgElfRadical" , f : Uo } , 11 : { n : "PtgElfRadicalS" , f : Vo } , 13 : { n : "PtgElfColS" , f : Po } , 15 : { n : "PtgElfColSV" , f : No } , 16 : { n : "PtgElfRadicalLel" , f : Wo } , 25 : { n : "PtgList" , f : Go } , 29 : { n : "PtgSxName" , f : zo } , 255 : { } } ; var Yo = { 1 : { n : "PtgAttrSemi" , f : ro } , 2 : { n : "PtgAttrIf" , f : qc } , 4 : { n : "PtgAttrChoose" , f : Jc } , 8 : { n : "PtgAttrGoto" , f : Zc } , 16 : { n : "PtgAttrSum" , f : uo } , 32 : { n : "PtgAttrBaxcel" , f : Qc } , 64 : { n : "PtgAttrSpace" , f : ao } , 65 : { n : "PtgAttrSpaceSemi" , f : no } , 128 : { n : "PtgAttrIfError" , f : eo } , 255 : { } } ; Yo [ 33 ] = Yo [ 32 ] ; function Qo ( e , r , t , a ) { if ( a . biff < 8 ) return Ur ( e , r ) ; var n = e . l + r ; var i = [ ] ; for ( var s = 0 ; s !== t . length ; ++ s ) { switch ( t [ s ] [ 0 ] ) { case "PtgArray" : t [ s ] [ 1 ] = ko ( e , 0 , a ) ; i . push ( t [ s ] [ 1 ] ) ; break ; case "PtgMemArea" : t [ s ] [ 2 ] = So ( e , t [ s ] [ 1 ] , a ) ; i . push ( t [ s ] [ 2 ] ) ; break ; case "PtgExp" : if ( a && a . biff == 12 ) { t [ s ] [ 1 ] [ 1 ] = e . _R ( 4 ) ; i . push ( t [ s ] [ 1 ] ) } break ; case "PtgList" : ; case "PtgElfRadicalS" : ; case "PtgElfColS" : ; case "PtgElfColSV" : throw "Unsupported " + t [ s ] [ 0 ] ; default : break ; } } r = n - e . l ; if ( r !== 0 ) i . push ( Ur ( e , r ) ) ; return i } function Jo ( e , r , t ) { var a = e . l + r ; var n , i , s = [ ] ; while ( a != e . l ) { r = a - e . l ; i = e [ e . l ] ; n = jo [ i ] ; if ( i === 24 || i === 25 ) { i = e [ e . l + 1 ] ; n = ( i === 24 ? $o : Yo ) [ i ] } if ( ! n || ! n . f ) { Ur ( 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 qo = { PtgAdd : "+" , PtgConcat : "&" , PtgDiv : "/" , PtgEq : "=" , PtgGe : ">=" , PtgGt : ">" , PtgLe : "<=" , PtgLt : "<" , PtgMul : "*" , PtgNe : "<>" , PtgPower : "^" , PtgSub : "-" } ; function eu ( 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 ru ( 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" ; r
} } catch ( s ) { if ( a . WTF && i . Fills ) throw s } } function _u ( e , r ) { var t = ct ( r ) ; if ( t . s . r <= t . e . r && t . s . c <= t . e . c && t . s . r >= 0 && t . s . c >= 0 ) e [ "!ref" ] = ft ( t ) } var Fu = /<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g ; var yu = /<(?:\w+:)?sheetData>([\s\S]*)<\/(?:\w+:)?sheetData>/ ; var Du = /<(?:\w:)?hyperlink [^>]*>/gm ; var Ou = /"(\w*:\w*)"/ ; var Pu = /<(?:\w:)?col[^>]*[\/]?>/g ; var Nu = /<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g ; var Lu = /<(?:\w:)?pageMargins[^>]*\/>/g ; var Mu = /<(?:\w:)?sheetPr(?:[^>a-z][^>]*)?\/>/ ; var Uu = /<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/ ; function Wu ( e , r , t , a , n , i , s ) { if ( ! e ) return e ; if ( m != null && r . dense == null ) r . dense = m ; var l = r . dense ? [ ] : { } ; var f = { s : { r : 2e6 , c : 2e6 } , e : { r : 0 , c : 0 } } ; var c = "" , o = "" ; var u = e . match ( yu ) ; if ( u ) { c = e . slice ( 0 , u . index ) ; o = e . slice ( u . index + u [ 0 ] . length ) } else c = o = e ; var h = c . match ( Mu ) ; if ( h ) Hu ( h [ 0 ] , l , n , t ) ; var d = ( c . match ( /<(?:\w*:)?dimension/ ) || { index : - 1 } ) . index ; if ( d > 0 ) { var v = c . slice ( d , d + 50 ) . match ( Ou ) ; if ( v ) _u ( l , v [ 1 ] ) } var p = c . match ( Uu ) ; if ( p && p [ 1 ] ) Zu ( p [ 1 ] , n ) ; var b = [ ] ; if ( r . cellStyles ) { var g = c . match ( Pu ) ; if ( g ) Ku ( b , g ) } if ( u ) rh ( u [ 1 ] , l , r , f , i , s ) ; var E = o . match ( Nu ) ; if ( E ) l [ "!autofilter" ] = Yu ( E [ 0 ] ) ; var S = [ ] ; var k = o . match ( Fu ) ; if ( k ) for ( d = 0 ; d != k . length ; ++ d ) S [ d ] = ct ( k [ d ] . slice ( k [ d ] . indexOf ( '"' ) + 1 ) ) ; var w = o . match ( Du ) ; if ( w ) Gu ( l , w , a ) ; var B = o . match ( Lu ) ; if ( B ) l [ "!margins" ] = zu ( Ce ( B [ 0 ] ) ) ; if ( ! l [ "!ref" ] && f . e . c >= f . s . c && f . e . r >= f . s . r ) l [ "!ref" ] = ft ( f ) ; if ( r . sheetRows > 0 && l [ "!ref" ] ) { var C = ct ( l [ "!ref" ] ) ; if ( r . sheetRows < + C . e . r ) { C . e . r = r . sheetRows - 1 ; if ( C . e . r > f . e . r ) C . e . r = f . e . r ; if ( C . e . r < C . s . r ) C . s . r = C . e . r ; if ( C . e . c > f . e . c ) C . e . c = f . e . c ; if ( C . e . c < C . s . c ) C . s . c = C . e . c ; l [ "!fullref" ] = l [ "!ref" ] ; l [ "!ref" ] = ft ( C ) } } if ( b . length > 0 ) l [ "!cols" ] = b ; if ( S . length > 0 ) l [ "!merges" ] = S ; return l } function Vu ( e ) { if ( e . length === 0 ) return "" ; var r = '<mergeCells count="' + e . length + '">' ; for ( var t = 0 ; t != e . length ; ++ t ) r += '<mergeCell ref="' + ft ( e [ t ] ) + '"/>' ; return r + "</mergeCells>" } function Hu ( e , r , t , a ) { var n = Ce ( e ) ; if ( ! t . Sheets [ a ] ) t . Sheets [ a ] = { } ; if ( n . codeName ) t . Sheets [ a ] . CodeName = n . codeName } function Xu ( e ) { var r = { sheet : 1 } ; var t = [ "objects" , "scenarios" , "selectLockedCells" , "selectUnlockedCells" ] ; var a = [ "formatColumns" , "formatRows" , "formatCells" , "insertColumns" , "insertRows" , "insertHyperlinks" , "deleteColumns" , "deleteRows" , "sort" , "autoFilter" , "pivotTables" ] ; t . forEach ( function ( t ) { if ( e [ t ] != null && e [ t ] ) r [ t ] = "1" } ) ; a . forEach ( function ( t ) { if ( e [ t ] != null && ! e [ t ] ) r [ t ] = "0" } ) ; if ( e . password ) r . password = wl ( e . password ) . toString ( 16 ) . toUpperCase ( ) ; return qe ( "sheetProtection" , null , r ) } function Gu ( e , r , t ) { var a = Array . isArray ( e ) ; for ( var n = 0 ; n != r . length ; ++ n ) { var i = Ce ( Ue ( r [ n ] ) , true ) ; if ( ! i . ref ) return ; var s = ( ( t || { } ) [ "!id" ] || [ ] ) [ i . id ] ; if ( s ) { i . Target = s . Target ; if ( i . location ) i . Target += "#" + i . location } else { i . Target = "#" + i . location ; s = { Target : i . Target , TargetMode : "Internal" } } i . Rel = s ; if ( i . tooltip ) { i . Tooltip = i . tooltip ; delete i . tooltip } var l = ct ( i . ref ) ; for ( var f = l . s . r ; f <= l . e . r ; ++ f ) for ( var c = l . s . c ; c <= l . e . c ; ++ c ) { var o = st ( { c : c , r : f } ) ; if ( a ) { if ( ! e [ f ] ) e [ f ] = [ ] ; if ( ! e [ f ] [ c ] ) e [ f ] [ c ] = { t : "z" , v : undefined } ; e [ f ] [ c ] . l = i } else { if ( ! e [ o ] ) e [ o ] = { t : "z" , v : undefined } ; e [ o ] . l = i } } } } function zu ( e ) { var r = { } ; [ "left" , "right" , "top" , "bottom" , "header" , "footer" ] . forEach ( function ( t ) { if ( e [ t ] ) r [ t ] = parseFloat ( e [ t ] ) } ) ; return r } function ju ( e ) { xu ( e ) ; return qe ( "pageMargins" , null , e ) } function Ku ( e , r ) { var t = false ; for ( var a = 0 ; a != r . length ; ++ a ) { var n = Ce ( r [ a ] , true ) ; if ( n . hidden ) n . hidden = Me ( 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 ; Xl ( n . width ) } Gl ( n ) ; while ( i <= s ) e [ i ++ ] = ne ( n ) } } function $u ( 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 , Iu ( n , a ) ) } t [ t . length ] = "</cols>" ; return t . join ( "" ) } function Yu ( e ) { var r = { ref : ( e . match ( /ref="([^"]*)"/ ) || [ ] ) [ 1 ] } ; return r } function Qu ( e ) { return qe ( "autoFilter" , null , { ref : e . ref } ) } var Ju = /<(?:\w:)?sheetView(?:[^>a-z][^>]*)?\/>/ ; function Zu ( e , r ) { ( e . match ( Ju ) || [ ] ) . forEach ( function ( e ) { var t = Ce ( e ) ; if ( Me ( t . rightToLeft ) ) { if ( ! r . Views ) r . Views = [ { } ] ; if ( ! r . Views [ 0 ] ) r . Views [ 0 ] = { } ; r . Views [ 0 ] . RTL = true } } ) } function qu ( e , r , t , a ) { var n = { workbookViewId : "0" } ; if ( ( ( ( a || { } ) . Workbook || { } ) . Views || [ ] ) [ 0 ] ) n . rightToLeft = a . Workbook . Views [ 0 ] . RTL ? "1" : "0" ; return q
t . checkCompatibility = ! ! ( a & 4096 ) ; t . date1904 = ! ! ( a & 1 ) ; t . filterPrivacy = ! ! ( a & 8 ) ; t . hidePivotFieldList = ! ! ( a & 1024 ) ; t . promptedSolutions = ! ! ( a & 16 ) ; t . publishItems = ! ! ( a & 2048 ) ; t . refreshAllConnections = ! ! ( a & 262144 ) ; t . saveExternalLinkValues = ! ! ( a & 128 ) ; t . showBorderUnselectedTables = ! ! ( a & 4 ) ; t . showInkAnnotation = ! ! ( a & 32 ) ; t . showObjects = [ "all" , "placeholders" , "none" ] [ a >> 13 & 3 ] ; t . showPivotChartFilter = ! ! ( a & 32768 ) ; t . updateLinks = [ "userSet" , "never" , "always" ] [ a >> 8 & 3 ] ; return t } function Fd ( e , r ) { if ( ! r ) r = Wr ( 72 ) ; var t = 0 ; if ( e ) { if ( e . filterPrivacy ) t |= 8 } r . _W ( 4 , t ) ; r . _W ( 4 , 0 ) ; xt ( e && e . CodeName || "ThisWorkbook" , r ) ; return r . slice ( 0 , r . l ) } function yd ( e , r ) { var t = { } ; e . _R ( 4 ) ; t . ArchID = e . _R ( 4 ) ; e . l += r - 8 ; return t } function Dd ( e , r , t ) { var a = e . l + r ; e . l += 4 ; e . l += 1 ; var n = e . _R ( 4 ) ; var i = _t ( e ) ; var s = du ( e , 0 , t ) ; var l = At ( e ) ; e . l = a ; var f = { Name : i , Ptg : s } ; if ( n < 268435455 ) f . Sheet = n ; if ( l ) f . Comment = l ; return f } function Od ( e , r ) { var t = { AppVersion : { } , WBProps : { } , WBView : [ ] , Sheets : [ ] , CalcPr : { } , xmlns : "" } ; var a = false ; if ( ! r ) r = { } ; r . biff = 12 ; var n = [ ] ; var i = [ [ ] ] ; i . SheetNames = [ ] ; i . XTI = [ ] ; Vr ( e , function s ( e , l , f ) { switch ( f ) { case 156 : i . SheetNames . push ( e . name ) ; t . Sheets . push ( e ) ; break ; case 153 : t . WBProps = e ; break ; case 39 : if ( e . Sheet != null ) r . SID = e . Sheet ; e . Ref = au ( e . Ptg , null , null , i , r ) ; delete r . SID ; delete e . Ptg ; n . push ( e ) ; break ; case 1036 : break ; case 357 : ; case 358 : ; case 355 : ; case 667 : if ( ! i [ 0 ] . length ) i [ 0 ] = [ f , e ] ; else i . push ( [ f , e ] ) ; i [ i . length - 1 ] . XTI = [ ] ; break ; case 362 : if ( i . length === 0 ) { i [ 0 ] = [ ] ; i [ 0 ] . XTI = [ ] } i [ i . length - 1 ] . XTI = i [ i . length - 1 ] . XTI . concat ( e ) ; i . XTI = i . XTI . concat ( e ) ; break ; case 361 : break ; case 2071 : ; case 534 : ; case 677 : ; case 158 : ; case 157 : ; case 610 : ; case 2050 : ; case 155 : ; case 548 : ; case 676 : ; case 128 : ; case 665 : ; case 2128 : ; case 2125 : ; case 549 : ; case 2053 : ; case 596 : ; case 2076 : ; case 2075 : ; case 2082 : ; case 397 : ; case 154 : ; case 1117 : ; case 553 : ; case 2091 : break ; case 35 : a = true ; break ; case 36 : a = false ; break ; case 37 : break ; case 38 : break ; case 16 : break ; default : if ( ( l || "" ) . indexOf ( "Begin" ) > 0 ) { } else if ( ( l || "" ) . indexOf ( "End" ) > 0 ) { } else if ( ! a || r . WTF ) throw new Error ( "Unexpected record " + f + " " + l ) ; } } , r ) ; gd ( t ) ; t . Names = n ; t . supbooks = i ; return t } function Pd ( e , r ) { Xr ( e , "BrtBeginBundleShs" ) ; for ( var t = 0 ; t != r . SheetNames . length ; ++ t ) { var a = r . Workbook && r . Workbook . Sheets && r . Workbook . Sheets [ t ] && r . Workbook . Sheets [ t ] . Hidden || 0 ; var n = { Hidden : a , iTabID : t + 1 , strRelID : "rId" + ( t + 1 ) , name : r . SheetNames [ t ] } ; Xr ( e , "BrtBundleSh" , Rd ( n ) ) } Xr ( e , "BrtEndBundleShs" ) } function Nd ( e , t ) { if ( ! t ) t = Wr ( 127 ) ; for ( var a = 0 ; a != 4 ; ++ a ) t . _W ( 4 , 0 ) ; bt ( "SheetJS" , t ) ; bt ( r . version , t ) ; bt ( r . version , t ) ; bt ( "7262" , t ) ; t . length = t . l ; return t . length > t . l ? t . slice ( 0 , t . l ) : t } function Ld ( e , r ) { if ( ! r ) r = Wr ( 29 ) ; r . _W ( - 4 , 0 ) ; r . _W ( - 4 , 460 ) ; r . _W ( 4 , 28800 ) ; r . _W ( 4 , 17600 ) ; r . _W ( 4 , 500 ) ; r . _W ( 4 , e ) ; r . _W ( 4 , e ) ; var t = 120 ; r . _W ( 1 , t ) ; return r . length > r . l ? r . slice ( 0 , r . l ) : r } function Md ( e , r ) { if ( ! r . Workbook || ! r . Workbook . Sheets ) return ; var t = r . Workbook . Sheets ; var a = 0 , n = - 1 , i = - 1 ; for ( ; a < t . length ; ++ a ) { if ( ! t [ a ] || ! t [ a ] . Hidden && n == - 1 ) n = a ; else if ( t [ a ] . Hidden == 1 && i == - 1 ) i = a } if ( i > n ) return ; Xr ( e , "BrtBeginBookViews" ) ; Xr ( e , "BrtBookView" , Ld ( n ) ) ; Xr ( e , "BrtEndBookViews" ) } function Ud ( e , r ) { var t = Hr ( ) ; Xr ( t , "BrtBeginBook" ) ; Xr ( t , "BrtFileVersion" , Nd ( ) ) ; Xr ( t , "BrtWbProp" , Fd ( e . Workbook && e . Workbook . WBProps || null ) ) ; Md ( t , e , r ) ; Pd ( t , e , r ) ; Xr ( t , "BrtEndBook" ) ; return t . end ( ) } function Wd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return Od ( e , t ) ; return Td ( e , t ) } function Vd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return zh ( e , a , t , n , i , s , l ) ; return Wu ( e , a , t , n , i , s , l ) } function Hd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return od ( e , a , t , n , i , s , l ) ; return ld ( e , a , t , n , i , s , l ) } function Xd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return Tc ( e , a , t , n , i , s , l ) ; return Ic ( e , a , t , n , i , s , l ) } function Gd ( e , r , t , a , n , i , s , l ) { if ( r . slice ( - 4 ) === ".bin" ) return Bc ( e , a , t , n , i , s , l ) ; return Cc ( e , a , t , n , i , s , l ) } function zd ( e , r , t , a ) { if ( r . slice ( - 4 ) === ".bin" ) return Cf ( e , t , a ) ; return sf ( e , t , a ) } function jd ( e , r , t ) { return Gf ( e , t ) } function Kd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return tl ( e , t ) ; return Zs ( e , t ) } function $d ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return bc ( e , t ) ; return oc ( e , t ) } function Yd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return tc ( e , r , t ) ; return ec ( e , r , t ) } function Qd ( e , r , t ) { if ( r . slice ( - 4 ) === ".bin" ) return nc ( e , r , t ) ; return ac ( e , r , t ) } function Jd ( e , r , t ) { return ( r . slice ( - 4 ) === ".bin" ? Ud : xd
re = 1200 ; break ; case 32768 : re = 1e4 ; break ; case 32769 : re = 1252 ; break ; } c ( y . codepage = re ) ; Y = true ; break ; case "RRTabId" : y . rrtabid = re ; break ; case "WinProtect" : y . winlocked = re ; break ; case "Template" : break ; case "BookBool" : break ; case "UsesELFs" : break ; case "MTRSettings" : break ; case "RefreshAll" : ; case "CalcCount" : ; case "CalcDelta" : ; case "CalcIter" : ; case "CalcMode" : ; case "CalcPrecision" : ; case "CalcSaveRecalc" : t . opts [ te ] = re ; break ; case "CalcRefMode" : y . CalcRefMode = re ; break ; case "Uncalced" : break ; case "ForceFullCalculation" : t . opts . FullCalc = re ; break ; case "WsBool" : if ( re . fDialog ) n [ "!type" ] = "dialog" ; break ; case "XF" : C . push ( re ) ; break ; case "ExtSST" : break ; case "BookExt" : break ; case "RichTextStream" : break ; case "BkHim" : break ; case "SupBook" : V . push ( [ re ] ) ; V [ V . length - 1 ] . XTI = [ ] ; break ; case "ExternName" : V [ V . length - 1 ] . push ( re ) ; break ; case "Index" : break ; case "Lbl" : $ = { Name : re . Name , Ref : au ( re . rgce , s , null , V , y ) } ; if ( re . itab > 0 ) $ . Sheet = re . itab - 1 ; V . names . push ( $ ) ; if ( ! V [ 0 ] ) { V [ 0 ] = [ ] ; V [ 0 ] . XTI = [ ] } V [ V . length - 1 ] . push ( re ) ; if ( re . Name == "_xlnm._FilterDatabase" && re . itab > 0 ) if ( re . rgce && re . rgce [ 0 ] && re . rgce [ 0 ] [ 0 ] && re . rgce [ 0 ] [ 0 ] [ 0 ] == "PtgArea3d" ) K [ re . itab - 1 ] = { ref : ft ( re . rgce [ 0 ] [ 0 ] [ 1 ] [ 2 ] ) } ; break ; case "ExternCount" : y . ExternCount = re ; break ; case "ExternSheet" : if ( V . length == 0 ) { V [ 0 ] = [ ] ; V [ 0 ] . XTI = [ ] } V [ V . length - 1 ] . XTI = V [ V . length - 1 ] . XTI . concat ( re ) ; V . XTI = V . XTI . concat ( re ) ; break ; case "NameCmt" : if ( y . biff < 8 ) break ; if ( $ != null ) $ . Comment = re [ 1 ] ; break ; case "Protect" : n [ "!protect" ] = re ; break ; case "Password" : if ( re !== 0 && y . WTF ) console . error ( "Password verifier: " + re ) ; break ; case "Prot4Rev" : ; case "Prot4RevPass" : break ; case "BoundSheet8" : { i [ re . pos ] = re ; y . snames . push ( re . name ) } break ; case "EOF" : { if ( -- G ) break ; if ( s . e ) { if ( s . e . r > 0 && s . e . c > 0 ) { s . e . r -- ; s . e . c -- ; n [ "!ref" ] = ft ( s ) ; s . e . r ++ ; s . e . c ++ } if ( O . length > 0 ) n [ "!merges" ] = O ; if ( P . length > 0 ) n [ "!objects" ] = P ; if ( N . length > 0 ) n [ "!cols" ] = N ; if ( L . length > 0 ) n [ "!rows" ] = L ; I . Sheets . push ( x ) } if ( o === "" ) u = n ; else a [ o ] = n ; n = r . dense ? [ ] : { } } break ; case "BOF" : { if ( y . biff === 8 ) y . biff = { 9 : 2 , 521 : 3 , 1033 : 4 } [ J ] || { 1280 : 5 , 1536 : 8 , 2 : 2 , 7 : 2 } [ re . BIFFVer ] || 8 ; if ( G ++ ) break ; B = true ; n = r . dense ? [ ] : { } ; if ( y . biff < 8 && ! Y ) { Y = true ; c ( y . codepage = r . codepage || 1252 ) } if ( y . biff < 5 ) { if ( o === "" ) o = "Sheet1" ; s = { s : { r : 0 , c : 0 } , e : { r : 0 , c : 0 } } ; var ae = { pos : e . l - Z , name : o } ; i [ ae . pos ] = ae ; y . snames . push ( o ) } else o = ( i [ Q ] || { name : "" } ) . name ; if ( re . dt == 32 ) n [ "!type" ] = "chart" ; if ( re . dt == 64 ) n [ "!type" ] = "macro" ; O = [ ] ; P = [ ] ; y . arrayf = S = [ ] ; N = [ ] ; L = [ ] ; M = U = 0 ; W = false ; x = { Hidden : ( i [ Q ] || { hs : 0 } ) . hs , name : o } } break ; case "Number" : ; case "BIFF2NUM" : ; case "BIFF2INT" : { if ( n [ "!type" ] == "chart" ) if ( r . dense ? ( n [ re . r ] || [ ] ) [ re . c ] : n [ st ( { c : re . c , r : re . r } ) ] ) ++ re . c ; k = { ixfe : re . ixfe , XF : C [ re . ixfe ] || { } , v : re . val , t : "n" } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( { c : re . c , r : re . r } , k , r ) } break ; case "BoolErr" : { k = { ixfe : re . ixfe , XF : C [ re . ixfe ] , v : re . val , t : re . t } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( { c : re . c , r : re . r } , k , r ) } break ; case "RK" : { k = { ixfe : re . ixfe , XF : C [ re . ixfe ] , v : re . rknum , t : "n" } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( { c : re . c , r : re . r } , k , r ) } break ; case "MulRk" : { for ( var ne = re . c ; ne <= re . C ; ++ ne ) { var ie = re . rkrec [ ne - re . c ] [ 0 ] ; k = { ixfe : ie , XF : C [ ie ] , v : re . rkrec [ ne - re . c ] [ 1 ] , t : "n" } ; if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( { c : ne , r : re . r } , k , r ) } } break ; case "Formula" : { if ( re . val == "String" ) { l = re ; break } k = Ov ( re . val , re . cell . ixfe , re . tt ) ; k . XF = C [ k . ixfe ] ; if ( r . cellFormula ) { var se = re . formula ; if ( se && se [ 0 ] && se [ 0 ] [ 0 ] && se [ 0 ] [ 0 ] [ 0 ] == "PtgExp" ) { var le = se [ 0 ] [ 0 ] [ 1 ] [ 0 ] , fe = se [ 0 ] [ 0 ] [ 1 ] [ 1 ] ; var ce = st ( { r : le , c : fe } ) ; if ( E [ ce ] ) k . f = "" + au ( re . formula , s , re . cell , V , y ) ; else k . F = ( ( r . dense ? ( n [ le ] || [ ] ) [ fe ] : n [ ce ] ) || { } ) . F } else k . f = "" + au ( re . formula , s , re . cell , V , y ) } if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( re . cell , k , r ) ; l = re } break ; case "String" : { if ( l ) { l . val = re ; k = Ov ( re , l . cell . ixfe , "s" ) ; k . XF = C [ k . ixfe ] ; if ( r . cellFormula ) { k . f = "" + au ( l . formula , s , l . cell , V , y ) } if ( z > 0 ) k . z = j [ k . ixfe >> 8 & 31 ] ; Dv ( k , r , t . opts . Date1904 ) ; F ( l . cell , k , r ) ; l = null } else throw new Error ( "String record expects Formula" ) } break ; case "Array" : { S . push ( re ) ; var oe = st ( 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 = "" + au ( re [ 1 ] , s , re [ 0 ] , V , y ) ; v . F = ft ( re [ 0 ] ) } } break ; case "ShrFmla" : { if ( ! B ) break ; if ( ! r . cellFormula ) break ; if ( d ) { if ( ! l ) break ; E [ st ( l . cell ) ] = re [ 0 ] ; v = r . dense ? ( n [ l . cell . r ] || [ ] ) [ l . cell . c ] : n [
} , 1133 : { n : "BrtBeginSlicerCachesPivotCacheID" } , 1134 : { n : "BrtEndSlicerCachesPivotCacheID" } , 1135 : { n : "BrtBeginConditionalFormattings" } , 1136 : { n : "BrtEndConditionalFormattings" } , 1137 : { n : "BrtBeginPCDCalcMemExt" } , 1138 : { n : "BrtEndPCDCalcMemExt" } , 1139 : { n : "BrtBeginPCDCalcMemsExt" } , 1140 : { n : "BrtEndPCDCalcMemsExt" } , 1141 : { n : "BrtPCDField14" } , 1142 : { n : "BrtBeginSlicerStyles" } , 1143 : { n : "BrtEndSlicerStyles" } , 1144 : { n : "BrtBeginSlicerStyleElements" } , 1145 : { n : "BrtEndSlicerStyleElements" } , 1146 : { n : "BrtCFRuleExt" } , 1147 : { n : "BrtBeginSXCondFmt14" } , 1148 : { n : "BrtEndSXCondFmt14" } , 1149 : { n : "BrtBeginSXCondFmts14" } , 1150 : { n : "BrtEndSXCondFmts14" } , 1152 : { n : "BrtBeginSortCond14" } , 1153 : { n : "BrtEndSortCond14" } , 1154 : { n : "BrtEndDVals14" } , 1155 : { n : "BrtEndIconSet14" } , 1156 : { n : "BrtEndDatabar14" } , 1157 : { n : "BrtBeginColorScale14" } , 1158 : { n : "BrtEndColorScale14" } , 1159 : { n : "BrtBeginSxrules14" } , 1160 : { n : "BrtEndSxrules14" } , 1161 : { n : "BrtBeginPRule14" } , 1162 : { n : "BrtEndPRule14" } , 1163 : { n : "BrtBeginPRFilters14" } , 1164 : { n : "BrtEndPRFilters14" } , 1165 : { n : "BrtBeginPRFilter14" } , 1166 : { n : "BrtEndPRFilter14" } , 1167 : { n : "BrtBeginPRFItem14" } , 1168 : { n : "BrtEndPRFItem14" } , 1169 : { n : "BrtBeginCellIgnoreECs14" } , 1170 : { n : "BrtEndCellIgnoreECs14" } , 1171 : { n : "BrtDxf14" } , 1172 : { n : "BrtBeginDxF14s" } , 1173 : { n : "BrtEndDxf14s" } , 1177 : { n : "BrtFilter14" } , 1178 : { n : "BrtBeginCustomFilters14" } , 1180 : { n : "BrtCustomFilter14" } , 1181 : { n : "BrtIconFilter14" } , 1182 : { n : "BrtPivotCacheConnectionName" } , 2048 : { n : "BrtBeginDecoupledPivotCacheIDs" } , 2049 : { n : "BrtEndDecoupledPivotCacheIDs" } , 2050 : { n : "BrtDecoupledPivotCacheID" } , 2051 : { n : "BrtBeginPivotTableRefs" } , 2052 : { n : "BrtEndPivotTableRefs" } , 2053 : { n : "BrtPivotTableRef" } , 2054 : { n : "BrtSlicerCacheBookPivotTables" } , 2055 : { n : "BrtBeginSxvcells" } , 2056 : { n : "BrtEndSxvcells" } , 2057 : { n : "BrtBeginSxRow" } , 2058 : { n : "BrtEndSxRow" } , 2060 : { n : "BrtPcdCalcMem15" } , 2067 : { n : "BrtQsi15" } , 2068 : { n : "BrtBeginWebExtensions" } , 2069 : { n : "BrtEndWebExtensions" } , 2070 : { n : "BrtWebExtension" } , 2071 : { n : "BrtAbsPath15" } , 2072 : { n : "BrtBeginPivotTableUISettings" } , 2073 : { n : "BrtEndPivotTableUISettings" } , 2075 : { n : "BrtTableSlicerCacheIDs" } , 2076 : { n : "BrtTableSlicerCacheID" } , 2077 : { n : "BrtBeginTableSlicerCache" } , 2078 : { n : "BrtEndTableSlicerCache" } , 2079 : { n : "BrtSxFilter15" } , 2080 : { n : "BrtBeginTimelineCachePivotCacheIDs" } , 2081 : { n : "BrtEndTimelineCachePivotCacheIDs" } , 2082 : { n : "BrtTimelineCachePivotCacheID" } , 2083 : { n : "BrtBeginTimelineCacheIDs" } , 2084 : { n : "BrtEndTimelineCacheIDs" } , 2085 : { n : "BrtBeginTimelineCacheID" } , 2086 : { n : "BrtEndTimelineCacheID" } , 2087 : { n : "BrtBeginTimelinesEx" } , 2088 : { n : "BrtEndTimelinesEx" } , 2089 : { n : "BrtBeginTimelineEx" } , 2090 : { n : "BrtEndTimelineEx" } , 2091 : { n : "BrtWorkBookPr15" } , 2092 : { n : "BrtPCDH15" } , 2093 : { n : "BrtBeginTimelineStyle" } , 2094 : { n : "BrtEndTimelineStyle" } , 2095 : { n : "BrtTimelineStyleElement" } , 2096 : { n : "BrtBeginTimelineStylesheetExt15" } , 2097 : { n : "BrtEndTimelineStylesheetExt15" } , 2098 : { n : "BrtBeginTimelineStyles" } , 2099 : { n : "BrtEndTimelineStyles" } , 2100 : { n : "BrtBeginTimelineStyleElements" } , 2101 : { n : "BrtEndTimelineStyleElements" } , 2102 : { n : "BrtDxf15" } , 2103 : { n : "BrtBeginDxfs15" } , 2104 : { n : "brtEndDxfs15" } , 2105 : { n : "BrtSlicerCacheHideItemsWithNoData" } , 2106 : { n : "BrtBeginItemUniqueNames" } , 2107 : { n : "BrtEndItemUniqueNames" } , 2108 : { n : "BrtItemUniqueName" } , 2109 : { n : "BrtBeginExtConn15" } , 2110 : { n : "BrtEndExtConn15" } , 2111 : { n : "BrtBeginOledbPr15" } , 2112 : { n : "BrtEndOledbPr15" } , 2113 : { n : "BrtBeginDataFeedPr15" } , 2114 : { n : "BrtEndDataFeedPr15" } , 2115 : { n : "BrtTextPr15" } , 2116 : { n : "BrtRangePr15" } , 2117 : { n : "BrtDbCommand15" } , 2118 : { n : "BrtBeginDbTables15" } , 2119 : { n : "BrtEndDbTables15" } , 2120 : { n : "BrtDbTable15" } , 2121 : { n : "BrtBeginDataModel" } , 2122 : { n : "BrtEndDataModel" } , 2123 : { n : "BrtBeginModelTables" } , 2124 : { n : "BrtEndModelTables" } , 2125 : { n : "BrtModelTable" } , 2126 : { n : "BrtBeginModelRelationships" } , 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" } , 2137 : { n : "BrtBeginModelTimeGroupings" } , 2138 : { n : "BrtEndModelTimeGroupings" } , 2139 : { n : "BrtBeginModelTimeGrouping" } , 2140 : { n : "BrtEndModelTimeGrouping" } , 2141 : { n : " B
break ; default : switch ( E [ 2 ] ) { case "dc:" : ; case "calcext:" : ; case "loext:" : ; case "ooo:" : ; case "chartooo:" : ; case "draw:" : ; case "style:" : ; case "chart:" : ; case "form:" : ; case "uof:" : ; case "表:" : ; case "字:" : break ; default : if ( i . WTF ) throw new Error ( E ) ; } ; } var ee = { Sheets : p , SheetNames : b , Workbook : M } ; if ( i . bookSheets ) delete ee . Sheets ; return ee } } ( ) ; function op ( e , r ) { r = r || { } ; var t = ! ! de ( e , "objectdata" ) ; if ( t ) _a ( pe ( e , "META-INF/manifest.xml" ) , r ) ; var a = me ( e , "content.xml" ) ; if ( ! a ) throw new Error ( "Missing content.xml in " + ( t ? "ODS" : "UOF" ) + " file" ) ; var n = cp ( t ? a : Ue ( a ) , r ) ; if ( de ( e , "meta.xml" ) ) n . Props = Ma ( pe ( e , "meta.xml" ) ) ; return n } function up ( e , r ) { return cp ( e , r ) } var hp = function ( ) { var e = "<office:document-styles " + Ze ( { "xmlns:office" : "urn:oasis:names:tc:opendocument:xmlns:office:1.0" , "xmlns:table" : "urn:oasis:names:tc:opendocument:xmlns:table:1.0" , "xmlns:style" : "urn:oasis:names:tc:opendocument:xmlns:style:1.0" , "xmlns:text" : "urn:oasis:names:tc:opendocument:xmlns:text:1.0" , "xmlns:draw" : "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" , "xmlns:fo" : "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" , "xmlns:xlink" : "http://www.w3.org/1999/xlink" , "xmlns:dc" : "http://purl.org/dc/elements/1.1/" , "xmlns:number" : "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" , "xmlns:svg" : "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" , "xmlns:of" : "urn:oasis:names:tc:opendocument:xmlns:of:1.2" , "office:version" : "1.2" } ) + "></office:document-styles>" ; return function r ( ) { return Ee + e } } ( ) ; var dp = function ( ) { var e = function ( e ) { return Fe ( e ) . replace ( / +/g , function ( e ) { return '<text:s text:c="' + e . length + '"/>' } ) . replace ( /\t/g , "<text:tab/>" ) . replace ( /\n/g , "<text:line-break/>" ) . replace ( /^ / , "<text:s/>" ) . replace ( / $/ , "<text:s/>" ) } ; var r = " <table:table-cell />\n" ; var t = " <table:covered-table-cell/>\n" ; var a = function ( a , n , i ) { var s = [ ] ; s . push ( ' <table:table table:name="' + Fe ( n . SheetNames [ i ] ) + '">\n' ) ; var l = 0 , f = 0 , c = lt ( a [ "!ref" ] ) ; var o = a [ "!merges" ] || [ ] , u = 0 ; var h = Array . isArray ( a ) ; for ( l = 0 ; l < c . s . r ; ++ l ) s . push ( " <table:table-row></table:table-row>\n" ) ; for ( ; l <= c . e . r ; ++ l ) { s . push ( " <table:table-row>\n" ) ; for ( f = 0 ; f < c . s . c ; ++ f ) s . push ( r ) ; for ( ; f <= c . e . c ; ++ f ) { var d = false , v = { } , p = "" ; for ( u = 0 ; u != o . length ; ++ u ) { if ( o [ u ] . s . c > f ) continue ; if ( o [ u ] . s . r > l ) continue ; if ( o [ u ] . e . c < f ) continue ; if ( o [ u ] . e . r < l ) continue ; if ( o [ u ] . s . c != f || o [ u ] . s . r != l ) d = true ; v [ "table:number-columns-spanned" ] = o [ u ] . e . c - o [ u ] . s . c + 1 ; v [ "table:number-rows-spanned" ] = o [ u ] . e . r - o [ u ] . s . r + 1 ; break } if ( d ) { s . push ( t ) ; continue } var m = st ( { r : l , c : f } ) , b = h ? ( a [ l ] || [ ] ) [ f ] : a [ m ] ; if ( b && b . f ) { v [ "table:formula" ] = Fe ( Su ( b . f ) ) ; if ( b . F ) { if ( b . F . slice ( 0 , m . length ) == m ) { var g = lt ( b . F ) ; v [ "table:number-matrix-columns-spanned" ] = g . e . c - g . s . c + 1 ; v [ "table:number-matrix-rows-spanned" ] = g . e . r - g . s . r + 1 } } } if ( ! b ) { s . push ( r ) ; continue } switch ( b . t ) { case "b" : p = b . v ? "TRUE" : "FALSE" ; v [ "office:value-type" ] = "boolean" ; v [ "office:boolean-value" ] = b . v ? "true" : "false" ; break ; case "n" : p = b . w || String ( b . v || 0 ) ; v [ "office:value-type" ] = "float" ; v [ "office:value" ] = b . v || 0 ; break ; case "s" : ; case "str" : p = b . v ; v [ "office:value-type" ] = "string" ; break ; case "d" : p = b . w || te ( b . v ) . toISOString ( ) ; v [ "office:value-type" ] = "date" ; v [ "office:date-value" ] = te ( b . v ) . toISOString ( ) ; v [ "table:style-name" ] = "ce1" ; break ; default : s . push ( r ) ; continue ; } var E = e ( p ) ; if ( b . l && b . l . Target ) { var S = b . l . Target ; S = S . charAt ( 0 ) == "#" ? "#" + wu ( S . slice ( 1 ) ) : S ; E = qe ( "text:a" , E , { "xlink:href" : S } ) } s . push ( " " + qe ( "table:table-cell" , qe ( "text:p" , E , { } ) , v ) + "\n" ) } s . push ( " </table:table-row>\n" ) } s . push ( " </table:table>\n" ) ; return s . join ( "" ) } ; var n = function ( e ) { e . push ( " <office:automatic-styles>\n" ) ; e . push ( ' <number:date-style style:name="N37" number:automatic-order="true">\n' ) ; e . push ( ' <number:month number:style="long"/>\n' ) ; e . push ( " <number:text>/</number:text>\n" ) ; e . push ( ' <number:day number:style="long"/>\n' ) ; e . push ( " <number:text>/</number:text>\n" ) ; e . push ( " <number:year/>\n" ) ; e . push ( " </number:date-style>\n" ) ; e . push ( ' <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>\n' ) ; e . push ( " </office:automatic-styles>\n" ) } ; return function i ( e , r ) { var t = [ Ee ] ; var i = Ze ( { "xmlns:office" : " urn : oasis : names